#include <bits/stdc++.h>
using namespace std;
inline void fastio() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
}
long long int INF = 1e10;
long long int MOD = 1e9 + 7;
long long int fast_power(long long int base, long long int power) {
  long long int result = 1;
  while (power > 0) {
    if (power % 2 == 1) result = (result * base) % MOD;
    base = (base * base) % MOD;
    power = power / 2;
  }
  return result;
}
string alphabet = "abcdefghijklmnopqrstuvwxyz";
void solve() {
  string in;
  cin >> in;
  map<char, bool> done;
  deque<char> keys;
  deque<char>::iterator itr;
  bool possi = 1;
  for (auto &x : in) {
    if (keys.empty()) {
      keys.push_back(x);
      itr = keys.begin();
      done[x] = 1;
      continue;
    }
    if (!done.count(x)) {
      if ((itr + 1) == keys.end()) {
        keys.push_back(x);
        itr++;
        done[x] = 1;
        continue;
      }
      if (itr == keys.begin()) {
        keys.push_front(x);
        itr--;
        done[x] = 1;
        continue;
      }
      possi = 0;
      break;
    }
    if ((itr + 1) != keys.end() && *(itr + 1) == x) {
      ++itr;
      continue;
    }
    if (itr != keys.begin() && *(itr - 1) == x) {
      --itr;
      continue;
    }
    possi = 0;
    break;
  }
  if (!possi)
    cout << "NO"
         << "\n";
  else {
    cout << "YES"
         << "\n";
    deque<char>::iterator go = keys.begin();
    while (go != keys.end()) {
      cout << *go;
      ++go;
    }
    for (auto &x : alphabet) {
      if (!done.count(x)) cout << x;
    }
    cout << "\n";
  }
}
int main() {
  fastio();
  int tt;
  cin >> tt;
  while (tt--) {
    solve();
  }
  return 0;
}
