#include <algorithm>
#include <iostream>
#include <string>
using namespace std;
int main() {
int N;
while (cin >> N) {
int nums[10001];
for (int i = 0; i < N; i++)
cin >> nums[i];
int n1 = max(nums[0], nums[1]);
int m1 = min(nums[0], nums[1]);
int _n1 = n1;
int _m1 = m1;
while (_m1 != 0) { // 辗转相除法,计算前两个数的最大公因数
int temp = _m1;
_m1 = _n1 % _m1;
_n1 = temp;
}
int n_m = n1 / _n1 * m1; // 计算前两个数的最小公倍数,先相除后相乘
for (int i = 1; i < N; i++) { // 计算整个数列的最小公倍数
int n = max(nums[i], n_m);
int m = min(nums[i], n_m);
int _n = n;
int _m = m;
while (_m != 0) {
int temp = _m;
_m = _n % _m;
_n = temp;
}
n_m = n / _n * m;
}
cout << n_m << endl;
}
return 1;
}