#include <iostream>

using namespace std;

int main()
{
    int n;
    cin>>n;
    int a[n];
    for(int i=0; i<n; i++)
    {
        cin>>a[i];
    }
    int f=0;
    for(int i=0; i<n; i++)
    {
        f=f+i;
    }
    int m[f];
    for(int i=0; i<f; i++)
    {
        m[i]=0;
    }
    int pom[n];
    for(int i=0; i<n; i++)
    {
        pom[i]=a[i];
    }
    int st=1;
    int i=0;
    while(i<n-1)
    {
        st=st*10;
        i++;
    }
    int l=0;
    int p=0;
    int po;
    while(p<n-1)
    {
        for(int i=p+1; i<n; i++)
        {
            po=pom[p];
            pom[p]=pom[i];
            pom[i]=po;
            int s=1;
            int in=n-1;
            while(s<=st)
            {
                m[l]=m[l]+pom[in]*s;
                s=s*10;
                in--;
            }
            l++;
            for(int i=0; i<n; i++)
            {
                pom[i]=a[i];
            }
        }
        p++;
    }
    int po2;
    for(int i=0; i<f-1; i++)
    {
        for(int j=i+1; j<f; j++)
        {
            if(m[i]<m[j])
            {
                po2=m[i];
                m[i]=m[j];
                m[j]=po2;
            }
        }
    }
    int y[10];
    int x=0;
    int mpom;
    while(m[0]>0)
    {
        mpom=m[0]%10;
        y[x]=mpom;
        x++;
        m[0]=m[0]/10;
    }
    for(int i=x-1; i>=0; i--)
    {
        cout<<y[i]<<" ";
    }
    return 0;
}