for Y in C: pm=Y[0]+Y[1] px=Y[-2]+Y[-1] o=[k for k in range(3) if k!=i] for j,(jl,jr) in enumerate(I): for tv in range(px-jr,pm-jl+1): t=tv%p if t in Y:continue B=rng(Y,t,I[o[0]]) if not B:continue D=rng(Y,t,I[o[1]]) if not D:continue F=0 for b0,b1 in B: for c0,c1 in D: if hit(b0,b1,c0,c1,t):F=1 if F: print('FOUND',i,len(Y),j,t,Y[0],Y[-1],B,D,flush=True) raise SystemExit print('done')