#include <bits/stdc++.h>
using namespace std;
int ucln2so(int x, int y)
{
	if (x % y == 0)
		return y;
	return ucln2so(y, x % y);
}
int ucln(int a[], int n)
{
	int ucln=a[0];
	for(int i=1;i<n;i++)
	{
		ucln=ucln2so(ucln,a[i]);
	}
	return ucln;
}
int bcnn2so(int x,int y)
{
	return (x*y)/ucln2so(x, y);
}
int bcnn(int a[],int n)
{
	int bcnn=a[0];
	for (int i=1;i<n;i++)
	{
		bcnn=bcnn2so(bcnn,a[i]);
	}
	return bcnn;
}
int main()
{
    ifstream f1("UCBC.INP");
    ofstream f2("UCBC.OUT");
    int a[100],n,i;
    f1>>n;
    for(i=0;i<n;i++)
    {
        f1>>a[i];
    }
    f2<<ucln(a,n)<<endl;
    f2<<bcnn(a,n)<<endl;
    f1.close();
    f2.close();
    return 0;
}
