def encrypt(res): h = Decimal(int(0)) for i in range(len(keys)): h += res[i] * keys[i]
ct = int(h * int(16)**int(64)) return ct
def f(N): ln = len(arr) A = Matrix(ZZ, ln + 1, ln + 1) for i in range(ln): A[i, i] = 1 A[i, ln] = arr[i] // N A[ln, i] = 64
A[ln, ln] = ct // N
res = A.LLL()
for i in range(ln + 1): flag = True for j in range(ln): if -64 <= res[i][j] < 64: continue flag = False break if flag: vec = [int(v + 64) for v in res[i][:-1]] ret = encrypt(vec) if ret == ct: print(N, bytes(vec)) else: print("NO", ret, bytes(vec))