#include<bits/stdc++.h>
using namespace std;
char b[1010][1010];
char a[1010][1010];
long long edd=1;
void cinn(int n, int m){
for(int i=1; i<=n; i++){
for(int j=1; j<=m; j++){
cin>>a[i][j];
}
}
for(int i=1; i<=n*n; i++){
cin>>b[i][0];
}
return;
}
int main(){
int n;
cin>>n;
cinn(n,n);
for(int i=1; i<=n; i++){
for(int j=1; j<=n; j++){
if(a[i][j]=='O'){
cout<<b[edd][0];
}
edd++;
}
}
edd=1;
for(int i=1; i<=n; i++){
for(int j=n; j>=1; j--){
if(a[j][i]=='O'){
cout<<b[edd][0];
}
edd++;
}
}
edd=1;
for(int i=n; i>=1; i--){
for(int j=n; j>=1; j--){
if(a[i][j]=='O'){
cout<<b[edd][0];
}
edd++;
}
}
edd=1;
for(int i=n; i>=1; i--){
for(int j=1; j<=n; j++){
if(a[j][i]=='O'){
cout<<b[edd][0];
}
edd++;
}
}
return 0;
}