#include <bits/stdc++.h> using namespace std; using ll=long long; const ll MOD=(ll)1e9+7; const ll INF=(ll)1e18+10; const double PI=acos(-1); template<class T> bool chmax(T &a, const T &b) { if (a<b) { a=b; return 1; } return 0; } template<class T> bool chmin(T &a, const T &b) { if (a>b) { a=b; return 1; } return 0; } int dy[]={-1,1,0,0}; int dx[]={0,0,-1,1}; void solve(int cn) { int N; cin>>N; vector<vector<int>> a(N,vector<int>(N,0)); vector<int> mods(N,0); for (int i = 0; i < N; ++i) { mods[(2*i)%N]=i; } for (int i = 0; i < N; ++i) { for (int j = 0; j < N; ++j) { a[i][j]=mods[(i+j)%N]; } } for (int i = 0; i < N; ++i) { for (int j = 0; j < N; ++j) { cout<<a[i][j]+1; if(j<N-1) cout<<" "; } cout<<"\n"; } } #define SINGLE int main() { #ifdef SINGLE solve(1); #else int N; cin>>N; for(int i=0;i<N;++i){ solve(i); } #endif return 0; }