import sys, time, random from collections import deque, Counter, defaultdict input = lambda: sys.stdin.readline().rstrip() ii = lambda: int(input()) mi = lambda: map(int, input().split()) li = lambda: list(mi()) inf = 2 ** 63 - 1 mod = 998244353 n = ii() AB = [li() for _ in range(n)] AB.sort(key = lambda x: x[0] * x[1], reverse=True) c = [inf] * (2 * 10 ** 5 + 2) ans = 0 for a, b in AB: for i in range(1, a + 1): if i * i > a: break if a % i == 0: g = i ans = max(ans, a * b // (a * c[g] // g)) g = a // i ans = max(ans, a * b // (a * c[g] // g)) for i in range(1, a + 1): if i * i > a: break if a % i == 0: g = i c[g] = min(c[g], a) g = a // i c[g] = min(c[g], a) print(ans)