#include <bits/stdc++.h>
using namespace std;
const double pi = acos(-1.0);
int t;
char s[110];
map<char, int> slot0;
map<char, int> slot1;
bool near(int a, int b) {
  if (a > b) {
    swap(a, b);
  }
  return b - a == 1;
  int d = ((a - 'a') - (b - 'a') + 26) % 26;
  return d == 1 || d == 25;
}
void op() {
  slot0.clear();
  slot1.clear();
  assert(slot0.size() == 0);
  assert(slot1.size() == 0);
  int n = strlen(s);
  for (int i = 0; i < n; i++) {
    assert(s[i] >= 'a' && s[i] <= 'z');
    if (s[i] % 2) {
      if (slot0.count(s[i])) {
        slot0[s[i]]++;
      } else {
        slot0[s[i]] = 1;
      }
    } else {
      if (slot1.count(s[i])) {
        slot1[s[i]]++;
      } else {
        slot1[s[i]] = 1;
      }
    }
  }
  if (slot0.size() == 0 || slot1.size() == 0) {
    printf("%s\n", s);
    return;
  }
  bool find = false;
  char mid0 = 'A';
  char mid1 = 'A';
  for (auto i0 : slot0) {
    for (auto i1 : slot1) {
      assert(i0.first >= 'a' && i0.first <= 'z' && i1.first >= 'a' &&
             i1.first <= 'z');
      if (i0.second > 0 && i1.second > 0 && !near(i0.first, i1.first)) {
        mid0 = i0.first;
        mid1 = i1.first;
        slot0[mid0]--;
        slot1[mid1]--;
        find = true;
        break;
      }
    }
    if (find) break;
  }
  if (!find) {
    printf("No answer\n");
    return;
  }
  int itr = 0;
  for (auto i0 : slot0) {
    for (int i = 0; i < i0.second; i++) {
      s[itr++] = i0.first;
    }
  }
  s[itr++] = mid0;
  s[itr++] = mid1;
  for (auto i1 : slot1) {
    for (int i = 0; i < i1.second; i++) {
      s[itr++] = i1.first;
    }
  }
  assert(s[itr] == '\0');
  assert(itr == n);
  printf("%s\n", s);
}
int main() {
  scanf("%d", &t);
  while (t--) {
    scanf("%s", s);
    op();
  }
  return 0;
}
