#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N=1e3+10;
ll n,m,k,a[N][N];
void solve(){
ll zd=-1,zx=1e18;
priority_queue<ll>q;
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
a[n+1][i]+=a[j][i];
}
zd=max(zd,a[n+1][i]),zx=min(zx,a[n+1][i]);
}
for(int i=1;i<=m;i++){
if(a[n+1][i]==zd||a[n+1][i]==zx){
for(int j=1;j<=n;j++){
q.push(a[j][i]);
a[j][i]=0;
}
}
}
for(int i=1;i<=n;i++){
if(i%2==1){
for(int j=1;j<=m;j++){
if(a[i][j]==0){
a[i][j]=q.top();
q.pop();
}
}
}
else{
for(int j=m;j>=1;j--){
if(a[i][j]==0){
a[i][j]=q.top();
q.pop();
}
}
}
}
}
int main(){
cin>>n>>m>>k;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
}
}
while(k--){
solve();
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cout<<a[i][j]<<' ';
}
cout<<'\n';
}
return 0;
}
记录