#include <bits/stdc++.h>
using namespace std;
template <typename Arg1>
void __f(const char* name, Arg1&& arg1) {
  cerr << " " << name << " : " << arg1 << '\n';
}
template <typename Arg1, typename... Args>
void __f(const char* names, Arg1&& arg1, Args&&... args) {
  const char* comma = strchr(names + 1, ',');
  cerr.write(names, comma - names) << " : " << arg1 << " | ";
  __f(comma + 1, args...);
}
void inp_out() {}
long long int dpx[8] = {1, 1, 1, -1, -1, -1, 0, 0};
long long int dpy[8] = {-1, 1, 0, 1, -1, 0, -1, 1};
struct Camel {
  long long int l, r, k;
};
bool cmp(Camel c1, Camel c2) { return abs(c1.l - c1.r) > abs(c1.l - c2.r); }
int32_t main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  inp_out();
  long long int t;
  cin >> t;
  while (t--) {
    long long int n;
    cin >> n;
    vector<Camel> a(n);
    long long int ans = 0;
    for (long long int i = 0; i < n; ++i) {
      cin >> a[i].k >> a[i].l >> a[i].r;
      ans += min(a[i].l, a[i].r);
    }
    sort(a.begin(), a.end(), cmp);
    set<long long int> st, pos;
    set<long long int, greater<long long int>> ulta_st;
    for (long long int i = 1; i <= n; ++i) {
      st.insert(i);
      ulta_st.insert(i);
    }
    for (long long int i = 0; i < n; ++i) {
      if (a[i].l >= a[i].r) {
        auto itr = ulta_st.lower_bound(a[i].k);
        if (itr != ulta_st.end()) {
          ulta_st.erase(*itr);
          st.erase(*itr);
          ans += abs(a[i].l - a[i].r);
          pos.insert(*itr);
        }
      } else {
        auto itr = st.upper_bound(a[i].k);
        if (itr != st.end()) {
          ulta_st.erase(*itr);
          st.erase(*itr);
          ans += abs(a[i].l - a[i].r);
        } else {
          auto itr1 = pos.upper_bound(a[i].k);
          if (itr1 != pos.end()) {
            auto itr2 = ulta_st.lower_bound(*itr1);
            if (itr2 != ulta_st.end()) {
              ulta_st.erase(*itr2);
              st.erase(*itr2);
              pos.erase(*itr1);
              pos.insert(*itr2);
              ans += abs(a[i].l - a[i].r);
            }
          }
        }
      }
    }
    cout << ans << "\n";
  }
  return 0;
}
