#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e6 + 10;
const long long mo = 1e9 + 7;
int b[maxn], c[maxn];
int check(int n, int m) {
  if (n == 0)
    return 2;
  else if (m == 0)
    return 1;
  if (abs(b[n - 1] - c[0]) != 1)
    return 1;
  else if (abs(c[m - 1] - b[0]) != 1)
    return 2;
  return 0;
}
int main() {
  ios::sync_with_stdio(false);
  int T;
  cin >> T;
  while (T--) {
    string s;
    cin >> s;
    int a[30];
    memset(a, 0, sizeof(a));
    memset(b, 0, sizeof(b));
    memset(c, 0, sizeof(c));
    for (int i = 0; i < s.size(); i++) {
      a[s[i] - 'a']++;
    }
    int k1 = 0;
    for (int i = 0; i < 26; i += 2) {
      if (a[i] != 0) {
        while (a[i]) {
          b[k1++] = i;
          a[i]--;
        }
      }
    }
    int k2 = 0;
    for (int i = 1; i < 26; i += 2) {
      if (a[i] != 0) {
        while (a[i]) {
          c[k2++] = i;
          a[i]--;
        }
      }
    }
    int flag = check(k1, k2);
    if (flag == 1) {
      for (int i = 0; i < k1; i++) {
        cout << char(b[i] + 'a');
      }
      for (int i = 0; i < k2; i++) {
        cout << char(c[i] + 'a');
      }
      cout << endl;
    } else if (flag == 2) {
      for (int i = 0; i < k2; i++) {
        cout << char(c[i] + 'a');
      }
      for (int i = 0; i < k1; i++) {
        cout << char(b[i] + 'a');
      }
      cout << endl;
    } else
      cout << "No answer" << endl;
  }
  return 0;
}
