ccf-201512-2
#include <iostream>
using namespace std;
struct a {
int m,n;
};
int main() {
int x,y;
cin>>x>>y;
a s[x+1][y+1];
for(int i=0; i<x; i++) {
for(int j=0; j<y+1; j++) {
if(j!=y) {
cin>>s[i][j].m;
}else{
s[i][j].m=-1;
}
s[i][j].n=0;
}
}
for(int i=0; i<x; i++) {
int current=0,num=0;
for(int j=0; j<y+1; j++) {
if(j==0) {
current=j;
continue;
}
if(s[i][current].m==s[i][j].m) {
num++;
} else {
if(num>=2) {
for(int k=current; k<j; k++) {
s[i][k].n=1;
}
}
current=j;
num=0;
}
}
}
for(int j=0; j<y; j++) {
int current=0,num=0;
for(int i=0; i<x+1; i++) {
if(i==0) {
current=i;
continue;
}
if(s[current][j].m==s[i][j].m) {
num++;
} else {
if(num>=2) {
for(int k=current; k<i; k++) {
s[k][j].n=2;
}
}
current=i;
num=0;
}
}
}
for(int i=0; i<x; i++) {
for(int j=0; j<y-1; j++) {
if(s[i][j].n==0) {
cout<<s[i][j].m<<" ";
} else {
cout<<0<<" ";
}
}
if(s[i][y-1].n==0) {
cout<<s[i][y-1].m<<endl;
} else {
cout<<0<<endl;
}
}
return 0;
}