package nowcoder;
import java.io.BufferedInputStream;
import java.util.Scanner;
public class Main47 {
public static void main(String[] args) {
new Solve47().solve();
}
}
class Solve47{
public void solve(){
Scanner s=new Scanner(new BufferedInputStream(System.in));
int m=s.nextInt();
int n=s.nextInt();
int[][] martrix=new int[m][n];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
martrix[i][j]=s.nextInt();
}
}
int ans=Integer.MIN_VALUE;
for (int i = 0; i <m ; i++) {
int[] dp=new int[n];
for (int j = i; j < m; j++) {
for (int k = 0; k < n; k++) {
dp[k]+=martrix[j][k];
}
int[] sum=new int[n];
int min=0;
for (int k = 0; k < n; k++) {
sum[k]+=dp[k];
if (k>0)sum[k]+=sum[k-1];
ans=Math.max(ans,sum[k]-min);
min=Math.min(min,sum[k]);
}
// System.out.println(Arrays.toString(sum));
}
}
System.out.println(ans);
}
}