import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.lang.StringBuffer;

/*Question
/?????\????????????Insertion Sort?????????????????????????????????????????????????????¨??????????????????????????¶??§???????????????????????¢?????´????????????????????§??????
/??????????????£????????????????????????????°????????????????????????´???????????????????????????????????????????????????????????????????????§?????§???????????????????????????????????????????????????????????\?????????????????¨????????£??????????????????????????????????????¨?????§????????????
/?????\?????????????¬???????????????¢?????´???????????????????????????
/1 insertionSort(A, N) // N??????????´??????????0-?????????????????????A
/2 for i ??? 1 ?????? N-1 ?????§
/3 v = A[i]
/4 j = i - 1
/5 while j >= 0 ?????? A[j] > v
/6 A[j+1] = A[j]
/7 j--
/8 A[j+1] = v
/N ??????????´????????????°??? A ????????????????????????????????\????????????????????°????????????????????????????????????
/????????????????????????????????¢?????´????????????????£????????????????????????¢?????´??????????????????????¢???????????????????????¨??????????????????§??????????????\?????´??????????????¨?????? i ??????????????????????????´????????????????????????????????????????????? 
*/

/*Input
/??\??????????????????????????°?????????????????¨?????´??° N ????????????????????????2 ????????????N ????????´??°????????????????????§????????????????????? 
*/

public class Main {
	public static void main(String[] args) throws Exception{
		BufferedReader sc = new BufferedReader(new InputStreamReader(System.in));
		/*??\???
		/??????????´???°?????\???????¬??????°????????\???
		*/
		int n = Integer.parseInt(sc.readLine());
		String[] st = sc.readLine().split(" ");
		int[] a = new int[st.length];
		for(int i = 0;i < st.length;i++){
			a[i] = Integer.parseInt(st[i]);
		}
		show(a);
		insertionSort(a,n);
	}

	/*insertionSort????????????
	/?¨??????????????????????
	/
	*/

	public static void insertionSort(int[] a,int n) {
		int v;
		int j;
		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;
			}
			show(a);
		}
	}

	public static void show(int[] a){
		//????????¨
		StringBuffer br = new StringBuffer();
		for(int s:a)
			br.append(s+" ");
		br.deleteCharAt(br.lastIndexOf(" "));
		br.append("\n");
		System.out.print(br);
	}
}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz