#次の素数
def Next_Prime(N,K=1):
    """
    Nを上回る自然数のうち,K番目に小さい素数

    N:自然数
    """
    if K>0:
        while K>0:
            N+=1
            if Is_Prime(N):
                K-=1
    else:
        while K<0:
            N-=1
            if Is_Prime(N):
                K+=1
    return N

#素数判定
def Is_Prime(N):
    N=abs(N)
    if N<=1:
        return False

    k=2
    while k*k<=N:
        if N%k==0:
            return False
        k+=1
    return True
#================================================
N=int(input())

if N==1:
    print(1)
    exit()

N-=1
T=[]
for i in range(1,N+1):
    T.append(Next_Prime(10**5,i))

P=[a*b for a in T for b in T]
P.sort()
print(P[N-1])