code: func NewHTTPURLReader(proxyConfig *api.ProxyConfig) *HTTPURLReader {
  	getFunc := http.Get
  	if proxyConfig != nil {
  		transportMapMutex.Lock()
  		transport, ok := transportMap[*proxyConfig]
  		if !ok {
  			transport = &http.Transport{
  				Proxy: func(req *http.Request) (*url.URL, error) {
  					if proxyConfig.HTTPSProxy != nil && req.URL.Scheme == "https" {
  						return proxyConfig.HTTPSProxy, nil
  					}
  					return proxyConfig.HTTPProxy, nil
  				},
  			}
  			transportMap[*proxyConfig] = transport
  		}
  		transportMapMutex.Unlock()
  		client := &http.Client{
  			Transport: transport,
  		}
  		getFunc = client.Get
  	}
  	return &HTTPURLReader{Get: getFunc}
  }
docs: // NewHTTPURLReader returns a new HTTPURLReader.