#include <bits/stdc++.h>
using namespace std;
deque<char> q;
char s[1001000];
int rep[100100];
int n;
void per() {
  vector<int> p;
  for (int i = 'a'; i <= 'z'; i++) {
    if (!rep[i]) continue;
    p.push_back(i);
  }
  do {
    bool ok = 1;
    for (int i = 1; i < p.size(); i++) {
      if (p[i] == p[i - 1] - 1 || p[i] == p[i - 1] + 1) {
        ok = 0;
        break;
      }
    }
    if (!ok) continue;
    for (int i = 0; i < p.size(); i++) {
      while (rep[p[i]]) {
        rep[p[i]]--;
        printf("%c", (char)p[i]);
      }
    }
    printf("\n");
    return;
  } while (next_permutation(p.begin(), p.end()));
  printf("No answer\n");
}
int main() {
  int t;
  cin >> t;
  while (t--) {
    while (!q.empty()) q.pop_back();
    scanf("%s", s);
    n = strlen(s);
    set<char> st;
    for (int i = 'a'; i <= 'z'; i++) {
      rep[i] = 0;
    }
    for (int i = 0; i < n; i++) {
      rep[s[i]]++;
      st.insert(s[i]);
    }
    if (st.size() <= 7) {
      per();
      continue;
    }
    int in = -1;
    for (int j = 0; j < 50; j++) {
      for (int i = 'a'; i <= 'z'; i++) {
        if (!rep[i]) {
          continue;
        }
        if (q.front() != i - 1 && q.front() != i + 1) {
          while (rep[i]) {
            rep[i]--;
            q.push_front(i);
          }
        }
        if (q.back() != i - 1 && q.back() != i + 1) {
          while (rep[i]) {
            rep[i]--;
            q.push_back(i);
          }
        }
      }
    }
    bool ok = 1;
    for (int i = 'a'; i <= 'z'; i++) {
      if (rep[i]) {
        ok = 0;
        break;
      }
    }
    if (!ok) {
      printf("No answer\n");
      continue;
    }
    while (!q.empty()) {
      printf("%c", q.front());
      q.pop_front();
    }
    printf("\n");
  }
  return 0;
}
