code: func coalescedEventCh(outCh chan<- Event, shutdownCh <-chan struct{},
  	cPeriod time.Duration, qPeriod time.Duration, c coalescer) chan<- Event {
  	inCh := make(chan Event, 1024)
  	go coalesceLoop(inCh, outCh, shutdownCh, cPeriod, qPeriod, c)
  	return inCh
  }
docs: // coalescedEventCh returns an event channel where the events are coalesced
  // using the given coalescer.