#include<bits/stdc++.h>
using namespace std;
//nmq 343
//原来 
//1 2 2 1
//3 2 2 1
//1 1 1 1
//差分 
//1  1   0 -1
//2  -2  0  0
//-2  1  0  1	


int n,m,q,a[1001][1001],b[1001][1001],ans[1001][1001],sx1, sy1, sx2, sy2, c;
int main(){
	scanf("%d%d%d",&n,&m,&q);
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++) {
			scanf("%d",&a[i][j]);
			b[i][j]=a[i][j]-(a[i-1][j]+a[i][j-1]-a[i-1][j-1]);
		}
	}
	while(q--){
		scanf("%d%d%d%d%d",&sx1,&sy1,&sx2,&sy2,&c);
		b[sx1][sy1]+=c;
		b[sx2+1][sy2+1]+=c;
		b[sx1][sy2+1]-=c;
		b[sx2+1][sy1]-=c;
	}	
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++) {
			ans[i][j]=ans[i-1][j]+ans[i][j-1]-ans[i-1][j-1]+b[i][j];
			printf("%d ",ans[i][j]);
		}
		printf("\n");
		
	}



}

/**************************************************************
	Problem: 2351
	User: admin
	Language: C++
	Result: Accepted
	Time:5 ms
	Memory:13820 kb
****************************************************************/