#include<cstdio>
#include<cstring>
const int maxn=2005;
int n;
int vis[maxn];
int SG[maxn];
int Gao(int x){
int i,j,k;
if(SG[x]!=-1)return SG[x];
memset(vis,0,sizeof(vis));
for(i=1;i<=x-5-i;i++){
k=Gao(i)^Gao(x-5-i);
vis[k]=1;
}
if(x>=3)vis[Gao(x-3)]=1;
if(x>=4)vis[Gao(x-4)]=1;
if(x>=5)vis[Gao(x-5)]=1;
for(i=0;i<maxn;i++)
if(!vis[i]){
SG[x]=i;
break;
}
return SG[x];
}
void init(){
memset(SG,-1,sizeof(SG));
SG[0]=0;SG[1]=1;SG[2]=1;
for(int i=3;i<maxn;i++){
SG[i]=Gao(i);
}
}
int main(){
init();
while(scanf("%d",&n)!=EOF){
if(SG[n])puts("1");
else puts("2");
}
return 0;
}