func_code_string: #include <bits/stdc++.h>   using namespace std;   const int mod = 1e9 + 7;   const int nex = 2e5 + 5;   void solve() {     int a, b;     cin >> a >> b;     string s;     cin >> s;     int cnt = 0;     vector<int> v;     for (int i = 0; i < ((int)s.size()); i++) {       if (s[i] ==  X ) {         if (cnt) v.push_back(cnt);         cnt = 0;       } else {         cnt++;       }     }     if (cnt) v.push_back(cnt);     cnt = 0;     int val = 0;     for (int x : v) {       if (x < a && x >= b) {         cout <<  NO n ;         return;       }       if (x >= a && x < 2 * b)         cnt++;       else if (x >= 2 * b) {         if (val) {           cout <<  NO n ;           return;         }         val = x;       }     }     cnt = cnt;     for (int i = 0; i <= (val - a); i++) {       int x = i, y = val - a - i, lcnt = cnt;       if (x < 2 * b && y < 2 * b) {         if (x < a && x >= b) continue;         if (y < a && y >= b) continue;         if (y >= a) lcnt++;         if (x >= a) lcnt++;         if (lcnt % 2 == 0) {           cout <<  YES n ;           return;         }       }     }     if (val == 0) {       if (cnt % 2)         cout <<  YES n ;       else         cout <<  NO n ;       return;     }     cout <<  NO n ;   }   int main() {     ios_base::sync_with_stdio(0);     cin.tie(NULL);     cout.tie(NULL);     cout << fixed << setprecision(11);     clock_t beg = clock();     int t = 1, n;     cin >> t;     while (t--) {       solve();     }     clock_t end = clock();     fprintf(stderr,  %lf sec n , (double)(end - beg) / (CLOCKS_PER_SEC));     return 0;   }   