#include <bits/stdc++.h>
using namespace std;
int main() {
  int t;
  cin >> t;
  while (t--) {
    string a;
    cin >> a;
    string p = "";
    int i = 0;
    deque<char> q;
    int j = a.length() - 1;
    while (i < j) {
      if (a[i] == a[j]) {
        p.push_back(a[i]);
        q.push_front(a[j]);
      } else
        break;
      i++;
      j--;
    }
    if (i == j) {
      p.push_back(a[i]);
      while (!q.empty()) {
        char val = q.front();
        p.push_back(val);
        q.pop_front();
      }
      cout << p << endl;
      continue;
    }
    if (i == j + 1 && a[i] == a[j]) {
      while (!q.empty()) {
        char val = q.front();
        p.push_back(val);
        q.pop_front();
      }
      cout << p << endl;
      continue;
    }
    int x = i;
    int y = j;
    string t1, t3;
    deque<char> t2;
    deque<char> t4;
    while (a[x] != a[y]) {
      y--;
    }
    int flag = 0;
    while (x < y) {
      int l = x;
      string temp1;
      deque<char> temp2;
      int r = y;
      while (l < r) {
        if (a[l] == a[r]) {
          temp1.push_back(a[l]);
          temp2.push_front(a[r]);
          l++;
          r--;
        } else
          break;
      }
      t1 = temp1;
      t2 = temp2;
      if (l == r + 1 && a[l] == a[r]) {
        flag = 1;
        break;
      }
      if (l == r) {
        flag = 1;
        t1.push_back(a[l]);
        break;
      } else {
        y--;
      }
    }
    if (!flag) {
      t1.push_back(a[x]);
    }
    x = i;
    y = j;
    while (a[x] != a[y]) {
      x++;
    }
    if (x == y) {
      t3.push_back(a[x]);
    }
    while (x < y) {
      int l = x;
      string temp3;
      deque<char> temp4;
      int r = y;
      while (l < r) {
        if (a[l] == a[r]) {
          temp3.push_back(a[l]);
          temp4.push_front(a[r]);
          l++;
          r--;
        } else
          break;
      }
      t3 = temp3;
      t4 = temp4;
      if (l == r + 1 && a[l] == a[r]) {
        break;
      } else if (l == r) {
        t3.push_back(a[l]);
        break;
      } else {
        x++;
      }
    }
    if (t1.size() + t2.size() >= t3.size() + t4.size()) {
      for (int i = 0; i < t1.size(); i++) p.push_back(t1[i]);
      while (!t2.empty()) {
        char val = t2.front();
        p.push_back(val);
        t2.pop_front();
      }
    } else {
      for (int i = 0; i < t3.size(); i++) p.push_back(t3[i]);
      while (!t4.empty()) {
        char val = t4.front();
        p.push_back(val);
        t4.pop_front();
      }
    }
    while (!q.empty()) {
      char val = q.front();
      p.push_back(val);
      q.pop_front();
    }
    if (p == "")
      cout << a[0] << endl;
    else
      cout << p << endl;
  }
}
