#include <bits/stdc++.h>
using namespace std;
const int N = 2e5 + 5;
char out[N], str[N];
int cnt[26], n;
int main() {
  scanf("%s", str);
  n = (int)strlen(str);
  for (int i = 0; i < n; i++) cnt[str[i] - 'a']++;
  int Q[26], ptr = 0;
  for (int i = 25; i >= 0; i--)
    if (cnt[i] & 1) Q[ptr++] = i;
  for (int i = 0, j = ptr - 1; i < j; i++, j--) {
    cnt[Q[i]]--;
    cnt[Q[j]]++;
  }
  for (int i = 0, ptr = 0; i < n / 2; i++) {
    while (cnt[ptr] < 2) ptr++;
    cnt[ptr] -= 2;
    out[i] = out[n - 1 - i] = 'a' + ptr;
  }
  for (int i = 0; i < 26; i++)
    if (cnt[i]) out[n / 2] = 'a' + i;
  out[n] = NULL;
  printf("%s\n", out);
}
