The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
<html>
  <!-- html_fmt: Preceeding start tag is replacement for a missing one -->
  <head>
    <!-- html_fmt: Preceeding start tag is replacement for a missing one -->
    <!-- html_fmt: Following end tag is replacement for a missing one -->
  </head>
  <body>
    <!-- html_fmt: Preceeding start tag is replacement for a missing one -->
    <p>
      I am before the first pre
      <!-- html_fmt: Following end tag is replacement for a missing one -->
    </p><pre>
 Now   is     the     time
 for   all    good    birds
 to    fly    to
 the   edge   of      the
 world and    take    a
 look  over   the     edge</pre><!--
        html_fmt: An missing end tag was added to close the preceding <pre> element
      --><!--
        html_fmt: Next end tag is cruft
      --></p>
    <p>
      An unterminated graf
      <!-- html_fmt: Following end tag is replacement for a missing one -->
    </p><p>
      A terminated paragraph</p>
    <p>
      I am before the second pre</p>
    <pre>
 The second pre
</pre><!--
        html_fmt: An missing end tag was added to close the preceding <pre> element
      --><p>
      Unterminated graf
      <!-- The following a element end tag should be low-level cruft,
     forcing the end of the paragraph -->
      <!-- html_fmt: Following end tag is replacement for a missing one -->
    </p><!--
        html_fmt: Next end tag is cruft
      --></a>
    <p>
      A terminated graf
    </p><p>
      <!-- html_fmt: Preceeding start tag is replacement for a missing one -->
      A graf without start or end tags
      <!-- html_fmt: Following end tag is replacement for a missing one -->
    </p><table>
      <tbody>
        <!-- html_fmt: Preceeding start tag is replacement for a missing one -->
        <tr>
          <!-- html_fmt: Preceeding start tag is replacement for a missing one -->
          <td>
            <!-- html_fmt: Preceeding start tag is replacement for a missing one -->
            A very poorly formed table<!--
                html_fmt: Following end tag is replacement for a missing one
              --></td><!--
              html_fmt: Following end tag is replacement for a missing one
            --></tr><!--
            html_fmt: Following end tag is replacement for a missing one
          --></tbody></table>
    <!-- html_fmt: Next end tag is cruft -->
    </pre><p>
      <!-- html_fmt: Preceeding start tag is replacement for a missing one -->
      The pre end tags to either side of this
      will be treated as cruft
      <!-- html_fmt: Following end tag is replacement for a missing one -->
    </p><!--
        html_fmt: Next end tag is cruft
      --></pre>
    <p>
      I am at the end
      <!--
    </p>
    <p>
    This is a comment
    In a browser,
    you should not see me ...
    </p>
</pre>
<p> ... or me ...
</pre>
<p> ... or me
-->
      <!-- html_fmt: Following end tag is replacement for a missing one -->
    </p><!--
        html_fmt: Following end tag is replacement for a missing one
      --></body>
  <!-- html_fmt: Following end tag is replacement for a missing one -->
</html>