#include <bits/stdc++.h>
using namespace std;
struct no {
int a,b;
} a[131][130];
int main() {
int n,m;
cin>>n>>m;
for(int i=0; i<n; i++){
for(int j=0; j<m; j++) {
cin>>a[i][j].a;
a[i][j].b=1;
}}
int sum=a[0][0].a;
for(int i=0,j=0; i<n&&j<m; ) {
if(a[i][j+1].b==0) {
if(a[i+1][j].b==0&&a[i-1][j].b!=0) {
sum+=a[i-1][j].a;
} else if(a[i+1][j].b!=0&&a[i-1][j].b==0) {
sum+=a[i+1][j].a;
} else(a[i+1][j].b!=0&&a[i-1][j].b!=0)
{
if(a[i+1][j].a>a[i-1][j].a) {
i++;
sum+=a[i+1][j].a;
} else if(a[i+1][j].a<=a[i-1][j].a) {
i--;
sum+=a[i-1][j].a;
}
}
} else if(a[i+1][j].b==0) {
if(a[i][j+1].b==0&&a[i-1][j].b!=0) {
sum+=a[i-1][j].a;
} else if(a[i][j+1].b!=0&&a[i-1][j].b==0) {
sum+=a[i][j+1].a;
} else(a[i][j+1].b!=0&&a[i-1][j].b!=0) {
if(a[i][j+1].a>a[i-1][j].a) {
j++;
sum+=a[i][j+1].a;
} else if(a[i][j+1].a<=a[i-1][j].a) {
i--;
sum+=a[i-1][j].a;
}
}
} else if(a[i-1][j].b==0) {
if(a[i+1][j].b==0&&a[i][j+1].b!=0) {
sum+=a[i][j+1].a;
} else if(a[i+1][j].b!=0&&a[i][j+1].b==0) {
sum+=a[i+1][j].a;
} else(a[i+1][j].b!=0&&a[i][j+1].b!=0) {
if(a[i+1][j].a>a[i][j+1].a) {
i++;
sum+=a[i+1][j].a;
} else if(a[i+1][j].a<=a[i][j+1].a) {
j++;
sum+=a[i][j+1].a;
}
}
}
}
cout<<sum;
}
rt