code: func (fc *fakeClock) After(d time.Duration) <-chan time.Time {
  	fc.l.Lock()
  	defer fc.l.Unlock()
  	now := fc.time
  	done := make(chan time.Time, 1)
  	if d.Nanoseconds() == 0 {
  		// special case - trigger immediately
  		done <- now
  	} else {
  		// otherwise, add to the set of sleepers
  		s := &sleeper{
  			until: now.Add(d),
  			done:  done,
  		}
  		fc.sleepers = append(fc.sleepers, s)
  		// and notify any blockers
  		fc.blockers = notifyBlockers(fc.blockers, len(fc.sleepers))
  	}
  	return done
  }
docs: // After mimics time.After; it waits for the given duration to elapse on the
  // fakeClock, then sends the current time on the returned channel.