#include <cstdio>
#include <cstring>
#include <iostream>
#include <string>
#include <cmath>
#include <bitset>
#include <vector>
#include <map>
#include <set>
#include <queue>
#include <deque>
#include <algorithm>
#include <complex>
#include <unordered_map>
#include <unordered_set>
#include <random>
#include <cassert>
#include <fstream>
#define popcount __builtin_popcount
using namespace std;
typedef long long int ll;
typedef pair<int, int> P;

int main()
{
    int n; cin>>n;
    int ans[301][301];
    for(int i=0; i<n/2; i++){
        for(int j=0; j<n/2; j++){
            ans[i][j]=(i*n/2+j)*2+1;
            ans[i+n/2][j+n/2]=(i*n/2+j)*2+2;
            ans[i][n-1-j]=(i*n/2+j)*2+1+n*n/2;
            ans[i+n/2][n/2-1-j]=(i*n/2+j)*2+2+n*n/2;
        }
    }
    for(int i=0; i<n; i++){
        for(int j=0; j<n; j++) cout<<ans[i][j]<<" ";
        cout<<endl;
    }
    return 0;
}