#include<bits/stdc++.h>
using namespace std;
int n,m;
int _map[55][55];
int ans_2;
int ans_1;
void send_1(int i,int j){
if(_map[i][j+1]>_map[i+1][j]){
j+=1;
ans_1+=_map[i][j];
_map[i][j]=0;
send_1(i,j);
}else if(_map[i][j+1]<_map[i+1][j]){
i+=1;
ans_1+=_map[i][j];
_map[i][j]=0;
send_1(i,j);
}
if(_map[i+1][j+1]>_map[i][j+1]&&_map[i+1][j+1]>_map[i+1][j]){
i+=1;
j+=1;
ans_1+=_map[i][j];
_map[i][j]=0;
send_1(i,j);
}
if(i!=1&&j!=1&&_map[i][j]==0)
return;
}
void send_2(int i,int j){
if(_map[i][j-1]>_map[i-1][j]){
j-=1;
ans_2+=_map[i][j];
_map[i][j]=0;
send_2(i,j);
}else if(_map[i][j-1]<_map[i-1][j]){
i-=1;
ans_2+=_map[i][j];
_map[i][j]=0;
send_2(i,j);
}
if(_map[i-1][j-1]>_map[i][j-1]&&_map[i-1][j-1]>_map[i-1][j]){
i-=1;
j-=1;
ans_2+=_map[i][j];
_map[i][j]=0;
send_2(i,j);
}
if(i!=m&&j!=n&&_map[i][j]==0)
return;
}
int main(){
int ans;
cin>>n>>m;
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
cin>>_map[i][j];
send_1(1,1);
send_2(m,n);
ans=ans_1+ans_2;
cout<<ans<<endl;
return 0;
}