# @DrMcMoylex This should work primes = [] # list of the 4-digit prime numbers numbers = ["()" * i for i in range(10000)] for i in range(2, 10000): for j in range(1, 8): try(i, "numbers[i + j]\[numbers[j]]") try(i + 1, "%s()" % numbers[i]) try(i * 2, "(%s){}" % numbers[i]) try(i * 3, "((%s)){}{}" % numbers[i]) try(i * 3 + 2, "((%s)()){}{}" % numbers[i]) for l in range(1, int(i**.5) + 1): if not i % l: for (j = 0; (k = ((i + j + j) * i / l + i) / 2) < 10000; j++):