anchor.diff:        | listMarkerTest(4)
         | atxHeader
         | openFence
  -      | rawHtml
  +      | rawHtmlParagraphStopTest
         | (skipNonindentChars > (
           char('>')
           | (oneOf('+-*') > whitespaceChar)
  
positive.code:     }
  
      return fail.run(s, pos);
  
  
  
      /*
      int firstLineIndent = testRes.value;
  
      Parser contentParser = anyLine.manyUntil(blankline | eof);
      ParseResult contentRes = contentParser.run(s, testRes.position);
      if (!contentRes.isSuccess) {
        return contentRes;
      }
      if (contentRes.value.length == 0) {
        return fail.run(s, pos);
      }
      String content = "<" + contentRes.value.join('\n');
  
      ParseResult tagRes = (htmlBlockOpenTag
        | htmlBlockCloseTag).run(content);
      if (!tagRes.isSuccess) {
        if ("<!".matchAsPrefix(content) == null && "<?".matchAsPrefix(content) == null)
        return fail.run(s, pos);
      }
  
      return contentRes.copy(value: [new HtmlRawBlock((" " * firstLineIndent) + content)]); // TODO check tab
      */
    });
  
  
  
negative.code:       "div", "dl", "dt", "fieldset", "figcaption", "figure", "footer", "form",
        "frame", "frameset", "h1", "head", "header", "hr", "html", "legend", "li",
        "link", "main", "menu", "menuitem", "meta", "nav", "noframes", "ol",
        "optgroup", "option", "p", "param", "section", "source", "title",
        "summary", "table", "tbody", "td", "tfoot", "th", "thead", "title", "tr",
        "track", "ul"]
    );
  