local int a; local int indent; local int temp; indent := 0; print "\n"; while (!(isempty (output))) do begin a := pop(output); switch(gettype(a)) begin case "Instruction" then switch(a) begin case then print "
\n"; break case then print " "; break case then print "
\n"; temp := 0; while (temp < indent) do begin print " "; temp := temp+1; end; break case then indent := indent+1; break case then indent := indent - 1; break case <[SPECIAL> then print "
"; break case then print "
"; break case <[IDENT> then print ""; break case then print ""; break case <[KEY> then print ""; break case then print ""; break case <[OP> then print ""; break case then print ""; break case <[CONST> then print ""; break case then print ""; break default then break end; break default then a := string(a); a := sub("&","&",a); a := sub("<","<",a); a := sub(">",">",a); a := sub(""","\"",a); print a; print " "; break end; end; print "";