#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,avx2,tune=native")
//#include <intrin.h>

#include <bits/stdc++.h>

#include <chrono>
#include <random>
#include <ctime>

using namespace std;

typedef unsigned long long ull;
typedef long long ll;
typedef long double ld;
#define mp make_pair
#define pb push_back
#define rep(i, n) for (ll i = 0; i < (n); i++)
#define repb(i, n) for (ll i = n - 1; i>=0; --i)
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
const ll inf = 1e9;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
const int MAXN = 1e5;

inline void SOLVE() {
    string s;
    cin >> s;
    int n = s.length();
    string res = "";
    string p = s;
    sort(all(p));
    const int sz = 26;
    vector<bool> need(sz);
    vector<vector<int>> suff(26);
    rep(i, n) {
        suff[s[i] - 'a'].pb(i);
    }
    rep(i, n) {
        need[s[i] - 'a'] = true;
    }
    int x = unique(all(p)) - p.begin();
    while (x--) {
        // ищем минимальный индекс
        int cc = 0;
        int start = 0;
        while (cc < res.size()) {
            if (res[cc] == s[start++])
                cc++;
        }
        char best = 'a';
        while (start < n) {
            if (need[s[start] - 'a'] && best < s[start]) {
                // проверяем, что можно на суффиксе набрать неоюходимые символы
                bool f = true;
                for (int c = 0; c < 26; ++c) {
                    if (c != s[start] - 'a' && need[c]) {
                        int cnt = suff[c].end() - upper_bound(all(suff[c]), start);
                        if (cnt == 0) {
                            f = false;
                        }
                    }
                }
                if (f)
                    best = s[start];
            }
            start++;
        }
        need[best - 'a'] = false;
        res.pb(best);
    }
    cout << res << '\n';
}

inline void IQ() {
    ios::sync_with_stdio(false);
    cin.tie(NULL);
}

signed main() {
#ifdef GOSHA
    freopen("../IO/input.txt", "r", stdin);
    freopen("../IO/output.txt", "w", stdout);
#endif
    IQ();
    ll T = 1;
    cin >> T;
    while (T--) {
        SOLVE();
    }
    return 0;
}