#include<stdio.h>
#include<stdlib.h>

#define MAX 2000001
#define VMAX 10000

int main()
{
	int i, j;
	int n;
	int C[VMAX+1];
	unsigned short *A, *B;

	scanf("%d", &n);

	A = malloc(sizeof(short) * n + 1);
	B = malloc(sizeof(short) * n + 1);

	for(i = 0; i <= VMAX; i++){
		C[i] = 0;
	}

	for(j = 0; j < n; j++){
		scanf("%hu", &A[i+1]);
	 	C[A[i+1]]++;
	}

	for(i = 1; i <= VMAX; i++){
		C[i] += C[i-1];
	}

	for(j = 1; j <= n; j++){     
		B[C[A[j]]] = A[j];
		C[A[j]]--;
	}

	for(i = 1; i <= n; i++){
		if(i == n)
			printf("%d\n", B[i]);
		else
			printf("%d ", B[i]);
	}
    return 0;
}