anchor.diff:      tree(Rest, append_stack_child(norm({Tag, Attrs}), S));
   tree([{start_tag, Tag, Attrs, false} | Rest], S) ->
       tree(Rest, stack(norm({Tag, Attrs}), S));
  -tree([T={pi, _Raw} | Rest], S) ->
  -    tree(Rest, append_stack_child(T, S));
   tree([T={pi, _Tag, _Attrs} | Rest], S) ->
       tree(Rest, append_stack_child(T, S));
   tree([T={comment, _Comment} | Rest], S) ->
  
positive.code:             tokenize_cdata(B, ?ADV_COL(S, 9));
          <<_:O/binary, "<?php", _/binary>> ->
              {Body, S1} = raw_qgt(B, ?ADV_COL(S, 2)),
              {{pi, Body}, S1};
          <<_:O/binary, "<?", _/binary>> ->
              {Tag, S1} = tokenize_literal(B, ?ADV_COL(S, 2)),
              {Attrs, S2} = tokenize_attributes(B, S1),
  
negative.code:     lists:reverse(Acc);
  to_html([{'=', Content} | Rest], Acc) ->
      to_html(Rest, [Content | Acc]);
  to_html([{pi, Tag, Attrs} | Rest], Acc) ->
      Open = [<<"<?">>,
              Tag,
  