#include <bits/stdc++.h>
using namespace std;
int main() {
  int n;
  cin >> n;
  vector<string> vs(n);
  for (int i = (0); i < (int)(n); ++i) cin >> vs[i];
  vector<string> ans(n * 2 - 1, string(n * 2 - 1, 'x'));
  vector<string> check = vs;
  ans[n - 1][n - 1] = 'o';
  bool ok = true;
  for (int i = (0); i < (int)(n); ++i)
    for (int j = (0); j < (int)(n); ++j) {
      if (vs[i][j] != 'o') {
        check[i][j] = '.';
        continue;
      }
      for (int ii = (0); ii < (int)(n); ++ii)
        for (int jj = (0); jj < (int)(n); ++jj) {
          if (vs[ii][jj] != '.') continue;
          int di = ii - i, dj = jj - j;
          ans[n - 1 + di][n - 1 + dj] = '.';
        }
    }
  int nn = n * 2 - 1;
  for (int i = (0); i < (int)(n); ++i)
    for (int j = (0); j < (int)(n); ++j) {
      if (vs[i][j] == 'o') {
        for (int ii = (0); ii < (int)(nn); ++ii)
          for (int jj = (0); jj < (int)(nn); ++jj) {
            if (ans[ii][jj] != 'x') continue;
            int di = ii - n + 1, dj = jj - n + 1;
            if (i + di < 0 || i + di >= n || j + dj < 0 || j + dj >= n)
              continue;
            if (check[i + di][j + dj] != 'o') check[i + di][j + dj] = 'x';
          }
      }
    }
  if (vs != check) {
    cout << "NO" << endl;
  } else {
    cout << "YES" << endl;
    for (auto e : ans) {
      cout << e << endl;
    }
  }
}
