import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()) {
            int n = sc.nextInt();
            show(n);
        }

    }

    // 沿对角线看,第 k 高 第 b 个数,为 (k-1)*k/2+b,这个容易求
    // 对 第 i 行 第 j 列 ,k = i+j-1、b = j;
    // 故可得 f(i,j) = (i+j-2)*(i+j-1)/2+j;
    private static void show(int n) {
        // n 为行高
        for (int i = 1; i <= n; i++) {
            for (int j = 1; j + i < n + 2; j++) {
                int fij = (i + j - 2) * (i + j - 1) / 2 + j;
                System.out.print(fij + " ");
            }
            System.out.println();
        }
    }

}