{
TASK:names
LANG:Pascal
}
var s,a,b,c,min:String;
    i,j:Longint;
Begin
  While not EoF do
  Begin
    ReadLn(s);
    min:=s;
   If length(s)>2 then
   For i:=2 to length(s)-1 do
    For j:=i+1 to length(s) do
     Begin
       a:=copy(s,1,i-1);
       b:=copy(s,i,j-i);
       c:=copy(s,j,length(s)-j+1);
      If a+c+b<min then min:=a+c+b;
      If b+a+c<min then min:=b+a+c;
      If b+c+a<min then min:=b+c+a;
      If c+a+b<min then min:=c+a+b;
     End;
    WriteLn(min);
  End;
End.