@Test private void testWinning() throws Exception { LotteryResultsLoader loader = new JSONLotteryResultsLoader<Lotto6aus9LotteryResults>( LOTTO6AUS9_RESULTS_FILE, Lotto6aus9LotteryResults.class); LotteryResults results = loader.load(); results.shrink(10); FrequencyQuery fquery = new FrequencyQuery<Lotto6aus49>(results); FrequencyQuery reversefquery = new FrequencyQuery<Lotto6aus49>(results); // reversefquery.setReverse(true); final ArrayList<Integer> topNumbersSet = fquery.topNumbersSet(30); topNumbersSet.removeAll( new Lotto6aus9LotteryResults(results, 1) .getGames() .iterator() .next() .getNumbers() .getNumbers()); // final Set<Integer> bottomNumbersSet = reversefquery.topNumbersSet(15); // topNumbersSet.addAll(bottomNumbersSet); EffectivenessRank effectivenessRank = new EffectivenessRank(results); subsets(topNumbersSet, 6, effectivenessRank); for (Map.Entry<Double, GenericResult> entry : effectivenessRank.getRank().entrySet()) { System.out.println(entry.getKey() + ": "); entry.getValue().printResult(); System.out.println(); } }