#include <iostream>
#include <vector>
using namespace std;
int prim[10008];
int sum[10008];
int main()
{
for(int i=2;i<=10000;i++)
{
if(prim[i]==0)
{
for(int j=2;j*i<=10000;j++)
{
prim[j*i]=1;
}
}
}
vector<int> ve;
ve.push_back(0);
for(int i=2;i<=10000;i++)
{
if(prim[i]==0)
{
ve.push_back(i);
//cout<<i<<" ";
}
}
//cout<<endl;
for(int i=1;i<ve.size();i++)
{
sum[i]=sum[i-1]+ve[i];
}
while(1)
{
int a;
cin>>a;
if(a==0)
{
break;
}
int jg=0;
for(int i=1;i<ve.size() && ve[i]<=a;i++)
{
for(int j=i;j<ve.size() && ve[j]<=a;j++)
{
if((sum[j]-sum[i-1])==a)
{
jg++;
}
}
}
cout<<jg<<endl;
}
return 0;
}