if (m_isLeaf){ return weight*localModel().classProb(classIndex,instance); }else{
if (m_isLeaf) { return weight * localModel().classProb(classIndex, instance, -1); } else {
  private double getProbs(int classIndex,Instance instance,			  double weight) throws Exception {        double [] weights;    int treeIndex;    if (m_isLeaf){      return weight*localModel().classProb(classIndex,instance);    }else{      treeIndex = localModel().whichSubset(instance);      if (treeIndex == -1){	weights = localModel().weights(instance);	return son(indeX).getProbs(classIndex,instance,weights[indeX]*weight);      }else{	if (treeIndex == indeX)	  return son(indeX).getProbs(classIndex,instance,weight);	return 0;      }    }  }