#include<stdio.h>
int x[10005],p[5005],n;
void db()
{
x[0]=x[1]=1;int cnt=0;
for(int i=2;i<10005;++i)//打表素数
{
if(!x[i])
{
p[cnt++]=i;//保存素数
for(int j=2;j*i<10005;++j)
{
x[i*j]=1;
}
}
}
}
void slove()
{
int tp=n/2,cnt=0;;
for(int i=0;p[i]<tp;++i)//只需要查找一半
{
if(x[n-p[i]]==0)//某个数是素数,并且商也是素数
{
++cnt;
}
}
printf("%d\n",cnt);
}
int main()
{
db();
while(scanf("%d",&n),n)
{
slove();
}
return 0;
}