#include<bits/stdc++.h>
using namespace std;
int main()
{
int n, i, j, count{};
(cin >> n).get();
unordered_map<int, char>mp;
mp[0] = '*'; mp[1] = 'y'; mp[2] = 'i'; mp[3] = 'z'; mp[4] = 'h';
mp[5] = 'o'; mp[6] = 'n'; mp[7] = 'g';
vector<vector<int>>v(n + 1, vector<int>(n + 1));
vector<vector<int>>v1(n + 1, vector<int>(n + 1));
for (i = 1; i <= n; ++i) {
for (j = 1; j <= n; ++j) {
char c;
c = getchar();
if (c == '\n') {
++count;
--j; continue;
}
switch (c) {
case 'y':v[i][j] = 1; break;
case 'i':v[i][j] = 2; break;
case 'z':v[i][j] = 3; break;
case 'h':v[i][j] = 4; break;
case 'o':v[i][j] = 5; break;
case 'n':v[i][j] = 6; break;
case 'g':v[i][j] = 7; break;
default :v[i][j] = 0; break;
}
}
}
for (i = 1; i <= n; ++i) {
for (j = 1; j <= n; ++j) {
if (v[i][j] == 1) {
count=0;
int k = 1;
while (k+j-1 <=n) {
if (v[i][j + k - 1] == k)++count;
else break;
++k;
}if (count == 7) {
k = 1;
for (; k <= 7; ++k)v1[i][j + k - 1] = v[i][j + k - 1];
}count = 0; k = 1;
while (j -k+1 >=1) {
if (v[i][j - k + 1] == k)++count;
else break;
++k;
}if (count == 7) {
k = 1;
for(;k<=7;++k)v1[i][j - k + 1] = v[i][j - k + 1];
}count = 0; k = 1;
while (i - k + 1 >= 1) {
if (v[i - k + 1][j] == k)++count;
else break;
++k;
}if (count == 7) {
k = 1;
for(;k<=7;++k)v1[i - k + 1][j] = v[i - k + 1][j];
}count = 0; k = 1;
while (i + k - 1 <= n) {
if (v[i + k - 1][j] == k)++count;
else break;
++k;
}if (count == 7) {
k = 1;
for(;k<=7;++k)v1[i + k - 1][j] = v[i + k - 1][j];
}count = 0; k = 1;
while (i + 1 - k >= 1 && j + 1 - k >= 1) {
if (v[i + 1 - k][j + 1 - k] == k)++count;
else break;
++k;
}if (count == 7) {
k = 1;
for(;k<=7;++k)v1[i + 1 - k][j + 1 - k] = v[i + 1 - k][j + 1 - k];
}count = 0; k = 1;
while (i - 1 + k <=n && j + 1 - k >= 1) {
if (v[i - 1 + k][j + 1 - k] == k)++count;
else break;
++k;
}if (count == 7) {
k = 1;
for(;k<=7;++k)v1[i - 1 + k][j + 1 - k] = v[i - 1 + k][j + 1 - k];
}count = 0; k = 1;
while (i + 1 - k >= 1 && j - 1 + k <=n) {
if (v[i + 1 - k][j - 1 + k] == k)++count;
else break;
++k;
}if (count == 7) {
k = 1;
for(;k<=7;++k)v1[i + 1 - k][j - 1 + k] = v[i + 1 - k][j - 1 + k];
}count = 0; k = 1;
while (i - 1 + k <=n&& j - 1 + k <=n) {
if (v[i - 1 + k][j - 1 + k] == k)++count;
else break;
++k;
}if (count == 7) {
k = 1;
for(;k<=7;++k)v1[i - 1 + k][j - 1 + k] = v[i - 1 + k][j - 1 + k];
}
}
}
}
for (i = 1; i <= n; ++i) {
for (j = 1; j <= n; ++j) {
cout << mp[v1[i][j]];
}cout << endl;
}
return 0;
}