#include <bits/stdc++.h>
char a[20][11], b[20][11];
int n;
int check() {
  int k = 0;
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
      if (a[n + i][j] != b[i][j]) {
        k = 1;
        break;
      }
    }
  }
  if (k == 0) {
    printf("YES");
    return 10;
  } else
    return 0;
}
void ud() {
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
      b[n - i - 1][j] = a[i][j];
    }
  }
}
void lr() {
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
      b[i][n - j - 1] = a[i][j];
    }
  }
}
void rot() {
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
      b[n - j - 1][i] = a[i][j];
    }
  }
}
void match() {
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < n; j++) {
      a[i][j] = b[i][j];
    }
  }
}
int main() {
  scanf("%d", &n);
  for (int i = 0; i < n * 2; i++) {
    scanf("%s", a[i]);
  }
  for (int i = 0; i < 4; i++) {
    rot();
    match();
    if (check() == 10) return 0;
    ud();
    match();
    if (check() == 10) return 0;
    lr();
    match();
    if (check() == 10) return 0;
    ud();
    match();
    if (check() == 10) return 0;
    lr();
    match();
    if (check() == 10) return 0;
  }
  printf("NO");
  return 0;
}
