#include<bits/stdc++.h>
#define N 1000005
using namespace std;
bool prime[N];
set<int> p;
int n,ans;


int main(){
  for(int i=0;i<N;i++)prime[i]=true;
  prime[0]=prime[1]=false;
  for(int i=0;i*i<N;i++){
    if(!prime[i])continue;
    for(int j=i*2;j<N;j+=i)prime[j]=false;
  }
  for(int i=0;i<N;i++)
    if(prime[i])p.insert(i);
  while(1){
    cin>>n;
    if(!n)break;
    ans=0;
    set<int>::iterator ite;
    for(ite=p.begin();ite!=p.end();ite++){
      int key=n-(*ite);
      if((*ite)>key)continue;
      if(p.count(key))ans++;
    }
    cout<<ans<<endl;
  }
  return 0;
}