#include <bits/stdc++.h>
using namespace std;
using lint = long long;
void solve() {
  int n;
  scanf("%d", &n);
  vector<tuple<int, int, int>> a(n);
  for (int i = 0; i < (n); i++)
    scanf("%d%d%d", &get<0>(a[i]), &get<1>(a[i]), &get<2>(a[i]));
  sort(a.begin(), a.end());
  lint ans = 0;
  queue<pair<int, int>> Q1;
  priority_queue<int> Q2;
  for (int i = 0; i < (n); i++) {
    while (!Q1.empty() && Q1.front().first < i + 1) {
      Q2.emplace(Q1.front().second);
      Q1.pop();
    }
    auto [k, l, r] = a[i];
    if (i + 1 <= k) {
      if (Q2.empty() || Q2.top() < 0) {
        ans += l;
      } else {
        ans += Q2.top();
        Q2.pop();
        ans += l;
      }
      Q1.emplace(k, r - l);
    } else {
      if (l <= r) {
        ans += r;
      } else {
        assert(!Q2.empty());
        if (Q2.top() > r - l) {
          ans += Q2.top();
          Q2.pop();
          ans += l;
          Q1.emplace(k, r - l);
        } else {
          ans += r;
        }
      }
    }
  }
  printf("%lld\n", ans);
}
int main() {
  int q;
  scanf("%d", &q);
  for (int _ = 0; _ < (q); _++) solve();
  return 0;
}
