code: func NewTimeLimiter(window, limit time.Duration, now time.Time) *TimeLimiter {
  	l := TimeLimiter{
  		since:  now,
  		next:   now.Add(window),
  		window: window,
  		limit:  limit,
  		factor: float64(window) / float64(limit),
  	}
  	return &l
  }
docs: // NewTimeLimiter creates a new TimeLimiter.
  // limit must <= window