#include <iostream>
#include <math.h>
using namespace std;

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    cerr.tie(0);
    long long int a,b,c;
    cin>>a>>b>>c;
    long long int brojCifaraA = 0,brojCifaraB = 0,brojCifaraC = 0;
    long long int aa,bb,cc;
    long long int max=0;
    aa=a;
    bb=b;
    cc=c;
    while(aa>0){
        aa=aa/10;
        brojCifaraA++;
    }
    while(bb>0){
        bb=bb/10;
        brojCifaraB++;
    }
    while(cc>0){
        cc=cc/10;
        brojCifaraC++;
    }
    if(a*(int)pow(10,brojCifaraB)*(int)pow(10,brojCifaraC)+b*(int)pow(10,brojCifaraC)+c>max)max=a*(int)pow(10,brojCifaraB)*(int)pow(10,brojCifaraC)+b*(int)pow(10,brojCifaraC)+c;
    if(a*(int)pow(10,brojCifaraB)*(int)pow(10,brojCifaraC)+c*(int)pow(10,brojCifaraB)+b>max)max=a*(int)pow(10,brojCifaraB)*(int)pow(10,brojCifaraC)+c*(int)pow(10,brojCifaraB)+b;
    if(b*(int)pow(10,brojCifaraA)*(int)pow(10,brojCifaraC)+c*(int)pow(10,brojCifaraA)+a>max)max=b*(int)pow(10,brojCifaraA)*(int)pow(10,brojCifaraC)+c*(int)pow(10,brojCifaraA)+a;
    if(b*(int)pow(10,brojCifaraA)*(int)pow(10,brojCifaraC)+a*(int)pow(10,brojCifaraC)+c>max)max=b*(int)pow(10,brojCifaraA)*(int)pow(10,brojCifaraC)+a*(int)pow(10,brojCifaraC)+c;
    if(c*(int)pow(10,brojCifaraA)*(int)pow(10,brojCifaraB)+a*(int)pow(10,brojCifaraB)+b>max)max=c*(int)pow(10,brojCifaraA)*(int)pow(10,brojCifaraB)+a*(int)pow(10,brojCifaraB)+b;
    if(c*(int)pow(10,brojCifaraA)*(int)pow(10,brojCifaraB)+b*(int)pow(10,brojCifaraA)+a>max)max=c*(int)pow(10,brojCifaraA)*(int)pow(10,brojCifaraB)+b*(int)pow(10,brojCifaraA)+a;
    cout<<max;
    
    
}