code: func NewOptions() (*Options, error) {
  	cfg, err := newDefaultComponentConfig()
  	if err != nil {
  		return nil, err
  	}
  
  	hhost, hport, err := splitHostIntPort(cfg.HealthzBindAddress)
  	if err != nil {
  		return nil, err
  	}
  
  	o := &Options{
  		ComponentConfig: *cfg,
  		SecureServing:   apiserveroptions.NewSecureServingOptions().WithLoopback(),
  		CombinedInsecureServing: &CombinedInsecureServingOptions{
  			Healthz: (&apiserveroptions.DeprecatedInsecureServingOptions{
  				BindNetwork: "tcp",
  			}).WithLoopback(),
  			Metrics: (&apiserveroptions.DeprecatedInsecureServingOptions{
  				BindNetwork: "tcp",
  			}).WithLoopback(),
  			BindPort:    hport,
  			BindAddress: hhost,
  		},
  		Authentication: apiserveroptions.NewDelegatingAuthenticationOptions(),
  		Authorization:  apiserveroptions.NewDelegatingAuthorizationOptions(),
  		Deprecated: &DeprecatedOptions{
  			UseLegacyPolicyConfig:    false,
  			PolicyConfigMapNamespace: metav1.NamespaceSystem,
  		},
  	}
  
  	o.Authentication.TolerateInClusterLookupFailure = true
  	o.Authentication.RemoteKubeConfigFileOptional = true
  	o.Authorization.RemoteKubeConfigFileOptional = true
  	o.Authorization.AlwaysAllowPaths = []string{"/healthz"}
  
  	// Set the PairName but leave certificate directory blank to generate in-memory by default
  	o.SecureServing.ServerCert.CertDirectory = ""
  	o.SecureServing.ServerCert.PairName = "kube-scheduler"
  	o.SecureServing.BindPort = ports.KubeSchedulerPort
  
  	return o, nil
  }
docs: // NewOptions returns default scheduler app options.