using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Nadovezivanje
{
    class Program
    {
        static void funkcija(string[]niz, ref string[]mogucnosti)
        {
            mogucnosti[0] = niz[0] + niz[1] + niz[2];
            mogucnosti[1] = niz[0] + niz[2] + niz[1];
            mogucnosti[2] = niz[1] + niz[0] + niz[2];
            mogucnosti[3] = niz[1] + niz[2] + niz[0];
            mogucnosti[4] = niz[2] + niz[0] + niz[1];
            mogucnosti[5] = niz[2] + niz[1] + niz[0];
        }
        static void f2(ref long[]niz, string[]niz2)
        {
            for (int i = 0; i < 6; i++)
                niz[i] = Convert.ToInt64(niz2[i]);
        }
        static long f3(long[]n)
        {
            long max = 0;
            for (int i = 0; i < 6; i++)
                if (n[i] > max)
                    max = n[i];
            return max;
        }
        static void Main(string[] args)
        {
            string s = Console.ReadLine();
            string[] s2 = s.Split(' ');
            string a = s2[0];
            string b = s2[1];
            string c = s2[2];
            string[] niz = new string[3];
            niz[0] = a;
            niz[1] = b;
            niz[2] = c;
            string[] mogucnosti = new string[6];
            funkcija(niz, ref mogucnosti);
            long[] n = new long[6];
            f2(ref n, mogucnosti);
            Console.WriteLine(f3(n));
        }
    }
}