import std.algorithm,
       std.string,
       std.traits,
       std.array,
       std.range,
       std.stdio,
       std.conv;

N gcd(N)(N a, N b) if (isNumeric!N || is (N == BigInt)) { return a ? gcd(b % a, a) : b; }
N lcm(N)(N a, N b) if (isNumeric!N || is (N == BigInt)) { return a / gcd(a, b) * b; }

void main() {
  long N = readln.chomp.to!long;
  long[] T;
  foreach (_; 0..N) {
    T ~= readln.chomp.to!long;
  }
  long ans = T[0];

  foreach (long t; T[1..$]) {
    ans = lcm(ans, t);
  }

  writeln(ans);
}
