var
a, b, c, a1, b1, c1 : Int64;
aN, bN, cN, i : LongInt;
x1, x2, x3, x4, x5, x6, max : Int64;
begin
ReadLn(a, b, c);
a1 := a;
b1 := b;
c1 := c;
aN := 0;
bN := 0;
cN := 0;
while a1 <> 0 do
begin
aN := aN + 1;
a1 := a1 div 10;
end;
while b1 <> 0 do
begin
bN := bN + 1;
b1 := b1 div 10;
end;
while c1 <> 0 do
begin
cN := cN + 1;
c1 := c1 div 10;
end;

a1 := a;
b1 := b;
c1 := c;
x1 := a;
for i := 1 to bN do
x1 := x1 * 10;
x1 := x1 + b1;
for i := 1 to cN do
x1 := x1 * 10;
x1 := x1 + c1;
x2 := a;
for i := 1 to cN do
x2 := x2 * 10;
x2 := x2 + c1;
for i := 1 to bN do
x2 := x2 * 10;
x2 := x2 + b1;
x3 := b;
for i := 1 to aN do
x3 := x3 * 10;
x3 := x3 + a1;
for i := 1 to cN do
x3 := x3 * 10;
x3 := x3 + c1;
x4 := b;
for i := 1 to aN do
x4 := x4 * 10;
x4 := x4 + a1;
for i := 1 to cN do
x4 := x4 * 10;
x4 := x4 + c1;
x5 := c;
for i := 1 to bN do
x5 := x5 * 10;
x5 := x5 + b1;
for i := 1 to aN do
x5 := x5 * 10;
x5 := x5 + a1;
x6 := c;
for i := 1 to aN do
x6 := x6 * 10;
x6 := x6 + a1;
for i := 1 to bN do
x6 := x6 * 10;
x6 := x6 + b1;

{WriteLn(aN, bN, cN);
WriteLn(aN, bN, cN);
WriteLn(x1);
WriteLn(x2);
WriteLn(x3);
WriteLn(x4);
WriteLn(x5);
WriteLn(x6);
WriteLn(x1); }
max := x1;
if x2 > max then
max := x2;
if x3 > max then
max := x3;
if x4 > max then
max := x4;
if x5 > max then
max := x5;
if x6 > max then
max := x6;
WriteLn(max);
ReadLn;
end.