def Edinica(N):
R = 0
c = 1
i = 1
while i <= N:
c = (c *2) % N
if c == 1 :
#print( N, i)
R = i
i = N
i +=1
return R
a = 17
b = 59
x = a * b
q = int(x.bit_length())
print (a, b, x, q)
y = 11
N = x * y
q = int(N.bit_length())
print ( x, y, N, q)
c1 = Edinica(N)
c2 = Edinica(x)
c3 = Edinica(y)
print(c2, c3, c1, c1/c2)
v1 = N % c1
v2 = x % c2
w1 = a * y + b
w2 = b * y + a
w3 = a * b + y
print(v1,v2, w1,w2,w3, v2 * y)
ZGVmIEVkaW5pY2EoTik6CQkJCQkKCVIgPSAwCQkJCQoJYyA9IDEJCQkJCglpID0gMQkJCQkKCXdoaWxlIGkgPD0gTjogCQkJCQoJCWMgPSAoYyAqMikgJSBOIAkJCQoJCWlmIGMgPT0gMSA6CQkJCgkJCSNwcmludCggIE4sICBpKQkJCgkJCVIgPSBpCQkKCQkJaSA9IE4JCQoJCWkgKz0xCQkJCglyZXR1cm4gUgkJCQkKYSA9IDE3CQkJCQkKYiA9IDU5CQkJCQkKCQkJCQkKeCA9IGEgKiBiCQkJCQkKcSA9IGludCh4LmJpdF9sZW5ndGgoKSkJCQkJCQpwcmludCAoYSwgYiwgeCwgcSkJCQkJCQp5ID0gMTEJCQkJCQpOID0geCAqIHkJCQkJCQpxID0gaW50KE4uYml0X2xlbmd0aCgpKQkJCQkJCnByaW50ICggeCwgeSwgTiwgcSkJCQkJCQpjMSA9IEVkaW5pY2EoTikJCQkJCQpjMiA9IEVkaW5pY2EoeCkJCQkJCQpjMyA9IEVkaW5pY2EoeSkJCQkJCQpwcmludChjMiwgYzMsIGMxLCBjMS9jMikKdjEgPSBOICUgYzEKdjIgPSB4ICUgYzIKdzEgPSBhICogeSArIGIKdzIgPSBiICogeSArIGEKdzMgPSBhICogYiArIHkKcHJpbnQodjEsdjIsIHcxLHcyLHczLCB2MiAqIHkp
(17, 59, 1003, 10)
(1003, 11, 11033, 14)
(232, 10, 1160, 5)
(593, 75, 246, 666, 1014, 825)