#include <bits/stdc++.h>
using namespace std;
#define faster ios_base::sync_with_stdio(false); cin.tie(NULL)
#define Bit(mask , i) ((mask >> i) & 1)
#define fi first
#define se second
#define _LOG2(nl) 31 - __builtin_clz(nl)
#define c_bit(nl) __builtin_popcount(nl)
#define li pair<long long , int>
#define db double
#define onBit(mask , i) (mask | (1 << i))
#define offBit(mask , i) (mask & (~(1 << i)))
const long long MOD = 1e9 + 7;
const int INF = 1e7;
const int N = 1e3 + 7;
long long BIT[N];
int k , p;
long long s[N][N] , a[21][N][N];
int ans[N][N];
struct query{
int x1 , y1 , x2 , t , id;
long long w;
};
vector<query> Query;
bool cmp(query x , query y){
if (x.t != y.t) return x.t < y.t;
if (x.y1 != y.y1) return x.y1 < y.y1;
return x.id > y.id;
}
void ktao(){
for (int i = 1 ; i <= k ; ++i){
for (int j = 1 ; j <= k ; ++j){
s[i][j] += s[i][j - 1] + s[i - 1][j] - s[i - 1][j - 1];
long long val = 0;
bool bl = 1;
for (int u = 0 ; u < 20 ; ++u){
a[u][i][j] += a[u][i - 1][j] + a[u][i][j - 1] - a[u][i - 1][j - 1];
if (a[u][i][j] * 2 == s[i][j]){
val = 0;
bl = 0;
}
if (!bl) continue;
if (a[u][i][j] * 2 > s[i][j]) val += (1LL << u);
}
if (val == 0) continue;
query e;
e.x1 = i , e.y1 = j , e.x2 = 0 , e.t = val;
e.w = 0;
e.id = 0;
Query.push_back(e);
}
}
}
void inp(){
cin >> k >> p;
for (int i = 1 ; i <= p ; ++i){
int x1 , y1 , x2 , y2 , t;
long long w;
cin >> x1 >> y1 >> x2 >> y2 >> t >> w;
s[x1][y1] += w;
s[x2 + 1][y1] -= w;
s[x1][y2 + 1] -= w;
s[x2 + 1][y2 + 1] += w;
for (int j = 0 ; j < 20 ; ++j) if (Bit(t , j)){
a[j][x1][y1] += w;
a[j][x2 + 1][y1] -= w;
a[j][x1][y2 + 1] -= w;
a[j][x2 + 1][y2 + 1] += w;
}
query e;
e.y1 = y1 , e.x1 = x1 , e.x2 = x2 , e.t = t;
e.w = w;
e.id = 1;
Query.push_back(e);
e.y1 = y2 + 1 , e.x1 = x1 , e.x2 = x2 , e.t = t;
e.w = w;
e.id = 2;
Query.push_back(e);
}
ktao();
sort(Query.begin() , Query.end() , cmp);
// for (int i = 0 ; i < Query.size() ; ++i){
//// cout << Query[i].id << " " << Query[i].y1 << " " << Query[i].x1 << " " << Query[i].x2 << " " << Query[i].t << '\n';
// cout << Query[i].id << " " << Query[i].y1 << " " << Query[i].t << '\n';
// }
}
void update(int x , long long val){
while (x <= k){
BIT[x] += val;
x += x & -x;
}
}
long long get(int x){
long long res = 0;
while (x > 0){
res += BIT[x];
x -= x & -x;
}
return res;
}
void nl(int l , int r){
memset(BIT , 0 , sizeof BIT);
for (int i = l ; i <= r ; ++i){
if (Query[i].id == 1){
update(Query[i].x1 , Query[i].w);
update(Query[i].x2 + 1 , -Query[i].w);
}
if (Query[i].id == 2){
update(Query[i].x1 , -Query[i].w);
update(Query[i].x2 + 1 , +Query[i].w);
}
if (Query[i].id == 0){
long long tmp = get(Query[i].x1);
if (tmp * 2 > s[Query[i].x1][Query[i].y1]) ans[Query[i].x1][Query[i].y1] = Query[i].t;
}
}
}
void solve(){
int i = 0;
while (i < Query.size()){
int j = i;
while (j < Query.size() - 1 && Query[j + 1].t == Query[i].t) ++j;
nl(i , j);
i = j + 1;
}
for (int i = 1 ; i <= k ; ++i){
for (int j = 1 ; j <= k ; ++j){
cout << ans[i][j] << " ";
}
cout << '\n';
}
}
int main(){
// freopen("xhmax.inp" , "r" , stdin);
// freopen("xhmax.out" , "w" , stdout);
faster;
inp();
solve();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgZmFzdGVyIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOyBjaW4udGllKE5VTEwpCiNkZWZpbmUgQml0KG1hc2sgLCBpKSAoKG1hc2sgPj4gaSkgJiAxKQojZGVmaW5lIGZpIGZpcnN0CiNkZWZpbmUgc2Ugc2Vjb25kCiNkZWZpbmUgX0xPRzIobmwpIDMxIC0gX19idWlsdGluX2NseihubCkKI2RlZmluZSBjX2JpdChubCkgX19idWlsdGluX3BvcGNvdW50KG5sKQojZGVmaW5lIGxpIHBhaXI8bG9uZyBsb25nICwgaW50PgojZGVmaW5lIGRiIGRvdWJsZQojZGVmaW5lIG9uQml0KG1hc2sgLCBpKSAobWFzayB8ICgxIDw8IGkpKQojZGVmaW5lIG9mZkJpdChtYXNrICwgaSkgKG1hc2sgJiAofigxIDw8IGkpKSkKCmNvbnN0IGxvbmcgbG9uZyBNT0QgPSAxZTkgKyA3Owpjb25zdCBpbnQgSU5GID0gMWU3Owpjb25zdCBpbnQgTiA9IDFlMyArIDc7CmxvbmcgbG9uZyBCSVRbTl07CmludCBrICwgcDsKbG9uZyBsb25nIHNbTl1bTl0gLCBhWzIxXVtOXVtOXTsKaW50IGFuc1tOXVtOXTsKCnN0cnVjdCBxdWVyeXsKICAgIGludCB4MSAsIHkxICwgeDIgLCB0ICwgaWQ7CiAgICBsb25nIGxvbmcgdzsKfTsKCnZlY3RvcjxxdWVyeT4gUXVlcnk7Cgpib29sIGNtcChxdWVyeSB4ICwgcXVlcnkgeSl7CiAgICBpZiAoeC50ICE9IHkudCkgcmV0dXJuIHgudCA8IHkudDsKICAgIGlmICh4LnkxICE9IHkueTEpIHJldHVybiB4LnkxIDwgeS55MTsKICAgIHJldHVybiB4LmlkID4geS5pZDsKfQoKdm9pZCBrdGFvKCl7CiAgICBmb3IgKGludCBpID0gMSA7IGkgPD0gayA7ICsraSl7CiAgICAgICAgZm9yIChpbnQgaiA9IDEgOyBqIDw9IGsgOyArK2opewogICAgICAgICAgICBzW2ldW2pdICs9IHNbaV1baiAtIDFdICsgc1tpIC0gMV1bal0gLSBzW2kgLSAxXVtqIC0gMV07CiAgICAgICAgICAgIGxvbmcgbG9uZyB2YWwgPSAwOwogICAgICAgICAgICBib29sIGJsID0gMTsKICAgICAgICAgICAgZm9yIChpbnQgdSA9IDAgOyB1IDwgMjAgOyArK3UpewogICAgICAgICAgICAgICAgYVt1XVtpXVtqXSArPSBhW3VdW2kgLSAxXVtqXSArIGFbdV1baV1baiAtIDFdIC0gYVt1XVtpIC0gMV1baiAtIDFdOwogICAgICAgICAgICAgICAgaWYgKGFbdV1baV1bal0gKiAyID09IHNbaV1bal0pewogICAgICAgICAgICAgICAgICAgIHZhbCA9IDA7CiAgICAgICAgICAgICAgICAgICAgYmwgPSAwOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCFibCkgY29udGludWU7CiAgICAgICAgICAgICAgICBpZiAoYVt1XVtpXVtqXSAqIDIgPiBzW2ldW2pdKSB2YWwgKz0gKDFMTCA8PCB1KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAodmFsID09IDApIGNvbnRpbnVlOwogICAgICAgICAgICBxdWVyeSBlOwogICAgICAgICAgICBlLngxID0gaSAsIGUueTEgPSBqICwgZS54MiA9IDAgLCBlLnQgPSB2YWw7CiAgICAgICAgICAgIGUudyA9IDA7CiAgICAgICAgICAgIGUuaWQgPSAwOwogICAgICAgICAgICBRdWVyeS5wdXNoX2JhY2soZSk7CiAgICAgICAgfQogICAgfQp9Cgp2b2lkIGlucCgpewogICAgY2luID4+IGsgPj4gcDsKICAgIGZvciAoaW50IGkgPSAxIDsgaSA8PSBwIDsgKytpKXsKICAgICAgICBpbnQgeDEgLCB5MSAsIHgyICwgeTIgLCB0OwogICAgICAgIGxvbmcgbG9uZyB3OwogICAgICAgIGNpbiA+PiB4MSA+PiB5MSA+PiB4MiA+PiB5MiA+PiB0ID4+IHc7CiAgICAgICAgc1t4MV1beTFdICs9IHc7CiAgICAgICAgc1t4MiArIDFdW3kxXSAtPSB3OwogICAgICAgIHNbeDFdW3kyICsgMV0gLT0gdzsKICAgICAgICBzW3gyICsgMV1beTIgKyAxXSArPSB3OwogICAgICAgIGZvciAoaW50IGogPSAwIDsgaiA8IDIwIDsgKytqKSBpZiAoQml0KHQgLCBqKSl7CiAgICAgICAgICAgIGFbal1beDFdW3kxXSArPSB3OwogICAgICAgICAgICBhW2pdW3gyICsgMV1beTFdIC09IHc7CiAgICAgICAgICAgIGFbal1beDFdW3kyICsgMV0gLT0gdzsKICAgICAgICAgICAgYVtqXVt4MiArIDFdW3kyICsgMV0gKz0gdzsKICAgICAgICB9CiAgICAgICAgcXVlcnkgZTsKICAgICAgICBlLnkxID0geTEgLCBlLngxID0geDEgLCBlLngyID0geDIgLCBlLnQgPSB0OwogICAgICAgIGUudyA9IHc7CiAgICAgICAgZS5pZCA9IDE7CiAgICAgICAgUXVlcnkucHVzaF9iYWNrKGUpOwogICAgICAgIGUueTEgPSB5MiArIDEgLCBlLngxID0geDEgLCBlLngyID0geDIgLCBlLnQgPSB0OwogICAgICAgIGUudyA9IHc7CiAgICAgICAgZS5pZCA9IDI7CiAgICAgICAgUXVlcnkucHVzaF9iYWNrKGUpOwogICAgfQogICAga3RhbygpOwogICAgc29ydChRdWVyeS5iZWdpbigpICwgUXVlcnkuZW5kKCkgLCBjbXApOwovLyAgICBmb3IgKGludCBpID0gMCA7IGkgPCBRdWVyeS5zaXplKCkgOyArK2kpewovLy8vICAgICAgICBjb3V0IDw8IFF1ZXJ5W2ldLmlkIDw8ICIgIiA8PCBRdWVyeVtpXS55MSA8PCAiICIgPDwgUXVlcnlbaV0ueDEgPDwgIiAiIDw8IFF1ZXJ5W2ldLngyIDw8ICIgIiA8PCBRdWVyeVtpXS50IDw8ICdcbic7Ci8vICAgICAgICAgICAgY291dCA8PCBRdWVyeVtpXS5pZCA8PCAiICIgPDwgUXVlcnlbaV0ueTEgPDwgIiAiIDw8IFF1ZXJ5W2ldLnQgPDwgJ1xuJzsKLy8gICAgfQp9Cgp2b2lkIHVwZGF0ZShpbnQgeCAsIGxvbmcgbG9uZyB2YWwpewogICAgd2hpbGUgKHggPD0gayl7CiAgICAgICAgQklUW3hdICs9IHZhbDsKICAgICAgICB4ICs9IHggJiAteDsKICAgIH0KfQoKbG9uZyBsb25nIGdldChpbnQgeCl7CiAgICBsb25nIGxvbmcgcmVzID0gMDsKICAgIHdoaWxlICh4ID4gMCl7CiAgICAgICAgcmVzICs9IEJJVFt4XTsKICAgICAgICB4IC09IHggJiAteDsKICAgIH0KICAgIHJldHVybiByZXM7Cn0KCnZvaWQgbmwoaW50IGwgLCBpbnQgcil7CiAgICBtZW1zZXQoQklUICwgMCAsIHNpemVvZiBCSVQpOwogICAgZm9yIChpbnQgaSA9IGwgOyBpIDw9IHIgOyArK2kpewogICAgICAgIGlmIChRdWVyeVtpXS5pZCA9PSAxKXsKICAgICAgICAgICAgdXBkYXRlKFF1ZXJ5W2ldLngxICwgUXVlcnlbaV0udyk7CiAgICAgICAgICAgIHVwZGF0ZShRdWVyeVtpXS54MiArIDEgLCAtUXVlcnlbaV0udyk7CiAgICAgICAgfQogICAgICAgIGlmIChRdWVyeVtpXS5pZCA9PSAyKXsKICAgICAgICAgICAgdXBkYXRlKFF1ZXJ5W2ldLngxICwgLVF1ZXJ5W2ldLncpOwogICAgICAgICAgICB1cGRhdGUoUXVlcnlbaV0ueDIgKyAxICwgK1F1ZXJ5W2ldLncpOwogICAgICAgIH0KICAgICAgICBpZiAoUXVlcnlbaV0uaWQgPT0gMCl7CiAgICAgICAgICAgIGxvbmcgbG9uZyB0bXAgPSBnZXQoUXVlcnlbaV0ueDEpOwogICAgICAgICAgICBpZiAodG1wICogMiA+IHNbUXVlcnlbaV0ueDFdW1F1ZXJ5W2ldLnkxXSkgYW5zW1F1ZXJ5W2ldLngxXVtRdWVyeVtpXS55MV0gPSBRdWVyeVtpXS50OwogICAgICAgIH0KICAgIH0KfQoKdm9pZCBzb2x2ZSgpewogICAgaW50IGkgPSAwOwogICAgd2hpbGUgKGkgPCBRdWVyeS5zaXplKCkpewogICAgICAgIGludCBqID0gaTsKICAgICAgICB3aGlsZSAoaiA8IFF1ZXJ5LnNpemUoKSAtIDEgJiYgUXVlcnlbaiArIDFdLnQgPT0gUXVlcnlbaV0udCkgKytqOwogICAgICAgIG5sKGkgLCBqKTsKICAgICAgICBpID0gaiArIDE7CiAgICB9CiAgICBmb3IgKGludCBpID0gMSA7IGkgPD0gayA7ICsraSl7CiAgICAgICAgZm9yIChpbnQgaiA9IDEgOyBqIDw9IGsgOyArK2opewogICAgICAgICAgICBjb3V0IDw8IGFuc1tpXVtqXSA8PCAiICI7CiAgICAgICAgfQogICAgICAgIGNvdXQgPDwgJ1xuJzsKICAgIH0KfQoKaW50IG1haW4oKXsKLy8gICAgZnJlb3BlbigieGhtYXguaW5wIiAsICJyIiAsIHN0ZGluKTsKLy8gICAgZnJlb3BlbigieGhtYXgub3V0IiAsICJ3IiAsIHN0ZG91dCk7CiAgICBmYXN0ZXI7CiAgICBpbnAoKTsKICAgIHNvbHZlKCk7CiAgICByZXR1cm4gMDsKfQo=