uses crt;
var s:string;
a:array[1..1000] of integer;
d:integer;
procedure tim_so;
var tg,k,vt,i,n,j:integer;
st:string;
begin
d:=0; i:=1;
while i<=length(s) do
begin
k:=0;
if s[i] in ['0'..'9'] then
begin
vt:=i;
while s[vt+k] in ['0'..'9'] do
inc(k);
st:=copy(s,vt,k);
delete(s,vt,k);
insert(#32,s,vt);
val(st,n,j);
inc(d);
a[d]:=n;
end;
inc(i);
end;
for i:=1 to d-1 do
for j:=i+1 to d do
if a[i]>a[j] then
begin
tg:=a[i];
a[i]:=a[j];
a[j]:=tg;
end;
end;
procedure chen;
var i,vt,n:integer;
st:string;
begin
i:=0;
while pos(#32,s)<>0 do
begin
vt:=pos(#32,s);
delete(s,vt,1);
inc(i);
str(a[i],st);
insert(st,s,vt);
end;
writeln(s);
end;
begin
clrscr;
write('nhap chuoi: '); readln(s);
while s[1]=#32 do delete(s,1,1);
while s[length(s)]=#32 do delete(s,length(s),1);
while pos(#32,s)<>0 do delete(s,pos(#32,s),1);
tim_so; chen;
readln;
end.