#include <bits/stdc++.h>

using namespace std;

int n;
string s;
vector <int> pos[26];
int BIT[100010];

void add(int id, int delta) {
    ++id;
    while (id <= n) {
        BIT[id] += delta;
        id += id & (- id);
    }
}

int get(int id) {
    ++id;
    int res = 0;
    while (id) {
        res += BIT[id];
        id -= id & (- id);
    }
    return res;
}

long long inv[4][4];
int anton[4] = {'A' - 'A', 'T' - 'A', 'O' - 'A', 'N' - 'A'};

int main() {
    ios :: sync_with_stdio(0); cin.tie(0); cout.tie(0);
    int T;
    cin >> T;
    while (T--) {
        memset(inv, 0, sizeof(inv));
        cin >> s;
        n = s.size();
        for (int i = 0; i < n; ++i) pos[s[i] - 'A'].push_back(i);
        for (int u = 0; u < 4; ++u)
            for (int v = 0; v < 4; ++v) {
                if (u == v) continue;
                vector <int> p;
                for (auto id: pos[anton[u]]) p.push_back(id);
                for (auto id: pos[anton[v]]) p.push_back(id);
                for (int i = 0; i < p.size(); ++i) {
                    inv[u][v] += get(n - 1) - get(p[i]);
                    add(p[i], 1);
                }
                for (int i = 1; i <= n; ++i) BIT[i] = 0;
            }
        long long opt = -1;
        vector <int> p = {0, 1, 2, 3}, best;
        do {
            long long total = 0;
            for (int i = 0; i < 4; ++i) {
                for (int j = i + 1; j < 4; ++j) {
                    total += inv[p[i]][p[j]];
                }
            }
            if (total > opt) {
                opt = total;
                best = p;
            }
        } while (next_permutation(p.begin(), p.end()));
        for (int i = 0; i < 4; ++i) {
            while (pos[anton[best[i]]].size()) {
                cout << char(anton[best[i]] + 'A');
                pos[anton[best[i]]].pop_back();
            }
        }
        cout << "\n";
    }
}
