code: func (h *HTTPExtender) Prioritize(pod *v1.Pod, nodes []*v1.Node) (*schedulerapi.HostPriorityList, int, error) {
  	var (
  		result    schedulerapi.HostPriorityList
  		nodeList  *v1.NodeList
  		nodeNames *[]string
  		args      *schedulerapi.ExtenderArgs
  	)
  
  	if h.prioritizeVerb == "" {
  		result := schedulerapi.HostPriorityList{}
  		for _, node := range nodes {
  			result = append(result, schedulerapi.HostPriority{Host: node.Name, Score: 0})
  		}
  		return &result, 0, nil
  	}
  
  	if h.nodeCacheCapable {
  		nodeNameSlice := make([]string, 0, len(nodes))
  		for _, node := range nodes {
  			nodeNameSlice = append(nodeNameSlice, node.Name)
  		}
  		nodeNames = &nodeNameSlice
  	} else {
  		nodeList = &v1.NodeList{}
  		for _, node := range nodes {
  			nodeList.Items = append(nodeList.Items, *node)
  		}
  	}
  
  	args = &schedulerapi.ExtenderArgs{
  		Pod:       pod,
  		Nodes:     nodeList,
  		NodeNames: nodeNames,
  	}
  
  	if err := h.send(h.prioritizeVerb, args, &result); err != nil {
  		return nil, 0, err
  	}
  	return &result, h.weight, nil
  }
docs: // Prioritize based on extender implemented priority functions. Weight*priority is added
  // up for each such priority function. The returned score is added to the score computed
  // by Kubernetes scheduler. The total score is used to do the host selection.