code: func ServerKeepaliveOptions(ka *KeepaliveOptions) []grpc.ServerOption {
  	// use default keepalive options if nil
  	if ka == nil {
  		ka = DefaultKeepaliveOptions
  	}
  	var serverOpts []grpc.ServerOption
  	kap := keepalive.ServerParameters{
  		Time:    ka.ServerInterval,
  		Timeout: ka.ServerTimeout,
  	}
  	serverOpts = append(serverOpts, grpc.KeepaliveParams(kap))
  	kep := keepalive.EnforcementPolicy{
  		MinTime: ka.ServerMinInterval,
  		// allow keepalive w/o rpc
  		PermitWithoutStream: true,
  	}
  	serverOpts = append(serverOpts, grpc.KeepaliveEnforcementPolicy(kep))
  	return serverOpts
  }
docs: // ServerKeepaliveOptions returns gRPC keepalive options for server.  If
  // opts is nil, the default keepalive options are returned