#include <bits/stdc++.h>
using namespace std;
int main() {
  string s;
  int q[30];
  memset(q, 0, sizeof q);
  cin >> s;
  for (int i = 0; i < s.size(); i++) {
    q[s[i] - 'a']++;
  }
  if (s.size() % 2) {
    string letra;
    int ni = 0;
    for (int i = 30; i >= 0; i--)
      if (q[i] % 2) {
        ni++;
      }
    int meta = (ni + 1) / 2;
    ni = 0;
    for (int i = 30; i >= 0; i--)
      if (q[i] % 2) {
        ni++;
        if (ni == meta) {
          letra = 'a' + i;
          q[i]--;
          break;
        }
      }
    string ans = "";
    int p = 0, k = 29;
    while (p < k) {
      while (p < 30 && q[p] % 2 == 0) p++;
      while (k >= 0 && q[k] % 2 == 0) k--;
      if (p < k) {
        q[p]++;
        q[k]--;
      }
    }
    for (int i = 0; i < 30; i++) {
      while (q[i]) {
        ans += 'a' + i;
        q[i] -= 2;
      }
    }
    cout << ans + letra;
    reverse(ans.begin(), ans.end());
    cout << ans << endl;
  } else {
    string ans = "";
    int p = 0, k = 29;
    while (p < k) {
      while (p < 30 && q[p] % 2 == 0) p++;
      while (k >= 0 && q[k] % 2 == 0) k--;
      if (p < k) {
        q[p]++;
        q[k]--;
      }
    }
    for (int i = 0; i < 30; i++) {
      while (q[i]) {
        ans += 'a' + i;
        q[i] -= 2;
      }
    }
    cout << ans;
    reverse(ans.begin(), ans.end());
    cout << ans << endl;
  }
}
