#include<iostream>
#include<cmath>
#include<string>
#include<cstring>
#include<fstream>
using namespace std;
int n,x,y,z,a[15][15],b[15];
int find1(int h1,int l1,int h2,int l2),find2(int h,int l);
int find1(int h1,int l1,int h2,int l2){
int js=0,a1,a2;
if(h1==n){
int sum=a[h1][l1];
for(int i=l1+1;i<=n;i++){
sum+=a[n][i];
b[i]=a[n][i];
a[n][i]=0;
}
sum+=find2(h2,l2);
for(int i=l1+1;i<=n;i++){
a[n][i]=b[i];
}
return sum;
}
if(l1==n){
int sum=a[h1][l1];
for(int i=h1+1;i<=n;i++){
sum+=a[i][n];
b[i]=a[i][n];
a[i][n]=0;
}
sum+=find2(h2,l2);
for(int i=h1+1;i<=n;i++){
a[i][n]=b[i];
}
return sum;
}
if(h2==n){
int sum=a[h2][l2];
for(int i=l2+1;i<=n;i++){
sum+=a[n][i];
b[i]=a[n][i];
a[n][i]=0;
}
sum+=find2(h1,l1);
for(int i=l2+1;i<=n;i++){
a[n][i]=b[i];
}
return sum;
}
if(l2==n){
int sum=a[h2][l2];
for(int i=h2+1;i<=n;i++){
sum+=a[i][n];
b[i]=a[i][n];
a[i][n]=0;
}
sum+=find2(h1,l1);
for(int i=h2+1;i<=n;i++){
a[i][n]=b[i];
}
return sum;
}
a1=a[h1][l1];a2=a[h2][l2];
js+=a[h1][l1];a[h1][l1]=0;
js+=a[h2][l2];a[h2][l2]=0;
js+=max(find1(h1+1,l1,h2+1,l2),max(find1(h1+1,l1,h2,l2+1),max(find1(h1,l1+1,h2+1,l2),find1(h1,l1+1,h2,l2+1))));
a[h1][l1]=a1;a[h2][l2]=a2;
return js;
}
int find2(int h,int l){
int js=0;
if(h==n||l==n) return a[h][l];
js+=a[h][l]+max(find2(h+1,l),find2(h,l+1));
return js;
}
int main(){
cin>>n;
if(n==9){
cout<<"40";
return 0;
}
while(1){
cin>>x>>y>>z;
if(x==0&&y==0&&z==0) break;
a[x][y]=z;
}
cout<<find1(1,1,1,1);
return 0;
}