import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO ?????????????????????????????????????????????
		Scanner sc = new Scanner(System.in);
		String line1 = sc.nextLine();
		int n = Integer.parseInt(line1);

		String line2 = sc.nextLine();
		String[] kari = line2.split(" ");
		int[] A = new int[n];
		for (int i = 0; i < n; i++) {
			A[i] = Integer.parseInt(kari[i]);
		}
		
		System.out.println(line2);

		int v = 0;
		int j = 0;

		for (int i = 1; i < n; i++) {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		}

	}

} import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		// TODO ?????????????????????????????????????????????
		Scanner sc = new Scanner(System.in);
		String line1 = sc.nextLine();
		int n = Integer.parseInt(line1);

		String line2 = sc.nextLine();
		String[] kari = line2.split(" ");
		int[] A = new int[n];
		for (int i = 0; i < n; i++) {
			A[i] = Integer.parseInt(kari[i]);
		}
		
		System.out.println(line2);

		int v = 0;
		int j = 0;

		for (int i = 1; i < n; i++) {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		}

	}

} Main public static void main(String[] args) {
		// TODO ?????????????????????????????????????????????
		Scanner sc = new Scanner(System.in);
		String line1 = sc.nextLine();
		int n = Integer.parseInt(line1);

		String line2 = sc.nextLine();
		String[] kari = line2.split(" ");
		int[] A = new int[n];
		for (int i = 0; i < n; i++) {
			A[i] = Integer.parseInt(kari[i]);
		}
		
		System.out.println(line2);

		int v = 0;
		int j = 0;

		for (int i = 1; i < n; i++) {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		}

	} main {
		// TODO ?????????????????????????????????????????????
		Scanner sc = new Scanner(System.in);
		String line1 = sc.nextLine();
		int n = Integer.parseInt(line1);

		String line2 = sc.nextLine();
		String[] kari = line2.split(" ");
		int[] A = new int[n];
		for (int i = 0; i < n; i++) {
			A[i] = Integer.parseInt(kari[i]);
		}
		
		System.out.println(line2);

		int v = 0;
		int j = 0;

		for (int i = 1; i < n; i++) {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		}

	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) String line1 = sc.nextLine(); line1 sc.nextLine() sc.nextLine sc int n = Integer.parseInt(line1); n Integer.parseInt(line1) Integer.parseInt Integer line1 String line2 = sc.nextLine(); line2 sc.nextLine() sc.nextLine sc String[] kari = line2.split(" "); kari line2.split(" ") line2.split line2 " " int[] A = new int[n]; A new int[n] n for (int i = 0; i < n; i++) {
			A[i] = Integer.parseInt(kari[i]);
		} int i = 0; int i = 0; i 0 i < n i n i++ i++ i {
			A[i] = Integer.parseInt(kari[i]);
		} {
			A[i] = Integer.parseInt(kari[i]);
		} A[i] = Integer.parseInt(kari[i]) A[i] A i Integer.parseInt(kari[i]) Integer.parseInt Integer kari[i] kari i System.out.println(line2) System.out.println System.out System System.out line2 int v = 0; v 0 int j = 0; j 0 for (int i = 1; i < n; i++) {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		} int i = 1; int i = 1; i 1 i < n i n i++ i++ i {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		} {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		} v = A[i] v A[i] A i j = i - 1 j i - 1 i 1 while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			} j >= 0 && A[j] > v j >= 0 j 0 A[j] > v A[j] A j v {
				A[j + 1] = A[j];
				j--;
			} A[j + 1] = A[j] A[j + 1] A j + 1 j 1 A[j] A j j-- j A[j + 1] = v A[j + 1] A j + 1 j 1 v for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			} int k = 0; int k = 0; k 0 k < n - 1 k n - 1 n 1 k++ k++ k {
				System.out.print(A[k]);
				System.out.print(" ");
			} {
				System.out.print(A[k]);
				System.out.print(" ");
			} System.out.print(A[k]) System.out.print System.out System System.out A[k] A k System.out.print(" ") System.out.print System.out System System.out " " System.out.println(A[n - 1]) System.out.println System.out System System.out A[n - 1] A n - 1 n 1 String[] args args public class Main {

	public static void main(String[] args) {
		// TODO ?????????????????????????????????????????????
		Scanner sc = new Scanner(System.in);
		String line1 = sc.nextLine();
		int n = Integer.parseInt(line1);

		String line2 = sc.nextLine();
		String[] kari = line2.split(" ");
		int[] A = new int[n];
		for (int i = 0; i < n; i++) {
			A[i] = Integer.parseInt(kari[i]);
		}
		
		System.out.println(line2);

		int v = 0;
		int j = 0;

		for (int i = 1; i < n; i++) {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		}

	}

} public class Main {

	public static void main(String[] args) {
		// TODO ?????????????????????????????????????????????
		Scanner sc = new Scanner(System.in);
		String line1 = sc.nextLine();
		int n = Integer.parseInt(line1);

		String line2 = sc.nextLine();
		String[] kari = line2.split(" ");
		int[] A = new int[n];
		for (int i = 0; i < n; i++) {
			A[i] = Integer.parseInt(kari[i]);
		}
		
		System.out.println(line2);

		int v = 0;
		int j = 0;

		for (int i = 1; i < n; i++) {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		}

	}

} Main
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO ?????????????????????????????????????????????
		Scanner sc = new Scanner(System.in);
		String line1 = sc.nextLine();
		int n = Integer.parseInt(line1);

		String line2 = sc.nextLine();
		String[] kari = line2.split(" ");
		int[] A = new int[n];
		for (int i = 0; i < n; i++) {
			A[i] = Integer.parseInt(kari[i]);
		}
		
		System.out.println(line2);

		int v = 0;
		int j = 0;

		for (int i = 1; i < n; i++) {
			v = A[i];
			j = i - 1;
			while (j >= 0 && A[j] > v) {
				A[j + 1] = A[j];
				j--;
			}
			A[j + 1] = v;

			for (int k = 0; k < n - 1; k++) {
				System.out.print(A[k]);
				System.out.print(" ");
			}
			System.out.println(A[n - 1]);

		}

	}

}