#include<bits/stdc++.h>
using namespace std;
int n,m,x,y,r,z,vis[1500][1500],t[1500][1500],cnt=1;
void right(){
for(int i=x-r;i<=x+r;i++){
for(int j=y-r;j<=y+r;j++)
t[j+x-y][x-i+y]=vis[i][j];
}return ;
}void left(){
for(int i=x-r;i<=x+r;i++){
for(int j=x-r;j<=y+r;j++)
t[y-j+x][i-x+y]=vis[i][j];
}return ;
}
int main(){
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
vis[i][j]=cnt++;
}while(m--){
scanf("%d%d%d%d",&x,&y,&r,&z);
memset(t,0,sizeof(t));
if(z==0)
right();
else
left();
for(int i=x-r;i<=x+r;i++){
for(int j=y-r;j<=y+r;j++)
vis[i][j]=t[i][j];
}
}for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++)
printf("%d ",vis[i][j]);
printf("\n");
}
return 0;
}