program acmshuu;
type piont=^node;
node=record
left:piont;
root:char;
right:piont;
end;
var n,ch:char;
zh:piont;
procedure init(zh:piont);
var p:piont;
begin
read(ch);
if ch='#' then zh^.left:=nil
else
begin
new(p);
zh^.left:=p;
p^.root:=ch;
init(p);
end;
read(ch);
if ch='#' then zh^.right:=nil
else
begin
new(p);
zh^.right:=p;
p^.root:=ch;
init(p);
end;
end;
procedure bianli(zh:piont);
begin
if zh^.left<>nil then bianli(zh^.left);
write(zh^.root,' ');
if zh^.right<>nil then bianli(zh^.right);
end;
begin
while not eof do
begin
new(zh);
read(n);
zh^.root:=n;
init(zh);
readln;
bianli(zh);
writeln;
end;
end.
/**************************************************************
Problem: 2215
User: admin
Language: Pascal
Result: Wrong Answer
****************************************************************/