#include <iostream>
#include <algorithm>
#include <vector>
#include <cstring>
using namespace std;

int main() {
    int n;
    while(cin>>n, n) {
        vector<int> vi;
        for(int i=1; i<n; ++i)
            vi.push_back(i*i%n);

        sort(vi.begin(), vi.end());
        vector<int>::iterator uni = unique(vi.begin(), vi.end());
        vi.erase(uni, vi.end());

        int cnt[(n-1)/2+1];
        memset(cnt, 0, sizeof(cnt));

        for(int i=0; i<vi.size(); ++i) {
            for(int j=i+1; j<vi.size(); ++j) {
                int ci = vi[i] - vi[j];
                if(ci < 0) ci += n;
                if(ci > (n-1)/2) ci = n - ci;
                cnt[ci]++;
            }
        }

        for(int i=1; i<=(n-1)/2; ++i) cout<<cnt[i]*2<<endl;
    }
}