import sys
import eulerlib

waterline=1000000
#waterline=1000
#waterline=100

p=eulerlib.prime_numbers.prime_gen()
primes=[]
while True:
    t=next(p)
    if t>waterline:
        break
    primes.append(t)

#maxi=1000
#max_so_far=0
#max_seq=0
#cur_sum=0
primes_t=len(primes)
#primes_t=primes.index(953)+1
#sums=[]
#t=0
max_seq=0
for i in range(primes_t):
    #if primes[i]>waterline:
    #    break
    print ("i=%d" % i)
    seq_sum=0
    #for j in range(i+1, primes_t):
    j=i+1
    while j<primes_t:
        #seq_len=j-i
        seq=primes[i:j]
        #seq_sum=sum(seq)
        #try:
        seq_sum=seq_sum+primes[j-1]
        #except:
        #    print ("except j=%d" % j)
        #    sys.exit(0)
        if seq_sum<waterline:
            if seq_sum in primes:
                seq_len=j-i
                if seq_len>max_seq:
                    max_seq=seq_len
                    max_sum=seq_sum
                    print ("new max_seq=%06d max_sum=%d" % (max_seq, max_sum))

        if seq_sum>waterline:
            #print ("breaking at j=%d" % j)
            break
        j=j+1

print ("resulting max_seq=%d" % max_seq)
print ("resulting max_sum=%d" % max_sum)
