#include "bits/stdc++.h"
using namespace std;
typedef long long ll;
typedef pair<int,int> pii;
#define rep(i,n) for(ll i=0;i<(ll)(n);i++)
#define all(a)  (a).begin(),(a).end()
#define pb push_back
#define INF 999999999

int data[20000];

int f(int tmp,int n){
    if(data[10000+tmp]!=-1)return data[10000+tmp];
    int pre = tmp;
    while(1){
        bool f=true;
        if(tmp<0)tmp+=n,f=false;
        if(tmp>(n-1)/2)tmp = n-tmp,f=false;
        if(f)break;
    }
    data[10000+pre] = tmp;
    return tmp;
}

int main(){
    int n;
    while(cin>>n&&n){
        rep(i,20000)data[i] = -1;
        set<int> a;
        for(int i=1;i<n;i++){
            a.insert( (i*i)%n );
        }
        
        vector<int> vec;
        for(int x : a) vec.pb(x);
        map<int,int> b;

        rep(i,vec.size()){
            rep(j,vec.size()){
                if(i==j)continue;
                int tmp = vec[i]-vec[j];
                tmp = f(tmp,n);
                b[tmp]++;
            }
        }
        for(pii x : b){
            printf("%d\n",x.second);
        }
    }
}