#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string>
using namespace std;
string s1, s2, cnt;
int huiwen(int b, int e) {
for (int i = b, j = e; i < j; i++, j--)
if (s2[i] != s2[j])
return 0;
return 1;
}
int main() {
while (getline(cin, s2))
s1 += s2;
s2 = s1;
for (int i = 0; i < s1.size(); i++)
if (!((s1[i] >= 'A' && s1[i] <= 'Z') || (s1[i] >= 'a' && s1[i] <= 'z')))
s2.erase(i, 1);
else
cnt += i + '0';
int maxn = 0;
string ans;
for (int i = 0; i < s2.size(); i++) {
for (int j = i + 1; j < s2.size(); j++) {
if (s2[j] != s2[i])
continue;
if (huiwen(i, j)) {
if (j - i + 1 > maxn)
maxn = j - i + 1, ans = s1.substr(cnt[i] - '0', cnt[j] - '0');
}
}
}
if (!maxn) {
cout << "1";
int i = 0;
while (!((s1[i] >= 'A' && s1[i] <= 'Z') || (s1[i] >= 'a' && s1[i] <= 'z')))
cout << s1[i], i++;
} else
cout << maxn << endl << ans;
return 0;
}