#include <bits/stdc++.h>
#include "combo.h"
#define ll long long
#define fi first
#define se second
#define pii pair<int, int>
#define all(a) a.begin(), a.end()
using namespace std;
#ifdef LOCAL
#include "C:\Users\Dell\Downloads\template\template\icpc-notebook\Utilities\debug.h"
#else
#define debug(...) 42
#endif
const int mn = 5e5 + 5, mod = 1e9 + 7, inf = 2e9;
string s, st;
// int press(string x) {
// int mx = 0;
// for(int i = 0; i < (int) x.size(); i++) {
// int cnt = 0;
// while(true) {
// if(x[i + cnt] == st[cnt] && cnt < (int)st.size() - 1 && i + cnt < (int)x.size() - 1) cnt ++;
// else {
// if((cnt == (int) st.size() - 1 || i + cnt == (int)x.size() - 1) && x[i + cnt] == st[cnt]) cnt ++;
// mx = max(mx, cnt);
// break;
// }
// debug(i, cnt, mx);
// }
// }
// debug(x, st, mx);
// return mx;
// }
string guess_sequence(int n) {
int num = press("AB");
char ban;
if(num >= 1) {
if(press("A") == 1) ban = 'A';
else ban = 'B';
}
else {
if(press("X") == 1) ban = 'X';
else ban = 'Y';
}
s += ban;
vector <char> all = {'A', 'B', 'X', 'Y'};
auto it = find(all.begin(), all.end(), ban);
if(it != all.end()) {
all.erase(it);
}
for(int i = 1; i < n; i++) {
bool ok = false;
for(int j = 0; j < 2; j++) {
if(press(s + all[j]) == s.size() + 1) {
s += all[j];
ok = true;
break;
}
}
if(!ok) s += all[2];
}
return s;
}
// int main() {
// cin >> st;
// cout << guess_sequence(st.size()) << '\n';
// }
// Don't wanna lose anymore T_T
// Never let me go - Kazuo Ishiguro