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

const int MAXN = 200005;

int t, n, ki, li, ri;

int main(){
	scanf("%d", &t);
	while(t--){
		scanf("%d", &n);
		
		long long res = 0;
		int m = 0;
		
		vector < pair <int, int> > vx, vy;
		
		for(int i = 0; i < n; i++){
			scanf("%d %d %d", &ki, &li, &ri);
			
			if(li == ri)res += li;
			else if(li > ri){
				m++;
				res += ri;
				vx.push_back(make_pair(ki - 1, li - ri));
			}else{
				res += li;
				vy.push_back(make_pair(ki, ri - li));
			}
		}
		sort(vx.rbegin(), vx.rend());
		sort(vy.begin(), vy.end());
		
		multiset <int> s;
		for(int i = m - 1, j = 0; i >= 0; i--){
			while(j < (int)vx.size() && vx[j].first >= i){
				s.insert(vx[j].second);
				j++;
			}
			
			if(!s.empty()){
				res += *prev(s.end());
				s.erase(prev(s.end()));
			}
		}
		
		s.clear();
		for(int i = m, j = 0; i < n; i++){
			while(j < (int)vy.size() && vy[j].first <= i){
				s.insert(vy[j].second);
				j++;
			}
			
			if(!s.empty()){
				res += *prev(s.end());
				s.erase(prev(s.end()));
			}
		}
		printf("%lld\n", res);
	}
	return 0;
}
