public static void main(String[] args) {
        final SieveOfAtkin sieve = new SieveOfAtkin(10000);
        final int max = 10000;
        final ArrayList<Integer> list = sieve.run();
        final HashMap<Integer, Integer> primes = new HashMap<Integer, Integer>();
        for (int prime : list) {
            primes.put(prime, primes.size());
        }
        final int imax = list.size();
        for (int i = 0; i < imax; i++) {
            final int prime1 = list.get(i);
            if (prime1 > 1000 && prime1 < 10000) {
                final int prime2 = prime1 + 3330;
                final int prime3 = prime2 + 3330;
                if (primes.containsKey(prime2) && primes.containsKey(prime3)) {
                    if (arePermutations(prime1, prime2, prime3)) {
//                        System.out.println(i + "\t" + prime1 + "\t" + prime2 + "\t" + prime3);
                        System.out.println(i + "\t" + prime1 + "" + prime2 + "" + prime3);
                    }
                }
            }
        }
//        System.out.println(arePermutations(1487, 4817, 8147));
    }