code: func (b *ExponentialBackoff) Next(retry int) (time.Duration, bool) {
  	r := 1.0 + rand.Float64() // random number in [1..2]
  	m := math.Min(r*b.t*math.Pow(b.f, float64(retry)), b.m)
  	if m >= b.m {
  		return 0, false
  	}
  	d := time.Duration(int64(m)) * time.Millisecond
  	return d, true
  }
docs: // Next implements BackoffFunc for ExponentialBackoff.