code: func newTicker(nextInterval durationSeries) *ticker {
  	c := make(chan time.Time)
  	ticker := &ticker{
  		stopChan:     make(chan struct{}),
  		C:            c,
  		nextInterval: nextInterval,
  	}
  
  	go func() {
  		defer close(c)
  		ticker.run(c)
  	}()
  
  	return ticker
  }
docs: // newTicker returns a channel that sends the time at periods
  // specified by the given durationSeries.