#include<stdio.h>
#include<iostream>
#include<string.h>
#include<algorithm>
using namespace std;
int tmp[70],a[70]={1},ans1[70],ans[70]={0};
int main()
{
int N,i,j,i1,j1,lena;
scanf("%d",&N);
for(i=1;i<=N;i++)
{
a[1]=1;
lena=1;
for(j=i;j>=2;j--)
{
int k=j,lens=1;
while(k)
{
tmp[lens++]=k%10;
k=k/10;
}
lens-=1;
memset(ans1,0,200);
for(i1=1;i1<=lena;i1++)
{
for(j1=1;j1<=lens;j1++)
{
ans1[i1+j1-1]+=a[i1]*tmp[j1];
ans1[i1+j1]+=(ans1[i1+j1-1]/10);
ans1[j1+i1-1]%=10;
}
}
if(ans1[lena+lens]!=0)
{
for(i1=1;i1<=lena+lens;i1++)
a[i1]=ans1[i1];
lena=lena+lens;
}
else
{
for(i1=1;i1<=lena+lens-1;i1++)
a[i1]=ans1[i1];
lena=lena+lens-1;
}
}
int i2=1;
while(i2<=lena)
{
ans[i2]=ans[i2]+a[i2];
ans[i2+1]+=ans[i2]/10;
ans[i2]%=10;
i2++;
}
}
if(ans[lena+1]!=0)
{
for(i=lena+1;i>=1;i--)
printf("%d",ans[i]);
}
else
{
for(i=lena;i>=1;i--)
printf("%d",ans[i]);
}
}