#include <bits/stdc++.h> int main() { int n; std::cin >> n; int dp[n + 1][n + 1]; for (int i = 1; i <= n; i++) {
dp[1][i] = i;
}
for (int y = 2; y <= n; y++)
{
for (int r = 1; r <= y - 1; r++)
{
dp[y][r] = dp[r][y];
}
int orr = n - y + 1;
int yrr = y - 1;
int ree = dp[y - 1][n];
while (orr--)
{
yrr++;
ree++;
dp[y][yrr] = ree;
}
}
for (int g = 1; g <= n; g++)
{
for (int l = 1; l <= n; l++)
{
std::cout << dp[g][l] << " ";
}
std::cout << "\n";
}
}