#include <stdio.h>
#define N 2000000
#define SUFFIX 10000

/* prototype */
void CountingSort(int*, int*, int);

/* global */
int n;

int main(){
  int i;
  
  /* input the number of A[] */
  scanf("%d",&n);
  
  int A[n], B[n];

  //B[] initialized
  for(i=0;i<n;i++){
    B[i] = 0;
  }


  /* input datas */
  for(i=0;i<n;i++){
    scanf("%d",&A[i]);
  }
  
  CountingSort(A, B, SUFFIX);
  
  for(i=0;i<n-1;i++){
    printf("%d ",B[i]);
  }//??????????????§i=n-1(????????????)
  printf("%d\n",B[i]); //??????
  
  return 0;
}

void CountingSort(int *A, int *B, int k){
  int i,j,C[SUFFIX];
  for(i=0;i<k;i++){
    C[i] = 0;
  }

  /* C[i] ??? i ???????????°????¨?????????? */

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

  /* C[i] ??? i ??\????????°???????????°????¨??????????*/
  for(i=1;i<k;i++){
    C[i] = C[i] + C[i-1];
  }
  
  for(j=n;j>-1;j--){
    B[C[A[j]]] = A[j];

    C[A[j]]--;
  }
}