#include <bits/stdc++.h>
using namespace std;
char a[100][100];
int n;
bool _move[300][300];
int main() {
  scanf("%d", &n);
  for (int i = 0; i < n; ++i) {
    scanf("\n");
    for (int j = 0; j < n; ++j) {
      scanf("%c", &a[i][j]);
    }
  }
  int D = n - 1;
  for (int i = 0; i <= 2 * n; ++i)
    for (int j = 0; j <= 2 * n; ++j) _move[i][j] = true;
  for (int i = 0; i < n; ++i)
    for (int j = 0; j < n; ++j)
      if (a[i][j] == 'o') {
        for (int x = 0; x < n; ++x)
          for (int y = 0; y < n; ++y) {
            if (a[x][y] == '.') {
              _move[x - i + D][y - j + D] = false;
            }
          }
      }
  for (int i = 0; i < n; ++i)
    for (int j = 0; j < n; ++j)
      if (a[i][j] == 'o') {
        for (int x = -D; x <= D; ++x)
          for (int y = -D; y <= D; ++y) {
            int tx = x + i, ty = y + j;
            if (!(0 <= tx && tx < n && 0 <= ty && ty < n)) continue;
            if (!_move[x + D][y + D]) continue;
            if (a[tx][ty] == 'x') a[tx][ty] = 'y';
          }
      }
  for (int i = 0; i < n; ++i)
    for (int j = 0; j < n; ++j)
      if (a[i][j] == 'x') {
        puts("NO");
        return 0;
      }
  puts("YES");
  for (int i = -D; i <= D; ++i) {
    for (int j = -D; j <= D; ++j) {
      if (i == 0 && j == 0) {
        putchar('o');
        continue;
      }
      if (_move[i + D][j + D]) {
        putchar('x');
        continue;
      }
      putchar('.');
    }
    puts("");
  }
  return 0;
}
