code: func NewClient(c *http.Client) transport.Transport {
  	if c == nil {
  		return &client{http.DefaultClient}
  	}
  
  	return &client{
  		c: c,
  	}
  }
docs: // NewClient creates a new client with a custom net/http client.
  // See `InstallProtocol` to install and override default http client.
  // Unless a properly initialized client is given, it will fall back into
  // `http.DefaultClient`.
  //
  // Note that for HTTP client cannot distinguist between private repositories and
  // unexistent repositories on GitHub. So it returns `ErrAuthorizationRequired`
  // for both.