/*
TASK:N23
LANG:C++
*/
#include <iostream>
using namespace std;

int power[10001];
int help[10001];
int solution[10001];


int main()
{



int N;
cin>>N;
long int i,j;

for(i=1;i<=10000;i++)
	power[i]=0;


power[10000]=2;

for(j=1;j<N;j++)
{
for(i=1;i<=10000;i++)
{
	power[i]=power[i]*2;
	if(power[i]>9)
	{
		power[i-1]=power[i-1]+power[i]/10;
		power[i]=power[i]%10;
	}
}
}



for(i=1;i<=10000;i++)
if(power[i]!=0) break;

long int savei=i;

long int status=0;

j=0;

while(j*100000<300000000)
{
j++;
int savej=j;
int br=10000;
while(1)
{	
help[br]=savej%10;
savej=savej/10;
br--;
if(savej/10==0)
{
	help[br]=savej%10;
	break;
}
}


for(i=1;i<=10000;i++)
	solution[i]=0;

int savebr=br;

/*for(i=savebr;i<=10000;i++)
	cout<<help[i];
cout<<endl;*/

int k;





br=0; 
for(k=10000;k>=savebr;k--)
{for(i=10000;i>=savei;i--)
	{
	solution[i-br]=solution[i-br]+(help[k]*power[i]);
	//cout<<help[k]<<" "<<power[i]<<" "<<solution[i-br]<<endl;
	}
	

	/*for(i=sol;i<=10000;i++)
		cout<<solution[i]<<" ";
	cout<<endl;*/




	for(i=10000;i>=1;i--)
	{
		if(solution[i]>9)
		{
			solution[i-1]=solution[i-1]+solution[i]/10;
			solution[i]=solution[i]%10;
		}
	}

	//cout<<endl;
br++;
}


for(i=1;i<=10000;i++)
	if(solution[i]!=0) break;
int l;

int flag=1;
for(l=i;l<=10000;l++)
if(solution[l]!=2&&solution[l]!=3)
	{flag=0;
	break;
	}
if(flag==1)
	{for(l=i;l<=10000;l++)
				cout<<solution[l];
	cout<<endl;
	status=1;
	break;}



}

if(status==0) cout<<"NO\n";

/*for(j=savei;j<=10000;j++)
cout<<power[j];*/




return 0;
}