#include<iostream>
using namespace std;
//求一维数组和
int sumup(int a[],int s){
int sum=0;
for(int i=0;i<s;i++){
sum+=a[i];
}
return sum;
}
//求一维数组最大值所在的下标
int findmaxindex(int a[],int s){
int max=a[0],index=0;
for(int i=0;i<s;i++)
{
if(max<a[i])
{
max=a[i];
index=i;
}
}
return index;
}
int main(){
int n,m;
while(scanf("%d%d",&n,&m)!=EOF){
int array[101][101];
int i,j;
for(i=0;i<n;i++){
for(j=0;j<m;j++){
scanf("%d",&array[i][j]);
}
}
for(i=0;i<n;i++){
array[i][findmaxindex(array[i],m)]=sumup(array[i],m);
}
for(i=0;i<n;i++){
for(j=0;j<m;j++){
printf("%d ",array[i][j]);
}
printf("\n");
}
}
}