code: func NewClient(config Config) *Client {
  	userAgent := fmt.Sprintf("%s/%s (%s; %s %s)", config.AppName, config.AppVersion, runtime.Version(), runtime.GOARCH, runtime.GOOS)
  	return &Client{
  		clock:              new(internal.RealTime),
  		userAgent:          userAgent,
  		jobPollingInterval: config.JobPollingInterval,
  		jobPollingTimeout:  config.JobPollingTimeout,
  		wrappers:           append([]ConnectionWrapper{newErrorWrapper()}, config.Wrappers...),
  	}
  }
docs: // NewClient returns a new Client.