#include<bits/stdc++.h>
using namespace std;
int a,f[250],prime[50]={0,2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199};
bool is_prime(int x){
if(x<2)return 0;
for(int i=2;i*i<=x;++i){
if(x%i)continue;
return 0;
}
return 1;
}
int dfs(int x){
if(f[x])return f[x];
if(x==0)return 1;
if(x==2)return 1;
if(x==3)return 1;
if(is_prime(x)){
f[x]=1;
}
for(int i=1;i<=x/2;++i){
int p=x-i;
f[x]+=dfs(p)*dfs(i);
}
return f[x];
}
int main(){
while(cin>>a){
memset(f,0,sizeof(f));
f[0]=1;
printf("%d\n",dfs(a));
}
return 0;
}