using System; using static System.Console; using System.Linq; using System.Collections.Generic; class Program { static int NN => int.Parse(ReadLine()); static int[] NList => ReadLine().Split().Select(int.Parse).ToArray(); static int[][] NArr(long n) => Enumerable.Repeat(0, (int)n).Select(_ => NList).ToArray(); public static void Main() { Solve(); } static void Solve() { var n = NN; var a = NList; var m = NN; var b = NList; var ch = 1L; var pa = 1L; ch *= a[0]; for (var i = 1; i < n; ++i) pa *= a[i]; for (var i = 0; i < m; ++i) { if (i % 2 == 0) pa *= b[i]; else ch *= b[i]; } if (pa < 0) { pa *= -1; ch *= -1; } var gcd = GCD(Math.Abs(ch), pa); ch /= gcd; pa /= gcd; WriteLine($"{ch} {pa}"); } static long GCD(long a, long b) { if (a < b) return GCD(b, a); if (a % b == 0) return b; return GCD(b, a % b); } }