anchor.diff:      {sgml_innertext, Res, 1}.
   
   sgml_mutate(Ll = [H|T], Meta) ->
  -    %io:format("Trying to parse... ~n~n"),
  +    io:format("Trying to parse... ~p~n", [size(H)]),
       %file:write_file("./last_sgml.txt", H),
       try parse(H) of
           {ok, ParsedStr, _, Cnts} ->
  
positive.code: tz({end_tag,Tag},?D(X,S)) when ?ev(X)     -> {{end_tag,Tag,'>'},ws(S)};
  tz({end_tag,Tag,'>'},?m(">",Str))         -> {text,Str,{close,Tag,string:to_lower(Tag)}};
  tz({end_tag,Tag},?d(X,Str))               -> {{end_tag,Tag++[X]},Str};
  tz({end_tag,_},_)              			  -> throw(incorrect_sgml);
  
  tz({attr,"",{Tag,As}},?D(X,S))when ?ev(X) -> {{etag,Tag,As},S};
  
negative.code: push_till([], _) -> [].
  
  parse(Str) ->
      parse(Str, erlamsa_utils:binarish(Str)).
  
  parse(Str, false) ->
      Tokens = tokenize(Str),
      %io:format("~w~n", [Tokens]),
      build_ast2(Tokens, [], [], {0, 0});
  parse(_Str, true) ->
      throw(incorrect_sgml).
  
  % list(token()), list(ast_elem()), list(strings) -> atom(), list(ast_elem()), list(ast_elem(),
  %		{non_neg_int(), non_neg_int()})
  