#include <iostream>
using namespace std;
int
g[11][11], n, ans[11][11], answ = 0;
void
__read__()
{
int x, y, w;
cin >> n;
while( cin >> x >> y >> w )
if( x > 0 )
g[x][y] = w;
else
break;
}
int
__dp__()
{
memset( ans, 0, sizeof ans );
for( int i = 1; i <= n; i++ )
for( int j = 1; j <= n; j++ )
if( ans[i - 1][j] > ans[i][j - 1] )
ans[i][j] = ans[i - 1][j] + g[i][j];
else
ans[i][j] = ans[i][j - 1] + g[i][j];
return ans[n][n];
}
void
__dfs__( int x, int y, int sum )
{
if( x == n && y == n )
{
int t = __dp__();
if( t + sum > answ )
answ = t + sum;
}
if( x <= n && y <= n )
{
int tmp = g[x][y];
g[x][y] = 0;
__dfs__( x, y + 1, sum + tmp );
__dfs__( x + 1, y, sum + tmp );
g[x][y] = tmp;
}
}
void
__outp__()
{
cout << answ << endl;
}
int
main()
{
__read__();
__dfs__( 1, 1, 0 );
__outp__();
return 0;
}