using namespace std;
int n,m,k;
int a[60][60],b[60][60],c[60][60],f[60][60];
int ax[3]={0,1,0};
int by[3]={0,0,1};
void dfs(int x,int y,int c1,int c2){
if(k<0||c1<0||c2<0)return;
if(k==0&&c1==0&&c2==0){
c[x][y]++;
return ;
}
int ac=k/a[x][y];
int bc=k/b[x][y];
for(int i=0;i<=ac;i++){
for(int j=0;j<=bc;j++){
if(i*a[x][y]+j*b[x][y]<=k){
k=k-i*a[x][y]-j*b[x][y];
c1=c1+i;
c2=c2+j;
if(x+1<=n&&c1>=1)dfs(x+1,y,c1-1,c2);
if(y+1<=m&&c2>=1)dfs(x,y+1,c1,c2-1);
k=k+i*a[x][y]+j*b[x][y];
c1-=i;
c2-=j;
}
}
}
return;
}
int main(){
cin>>n>>m>>k;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>b[i][j];
}
}
dfs(1,1,0,0);
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cout<<c[i][j]<<" ";
}
cout<<endl;
}
return 0;
}```