code: func (i *Instance) wakeEntry(e Entry) {
  	if _, ok := i.entries[e]; ok {
  		panic(e)
  	}
  	i.entries[e] = make(handles, len(i.waitersByEntry[e]))
  	for eh := range i.waitersByEntry[e] {
  		i.entries[e][eh] = struct{}{}
  		i.deleteWaiter(eh)
  		eh.wake.Unlock()
  	}
  	if i.waitersByEntry[e] != nil {
  		panic(i.waitersByEntry[e])
  	}
  }
docs: // Wakes all waiters on an entry. Note that the entry is also woken
  // immediately, the waiters are all let through.