code: func BuildHandlerChain(apiHandler http.Handler, authorizationInfo *apiserver.AuthorizationInfo, authenticationInfo *apiserver.AuthenticationInfo) http.Handler {
  	requestInfoResolver := &apirequest.RequestInfoFactory{}
  	failedHandler := genericapifilters.Unauthorized(legacyscheme.Codecs, false)
  
  	handler := apiHandler
  	if authorizationInfo != nil {
  		handler = genericapifilters.WithAuthorization(apiHandler, authorizationInfo.Authorizer, legacyscheme.Codecs)
  	}
  	if authenticationInfo != nil {
  		handler = genericapifilters.WithAuthentication(handler, authenticationInfo.Authenticator, failedHandler, nil)
  	}
  	handler = genericapifilters.WithRequestInfo(handler, requestInfoResolver)
  	handler = genericfilters.WithPanicRecovery(handler)
  
  	return handler
  }
docs: // BuildHandlerChain builds a handler chain with a base handler and CompletedConfig.