code: func NewServer(api *operations.TodoListAPI) *Server {
  	s := new(Server)
  
  	s.EnabledListeners = enabledListeners
  	s.CleanupTimeout = cleanupTimeout
  	s.GracefulTimeout = gracefulTimeout
  	s.MaxHeaderSize = maxHeaderSize
  	s.SocketPath = socketPath
  	s.Host = stringEnvOverride(host, "", "HOST")
  	s.Port = intEnvOverride(port, 0, "PORT")
  	s.ListenLimit = listenLimit
  	s.KeepAlive = keepAlive
  	s.ReadTimeout = readTimeout
  	s.WriteTimeout = writeTimeout
  	s.TLSHost = stringEnvOverride(tlsHost, s.Host, "TLS_HOST", "HOST")
  	s.TLSPort = intEnvOverride(tlsPort, 0, "TLS_PORT")
  	s.TLSCertificate = stringEnvOverride(tlsCertificate, "", "TLS_CERTIFICATE")
  	s.TLSCertificateKey = stringEnvOverride(tlsCertificateKey, "", "TLS_PRIVATE_KEY")
  	s.TLSCACertificate = stringEnvOverride(tlsCACertificate, "", "TLS_CA_CERTIFICATE")
  	s.TLSListenLimit = tlsListenLimit
  	s.TLSKeepAlive = tlsKeepAlive
  	s.TLSReadTimeout = tlsReadTimeout
  	s.TLSWriteTimeout = tlsWriteTimeout
  	s.shutdown = make(chan struct{})
  	s.api = api
  	s.interrupt = make(chan os.Signal, 1)
  	return s
  }
docs: // NewServer creates a new api todo list server but does not configure it