#include<bits/stdc++.h>
using namespace std;
int n,a[100],c[100];
void mergesort(int l,int r){
	if(l>=r) return;
	int mid=(l+r)/2;
	mergesort(l,mid);
	mergesort(mid+1,r);
	int ilen=mid-1+1,jlen=r-mid;
	int i=l,j=mid+1,k=1;
	while(i<=mid&&j<=r){
		if(a[i]<a[j]) c[k++]=a[i++];
		else c[k++]=a[j++];
	}
	while(i<=mid) c[k++]=a[i++];
	while(j<=r) c[k++]=a[j++];
	for(int i=1;i<=r-1+1;i++) a[l+i-1]=c[i];
}
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++) cin>>a[i];
	mergesort(1,n);
	for(int i=1;i<=n;i++) cout<<a[i]<<" ";
    return 0;
}


/**************************************************************
	Problem: 1010
	User: zhuangsongyu
	Language: C++
	Result: Wrong Answer
****************************************************************/