import sys stdin = sys.stdin sys.setrecursionlimit(10**5) def li(): return map(int, stdin.readline().split()) def li_(): return map(lambda x: int(x)-1, stdin.readline().split()) def lf(): return map(float, stdin.readline().split()) def ls(): return stdin.readline().split() def ns(): return stdin.readline().rstrip() def lc(): return list(ns()) def ni(): return int(stdin.readline()) def nf(): return float(stdin.readline()) def get_gcd(a:int, b:int) -> int: while b: a, b = b, a % b return a n1 = ni() a = list(li()) n2 = ni() b = list(li()) up = a[0] bt = 1 for ai in a[1:]: bt *= ai for i, bi in enumerate(b): if i%2: up *= bi else: bt *= bi gcd = get_gcd(up,bt) print(up//gcd, bt//gcd)