#include <bits/stdc++.h>
using namespace std;
set<char> st = {'a', 'e', 'i', 'o', 'u'};
long long mod = 1e9 + 7;
const int M = 100006;
int f[M], inv[M];
int expo(int base, int exponent, int mod) {
  int ans = 1;
  while (exponent != 0) {
    if (exponent & 1) ans = (1LL * ans * base) % mod;
    base = (1LL * base * base) % mod;
    exponent >>= 1;
  }
  return ans % mod;
}
void compute() {
  f[0] = 1;
  for (long long i = 1; i <= M - 1; i++) {
    f[i] = (1LL * i * f[i - 1]) % mod;
  }
  inv[M - 1] = expo(f[M - 1], mod - 2, mod);
  for (int i = M - 2; i >= 0; i--) {
    inv[i] = (1LL * (i + 1) * inv[i + 1]) % mod;
  }
}
int C(int n, int r) {
  return (1LL * ((1LL * f[n] * inv[r]) % mod) * inv[n - r]) % mod;
}
long long cal(long long i, double val, long long q) {
  long long ans;
  double tmp = (double)(i)*val;
  tmp *= (double)q;
  long long t = (long long)tmp;
  if (t == tmp)
    ans = t;
  else
    ans = (t + 1);
  return ans;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long tests = 1;
  cin >> tests;
  while (tests--) {
    long long n, m;
    cin >> n;
    vector<long long> a(n);
    for (m = 0; m < n; m++) cin >> a[m];
    sort(a.begin(), a.end(), greater<long long>());
    for (auto x : a) cout << x << " ";
    cout << "\n";
  }
  return 0;
}
