from math import gcd def lcm(a, b): return a * b // gcd(a, b) n = int(input()) L = [] A = [] for i in range(n): a, b = map(int, input().split()) L.append((a, b)) A.append([a, i]) lcm_n = 1 for i in range(n): lcm_n = lcm(lcm_n, L[i][1]) for i in range(n): A[i][0] *= lcm_n // L[i][1] A.sort(key=lambda x: -x[0]) for i in range(n): print(*L[A[i][1]])