#include<stdio.h>
#include<stdlib.h>
#define MAX 2000001
#define VMAX 10000

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

    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(i=0;i<n;i++){
        scanf("%hd",&A[i+1]);
        C[A[i+1]]++;
    }
    for(i=0;i<=VMAX;i++){
        if(i==0) continue;
        C[i] = C[i] + C[i-1];
    }
    for(i=1;i<=n;i++){
        B[C[A[i]]] = A[i];
        C[A[i]]--;
    }
    for(i=1;i<=n;i++){
        if(i<n) printf("%d ",B[i]);
        else printf("%d\n",B[i]);
    }
    return 0;
}
