Duff is in love with lovely numbers! A positive integer *x* is called lovely if and only if there is no such positive integer *a* &gt; 1 such that *a*<sup class="upper-index">2</sup> is a divisor of *x*.

Malek has a number store! In his store, he has only divisors of positive integer *n* (and he has all of them). As a birthday present, Malek wants to give her a lovely number from his store. He wants this number to be as big as possible.

Malek always had issues in math, so he asked for your help. Please tell him what is the biggest lovely number in his store.
The first and only line of input contains one integer, *n* (1 ≤ *n* ≤ 10<sup class="upper-index">12</sup>).
inp = int(input())


def divideM(inp, divisor, mult):
    a = inp / divisor
    b = inp // divisor
    divided = False
    while a == b:
        divided = True
        inp = b
        a = inp / divisor
        b = inp // divisor
    if divided:
        return inp * mult
    return inp


mult = 2
k = mult * mult
while k <= inp:
    inp = divideM(inp, k, mult)
    mult += 1
    k = mult * mult

print(inp)
