#include <bits/stdc++.h>
using namespace std;
const int N = 2e5 + 10;
int n;
struct Node {
  long long k, l, r;
};
vector<Node> v1, v2;
struct Node1 {
  int l, r, mxav, miav;
} t[N * 4];
bool cmp(Node a, Node b) {
  long long aa = abs(a.r - a.l), bb = abs(b.r - b.l);
  return aa > bb;
}
void build(int idx, int l, int r) {
  t[idx].l = l, t[idx].r = r, t[idx].mxav = r, t[idx].miav = l;
  if (l == r) return;
  int mid = (l + r) >> 1;
  build(idx << 1, l, mid), build(idx << 1 | 1, mid + 1, r);
}
int _findmx(int idx, int l, int r) {
  if (t[idx].l >= l && t[idx].r <= r) return t[idx].mxav;
  int mid = (t[idx].l + t[idx].r) >> 1;
  if (l > mid)
    return _findmx(idx << 1 | 1, l, r);
  else if (r <= mid)
    return _findmx(idx << 1, l, r);
  else
    return max(_findmx(idx << 1, l, r), _findmx(idx << 1 | 1, l, r));
}
int _findmi(int idx, int l, int r) {
  if (t[idx].l >= l && t[idx].r <= r) return t[idx].mxav;
  int mid = (t[idx].l + t[idx].r) >> 1;
  if (l > mid)
    return _findmi(idx << 1 | 1, l, r);
  else if (r <= mid)
    return _findmi(idx << 1, l, r);
  else
    return min(_findmi(idx << 1, l, r), _findmi(idx << 1 | 1, l, r));
}
void _change(int idx, int x) {
  if (t[idx].l == t[idx].r) {
    t[idx].mxav = -1, t[idx].miav = 0x3f3f3f3f;
    return;
  }
  int mid = (t[idx].l + t[idx].r) >> 1;
  if (x <= mid)
    _change(idx << 1, x);
  else
    _change(idx << 1 | 1, x);
  t[idx].mxav = max(t[idx << 1].mxav, t[idx << 1 | 1].mxav);
}
int main() {
  int t;
  scanf("%d", &t);
  while (t--) {
    scanf("%d", &n);
    build(1, 1, n), v1.clear(), v2.clear();
    long long res = 0;
    for (int i = 1; i <= n; i++) {
      Node q;
      scanf("%lld%lld%lld", &q.k, &q.l, &q.r), res += min(q.l, q.r);
      if (q.l > q.r)
        v1.push_back(q);
      else
        v2.push_back(q);
    }
    sort(v1.begin(), v1.end(), cmp);
    sort(v2.begin(), v2.end(), cmp);
    for (Node q : v1) {
      int x = _findmx(1, 1, q.k);
      if (x != -1) res += q.l - q.r, _change(1, x);
    }
    for (Node q : v2) {
      if (q.k == n) continue;
      int x = _findmi(1, q.k + 1, n);
      if (x != 0x3f3f3f3f) res += q.r - q.l, _change(1, x);
    }
    printf("%lld\n", res);
  }
  return 0;
}
