#include <bits/stdc++.h>
using namespace std;
int main(){
	int h, w, n; cin >> h >> w >> n;
	auto valid = [&](int x, int y){
		if(x < 1 || y < 1) return false;
		if(x + 2 > h || y + 2 > w) return false;
		return true;
	};
	map<pair<int,int>, int > good;
	for(int i = 0; i < n; i++){
		int x, y; cin >> x >> y;
		for(int j = -2; j <= 0; j++) for(int k = -2; k <= 0; k++) if(valid(x + j, y + k)) {
			good[{x+j,y+k}]++;
		}
	}
	vector<long long> res(10, 0);
	for(auto e : good) res[e.second]++;
	res[0] = 1ll * (h - 2) * (w - 2);
	for(int i = 1; i < 10; i++) res[0] -= res[i];
	for(auto v : res) cout << v << endl;
	return 0;
}
