#include <bits/stdc++.h>
using namespace std;
template <typename T1, typename T2>
bool chmin(T1 &a, T2 b) {
  if (a <= b) return 0;
  a = b;
  return 1;
}
template <typename T1, typename T2>
bool chmax(T1 &a, T2 b) {
  if (a >= b) return 0;
  a = b;
  return 1;
}
int dx[4] = {0, 1, -1, 0};
int dy[4] = {1, 0, 0, -1};
template <typename T>
struct BIT {
  vector<T> bit;
  BIT(int n) : bit(n + 1) {}
  void add(int a, T w) {
    for (int x = ++a; x < bit.size(); x += (x & (-x))) {
      bit[x] += w;
    }
  }
  T sum(int a) {
    T ret = 0;
    for (int x = a; x > 0; x -= (x & (-x))) {
      ret += bit[x];
    }
    return ret;
  }
};
signed main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cout << fixed << setprecision(20);
  int q;
  cin >> q;
  while (q--) {
    long long n;
    cin >> n;
    long long ans = 0;
    vector<array<long long, 2>> l, r;
    for (int i = 0; i < n; i++) {
      long long k, a, b;
      cin >> k >> a >> b;
      if (a > b)
        l.push_back({b - a, k});
      else
        r.push_back({a - b, k});
      ans += max(a, b);
    }
    sort(l.begin(), l.end());
    sort(r.begin(), r.end());
    set<int> st;
    for (int i = 0; i < n; i++) st.insert(i);
    BIT<int> bi(n);
    for (auto p : l) {
      long long los = p[0], k = p[1];
      if (bi.sum(k) < k - 1) {
        auto itr = st.upper_bound(k);
        itr--;
        bi.add(*itr, 1);
        st.erase(itr);
      } else {
        ans += los;
      }
    }
    st.clear();
    for (int i = 0; i < n; i++) st.insert(i);
    int sum = 0;
    for (auto p : r) {
      long long los = p[0], k = p[1];
      if (sum - bi.sum(k) < n - k + 1) {
        auto itr = st.upper_bound(k);
        bi.add(*itr, 1);
        st.erase(*itr);
        sum++;
      } else {
        ans += los;
      }
    }
    cout << ans << "\n";
  }
}
