code: func NewEnterpriseClient(baseURL, uploadURL string, httpClient *http.Client) (*Client, error) {
  	baseEndpoint, err := url.Parse(baseURL)
  	if err != nil {
  		return nil, err
  	}
  	if !strings.HasSuffix(baseEndpoint.Path, "/") {
  		baseEndpoint.Path += "/"
  	}
  
  	uploadEndpoint, err := url.Parse(uploadURL)
  	if err != nil {
  		return nil, err
  	}
  	if !strings.HasSuffix(uploadEndpoint.Path, "/") {
  		uploadEndpoint.Path += "/"
  	}
  
  	c := NewClient(httpClient)
  	c.BaseURL = baseEndpoint
  	c.UploadURL = uploadEndpoint
  	return c, nil
  }
docs: // NewEnterpriseClient returns a new GitHub API client with provided
  // base URL and upload URL (often the same URL).
  // If either URL does not have a trailing slash, one is added automatically.
  // If a nil httpClient is provided, http.DefaultClient will be used.
  //
  // Note that NewEnterpriseClient is a convenience helper only;
  // its behavior is equivalent to using NewClient, followed by setting
  // the BaseURL and UploadURL fields.