#define pb push_back
#define mp make_pair
#define first x
#define second y
#define lsb(x) x & -x
#define l(x) (x<<1)
#define r(x) ((x<<1)|1)
#include<bits/stdc++.h>
#include<sstream>
using namespace std;
typedef long long LL;
typedef long double LD;
typedef vector<int> VI;
typedef pair<int, int> PII;
typedef pair<LL, LL> PLL;
// primes less than 100
const int PRIM[] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97};
const int MOD = 1000000007;
const int NMAX = 500005;
const double EPS = 1e-12;
const int INF16 = 32000;
const int INF = 0x3F3F3F3F;
const LL INF64 = LL(1e18);
const int dx[]={-1,1,0,0,1,-1,1,-1};
const int dy[]={0,0,1,-1,1,1,-1,-1};
int n;
int A[NMAX];
void read()
{
cin>>n;
for(int i=1; i<=n; ++i)
cin>>A[i];
sort(A+1, A+1+n);
for(int i=1; i<=n; ++i)
cout<<A[i]<<" ";
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout<<setprecision(16);
freopen("algsort.in", "rt", stdin);
freopen("algsort.out", "wt", stdout);
read();
return 0;
}