#include <iostream>
#include <algorithm>
using namespace std;
int main ()
{
int n;
cin>>n;
long long a[n+1];
int i;
for(i=1;i<=n;i++)cin>>a[i];
long long lcm=a[1];
long long gcd;
for(i=2;i<=n;i++) //前两个数的最小公倍数作为这两个数的代表,用它和第三个数求最小公倍数
// 同理, 前n个数的最小公倍数
{ //作为前n个数的代表,用它和第n+1个数继续求最小公倍数
gcd=__gcd(lcm,a[i]);//原理:两个数的最小公倍数的倍数 除以这两个数中的任意一个都能整除
lcm=lcm/gcd*a[i]; // 最小公倍数是两数乘积除以最大公约数,但两数相乘可能爆ll,
} //反正除以的是公约数,两数都是公约数的倍数,所以先除一个,再乘另一个数
cout<<lcm<<endl;
return 0;
}