#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef unsigned long long ull;
#define FOR(i,a,b) for(int i=(a);i<(int)(b);i++)
#define rep(i,n) FOR(i,0,n)
#define ALL(x) (x).begin(), (x).end()
#define pb push_back
#define mp make_pair

vector<int> primes;

bool is_prime(int n) {
    if(n < 2) return false;
    if(n == 2) return true;
    if(n % 2 == 0) return false;
    for(int i=3; i*i<=n; ++i) if(n % i == 0) return false;
    return true;
}

int main() {
    rep(i,50003) if(is_prime(i)) primes.push_back(i);
    int m = primes.size();

    int n;
    while(cin>>n,n) {
        int cnt=0;
        for(int i=0; i<m; i++) {
            for(int j=i; j<m; j++) {
                if(primes[i] + primes[j] == n) ++cnt;
            }
        }
        cout << cnt << "\n";
    }
    return 0;
}