#include<bits/stdc++.h>
using namespace std;
int a[20],n,c[20];
void dfs(int l,int r){
if(l>=r) return;
int mid=(l+r)/2;
dfs(l,mid);
dfs(mid+1,r);
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-l+1;i++){
a[l+i-1]=c[i];
}
}
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
dfs(1,n);
for(int i=1;i<=n;i++){
cout<<a[i]<<" ";
}
return 0;
}
/**************************************************************
Problem: 1010
User: liujinhao
Language: C++
Result: Accepted
Time:9 ms
Memory:2072 kb
****************************************************************/