#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
int n, m;
int s[501][501];
int h[501][501];
void turn(int a,int b,int c,bool d)
{
if (!d)
{
for (int i1 = b - c, j2 = c * 2 + 1; i1 <= b + c; i1++,j2--)
{
for (int j1 = a - c,i2=1; j1 <= a + c; j1++,i2++)
{
h[j2][i2] = s[j1][i1];
}
}
for (int i1 = b - c, i2 = 1; i1 <= b + c; i1++, i2++)
{
for (int j1 = a - c, j2 = 1; j1 <= a + c; j1++, j2++)
{
s[j1][i1] = h[j2][i2];
}
}
}
else
{
for (int i1 = b-c, j2 = 1; i1 <= b + c; i1++, j2++)
{
for (int j1 = a-c, i2 = 2*c+1; j1 <= a + c; j1++, i2--)
{
h[j2][i2] = s[j1][i1];
}
}
for (int i1 = b - c, i2 = 1; i1 <= b + c; i1++, i2++)
{
for (int j1 = a - c, j2 = 1; j1 <= a + c; j1++, j2++)
{
s[j1][i1] = h[j2][i2];
}
}
}
}
int main()
{
int p = 0;
cin >> n >> m;
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= n; j++)
{
p++;
s[j][i] = p;
}
}
while (m--)
{
int x, y, r;
bool z;
cin >> x >> y >> r >> z;
turn(x,y,r,z);
}
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= n; j++)
{
cout << s[j][i]<<" ";
}
cout << endl;
}
return 0;
}