#include <stdio.h>
		void functiondiagonal(int n,int a[n][n])
		{
			int i,j,k,l,m,trav;
			for(i=0;i<n;i++)
			{
				trav=i;
				for(j=0;j<=trav;j++)
				{
				printf("%d ",a[i][j]);
				i--;
			    }
				i=trav;
				printf("\n");
			}
			for(j=1;j<n;j++)
			{
				m=j;
				for(i=n-1;i>=m;i--)
				{
					printf("%d ",a[i][j]);
					j++;
				}
				j=m;
				printf("\n");
			}
		}
int main()
{
	int n;							//n denotes the matrix size
	scanf("%d",&n);
	int i,j,k,a[n][n];
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	functiondiagonal(n,a);
	return 0;
}