#include<iostream>
#include<vector>
#include<queue>
#include<algorithm>
#include<cstring>
using namespace std;
#define int long long
int a[1505][1505];
int tmp[1505][1505];
void work(int x,int y,int r,int de)
{
int sx,dx,tx,wx;
int sy,dy,ty,wy;
sx=x-r;dx=x-r;tx=x+r;wx=x+r;
sy=y-r;dy=y+r;ty=y-r;wy=y+r;
if(de)
{
for(int i=wx,ii=sx;i>=sx||ii<=wx;i--,ii++)
{
for(int j=sy;j<=wy;j++)
{
tmp[ii][j]=a[j][i];
}
}
}
else
{
for(int i=sx;i<=wx;i++)
{
for(int j=wy,jj=sy;j>=sy||jj<=wy;j--,jj++)
{
tmp[i][jj]=a[j][i];
}
}
}
for(int i=sx;i<=wx;i++)
{
for(int j=sy;j<=wy;j++)
{
a[i][j]=tmp[i][j];
}
}
// for(int i=sx;i<=wx;i++)
// {
// for(int j=sy;j<=wy;j++)
// {
// cout<<tmp[i][j]<<" ";
// }
// cout<<endl;
// }
}
signed main()
{
int n,m;
cin>>n>>m;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
a[i][j]=(i-1)*n+j;
}
}
for(int i=1;i<=m;i++)
{
int x,y,r,d;
cin>>x>>y>>r>>d;
work(x,y,r,d);
}
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
return 0;
}