code: func tlsConfigKey(c *Config) (tlsCacheKey, error) {
  	// Make sure ca/key/cert content is loaded
  	if err := loadTLSFiles(c); err != nil {
  		return tlsCacheKey{}, err
  	}
  	return tlsCacheKey{
  		insecure:   c.TLS.Insecure,
  		caData:     string(c.TLS.CAData),
  		certData:   string(c.TLS.CertData),
  		keyData:    string(c.TLS.KeyData),
  		getCert:    fmt.Sprintf("%p", c.TLS.GetCert),
  		serverName: c.TLS.ServerName,
  		dial:       fmt.Sprintf("%p", c.Dial),
  	}, nil
  }
docs: // tlsConfigKey returns a unique key for tls.Config objects returned from TLSConfigFor