A, B = map(int, input().split()) swap = False if A < B: A, B = B, A swap = True L = A**2+B**2 ansA = [] ansB = [] cnt = 0 S = set() for i in range(L): h, w = (A*cnt+i*B)%L, i*A%L if (h, w) in S: cnt += 1 h += A h %= L ansA.append((h, w)) S.add((h, w)) cnt = 0 S = set() for i in range(L): h, w = i*B%L, (A+B*cnt+i*A)%L while (h, w) in S: cnt += 1 w += B w %= L ansB.append((h, w)) S.add((h, w)) if swap: A, B = B, A ansA, ansB = ansB, ansA for x, y in ansA: print(x, y) for x, y in ansB: print(x, y) #test # ans = [["."]*L for _ in range(L)] # for h, w in ansA: # for i in range(A): # for j in range(A): # if ans[(h+i)%L][(w+j)%L] != ".": print("NG(A)") # ans[(h+i)%L][(w+j)%L] = "o" # for h, w in ansB: # for i in range(B): # for j in range(B): # if ans[(h+i)%L][(w+j)%L] != ".": print("NG(B)") # ans[(h+i)%L][(w+j)%L] = "x" # for a in ans: # print("".join(a)) #test