#include<stdio.h>
#include<math.h>
bool sushu(int x){
if(x<=1)return false;
int bound=(int)sqrt(x)+1;
for (int i=2;i<bound;i++){
if(x%i==0)return false;
}
return true;
}
int main (){
int n,ans,i,j;
while(scanf("%d",&n)!=EOF){
if(n==0)break;
ans=0;
int bound=n/2;
for(i=2;i<=bound;i++){
j=n-i;
if(sushu(i)==true&&sushu(j)==true){
ans+=1;
}
}
printf("%d\n",ans);
}
return 0;
}
#include<math.h>
bool sushu(int x){
if(x<=1)return false;
int bound=(int)sqrt(x)+1;
for (int i=2;i<bound;i++){
if(x%i==0)return false;
}
return true;
}
int main (){
int n,ans,i,j;
while(scanf("%d",&n)!=EOF){
if(n==0)break;
ans=0;
int bound=n/2;
for(i=2;i<=bound;i++){
j=n-i;
if(sushu(i)==true&&sushu(j)==true){
ans+=1;
}
}
printf("%d\n",ans);
}
return 0;
}