#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <stdio.h>
#include <algorithm>
using namespace std;
#define rep(i, j) for (int i = 0; i < j; i++)
#define Rep(i, j, k) for (int i = j; i < k; i++)
const int oo = 1e9 + 7;
int n, m, x, val;
int in[6], l[1 << 6], r[1 << 6];
int main() {
scanf("%d%d", &n, &m);
fill(l, l + (1 << 6), oo);
fill(r, r + (1 << 6), -oo);
x = 1 << m;
while (n--) {
rep(i, m)
scanf("%d", &in[i]);
rep(i, x) {
val = 0;
rep(j, m)
val += ((i&(1 << j)) ? -in[j] : in[j]);
l[i] = min(l[i], val);
r[i] = max(r[i], val);
}
}
int ans = 0;
rep(i, x)
ans = max(ans, abs(l[i] - r[i]));
printf("%d\n", ans);
return 0;
}
I2RlZmluZSBfQ1JUX1NFQ1VSRV9OT19XQVJOSU5HUwojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDxzdGRpby5oPgojaW5jbHVkZSA8YWxnb3JpdGhtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNkZWZpbmUgcmVwKGksIGopIGZvciAoaW50IGkgPSAwOyBpIDwgajsgaSsrKQojZGVmaW5lIFJlcChpLCBqLCBrKSBmb3IgKGludCBpID0gajsgaSA8IGs7IGkrKykKCmNvbnN0IGludCBvbyA9IDFlOSArIDc7CgppbnQgbiwgbSwgeCwgdmFsOwppbnQgaW5bNl0sIGxbMSA8PCA2XSwgclsxIDw8IDZdOwoKaW50IG1haW4oKSB7CglzY2FuZigiJWQlZCIsICZuLCAmbSk7CglmaWxsKGwsIGwgKyAoMSA8PCA2KSwgb28pOwoJZmlsbChyLCByICsgKDEgPDwgNiksIC1vbyk7Cgl4ID0gMSA8PCBtOwoJd2hpbGUgKG4tLSkgewoJCXJlcChpLCBtKQoJCQlzY2FuZigiJWQiLCAmaW5baV0pOwoJCXJlcChpLCB4KSB7CgkJCXZhbCA9IDA7CgkJCXJlcChqLCBtKQoJCQkJdmFsICs9ICgoaSYoMSA8PCBqKSkgPyAtaW5bal0gOiBpbltqXSk7CgkJCWxbaV0gPSBtaW4obFtpXSwgdmFsKTsKCQkJcltpXSA9IG1heChyW2ldLCB2YWwpOwoJCX0KCX0KCWludCBhbnMgPSAwOwoJcmVwKGksIHgpCgkJYW5zID0gbWF4KGFucywgYWJzKGxbaV0gLSByW2ldKSk7CglwcmludGYoIiVkXG4iLCBhbnMpOwoJcmV0dXJuIDA7Cn0=