#include <bits/stdc++.h>
using namespace std;

void chmax(int64_t& a, int64_t b){
    a = max(a, b);
}

int main(){
    int N, M, K;
    cin >> N >> M >> K;
    static int A[3001][3001];
    while(K--){
        int a, b, c;
        cin >> a >> b >> c;
        A[a-1][b-1] = c;
    }

    static int64_t dp[3001][3001][5] = {0};
    dp[0][0][1] = A[0][0];
    for(int i=0; i<N; i++) for(int j=0; j<M; j++) for(int k=0; k<4; k++){
        chmax(dp[i+1][j][0], dp[i][j][k]);
        chmax(dp[i+1][j][1], dp[i][j][k] + A[i+1][j]);
        chmax(dp[i][j+1][k], dp[i][j][k]);
        chmax(dp[i][j+1][k+1], dp[i][j][k] + A[i][j+1]);
    }

    int64_t ans = 0;
    for(int k=0; k<=3; k++) chmax(ans, dp[N-1][M-1][k]);
    cout << ans << endl;
    return 0;
}
