#include <stdio.h>
#include <iostream>
#include <algorithm>
#include <iomanip>
#include <map>
#include <fstream>
#include <sstream>
#include <math.h>
#include <queue>
#include <stack>
#include <math.h>
#include <string.h>
#include <set>


using namespace std;

int main(){
    int n;
    while(cin>>n){
        if(n==0)break;
        int box[10001]={0};
        
        set<int> se;
        for(int i=1; i<n; i++){
            int ii=i*i % n;
            se.insert(ii);
        }
        
        /*
        for(int i=1; i<=n/2; i++){
            cout<<box[i]<<endl;
        }
        */
        
        // 要素を出力する
        vector<int> a_b;
        set<int>::iterator it = se.begin();
        while( it != se.end() )
        {
            
            //cout << *it << endl;
            a_b.push_back(*it);
            it++;
        }
        
        for(int i=0; i<a_b.size(); i++){
            for(int j=0; j<a_b.size(); j++){
                int ans=abs(a_b[i]-a_b[j]);
                if(ans>n/2)ans=n-ans;
                box[ans]++;
            }
        }
        
        for(int i=1; i<=n/2; i++){
            cout<<box[i]<<endl;
        }
        
        
        
    }
}