#include #define rep(i,a,b) for(int i=a;i<(b);++i) #define erep(i,a,b) for(int i=a;i<=(int)(b);++i) #define per(i,a,b) for(int i=(a);i>(b);--i) #define eper(i,a,b) for(int i=(a);i>=b;--i) #define fore(x, a) for(auto &x : a) #define pb push_back #define mp make_pair #define INF 100100100100 #define inf 2001001001 #define MOD 1000000007 #define ALL(x) begin(x),end(x) using namespace std; using ll = long long; using pii = pair; using vii = vector; using vll = vector; templateusing vv = vector; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (bvoid show(const vector &a) { for (int i = 0; i < (int)a.size(); ++i) cout << a[i] << (i != (int)a.size()-1 ? " " : "\n"); } templateT gcd(T a, T b){ return b ? gcd(b, a % b) : a; } templateT lcm(T a, T b){ return a / gcd(a, b) * b; } int dy[]={0, 1, -1, 0}; int dx[]={1, 0, 0, -1}; ll a = 1, b = 1; int main() { cin.tie(0); ios::sync_with_stdio(false); int k; cin >> k; rep(j, 0, k) { int x; cin >> x; if (j == 0) a = x; else b *= x; } cin >> k; rep(j, 0, k) { int x; cin >> x; if (j == 0) b *= x; else a *= x; } rep(i, 2, 100) { if (a % i == 0 && b % i == 0) a /= i, b /= i; } if (a < 0 && b < 0) a = abs(a), b = abs(b); else if (b < 0 && a > 0) a = -a, b = -b; cout << a << " " << b << endl;; return 0; }