program flip ;
type matrice=array[0..16,0..16] of longint;
var f,g :text;
tabla:matrice;
m,n,i,j,lmin,cmin:integer;
function minim(var l,c:integer):boolean;
var i,min:longint;
begin
min:=maxlongint;
for i:= 1 to n do
if tabla[i,0]<min then
begin
l:=i;
c:=0;
min:=tabla[i,0];
end;
for i:= 1 to m do
if tabla[0,i]<min then
begin
l:=0;
c:=i;
min:=tabla[0,i];
end;
if min<0 then
minim:=true
else
minim:=false;
end;
procedure permuta_linie_coloana(l,c:integer);
var i:integer;
begin
if l=0 then
begin
writeln('c=',c);
for i:=0 to n do
begin
tabla[i,c]:=-tabla[i,c];
tabla[i,0]:=tabla[i,0] +2*tabla[i,c];
end
end
else
begin
writeln('l=',l);
for i:=0 to m do
begin
tabla[l,i]:=-tabla[l,i];
tabla[0,i]:=tabla[0,i] +2*tabla[l,i];
end;
end
end;
begin
assign(f,'flip.in');
reset(f);
read(f,n,m);
for i:= 1 to n do
for j:= 1 to m do
begin
read(f,tabla[i,j]);
tabla[0,j]:= tabla[0,j]+tabla[i,j];
tabla[i,0]:=tabla [i,0]+tabla[i,j];
tabla[0,0]:=tabla [0,0]+tabla[i,j];
end;
close(f);
while minim(lmin,cmin) do
permuta_linie_coloana(lmin,cmin);
assign(g,'flip.out');
rewrite(g);
write(g,tabla[0,0]);
close(g);
end.