#include<bits/stdc++.h>
using namespace std;
string s, ret;
int cnt[200], odd;
char mid;
int main() {
ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
cin >> s;
// 카운팅 배열로 단어에 각 알파벳이 몇 개씩인지 카운팅
// cnt[a]로만 하니 에러 발생.. => cnt[int(a)] 로 변경
for(char a : s)cnt[int(a)]++;
for(int i = 'Z'; i >= 'A'; i--) {
if(cnt[i]) {
// a & 1 : a가 홀수
if(cnt[i] & 1){
// 일단 홀수인 문자 mid 값 지정
mid = char(i);
// 홀수 개수 카운팅
odd++;
// mid 값으로 지정했으니 카운트 하나 빼주고,
cnt[i]--;
}
// 홀수인 문자가 2개가 되면 break => 펠린드롬 불가
if(odd == 2) break;
// cnt[i]값 1 빼줬으니 이제 cnt[i] 는 짝수
// ret에 앞뒤로, 한 번에 두개씩, char(i)를 붙일 거니까,
// cnt[i]개수의 절반만큼만 반복 => j += 2 j 값을 2씩 올려준다.
for(int j = 0; j < cnt[i]; j+= 2) {
// ret 의 앞뒤로 char(i)를 붙여준다.
ret = char(i) + ret;
ret += char(i);
}
}
}
// 다 붙였으면 다른 펠린드롬이 있을 수도 있지만 현재 상태가 사전 순으로 가장 앞서는 펠린드롬이 되었을 것
// 가운데에 mid를 넣어준다.
if(mid)ret.insert(ret.begin() + ret.size() / 2, mid);
if(odd == 2) cout << "I'm Sorry Hansoo\\n";
else cout << ret << "\\n";
}