#include using namespace std; #define MOD 1000000007 #define INF 2000000000 #define MAX 100001 //#define int ll #define ll long long #define ld long double #define vi vector #define pa pair #define INIT ios::sync_with_stdio(false);cin.tie(0); #define VAR(type, ...)type __VA_ARGS__;MACRO_VAR_Scan(__VA_ARGS__); template void MACRO_VAR_Scan(T& t) { cin >> t; } templatevoid MACRO_VAR_Scan(First& first, Rest&...rest) { cin >> first; MACRO_VAR_Scan(rest...); } #define VEC(type, c, n) vector c(n);for(auto& i:c)cin>>i; #define MAT(type, c, m, n) vector> c(m, vector(n));for(auto& r:c)for(auto& i:r)cin>>i; #define BR cout << "\n"; #define SP cout << " "; #define OUT(d) cout<<(d); #define OUTL(d) cout<<(d)<=0;--i) #define FOR(i, m, n) for(int i = m;i < n; i++) #define RFOR(i, a, b) for(int i=(a)-1;i>=(b);--i) #define ALL(a) (a).begin(),(a).end() #define IFY(con) if((con)){YES;}else{NO;} #define IFy(con) if((con)){Yes;}else{No;} signed main(){ INIT VAR(string, s); sort(ALL(s)); int one = 1, cnt=1; char ans; FOR(i, 1, s.size()){ if(s[i] == s[i-1]) cnt++; else{ if(cnt == 1 && one){ one--; ans = s[i-1]; }else if(cnt != 2){ OUTL("Impossible"); RET; }else{ cnt = 1; } } } if(cnt == 1 && one){ ans = s[s.size()-1]; }else if(cnt != 2){ OUTL("Impossible"); RET; } OUTL(ans); RET;}