#include <bits/stdc++.h>
using namespace std;
const int dinf = 0x7fffffff;
const long long llinf = 0x7fffffffffffffff;
int n, ans, lt, lg;
pair<int, int> nw;
string s, hft;
int main() {
  cin.sync_with_stdio(false);
  cin.tie(0);
  cin >> s;
  lg = s.length();
  lt = s.length() / 2;
  nw = pair<int, int>(lt - 1, lt - 1);
  hft.push_back(s[nw.first]);
  while (hft.length() * 2 <= lt) {
    int l = nw.first, r = nw.second;
    if (s[l - 1] == s[r + 1]) {
      nw = pair<int, int>(l - 1, r + 1);
      hft.push_back(s[l - 1]);
    } else if (s[r + 2] == s[l - 1]) {
      nw = pair<int, int>(l - 1, r + 2);
      hft.push_back(s[l - 1]);
    } else if (s[l - 2] == s[r + 1]) {
      nw = pair<int, int>(l - 2, r + 1);
      hft.push_back(s[l - 2]);
    } else if (l == r) {
      nw = pair<int, int>(l, r + 2);
      hft = string() + s[l + 1] + s[l];
    } else {
      nw = pair<int, int>(l - 2, r + 2);
      hft.push_back(s[l - 2]);
    }
  }
  string shft = hft;
  reverse(shft.begin(), shft.end());
  shft.pop_back();
  cout << shft << hft;
  return 0;
}
