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

int32_t main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);

    int t;
    cin>>t;
    while(t--){
        int n;
        cin>>n;
        pair<pair<int,int>,int>a[n];
        int mx = 0;
        map<int,int>mp;
        for(int i = 0;i<n;i++){
            cin>>a[i].first.first>>a[i].first.second>>a[i].second;
            mx = max(mx,a[i].second);
            mp[a[i].first.first]+=a[i].second;
            mp[a[i].first.second]+=a[i].second;
            mx = max(mx,max(mp[a[i].first.first],mp[a[i].first.second]));
        }
        for(int i = 0;i<n;i++){
            for(int j = 0;j<n;j++){
                for(int k = 0;k<n;k++){
                    int sm = 0;
                    if(a[i].first.first == a[j].first.first || a[i].first.first == a[j].first.second || a[i].first.second == a[j].first.second || a[i].first.second == a[j].first.first){
                        if(a[i].first.first == a[k].first.first || a[i].first.first == a[k].first.second || a[i].first.second == a[k].first.second || a[i].first.second == a[k].first.first){
                            if(a[k].first.first == a[j].first.first || a[k].first.first == a[j].first.second || a[k].first.second == a[j].first.second || a[k].first.second == a[j].first.first){
                                unordered_set<int>st;
                                st.insert(i);
                                st.insert(j);
                                st.insert(k);
                                for(auto it:st){
                                    sm += a[it].second;
                                }
                            }
                        }
                    }
                    mx = max(mx,sm);
                }
            }
        }
        cout<<mx<<endl;
    }
}
