#include <stdio.h>
#define Max(x, y) x > y ? x : y;
#define Min(x, y) x > y ? y : x;
int n, m, ans = -99999;
int a[405][405], sum[405][405];
int main() {
int i, j, k, l;
scanf("%d%d",&n,&m);
for(i = 1; i <= n; i++) {
for(j = 1; j <= m; j++) {
scanf("%d",&a[i][j]);
}
}
for(i = 1; i <= n; i++) {
for(j = 1; j <= m; j++) {
sum[i][j] = a[i][j] + sum[i - 1][j] + sum[i][j - 1] - sum[i - 1][j - 1];
}
}
for(i = 1; i <= n; i++){
for(j = 1; j <= m; j++){
for(k = i; k <= n; k++){
for(l = j; l <= m; l++){
int x = sum[k][l] - sum[i - 1][l] - sum[k][j - 1] + sum[i - 1][j - 1];
ans = Max(ans, x);
}
}
}
}
/*
for(i = 1; i <= n; i++) {
for(j = 1; j <= m; j++) {
printf("%d ",sum[i][j]);
}
printf("\n");
}
*/
printf("%d\n",ans);
return 0;
}