code: func (s *Server) Serve(l net.Listener) error {
  	for {
  		conn, err := l.Accept()
  		if err != nil {
  			return err
  		}
  		go s.ServeConn(conn)
  	}
  	return nil
  }
docs: // Serve is used to serve connections from a listener