anchor.diff:  find_gt(">" ++ Rest, S, HasSlash) ->
       {Rest, ?INC_COL(S), HasSlash};
   find_gt([$/ | Rest], S, _) ->
  -    {Rest, ?INC_COL(S), true};
  +    find_gt(Rest, ?INC_COL(S), true);
   find_gt([C | Rest], S, HasSlash) ->
       find_gt(Rest, ?INC_CHAR(S, C), HasSlash).
   
  
positive.code: tokenize_word_or_literal([C | _], S) when ?IS_WHITESPACE(C) ->
      {error, {whitespace, [C], S}};
  tokenize_word_or_literal([?QUOTE | Rest], S) ->
      tokenize_word(Rest, ?INC_COL(S), []);
  tokenize_word_or_literal(Rest, S) ->
      tokenize_literal(Rest, S, []).
      
  tokenize_word([], S, Acc) ->
      {lists:reverse(Acc), [], S};
  tokenize_word([?QUOTE | Rest], S, Acc) ->
      {lists:reverse(Acc), Rest, ?INC_COL(S)};
  tokenize_word([$& | Rest], S, Acc) ->
      {{data, Data, false}, S1, Rest1} = tokenize_charref(Rest, ?INC_COL(S), []),
      tokenize_word(Rest1, S1, lists:reverse(Data, Acc));
  tokenize_word([C | Rest], S, Acc) ->
      tokenize_word(Rest, ?INC_CHAR(S, C), [C | Acc]).
  
  tokenize_literal([], S, Acc) ->
      {lists:reverse(Acc), [], S};
  
negative.code:     {Tag, Rest1, S1} = tokenize_literal(Rest, ?ADV_COL(S, 2), []),
      {Rest2, S2, _} = find_gt(Rest1, S1, false),
      {{end_tag, Tag}, Rest2, S2};
  tokenize(L="<" ++ [C | _Rest], S) when ?IS_WHITESPACE(C) ->
      %% This isn't really strict HTML but we want this for markdown
      tokenize_data(L, ?INC_COL(S), "<", true);
  tokenize("<" ++ Rest, S) ->
      {Tag, Rest1, S1} = tokenize_literal(Rest, ?INC_COL(S), []),
      {Attrs, Rest2, S2} = tokenize_attributes(Rest1, S1, []),
  