#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;

int Uporedi(string X, string Y)
{
    string XY = X.append(Y);
    string YX = Y.append(X);
    if (XY.compare(YX) > 0)
    {
        return 1;
    }
    else
    {
        return 0;
    }
}
void najveciBroj(vector<string> Niz)
{
    sort(Niz.begin(), Niz.end(), Uporedi);
    for (int i=0; i<Niz.size(); i++)
    {
        cout << Niz[i];
    }
}
int main()
{
    int i;
    string A,B,C;
    vector<string> Arr;
    cin >>A >>B >>C;
    Arr.push_back(A);
    Arr.push_back(B);
    Arr.push_back(C);
    najveciBroj(Arr);
}