code: func NewTLSClient(addr string, cfg *tls.Config) *Client {
  	return &Client{
  		Addr: addr,
  		Dial: func(addr string) (conn io.ReadWriteCloser, err error) {
  			c, err := tls.DialWithDialer(dialer, "tcp", addr, cfg)
  			if err != nil {
  				return nil, err
  			}
  			return c, err
  		},
  	}
  }
docs: // NewTLSClient creates a client connecting over TLS (aka SSL) to the server
  // listening to the given addr using the given TLS config.
  //
  // The returned client must be started after optional settings' adjustment.
  //
  // The corresponding server must be created with NewTLSServer().