code: func (p *Provider) backoffDuration() time.Duration {
  	// Use the default backoff
  	backoff := DefaultBackoff
  
  	// Check for a server specified backoff
  	p.backoffLock.Lock()
  	if p.backoff != 0 {
  		backoff = p.backoff
  	}
  	if p.noRetry {
  		backoff = 0
  	}
  	p.backoffLock.Unlock()
  
  	return backoff
  }
docs: // backoffDuration is used to compute the next backoff duration