#include<fstream>
#include<cmath>
#include<iostream>
using namespace std;
int n,m;
void comutal(int D[17][17],int a[17])
{
int i,j,s=0;
for(i=1; i<=n; i++)
if(a[i]==1)
for(j=1; j<=m; j++)
D[i][j]=0-D[i][j];
}
void comutac(int D[17][17],int b[17])
{
int i,j,s=0;
for(j=1; j<=m; j++)
if(b[j]==1)
for(i=1; i<=n; i++)
D[i][j]=0-D[i][j];
}
void transfer(int A[17][17],int B[17][17])
{
int i,j;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
B[i][j]=A[i][j];
}
int suma(int A[17][17])
{
int i,j,s=0;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
s=s+A[i][j];
return s;
}
int main()
{
fstream f,g;
f.open("flip.in",ios::in);
g.open("flip.out",ios::out);
int i,j,A[17][17],s=0,s1,i1,j1,B[17][17],C[17][17];
long long maxim=-10000000000000;
f>>n>>m;
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
{
f>>A[i][j];
B[i][j]=A[i][j];
C[i][j]=A[i][j];
s=s+A[i][j];
}
cout<<s;
int a[100]={0},b[100]={0};
long long x,y,k,ind;
x=pow(2,n);
y=pow(2,m);
for(k=1; k<=x-1; k++)
{
s=0;
transfer(A,B);
int b[100]={0};
comutal(B,a);
for(ind=1; ind<=y-1; ind++)
{
transfer(B,C);
comutac(C,b);
s=suma(C);
if(s>maxim)
maxim=s;
b[1]++;
i=1;
while(b[i]==2)
{
b[i]=0;
b[i+1]=b[i+1]+1;
i++;
}
}
a[1]++;
i=1;
while(a[i]==2)
{
a[i]=0;
a[i+1]=a[i+1]+1;
i++;
}
}
g<<maxim;
}