if (ok) {
} if (ok) {
  double classifyInstanceLeaveOneOut(Instance instance, double [] instA)       throws Exception  {    hashKey thekey;    double [] tempDist;    double [] normDist;    thekey = new hashKey(instA);          if (m_classIsNominal)    {      // if this one is not in the table      if ((tempDist = (double [])m_entries.get(thekey)) == null)      {	  System.out.println("Shouldnt get here!");	  System.exit(1);      }      else      {	normDist = new double [tempDist.length];	System.arraycopy(tempDist,0,normDist,0,tempDist.length);	normDist[(int)instance.classValue()] -= instance.weight();	// update the table	// first check to see if the class counts are all zero now	boolean ok = false;	for (int i=0;i<normDist.length;i++)	  if (!Utils.eq(normDist[i],0.0))	  {	    ok = true;	    break;	  }		if (ok)	{	  Utils.normalize(normDist);	  return Utils.maxIndex(normDist);	}	else	  return m_majority;      }      return Utils.maxIndex(tempDist);    }    else    {      // see if this one is already in the table      if ((tempDist = (double[])m_entries.get(thekey)) != null)      {	normDist = new double [tempDist.length];	System.arraycopy(tempDist,0,normDist,0,tempDist.length);	normDist[0] -= (instance.classValue() * instance.weight());	normDist[1] -= instance.weight();	if (Utils.eq(normDist[1],0.0))	    return m_majority;	else	  return (normDist[0] / normDist[1]);      }      else      {	System.out.println("Shouldnt get here");	System.exit(1);      }    }        // shouldn't get here     return 0.0;  }