#include using namespace std; string Calc(char c) { int n = 10+(c-'A'); string ans = ""; for(int i = 0; i < 4; i++) { ans += (char)('0'+n%2); n >>= 1; } reverse(ans.begin(),ans.end()); return ans; } int calc(string s) { int res = 0; res += (s[0]-'0')*4; res += (s[1]-'0')*2; res += (s[2]-'0')*1; return res; } int main() { string N; cin >> N; string S = ""; for(int i = 0; i < N.size(); i++) { S += Calc(N[i]); } S = string((3-S.size()%3)%3,'0')+S; maptmp; int mx = 0; for(int i = 0; i < S.size(); i += 3) { tmp[calc(S.substr(i,3))]++; mx = max(mx,tmp[calc(S.substr(i,3))]); } vectorans; for(auto i:tmp) { if(i.second == mx) { ans.push_back(i.first); } } for(int i = 0; i < ans.size(); i++) { cout << ans[i] << ((i+1 == ans.size())?"\n":" "); } }