#include <bits/stdc++.h>
using namespace std;
const long long inf = 1e18;
const long long N = 3e5 + 100;
const long long bits = 20;
const long double pi = 3.14159265358979323846;
const long long mod = 1e9 + 7;
const long long p = 29;
void solve() {
  long long n;
  cin >> n;
  vector<vector<int>> store(n - 1);
  for (int i = 0; i < n - 1; i++) {
    int k;
    cin >> k;
    store[i].resize(k);
    for (int j = 0; j < k; j++) {
      cin >> store[i][j];
    }
  }
  for (int first = 1; first <= n; first++) {
    vector<int> perm = {first};
    vector<int> taken(n + 1, 0);
    vector<int> alldone(n, 0);
    vector<int> index(n + 1, 0);
    taken[first] = 1;
    index[first] = 0;
    for (int cntr = 0; cntr < n - 1; cntr++) {
      int found = 0;
      for (int i = 0; i < n - 1; i++) {
        if (!alldone[i]) {
          int cnt = 0, ele = -1;
          for (int j = 0; j < store[i].size(); j++) {
            if (!taken[store[i][j]]) {
              cnt++;
              ele = store[i][j];
            }
          }
          if (cnt == 1) {
            found = 1;
            alldone[i] = 1;
            taken[ele] = 1;
            perm.push_back(ele);
            index[ele] = perm.size() - 1;
          }
        }
        if (found) {
          break;
        }
      }
      if (!found) {
        break;
      }
    }
    if (perm.size() == n) {
      vector<int> mark(n + 1);
      vector<vector<array<int, 2>>> store2(n - 1);
      int done = 1;
      for (int i = 0; i < n - 1; i++) {
        int ma = 0;
        store2[i].resize(store[i].size());
        for (int j = 0; j < store[i].size(); j++) {
          store2[i][j][0] = index[store[i][j]];
          store2[i][j][1] = store[i][j];
          ma = max(ma, index[store[i][j]]);
        }
        sort(store2[i].begin(), store2[i].end());
        mark[ma] = 1;
        for (int j = 0; j + 1 < store[i].size(); j++) {
          if (store2[i][j][0] + 1 != store2[i][j + 1][0]) {
            done = 0;
          }
        }
      }
      if (done) {
        for (int x : perm) {
          cout << x << " ";
        }
        cout << "\n";
        return;
      }
    }
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  ;
  std::cout << std::fixed << std::setprecision(20);
  ;
  int t;
  cin >> t;
  while (t--) {
    solve();
  }
}
