#include <bits/stdc++.h>
using namespace std;
const int LIM = 1e5 + 5, MOD = 1e9 + 7;
char c[100005];
long long x[3][105][105];
int flag;
long long res;
long long z[3][105];
void dfs(long long i, long long t, long long n) {
  int j;
  if (z[i][t] == 1) return;
  z[i][t] = 1;
  if (t > res) res = t;
  if (t == n) {
    flag = 1;
    return;
  }
  for (j = 0; j < 3; j++) {
    if (flag == 1) return;
    if ((abs(i - j) <= 1) && (x[j][t][t] == 0) && (x[j][t][t - 1] == 0) &&
        (x[i][t][t - 1] == 0)) {
      dfs(j, t + 1, n);
    }
  }
  return;
}
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  int t;
  cin >> t;
  while (t--) {
    flag = 0;
    res = 0;
    long long i, j, k, y, n;
    cin >> n >> k;
    string s[3];
    for (i = 0; i < 3; i++) {
      cin >> s[i];
    }
    for (i = 0; i < 3; i++) {
      for (j = 0; j < 105; j++) {
        z[i][j] = 0;
      }
    }
    for (i = 0; i < 3; i++) {
      for (j = 0; j < s[i].length(); j++) {
        if (s[i].at(j) == '.')
          x[i][j][0] = 0;
        else if (s[i].at(j) == 's') {
          x[i][j][0] = 1;
          y = i;
        } else
          x[i][j][0] = 1;
      }
    }
    for (i = 1; i < n; i++) {
      for (j = 0; j < 3; j++) {
        for (k = 0; k < n; k++) {
          if (k < (n - 2)) {
            if (x[j][k + 2][i - 1] == 1)
              x[j][k][i] = 1;
            else
              x[j][k][i] = 0;
          } else {
            x[j][k][i] = 0;
          }
        }
      }
    }
    dfs(y, 1, n);
    if (flag == 0)
      cout << "NO\n";
    else
      cout << "YES\n";
  }
  return 0;
}
