#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0; i < n; i++)
using namespace std;
typedef long long ll;
typedef pair<ll,ll> P;

int main()
{
	int T;
	cin >> T;
	rep(i,T)
	{
		ll N;
		cin >> N;
		ll ans = 0;
		vector<pair<ll,P> > l,r;
		rep(j,N)
		{
			ll K,L,R;
			cin >> K >> L >> R;
			K--;
			if (L >= R)
			{
				l.push_back(make_pair(K,P(L,R)));
				ans += R;
			}
			else
			{
				if (K != N-1) r.push_back(make_pair(K,P(L,R)));
				ans += L;
			}
		}
		//cout << ans << " ";
		priority_queue<ll, vector<ll>, greater<ll> > Q1,Q2;
		sort(l.begin(), l.end());
		sort(r.begin(), r.end());
		reverse(r.begin(), r.end());
		int idx = 0;
		rep(j,N)
		{
			while(idx < l.size() && l[idx].first == j)
			{
				Q1.push(l[idx].second.first - l[idx].second.second);
				idx++;
			}
			while(Q1.size() > j+1)
			{
				Q1.pop();
			}
		}
		while(!Q1.empty())
		{
			ans += Q1.top();
			Q1.pop();
		}
		//cout << ans << " ";
		idx = 0;
		rep(j,N)
		{
			while(idx < r.size() && r[idx].first == N-2-j)
			{
				Q2.push(r[idx].second.second - r[idx].second.first);
				idx++;
			}
			while(Q2.size() > j+1)
			{
				Q2.pop();
			}
		}
		while(!Q2.empty())
		{
			ans += Q2.top();
			Q2.pop();
		}
		cout << ans << endl;
	}
	return 0;
}