code: func (m *Potassium) MaxIdleNode(nodes []*types.Node) (*types.Node, error) {
  	if len(nodes) < 1 {
  		return nil, types.ErrInsufficientNodes
  	}
  	pos := 0
  	node := nodes[pos]
  	min := float64(node.CPU.Total())/float64(node.InitCPU.Total()) + float64(node.MemCap)/float64(node.InitMemCap)
  	for i, node := range nodes {
  		idle := float64(node.CPU.Total())/float64(node.InitCPU.Total()) + float64(node.MemCap)/float64(node.InitMemCap)
  		if idle < min {
  			pos = i
  			min = idle
  		}
  	}
  	return nodes[pos], nil
  }
docs: // MaxIdleNode use for build