public LaterThanFilter createPercTimeFilter(double perc, HackFilter... fis)
  {
      ArrayList<Long> timeStamps = new ArrayList<Long>();
outerloop:
      for(HackResult res : allHacks) {
          for(HackFilter fi : fis) { 
              if ( !fi.accept(res) ) continue outerloop;
          }
          timeStamps.add((long)res.timestamp);
      }
      Collections.sort(timeStamps);
      int idx = (int) Math.round((timeStamps.size()-1) * (1.0 - perc));
      return new LaterThanFilter(timeStamps.get(idx));
  }