// 1405
/*
include <stdio.h>
int main ()
{
int i, j, k;
int n[1000];
scanf("%d", &k);
for(i=0; i<k; i++)
{
scanf("%d", &n[i]);
}
for(i=0; i<k; i++)
{
for(j=i; j<k+i; j++) {
printf("%d ", n[j%k]);
}
printf("\n");
}
}
*/
/*
#include <stdio.h>
int main ()
{
int i, j, n;
int k[50] = {0};
int a;
scanf("%d", &n);
for(i=0; i<n-1; i++)
{
scanf("%d", &k[i]);
}
for(i=1; i<=n; i++)
{
a=0;
for(j=0; j<n; j++)
{
if(i==k[j])
{
a = 1;
}
}
if(a==0)
{
printf("%d", i);
}
}
return 0;
}
*/
/*
#include <stdio.h>
int main() {
int i, n, a[50] = {0}, k;
scanf("%d", &n);
for(i=0; i<n-1; i++) {
scanf("%d", &k);
a[k] = 1;
}
for(i=1; i<=n; i++) {
if(a[i]==0) {
printf("%d", i);
}
}
}
*/
// 2차원 배열
#include<stdio.h>
int main() {
int i, j, arr[100][100] = {0}, k;
scanf("%d", &k);
for(i=0; i<k; i++) {
for(j=0; j<k; j++) {
scanf("%d", &arr[i][j]);
}
}
for(i=0; i<k; i++) {
for(j=0; j<k; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
}