import fractions

try:

    A,B = list(map(int,input().split()))

    def lcm(x, y):

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

    print((lcm(A,B)))

except EOFError:

    pass
a,b=list(map(int,input().split()))



#a,bの最大公約数

def gcd(a, b):

    while b:

        a, b = b, a % b

    return a



#a,bの最小公倍数

def lcm(a, b):

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



print((lcm(a,b)))
import fractions

try:
    A, B = list(map(int, input().split()))

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

    print((lcm(A, B)))
except EOFError:
    pass

a, b = list(map(int, input().split()))
# a,bの最大公約数
def gcd(a, b):
    while b:
        a, b = b, a % b
    return a


# a,bの最小公倍数
def lcm(a, b):
    return a * b // gcd(a, b)


print((lcm(a, b)))

-import fractions +a, b = list(map(int, input().split())) +# a,bの最大公約数 +def gcd(a, b): +    while b: +        a, b = b, a % b +    return a -try: -    A, B = list(map(int, input().split())) -    def lcm(x, y): -        return (x * y) // fractions.gcd(x, y) +# a,bの最小公倍数 +def lcm(a, b): +    return a * b // gcd(a, b) -    print((lcm(A, B))) -except EOFError: -    pass + +print((lcm(a, b)))