#include<bits/stdc++.h>
using namespace std;
char b[1000][1000];
char mapp[10000];
int a[1000][1000];
int main(){
int d,c;
cin>>d;
for(int i=1;i<=d;i++)
{
for(int j=1;j<=d;j++)
{
cin>>b[i][j];
}
}
int u,o,sum=d*d;
int t=1;
for(int i=1;i<=sum;i++)
{
u=i;
o=1;
while(u>o)
{
u-=o;
o++;
}
if(o%2==0)
{
if(u>d||o+1-u>d)
{
sum++;
continue;
}
mapp[t]=b[u][o+1-u];
t++;
}
else
{
if(o+1-u>d||u>d)
{
sum++;
continue;
}
mapp[t]=b[o+1-u][u];
t++;
}
}
int cnt = 1;
int x = 1, y = 1;
a[1][1]=1;
while(cnt < d * d)
{
while(y + 1 <= d && a[x][y + 1] == 0)
{
a[x][++y] = ++cnt;
}
while(x + 1 <= d && a[x + 1][y] == 0)
{
a[++x][y] = ++cnt;
}
while(y - 1 >= 1 && a[x][y - 1] == 0)
{
a[x][--y] = ++cnt;
}
while(x - 1 >= 1 && a[x - 1][y] == 0)
{
a[--x][y] = ++cnt;
}
}
for(int i = 1; i <= d; i++)
{
for(int j = 1; j <= d; j++)
{
cout << mapp[a[i][j]];
}
cout << endl;
}
return 0;
}