import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int m = scanner.nextInt(), n = scanner.nextInt();
int[][] arr = new int[m + 1][n + 1];
for (int i = 1; i <= m; i++) {
for (int j = 1; j <= n; j++) {
arr[i][j] = scanner.nextInt();
}
}
int[][] dp = new int[m + 1][n + 1];
for (int i = 1; i <= m; i++) {
Arrays.fill(dp[i], 0xc0c0c0c0);
}
dp[m][(n - 1) / 2] = arr[m][(n - 1) / 2];
dp[m][(n - 1) / 2 + 1] = arr[m][(n - 1) / 2 + 1];
dp[m][(n - 1) / 2 + 2] = arr[m][(n - 1) / 2 + 2];
for (int i = m - 1; i >= 1; i--) {
for (int j = 1; j <= n; j++) {
dp[i][j] = arr[i][j]
+ Math.max(dp[i + 1][Math.max(j - 1, 1)],
Math.max(dp[i + 1][j], dp[i + 1][Math.min(j + 1, n)]));
}
}
System.out.println(Arrays.stream(dp[1]).skip(1).max().getAsInt());
scanner.close();
}
}