import fractions

import sys

from functools import reduce



read = sys.stdin.buffer.read

readline = sys.stdin.buffer.readline





def lcm_base(x, y):

    return (x * y) // fractions.gcd(x, y)





def lcm(*numbers):

    return reduce(lcm_base, numbers, 1)





def lcm_list(numbers):

    return reduce(lcm_base, numbers, 1)





def main():

    N = int(readline())

    T = list(map(int, read().split()))

    print((lcm(*T)))





main()

import math

from functools import reduce



# 最小公倍数

def lcm_base(x, y):

    return (x * y) // math.gcd(x, y)





def lcm(*numbers):

    return reduce(lcm_base, numbers, 1)





def lcm_list(numbers):

    return reduce(lcm_base, numbers, 1)





N = int(eval(input()))

T = [int(eval(input())) for _ in range(N)]

print((lcm_list(T)))

# print(lcm(*T))

import fractions
import sys
from functools import reduce

read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline


def lcm_base(x, y):
    return (x * y) // fractions.gcd(x, y)


def lcm(*numbers):
    return reduce(lcm_base, numbers, 1)


def lcm_list(numbers):
    return reduce(lcm_base, numbers, 1)


def main():
    N = int(readline())
    T = list(map(int, read().split()))
    print((lcm(*T)))


main()

import math
from functools import reduce

# 最小公倍数
def lcm_base(x, y):
    return (x * y) // math.gcd(x, y)


def lcm(*numbers):
    return reduce(lcm_base, numbers, 1)


def lcm_list(numbers):
    return reduce(lcm_base, numbers, 1)


N = int(eval(input()))
T = [int(eval(input())) for _ in range(N)]
print((lcm_list(T)))
# print(lcm(*T))

-import fractions -import sys +import math -read = sys.stdin.buffer.read -readline = sys.stdin.buffer.readline - - +# 最小公倍数 -    return (x * y) // fractions.gcd(x, y) +    return (x * y) // math.gcd(x, y) -def main(): -    N = int(readline()) -    T = list(map(int, read().split())) -    print((lcm(*T))) - - -main() +N = int(eval(input())) +T = [int(eval(input())) for _ in range(N)] +print((lcm_list(T))) +# print(lcm(*T))