import fractions

import functools



N = int( eval(input()) )

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



def lcm( x, y ):

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



def lcm_list( numbers ):

    return functools.reduce( lcm, numbers, 1 )



if N == 1: print(( T[0] ))

else     : print(( lcm_list(T) ))
N = int( eval(input()) )

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





# 最小公倍数を求めたい

# aとbの最小公倍数 = a*b / aとbの最大公約数

# 最大公約数 (Greatest Common Divisor)

def GCD( a, b ):

    if b == 0: return a

    return GCD(b, a%b)



# 最小公倍数 (Least Common Multiple)

def LCM( a, b ):

    return a*b // GCD(a,b)





ans = 1

for i in range(N): ans = LCM( ans, T[i] )

print( ans )
import fractions
import functools

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


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


def lcm_list(numbers):
    return functools.reduce(lcm, numbers, 1)


if N == 1:
    print((T[0]))
else:
    print((lcm_list(T)))

N = int(eval(input()))
T = [int(eval(input())) for _ in range(N)]
# 最小公倍数を求めたい
# aとbの最小公倍数 = a*b / aとbの最大公約数
# 最大公約数 (Greatest Common Divisor)
def GCD(a, b):
    if b == 0:
        return a
    return GCD(b, a % b)


# 最小公倍数 (Least Common Multiple)
def LCM(a, b):
    return a * b // GCD(a, b)


ans = 1
for i in range(N):
    ans = LCM(ans, T[i])
print(ans)

-import fractions -import functools - +# 最小公倍数を求めたい +# aとbの最小公倍数 = a*b / aとbの最大公約数 +# 最大公約数 (Greatest Common Divisor) +def GCD(a, b): +    if b == 0: +        return a +    return GCD(b, a % b) -def lcm(x, y): -    return x * y // fractions.gcd(x, y) +# 最小公倍数 (Least Common Multiple) +def LCM(a, b): +    return a * b // GCD(a, b) -def lcm_list(numbers): -    return functools.reduce(lcm, numbers, 1) - - -if N == 1: -    print((T[0])) -else: -    print((lcm_list(T))) +ans = 1 +for i in range(N): +    ans = LCM(ans, T[i]) +print(ans)