#include<iostream>
using namespace std;
int main() {
int n, m, temp = 1;
int SZ1[600][600], SZ2[600][600], ML[600][600];
cin >> n >> m;
for (int a = 0; a < n; a++) {
for (int b = 0; b < n; b++) {
SZ1[a][b] = temp;
temp++;
}
}
for (int a = 0; a < m; a++) {
for (int b = 0; b < 4; b++) {
cin >> ML[a][b];
}
}
for (int a = 0; a < m; a++) {
if (ML[a][3] == 0) {
for (int a1 = ML[a][0] - 1 - ML[a][2]; a1 <= ML[a][0] - 1 + ML[a][2]; a1++) {
for (int b1 = ML[a][1] - 1 + ML[a][2]; b1 >= ML[a][1] - 1 - ML[a][2]; b1--) {
SZ2[2 * ML[a][1] - 2 - b1][a1] = SZ1[a1][b1];
}
}
for (int a1 = ML[a][0] - 1 - ML[a][2]; a1 <= ML[a][0] - 1 + ML[a][2]; a++) {
for (int b1 = ML[a][1] - 1 - ML[a][2]; b1 <= ML[a][1] - 1 + ML[a][2]; b1++) {
SZ1[a1][b1] = SZ2[a1][b1];
}
}
}
if (ML[a][3] == 1) {
for (int a1 = ML[a][0] - 1 + ML[a][2]; a1 >= ML[a][0] - 1 - ML[a][2]; a1--) {
for (int b1 = ML[a][1] - 1 - ML[a][2]; b1 <= ML[a][1] - 1 + ML[a][2]; b1++) {
SZ2[b1][2 * ML[a][0] - 2 - a1] = SZ1[a1][b1];
}
}
for (int a1 = ML[a][0] - 1 - ML[a][2]; a1 <= ML[a][0] - 1 + ML[a][2]; a1++) {
for (int b1 = ML[a][1] - 1 - ML[a][2]; b1 <= ML[a][1] - 1 + ML[a][2]; b1++) {
SZ1[a1][b1] = SZ2[a1][b1];
}
}
}
}
for (int a = 0; a < n; a++) {
for (int b = 0; b < n; b++) {
cout << SZ1[a][b] << ' ';
}
cout << endl;
}
return 0;
}