#include <iostream>
#include <algorithm>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
int cache[101][101] = {0};
int data[101][101] = {0};
int main()
{
int n, m;
cin >> n >> m;
for (int i=0; i<n; i++) {
for (int j=0; j<m; j++) {
cin >> data[i][j];
cache[i][j] = -99999;
}
}
for (int i=0; i<m; i++) {
cache[0][i] = data[0][i];
}
for (int i=1; i<n; i++) {
int ret = -99999;
for (int j=0; j<m; j++) {
ret = max(ret, cache[i-1][j]);
for (int k=j+1; k<m; k++) {
cache[i][k] = ret + data[i][k];
//ret = max(ret, cache[i-1][j] + data[i][k]);
}
//cache[i][j] = ret;
}
}
int ret = -99999;
for (int i=0; i<m; i++)
ret = max(ret, cache[n-1][i]);
cout << ret << endl;
/*for (int i=0; i<n; i++) {
for (int j=0; j<m; j++) {
cout << data[i][j] << " ";
}
cout << endl;
}
cout << "-------------\n";
for (int i=0; i<n; i++) {
for (int j=0; j<m; j++) {
cout << cache[i][j] << " ";
}
cout << endl;
}*/
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8c3RkaW8uaD4KI2luY2x1ZGUgPHN0ZGxpYi5oPgojaW5jbHVkZSA8c3RyaW5nLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgY2FjaGVbMTAxXVsxMDFdID0gezB9OwppbnQgZGF0YVsxMDFdWzEwMV0gID0gezB9OwoKaW50IG1haW4oKQp7CiAgICBpbnQgbiwgbTsKCgljaW4gPj4gbiA+PiBtOwoKCWZvciAoaW50IGk9MDsgaTxuOyBpKyspIHsKCQlmb3IgKGludCBqPTA7IGo8bTsgaisrKSB7CgkJCWNpbiA+PiBkYXRhW2ldW2pdOwoJCQljYWNoZVtpXVtqXSA9IC05OTk5OTsKCQl9Cgl9CgoJZm9yIChpbnQgaT0wOyBpPG07IGkrKykgewoJCWNhY2hlWzBdW2ldID0gZGF0YVswXVtpXTsKCX0KCgoJZm9yIChpbnQgaT0xOyBpPG47IGkrKykgewoJCWludCByZXQgPSAtOTk5OTk7CgkJZm9yIChpbnQgaj0wOyBqPG07IGorKykgewoJCQlyZXQgPSBtYXgocmV0LCBjYWNoZVtpLTFdW2pdKTsKCQkJZm9yIChpbnQgaz1qKzE7IGs8bTsgaysrKSB7CgkJCQljYWNoZVtpXVtrXSA9IHJldCArIGRhdGFbaV1ba107CgkJCQkvL3JldCA9IG1heChyZXQsIGNhY2hlW2ktMV1bal0gKyBkYXRhW2ldW2tdKTsKCQkJfQoJCQkvL2NhY2hlW2ldW2pdID0gcmV0OwoJCX0KCX0KCglpbnQgcmV0ID0gLTk5OTk5OwoJZm9yIChpbnQgaT0wOyBpPG07IGkrKykKCQlyZXQgPSBtYXgocmV0LCBjYWNoZVtuLTFdW2ldKTsKCgljb3V0IDw8IHJldCA8PCBlbmRsOwoKCS8qZm9yIChpbnQgaT0wOyBpPG47IGkrKykgewoJCWZvciAoaW50IGo9MDsgajxtOyBqKyspIHsKCQkJY291dCA8PCBkYXRhW2ldW2pdIDw8ICIgIjsKCQl9CgkJY291dCA8PCBlbmRsOwoJfQoJY291dCA8PCAiLS0tLS0tLS0tLS0tLVxuIjsKCWZvciAoaW50IGk9MDsgaTxuOyBpKyspIHsKCQlmb3IgKGludCBqPTA7IGo8bTsgaisrKSB7CgkJCWNvdXQgPDwgY2FjaGVbaV1bal0gPDwgIiAiOwoJCX0KCQljb3V0IDw8IGVuZGw7Cgl9Ki8KfQ==