code: func WithRetries(req *http.Request, n int) *http.Request {
  	ctx := req.Context()
  	ctx = context.WithValue(ctx, contextKeyRetries, n)
  
  	return req.WithContext(ctx)
  }
docs: // WithRetries stores the desired number of retries "n" on the given
  // http.Request, and causes it to be retried "n" times in the case of a non-nil
  // network related error.