#include <stdio.h>
#include <stdlib.h>
long long int getLineSum( long long int **mat, long long int line, long long int cols, long long int neg ){
long long int sum = 0;
for( long long int i = 0; i < cols; i++ ){
sum += mat[line][i]*neg;
}
return sum;
}
long long int getColSum( long long int **mat, long long int col, long long int lines, long long int neg ){
long long int sum = 0;
for( long long int i = 0; i < lines; i++ ){
sum += mat[i][col]*neg;
}
return sum;
}
void inverseLine( long long int **mat, long long int line, long long int cols ){
for( long long int i = 0; i < cols; i++ ){
mat[line][i] *= -1;
}
}
void inverseCol( long long int **mat, long long int col, long long int lines ){
for( long long int i = 0; i < lines; i++ ){
mat[i][col] *= -1;
}
}
long long int getMatSum( long long int **mat, long long int lines, long long int cols ){
long long int sum = 0;
for( long long int i = 0; i < lines; i++ ){
for( long long int j = 0; j < cols; j++ ){
sum += mat[i][j];
}
}
return sum;
}
int main(){
long long int n,m;
FILE *fi = fopen("flip.in","r");
FILE *fo = fopen("flip.out","w");
long long int **mat;
long long int i,j;
fscanf(fi,"%lld",&n);
fscanf(fi,"%lld",&m);
mat = (long long int**)malloc(n*sizeof(long long int*));
for( long long int i = 0; i < n; i++ ){
mat[i] = (long long int*)malloc(m*sizeof(long long int));
}
for( i = 0; i < n; i++ ){
for( j = 0; j < m; j++ ){
fscanf(fi,"%lld",&mat[i][j]);
}
}
for( i = 0; i < n; i++ ){
if( getLineSum(mat,i,m,1) < getLineSum(mat,i,m,-1) ){
inverseLine(mat, i, m);
}
}
for( i = 0; i < m; i++ ){
if( getColSum(mat, i,n,1) < getColSum(mat,i,n,-1) ){
inverseCol(mat, i, n);
}
}
/*
for( i = 0; i < n; i++ ){
for( j = 0; j < m; j ++ ){
fprintf(fo,"%d ",mat[i][j]);
}
fprintf(fo,"\n");
}
*/
fprintf(fo,"%lld",getMatSum(mat,n,m));
fclose(fi);
fclose(fo);
return 0;
}