#include using namespace std; #define repd(i,a,b) for (int i=(a);i<(b);i++) #define rep(i,n) repd(i,0,n) #define all(x) (x).begin(),(x).end() #define SIZE(x) ll(x.size()) template inline bool chmin(T& a, T b) { if (a > b) { a = b; return true; } return false; } template inline bool chmax(T& a, T b) { if (a < b) { a = b; return true; } return false; } typedef long long ll; const long long INF = 1LL << 60; const long long MOD = 1000000007; typedef pair P; int main() { int N; cin >> N; vector> ans(N, vector(N, 0)); for (int i = N - 1; i >= 0; i--) { for (int j = (N - 1) - i; j < N; j++) { ans[i][j] = 2; } } for (int i = 0; i < N / 2; i++) { ans[i][N - 1 - i] = 1; } rep(i, N) { rep(j, N) cout << ans[i][j]; cout << endl; } return 0; }