#include<stdio.h>
int n,array[1000001];
void swap(int *a,int *b){
int t=*a;
*a=*b;
*b=t;
}
void QuickSort(int low, int high) {
int i = low;
int j = high;
if(i >= j) {
return;
}
int temp = array[(low+high)/2];
while(i <= j) {
while(array[j] > temp) {
j--;
}
while(array[i] < temp) {
i++;
}
if(i <= j) {
swap(array+i, array+j);
i++;
j--;
}
}
QuickSort( low, i);
QuickSort( j, high);
}
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++) scanf("%d",&array[i]);
QuickSort(1,n);
for(int i=1;i<=n;i++) printf("%d ",array[i]);
}