#include<bits/stdc++.h>
using namespace std;
int n,m,ma[61][61],f[121][61][61];
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>ma[i][j];
}
}
for(int k=1;k<=n+m;k++){
for(int i=1;i<=min(k,m);i++){
for(int j=1;j<=min(k,m);j++){
f[k][i][j]=max(f[k-1][i][j],max(f[k-1][i-1][j-1],max(f[k-1][i-1][j],f[k-1][i][j-1])))+ma[k - i + 1][i] + ma[k - j + 1][j];
if(i==j) f[k][i][j]-=ma[k - i + 1][i];
}
}
}
cout<<max(f[n+m-1][m][m],max(f[n+m-1][m][m-1],max(f[n+m-1][m-1][m],f[n+m-1][m-1][m-1])));
}