#include<bits/stdc++.h>
//#include<bits/extc++.h>
using namespace std;
int main(){
	//ios_base::sync_with_stdio(false);
	//cin.tie(NULL);
	//cout.tie(NULL);
	//freopen("in.txt","r",stdin);
	int T;
	cin>>T;
	while(T--){
		int n;
		cin>>n;
		long long sum=0;  //最后的答案 
		vector<pair<int, int>>v, v2;  //v用来存靠右的，v2用来存靠左的 
		set<int>s, s2;
		for(int i=1;i<=n;i++){
			int k, l, r;
			cin>>k>>l>>r;
			if(l<r) v.push_back({l-r, k});
			else v2.push_back({l-r, k});
			sum+=r;            //先加上r 
		}
		for(int i=1;i<=v2.size();i++) s2.insert(i);  //s2 存靠左的个数 
		for(int i=v2.size()+1;i<=n;i++) s.insert(i);  //s用来存靠右的个数 
		sort(v.begin(), v.end());    //对于靠右，r大的排前面 
		sort(v2.begin(), v2.end()); 
		reverse(v2.begin(), v2.end());  //对于靠左 l大的排前面 
		for(auto i:v){
			auto it=s.upper_bound(i.second);  
			if(it==s.end()) {
				sum+=i.first;
				s.erase(s.begin());
			}
			else s.erase(it);
		}
		for(auto i:v2){
			auto it=s2.upper_bound(i.second);
			if(it!=s2.begin()){
				it--;
				s2.erase(it);
				sum+=i.first;
			}else{
				s2.erase(--s2.end());
			}
		}
		cout<<sum<<"\n";
	}
}
