// hdoj_2032 杨辉三角
//0MS 236K 507 B GCC
#include <stdio.h>
int main(void)
{
int a[31][31] = {0}, i, j, n;
a[1][1] = 1;
a[2][1] = 1;
a[2][2] = 1;
while(scanf("%d", &n) != EOF)
{
for(i = 3; i <= n; i ++)
for(j = 1; j <= n; j ++)
a[i][j] = a[i-1][j-1] + a[i-1][j];
for(i = 1; i <= n; i ++)
{
for(j = 1; j <= i; j ++)
{
if(j != i)
printf("%d ", a[i][j]);
else
printf("%d", a[i][j]);
}
printf("\n");
}
printf("\n");
}
}