code: func (c *Config) TokenSource(ctx context.Context) oauth2.TokenSource {
  	source := &tokenSource{
  		ctx:  ctx,
  		conf: c,
  	}
  	return oauth2.ReuseTokenSource(nil, source)
  }
docs: // TokenSource returns a TokenSource that returns t until t expires,
  // automatically refreshing it as necessary using the provided context and the
  // client ID and client secret.
  //
  // Most users will use Config.Client instead.