{
TASK:apple
LANG:Pascal
}

var
  a: array[0..70,0..70] of LongInt;
  n,m: Integer;
  i,j: Integer;
  x,y: Integer;

procedure Input;
begin
  readln(m,n);
  for i:= 0 to m do
    for j:= 0 to n do
      a[i,j]:= 0;

  for i:= 1 to m do
  begin
    for j:= 1 to n do
      read(a[i,j]);
    readln;
  end;
end;

begin
  Input;
  i:= 1;
  j:= 1;
  repeat
    x:= i;
    y:= j;
    repeat
      if (x > 1) and (y > 1) then
      begin
        if a[x,y] + a[x,y-1] >= a[x,y] + a[x-1,y] then
        begin
          a[x,y]:= a[x,y] + a[x,y-1];
          a[x,y-1]:= 0;
        end
        else
        begin
          a[x,y]:= a[x,y] + a[x-1,y];
          a[x-1,y]:= 0;
        end;
      end;
      if (x = 1) and (y > 1) then
      begin
        a[x,y]:= a[x,y] + a[x,y-1]; 
        a[x,y-1]:= 0;
      end;
      if (x > 1) and (y = 1) then
      begin
        a[x,y]:= a[x,y] + a[x-1,y];
        a[x-1,y]:= 0;
      end;

      x:= x-1;
      y:= y+1; 
    until  (x=0) or (y=n+1);

    if i = m then
      j:= j+1;
    if i < m then
      i:= i+1;
  until (i=m) and (j=n);

  writeln(a[m,n] + a[m,n-1] + a[m-1,n]);
end.