if( mc.nums[0] < 0.1 ) {
if( mc.nums[0] < 0.3 ) {
  protected double fuzzyFindCandidates( HashSet candidates, ONode key, ONode treeRoot, double mmc ) {    // Threshold should probably depend on distance from previous match etc.    MatchNumbers mc = getMatchNumbers(null,key,treeRoot,true);/*    MisCorrelation mc = new MisCorrelation();    mc.correlate(key,treeRoot);    double cval =  mc.getValue();*/    if( mc.nums[0] < 0.1 ) { // 1.0 Magic correlation for candidates      Candidate c = new Candidate();      c.mc=mc.nums[0];      c.node=treeRoot;      candidates.add(c);      if( c.mc < mmc )        mmc = c.mc;    }    if( treeRoot instanceof ElementNode ) {      Vector children = ((ElementNode) treeRoot).children;      for(int i=0;i<children.size();i++) {        double thatmin = fuzzyFindCandidates(candidates, key, (ONode) children.elementAt(i), mmc );        mmc = thatmin < mmc ? thatmin : mmc;      }    }    return mmc;  }