#include<stdio.h>
#define MXX 2000000
int X[MXX];
int Y[MXX];
int Z[MXX];
int main(){
  int i,kunia=0,nags;
  scanf("%d",&nags);
  for(i=0;i<nags;i++){
    scanf("%d",&X[i]);
    if(kunia<X[i])kunia=X[i];
  }
  for(i=0;i<=kunia;i++)
    Z[i]=0;
  for(i=0; i<nags; i++)
    Z[X[i]]++;
  for(i=1; i<=kunia; i++)
    Z[i]=Z[i]+Z[i-1];
  for(i=nags; i>=0; i--){
    Y[Z[X[i]]-1]=X[i];
    Z[X[i]]--;
  }  
  for(i=0;i<nags;i++){
    printf("%d",Y[i]);
    if(i !=nags-1)
      printf(" ");
    else
      printf("\n");
  }
  return 0;
}