code: func (s *Server) Start(ctx context.Context) (string, error) {
  	// Launch the server to get the port number.
  	addr, err := s.srv.Start(ctx, "firebase-auth", s.Port, func(c context.Context, l net.Listener, wg *sync.WaitGroup) error {
  		return s.serve(c, l, wg)
  	})
  	if err != nil {
  		return "", errors.Annotate(err, "failed to start the server").Err()
  	}
  	return fmt.Sprintf("http://%s", addr), nil
  }
docs: // Start launches background goroutine with the serving loop.
  //
  // The provided context is used as base context for request handlers and for
  // logging. The server must be eventually stopped with Stop().
  //
  // Returns the root URL of a local server to use as FIREBASE_TOKEN_URL.