
# dolphin.py
# Fig. 11.2 
# input: 3 10 or 6 15

from egcd import gcd

m,n = map(int, input("m n=? ").split())
v = [i for i in range(n)]
print("Original:", v)
d = gcd(m, n)
print("No. of passes:", d)
for i in range(d): 
  j = i
  x = v[i]
  while True:
    k = j
    j = (j+m)%n
    v[k] = v[j]
    if j == i:  # back at start
      break
  v[k] = x
print(" Rotated:", v)
