Given the number n, find the smallest positive integer which has exactly n divisors. It is guaranteed that for the given n the answer will not exceed 1018.

Input

The first line of the input contains integer n (1 ≤ n ≤ 1000).

Output

Output the smallest positive integer with exactly n divisors.

Examples

Input

4


Output

6


Input

6


Output

12
PRIMOS = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31]

def solucion(n, prim_i=0, numero=1, divisores=1):
    if divisores == n:
        return numero
    sol = 10**18
    primo = PRIMOS[prim_i]
    for i in range(1, 64):
        if numero * primo > sol:
            break
        if divisores * (i+1) > n:
            break
        numero *= primo
        aux = solucion(n, prim_i+1, numero, divisores * (i+1))
        if aux < sol:
            sol = aux
    return sol



n = int(input())
if n == 1:
    print(1)
else:
    print(solucion(n))

