#include <bits/stdc++.h>
using namespace std;
bool isPrime(int a, int p) {
  return (a <= p) || ((a % p != 0) && (isPrime(a, p + 1)));
}
int main() {
  const int N = 256;
  int freq[N] = {0};
  string s;
  cin >> s;
  int len = s.size();
  for (int p = 0; p < len; p++) {
    ++freq[s[p]];
  }
  string t(len, 0);
  int *m = max_element(freq, freq + N);
  for (int p = 1; p < len; p++) {
    if ((p < len / 2) || (!isPrime(p + 1, 2))) {
      t[p] = m - freq;
      (*m)--;
    }
  }
  if (*m < 0) {
    cout << "NO" << endl;
  } else {
    int q = 0;
    for (int p = 0; p < len; p++) {
      if (!t[p]) {
        while (!freq[q]) {
          q++;
        }
        freq[t[p] = q]--;
      }
    }
    cout << "YES" << endl << t << endl;
  }
  return 0;
}
