// Created On : 2026-10-07 00:55:20 #include #include using namespace std; #define ll long long #define returnNO {std::cout << "NO\n"; return;} #define returnYES {std::cout << "YES\n"; return;} #define returnAns(x) {cout << x << "\n"; return;} template using MaxHeap = std::priority_queue, std::less>; template using MinHeap = std::priority_queue, std::greater>; const int MOD1 = 1000000007; const int MOD2 = 998244353; /** obs ** **/ void solve(int test_case_index) { string x, y; cin >> x >> y; int i = 0, j = 0, n = x.size(), m = y.size(); for (int k = 1; k <= 2 * max(m, n); ++k) { if (x[i] == y[j]) ; else if (x[i] > y[j]) returnAns("X") else returnAns("Y") i = (i + 1) % n; j = (j + 1) % m; } if (n > m) returnAns("X") returnAns("Y") } void preComp() { } int main() { std::ios::sync_with_stdio(false); std::cin.tie(nullptr); preComp(); int t = 1; std::cin >> t; for (int i = 1; i <= t; ++i) solve(i); return 0; }