#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int suma(int a[][16], int n, int m)
{
int i, j, s=0;
for(i=0; i<n; i++)
for(j=0; j<m; j++)
s=s+a[i][j];
return s;
}
void copy(int a[][16], int b[][16], int n, int m)
{
int i, j;
for(i=0; i<n; i++)
for(j=0; j<m; j++)
a[i][j] = b[i][j];
}
void flip_linie(int a[][16], int i, int m)
{
int j;
for(j=0; j<m; j++)
a[i][j] = -a[i][j];
}
void flip_coloana(int a[][16], int j, int n)
{
int i;
for(i=0; i<n; i++)
a[i][j] = -a[i][j];
}
int s_flip_coloana(int a[][16], int j, int n)
{
int i, s=0;
for(i=0; i<n; i++)
s = s - a[i][j];
return s;
}
int s_coloana(int a[][16], int j, int n)
{
int i, s=0;
for(i=0; i<n; i++)
s = s + a[i][j];
return s;
}
void flip_col(int a[][16], int n, int m)
{
int i, j;
for(j=0; j<m; j++)
if(s_coloana(a, j, n) < s_flip_coloana(a, j, n))
flip_coloana(a, j, n);
}
int main()
{
FILE *f = fopen("flip.in", "r");
FILE *g = fopen("flip.out", "w");
int n, m, i, j, k, smax=0, nmax, t[16][16], aux[16][16], s;
fscanf(f, "%d%d", &n, &m);
printf("%d %d", n, m);
for(i=0; i<n; i++)
for(j=0; j<m; j++)
{
fscanf(f, "%d", &t[i][j]);
smax = smax + t[i][j];
}
nmax = pow(2, n);
for(k=1; k<nmax; k++)
{
copy(aux, t, n, m);
for(i=0; i<n; i++)
if( (1<<i) & k )
flip_linie(aux, i, m);
flip_col(aux, n, m);
s = suma(aux, n, m);
if(s > smax)
smax = s;
}
fprintf(g, "%d", smax);
fclose(f);
fclose(g);
return 0;
}