#include <iostream>
#include <map>
#include <set>
#include <vector>
using namespace std;

int main() {
	int n;

	while(cin >> n, n) {
		set<int> s;
		map<int,int> m;
		vector<int> v;

		for(int i = 1; i < n; i++) {
			s.insert(i*i % n);
		}
		for(set<int>::iterator iter = s.begin(); iter != s.end(); iter++) {
			v.push_back(*iter);
		}
		for(int i = 0; i < v.size(); i++) {
			for(int j = 0; j < v.size(); j++) {
				if(i != j) {
					int tmp = (v[i] - v[j] + n) % n;
					if(tmp > (n - 1) / 2) {
						tmp = n - tmp;
					}
					m[tmp]++;
				}
			}
		}
		for(int i = 1; i < (n + 1) / 2; i++)
			cout << m[i]<< endl;
	}
}