#include <bits/stdc++.h>
using namespace std;
string a,b,c,prvi,a1,b1,drugi,treci;
int l,m,n,k,g,p,o,r,bra,brb,brc;
int main()
{
    k=1;
    g=1;
    p=1;
    o=1;
    r=1;
    cin>>a>>b>>c;
    if(a.size()>=b.size() and a.size()>=c.size())
    {
        m=a.size();
    }
    else if(b.size()>=a.size() and b.size()>=c.size())
    {
        m=b.size();
    }
    else if(c.size()>=a.size() and c.size()>=b.size())
    {
        m=c.size();
    }
    for(int i=1;i<=m;i++)
    {
        if(a[0]>b[0] and a[0]>c[0])
        {
            prvi=a;
            bra+=500;
            break;
        }
        else if(b[0]>a[0] and b[0]>c[0])
        {
            prvi=b;
            brb+=500;
            break;
        }
        else if(c[0]>a[0] and c[0]>b[0])
        {
            prvi=c;
            brc+=500;
            break;
        }
        else if(a[0]==b[0])
        {
            if(a[k]>b[k])
            {
                prvi=a;
                bra++;
                break;
            }
            else if(b[k]>a[k])
            {
                prvi=b;
                brb++;
                break;
            }
            else if(b[k]==a[k])
            {
                k++;
            }
            if(a.size()==k and b[b.size()-1]<a[0])
            {
                prvi=a;
                bra++;
                break;
            }
            if(b.size()==k and a[a.size()-1]<b[0])
            {
                prvi=b;
                brb++;
                break;
            }
        }
        }
        for(int i=1;i<=m;i++){
        if(a[0]==c[0])
        {
            if(a[g]>c[g])
            {
                prvi=a;
                bra++;
                break;
            }
            else if(c[g]>a[g])
            {
                prvi=c;
                brc++;
                break;
            }
            else if(c[g]==a[g])
            {
                g++;
            }
             if(a.size()==g and c[c.size()-1]<a[0])
            {
                prvi=a;
                bra++;
                break;
            }
            if(c.size()==g and a[a.size()-1]<c[0])
            {
                prvi=c;
                brc++;
                break;
            }
        }
        }
        for(int i=1;i<=m;i++){
        if(b[0]==c[0])
        {
            if(b[p]>c[p])
            {
                prvi=b;
                brb++;
                break;
            }
            else if(c[p]>b[p])
            {
                prvi=c;
                brc++;
                break;
            }
            else if(c[p]==b[p])
            {
                p++;
            }
            if(b.size()==p and c[c.size()-1]<b[0])
            {
                prvi=a;
                bra++;
                break;
            }
            if(c.size()==p and b[b.size()-1]<c[0])
            {
                prvi=c;
                brc++;
                break;
            }
        }
        }
        if(bra>brb and bra>brc)
        {
            prvi=a;
        }
        else if(brb>bra and brb>brc)
        {
            prvi=b;
        }
        else prvi=c;

    if(a==prvi)
    {
        a1=b;
        b1=c;
    }
    else if(b==prvi)
    {
        a1=a;
        b1=c;
    }
    else if(c==prvi)
    {
        a1=a;
        b1=b;
    }
        for(int i=1;i<=m;i++){
                if(a1[0]>b1[0])
                {
                    drugi=a1;
                    break;
                }
        else if(a1[0]<b1[0])
        {
            drugi=b1;
        }
        else if(a1[0]==b1[0])
        {
            if(a1[p]>b1[p])
            {
                drugi=a1;

                break;
            }
            else if(b1[o]>a1[o])
            {
                drugi=b1;

                break;
            }
            else if(b1[o]==a1[o])
            {
                o++;
            }
            if(a1.size()==o and b1[b1.size()-1]<a1[0])
            {
                drugi=a1;

                break;
            }
            if(b1.size()==o and a1[a1.size()-1]<b1[0])
            {
                drugi=b1;

                break;
            }
        }
        }
    if(a1==drugi)
    {
        treci=b1;
    }
    else treci=a1;
    cout<<prvi<<drugi<<treci;
     return 0;
}