func_code_string: #include <bits/stdc++.h>   using namespace std;   const int maxn = 2e5 + 40;   const int inf = 0x3fffffff;   void read(int &x) {     char ch;     bool flag = 0;     for (ch = getchar(); !isdigit(ch) && ((flag |= (ch ==  - )) || 1);          ch = getchar())       ;     for (x = 0; isdigit(ch); x = (x << 1) + (x << 3) + ch - 48, ch = getchar())       ;     x *= 1 - 2 * flag;   }   char mp[4][105];   int n, m;   bool ans = 1;   bool check(int time, int x, int y) {     y += 2 * time;     if (y >= n || mp[x][y] ==  . ) return true;     return false;   }   int vis[5][105];   void dfs(int x, int y) {     if (vis[x][y]) return;     vis[x][y] = 1;     if (y == n - 1) {       ans = 0;       return;     }     if (!check(y, x, y + 1)) return;     for (int i = x - 1; i <= x + 1; i++) {       if (i < 0 || i >= 3) continue;       if (check(y, i, y + 1) && check(y + 1, i, y + 1)) dfs(i, y + 1);     }   }   int main() {     int t;     read(t);     while (t--) {       ans = 1;       memset(vis, 0, sizeof(vis));       read(n), read(m);       int st = -1;       ans = 1;       for (int i = 0; i < 3; i++) {         cin >> mp[i];         for (int j = 0; j < m; j++) {           if (mp[i][j] ==  s ) {             st = i;           }         }       }       mp[st][0] =  . ;       dfs(st, 0);       if (ans)         puts( NO );       else         puts( YES );     }     return 0;   }   