/*
#include <stdio.h>
int main()
{
int n, i, j, k=1;
int x[100][100]={};
int y=0;
scanf("%d", &n);
for(i=0; i<n; i++){
for(j=0; j<n; j++){
x[i][j]=k++;
}
}
for(i=0; i<n; i++){
for(j=0; j<n; j++){
if(((i==n-1)||(i==0))||((j==n-1)||(j==0))){
y = y + x[i][j];
}
}
}
printf("%d", y);
return 0;
}
// N*N 배열의 사각 테두리에 있는 배열값들만 합하여 출력
// 3 입력시 테투리에 없는 값인 5를 제외하여 합은 1+2+3+6+9+8+7+4 = 40이 된다.
*/
#include<stdio.h>
int main()
{
int n, m;
int a;
int y[100];
int i, j, k=1;
int x[100][100]={};
scanf("%d %d", &n, &m);
scanf("%d", &a);
for(i=1; i<=a; i++){
scanf("%d", &y[i]);
}
for(i=1; i<=n; i++){
for(j=1; j<=m; j++){
}
}
for(i=0; i<n; i++){
for(j=0; j<n; j++){
printf("%d ", x[i][j]);
}
printf("\n");
}
return 0;
}
//1098, 미완