import java.util.*;
class Main {
public static void merge(int a[],int start,int end)
{
int[] temp = new int[10];
for(int i=start;i<=end;i++)
{
temp[i] = a[i];
}
int mid=(start+end)/2;
int i=start;
int j=mid+1;
int k=start;
while((i<=mid) && (j<=end))
{
if(temp[i]<temp[j])
{
a[k] = temp[i];
i++;
}
else
{
a[k] = temp[j];
j++;
}
k++;
}
while(i<=mid)
{
a[k] = temp[i];
i++;
k++;
}
}
public static void mergeSort(int a[],int start,int end)
{
if(start<end)
{
//divide
int mid=(start+end)/2;
//recursively the array
mergeSort(a,start,mid);
mergeSort(a,mid+1,end);
merge(a,start,end);
}
}
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int a[] = new int[n];
int temp[];
for(int i=0;i<a.length;i++)
{
a[i] = sc.nextInt();
}
mergeSort(a,0,a.length-1);
for (int i :a)
{
System.out.print(i+" ");
}
}
}
