public static void fermatTwoSquareProblem() {
		for(long i= 1; i < 1000; i++) {
			if(isPrimeWeb(BigInteger.valueOf(i))) {
				allPrimes.add(i);
				if(allPrimes.size() > 1)	allGaps.add(i- allPrimes.get(allPrimes.size()-2));
				System.out.print(i+ ", ");
				if(1 == (i%4)) {
					long[] twoIntegers= findTwoSquares(i);
					if(0 == twoIntegers[0]) {
						System.err.printf("\n%3d == %2d^2 + %2d^2, ", i, twoIntegers[0], twoIntegers[1]);						
					} else if(1 == twoIntegers[0]) {
						System.out.printf("\n%3d == %2d^2 + %2d^2*, ", i, twoIntegers[0], twoIntegers[1]);
					} else {
						System.out.printf("\n%3d == %2d^2 + %2d^2, ", i, twoIntegers[0], twoIntegers[1]);
					}
					all1Primes.add(twoIntegers[0]);all1Primes.add(twoIntegers[1]);
					allCubedFactors.add(twoIntegers[0]);allCubedFactors.add(twoIntegers[1]);
				} else if(3 == (i%4)) {
					long[] twoIntegers= findTwoSquares(i);
					if(0 != twoIntegers[0]) {
						System.err.printf("\n%3d == %2d^2 + %2d^2!!!, ", i, twoIntegers[0], twoIntegers[1]);						
					}
					all3Primes.add(twoIntegers[0]);all3Primes.add(twoIntegers[1]);
					allCubedFactors.add(twoIntegers[0]);allCubedFactors.add(twoIntegers[1]);
				} else {
					System.err.print(i+ "!!!, ");
				}
			}
			sleep(2);
		}
	}