#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 5;
int n, l, r, t[3], m;
char s[N], ans[N];
int getmx() {
  if (t[0] >= t[1] && t[0] >= t[2]) return 0;
  if (t[1] >= t[0] && t[1] >= t[2]) return 1;
  if (t[2] >= t[0] && t[2] >= t[1]) return 2;
}
int main() {
  scanf("%s", s + 1);
  n = strlen(s + 1);
  l = 1;
  r = n;
  while (r - l + 1 >= 4) {
    t[0] = t[1] = t[2] = 0;
    ++t[s[l] - 'a'];
    ++t[s[l + 1] - 'a'];
    ++t[s[r] - 'a'];
    ++t[s[r - 1] - 'a'];
    ans[++m] = getmx() + 'a';
    l += 2;
    r -= 2;
  }
  for (int i = 1; i <= m; ++i) putchar(ans[i]);
  t[0] = t[1] = t[2] = 0;
  for (int i = l; i <= r; ++i) ++t[s[i] - 'a'];
  int x = getmx();
  while (t[x]--) putchar('a' + x);
  for (int i = m; i; --i) putchar(ans[i]);
  return 0;
}
