/**
 * maps ids of rewritten code to the expected output.
 * For brevity, <span class="foo"> has been changed to `FOO and close span tags
 * have been changed to `END.
 */
var goldens = {
  bash: (
      '`COM#!/bin/bash`END`PLN<br>' +
      '<br>' +
      '`END`COM# Fibonacci numbers`END`PLN<br>' +
      '`END`COM# Writes an infinite series to stdout, one entry per line`END' +
          '`PLN<br>' +
      '`END`KWDfunction`END`PLN fib`END`PUN()`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDlocal`END`PLN a`END`PUN=`END`LIT1`END`PLN<br>' +
      '&nbsp; `END`KWDlocal`END`PLN b`END`PUN=`END`LIT1`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`KWDtrue`END`PLN `END`PUN;`END' +
          '`PLN `END`KWDdo`END`PLN<br>' +
      '&nbsp; &nbsp; echo $a<br>' +
      '&nbsp; &nbsp; `END`KWDlocal`END`PLN tmp`END`PUN=`END`PLN$a<br>' +
      '&nbsp; &nbsp; a`END`PUN=`END`PLN$`END`PUN((`END`PLN $a `END`PUN+`END' +
          '`PLN $b `END`PUN))`END`PLN<br>' +
      '&nbsp; &nbsp; b`END`PUN=`END`PLN$tmp<br>' +
      '&nbsp; `END`KWDdone`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      '`END`COM# output the 10th element of the series and halt`END`PLN<br>' +
      'fib `END`PUN|`END`PLN head `END`PUN-`END`LIT10`END`PLN `END`PUN|`END' +
          '`PLN tail `END`PUN-`END`LIT1`END'),
  bash_lang: (
      '`COM#!/bin/bash`END`PLN<br>' +
      '<br>' +
      '`END`COM# Fibonacci numbers`END`PLN<br>' +
      '`END`COM# Writes an infinite series to stdout, one entry per line`END' +
          '`PLN<br>' +
      '`END`KWDfunction`END`PLN fib`END`PUN()`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDlocal`END`PLN a`END`PUN=`END`LIT1`END`PLN<br>' +
      '&nbsp; `END`KWDlocal`END`PLN b`END`PUN=`END`LIT1`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN true `END`PUN;`END' +
          '`PLN `END`KWDdo`END`PLN<br>' +
      '&nbsp; &nbsp; echo $a<br>' +
      '&nbsp; &nbsp; `END`KWDlocal`END`PLN tmp`END`PUN=`END`PLN$a<br>' +
      '&nbsp; &nbsp; a`END`PUN=`END`PLN$`END`PUN((`END`PLN $a `END`PUN+`END' +
          '`PLN $b `END`PUN))`END`PLN<br>' +
      '&nbsp; &nbsp; b`END`PUN=`END`PLN$tmp<br>' +
      '&nbsp; `END`KWDdone`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      '`END`COM# output the 10th element of the series and halt`END`PLN<br>' +
      'fib `END`PUN|`END`PLN `END`PUN/`END`PLNusr`END`PUN/`END`PLNbin`END' +
          '`PUN/*`END`PLNhead `END`PUN-`END`LIT10`END`PLN `END`PUN|`END' +
          '`PLN tail `END`PUN-`END`LIT1`END'),
  C: (
      '`COM#include &lt;stdio.h&gt;`END`PLN<br>' +
      '<br>' +
      '`END`COM/* the n-th fibonacci number.<br>' +
      '&nbsp;*\/`END`PLN<br>' +
      '`END`KWDunsigned`END`PLN `END`KWDint`END`PLN fib`END`PUN(`END' +
          '`KWDunsigned`END`PLN `END`KWDint`END`PLN n`END`PUN)`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDunsigned`END`PLN `END`KWDint`END`PLN a `END`PUN=`END' +
          '`PLN `END`LIT1`END`PUN,`END`PLN b `END`PUN=`END`PLN `END`LIT1`END' +
          '`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDunsigned`END`PLN `END`KWDint`END`PLN tmp`END`PUN;`END' +
          '`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END`PUN&gt;=`END' +
          '`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; tmp `END`PUN=`END`PLN a`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      'main`END`PUN()`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; printf`END`PUN(`END`STR"%u"`END`PUN,`END`PLN fib`END`PUN(`END' +
          '`LIT10`END`PUN));`END`PLN<br>' +
      '`END`PUN}`END'),
  C_lang: (
      '`COM#include &lt;stdio.h&gt;`END`PLN<br>' +
      '<br>' +
      '`END`COM/* the n`END<sup>`COMth`END<\/sup>`COM fibonacci number. *\/`END`PLN<br>' +
      '`END`KWDunsigned`END`PLN `END`KWDint`END`PLN fib`END`PUN(`END' +
          '`KWDunsigned`END`PLN `END`KWDint`END`PLN n`END`PUN)`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDunsigned`END`PLN `END`KWDint`END`PLN a `END`PUN=`END' +
          '`PLN `END`LIT1`END`PUN,`END`PLN b `END`PUN=`END`PLN `END`LIT1`END' +
          '`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDunsigned`END`PLN `END`KWDint`END`PLN tmp`END`PUN;`END' +
          '`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END`PUN&gt;=`END' +
          '`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; tmp `END`PUN=`END`PLN a`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      '`END`KWDvoid`END`PLN main`END`PUN()`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; printf`END`PUN(`END`STR"%u"`END`PUN,`END`PLN fib`END`PUN(`END' +
          '`LIT10`END`PUN));`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      '`END`COM#define ZERO 0 /* a<br>' +
      '&nbsp; multiline comment */`END'),
  Cpp: (
      '`COM#include &lt;iostream&gt;`END`PLN<br>' +
      '<br>' +
      '`END`KWDusing`END`PLN `END`KWDnamespace`END`PLN std`END`PUN;`END' +
          '`PLN<br>' +
      '<br>' +
      '`END`COM//! fibonacci numbers with gratuitous use of templates.`END' +
          '`PLN<br>' +
      '`END`COM//! \\param n an index into the fibonacci series`END`PLN<br>' +
      '`END`COM//! \\param fib0 element 0 of the series`END`PLN<br>' +
      '`END`COM//! \\return the nth element of the fibonacci series`END' +
          '`PLN<br>' +
      '`END`KWDtemplate`END`PLN `END`PUN&lt;`END`KWDclass`END`PLN T`END' +
          '`PUN&gt;`END`PLN<br>' +
      'T fib`END`PUN(`END`KWDunsigned`END`PLN `END`KWDint`END`PLN n`END' +
          '`PUN,`END`PLN `END`KWDconst`END`PLN T`END`PUN&amp;`END`PLN fib0' +
          '`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; T a`END`PUN(`END`PLNfib0`END`PUN),`END`PLN b`END`PUN(`END' +
          '`PLNfib0`END`PUN);`END`PLN<br>' +
      '&nbsp; `END`KWDfor`END`PLN `END`PUN(;`END`PLN n`END`PUN;`END' +
          '`PLN `END`PUN--`END`PLNn`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; T tmp`END`PUN(`END`PLNa`END`PUN);`END`PLN<br>' +
      '&nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      '`END`KWDint`END`PLN main`END`PUN(`END`KWDint`END`PLN argc`END' +
          '`PUN,`END`PLN `END`KWDchar`END`PLN `END`PUN**`END`PLNargv`END' +
          '`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; cout `END`PUN&lt;&lt;`END`PLN fib`END`PUN(`END`LIT10`END' +
          '`PUN,`END`PLN `END`LIT1U`END`PUN);`END`PLN<br>' +
      '`END`PUN}`END'),

  Cpp_lang: (
      '`COM#include &lt;iostream&gt;`END`PLN<br>' +
      '<br>' +
      '`END`KWDusing`END`PLN `END`KWDnamespace`END`PLN std`END`PUN;`END' +
          '`PLN<br>' +
      '<br>' +
      '`END`COM//! fibonacci numbers with gratuitous use of templates.`END' +
          '`PLN<br>' +
      '`END`COM//! \\param n an index into the fibonacci series`END`PLN<br>' +
      '`END`COM//! \\param fib0 element 0 of the series`END`PLN<br>' +
      '`END`COM//! \\return the nth element of the fibonacci series`END' +
          '`PLN<br>' +
      '`END`KWDtemplate`END`PLN `END`PUN&lt;`END`KWDclass`END`PLN T`END' +
          '`PUN&gt;`END`PLN<br>' +
      'T fib`END`PUN(`END`KWDint`END`PLN n`END' +
          '`PUN,`END`PLN `END`KWDconst`END`PLN T`END`PUN&amp;`END`PLN fib0' +
          '`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; T a`END`PUN(`END`PLNfib0`END`PUN),`END`PLN b`END`PUN(`END' +
          '`PLNfib0`END`PUN);`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END`PUN&gt;=`END' +
          '`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; T tmp`END`PUN(`END`PLNa`END`PUN);`END`PLN<br>' +
      '&nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      '`END`KWDint`END`PLN main`END`PUN(`END`KWDint`END`PLN argc`END' +
          '`PUN,`END`PLN `END`KWDchar`END`PLN `END`PUN**`END`PLNargv`END' +
          '`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; cout `END`PUN&lt;&lt;`END`PLN fib`END`PUN(`END`LIT10`END' +
          '`PUN,`END`PLN `END`LIT1U`END`PUN);`END`PLN<br>' +
      '`END`PUN}`END'),

  java: (
      '`KWDpackage`END`PLN foo`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`KWDimport`END`PLN java`END`PUN.`END`PLNutil`END`PUN.`END' +
          '`TYPIterator`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`COM/**<br>' +
      '&nbsp;* the fibonacci series implemented as an Iterable.<br>' +
      '&nbsp;*\/`END`PLN<br>' +
      '`END`KWDpublic`END`PLN `END`KWDfinal`END`PLN `END`KWDclass`END' +
          '`PLN `END`TYPFibonacci`END`PLN `END`KWDimplements`END`PLN `END' +
          '`TYPIterable`END`PUN&lt;`END`TYPInteger`END`PUN&gt;`END`PLN `END`' +
          'PUN{`END`PLN<br>' +
      '&nbsp; `END' +
          '`COM/** the next and previous members of the series. *\/`END' +
          '`PLN<br>' +
      '&nbsp; `END`KWDprivate`END`PLN `END`KWDint`END`PLN a `END`PUN=`END' +
          '`PLN `END`LIT1`END`PUN,`END`PLN b `END`PUN=`END`PLN `END`LIT1`END' +
          '`PUN;`END`PLN<br>' +
      '<br>' +
      '&nbsp; `END`LIT@Override`END`PLN<br>' +
      '&nbsp; `END`KWDpublic`END`PLN `END`TYPIterator`END`PUN&lt;`END' +
          '`TYPInteger`END`PUN&gt;`END`PLN iterator`END`PUN()`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDreturn`END`PLN `END`KWDnew`END`PLN `END' +
          '`TYPIterator`END`PUN&lt;`END`TYPInteger`END`PUN&gt;()`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`COM/** the series is infinite. *\/`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`KWDpublic`END`PLN `END`KWDboolean`END' +
          '`PLN hasNext`END`PUN()`END`PLN `END`PUN{`END`PLN `END' +
          '`KWDreturn`END`PLN `END`KWDtrue`END`PUN;`END`PLN `END`PUN}`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`KWDpublic`END`PLN `END`TYPInteger`END' +
          '`PLN `END`KWDnext`END`PUN()`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDint`END`PLN tmp `END`PUN=`END' +
          '`PLN a`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`KWDpublic`END`PLN `END`KWDvoid`END' +
          '`PLN remove`END`PUN()`END`PLN `END`PUN{`END`PLN `END`KWDthrow`END' +
          '`PLN `END`KWDnew`END`PLN `END' +
          '`TYPUnsupportedOperationException`END`PUN();`END`PLN `END' +
          '`PUN}`END`PLN<br>' +
      '&nbsp; &nbsp; `END`PUN};`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '<br>' +
      '&nbsp; `END`COM/**<br>' +
      '&nbsp; &nbsp;* the n&lt;sup&gt;th&lt;/sup&gt; element of the given ' +
          'series.<br>' +
      '&nbsp; &nbsp;* @throws NoSuchElementException if there are less than ' +
          'n elements in the<br>' +
      '&nbsp; &nbsp;* &nbsp; given Iterable\'s {@link Iterable#iterator ' +
          'iterator}.<br>' +
      '&nbsp; &nbsp;*\/`END`PLN<br>' +
      '&nbsp; `END`KWDpublic`END`PLN `END`KWDstatic`END`PLN `END' +
          '`PUN&lt;`END`PLNT`END`PUN&gt;`END`PLN<br>' +
      '&nbsp; T nth`END`PUN(`END`KWDint`END`PLN n`END`PUN,`END`PLN `END' +
          '`TYPIterable`END`PUN&lt;`END`PLNT`END`PUN&gt;`END' +
          '`PLN iterable`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TYPIterator`END`PUN&lt;?`END`PLN `END' +
          '`KWDextends`END`PLN T`END`PUN&gt;`END`PLN it `END`PUN=`END' +
          '`PLN iterable`END`PUN.`END`PLNiterator`END`PUN();`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END' +
          '`PUN&gt;`END`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; it`END`PUN.`END`KWDnext`END`PUN();`END`PLN<br>' +
      '&nbsp; &nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDreturn`END`PLN it`END`PUN.`END`KWDnext`END' +
          '`PUN();`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '<br>' +
      '&nbsp; `END`KWDpublic`END`PLN `END`KWDstatic`END`PLN `END`KWDvoid`END' +
          '`PLN main`END`PUN(`END`TYPString`END`PUN[]`END`PLN args`END' +
          '`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TYPSystem`END`PUN.`END`KWDout`END`PUN.`END' +
          '`KWDprint`END`PUN(`END`PLNnth`END`PUN(`END`LIT10`END`PUN,`END' +
          '`PLN `END`KWDnew`END`PLN `END`TYPFibonacci`END`PUN()));`END' +
          '`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '`END`PUN}`END'),
  java_lang: (
      '`KWDpackage`END`PLN foo`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`KWDimport`END`PLN java`END`PUN.`END`PLNutil`END`PUN.`END' +
          '`TYPIterator`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`COM/**<br>' +
      '&nbsp;* the fibonacci series implemented as an Iterable.<br>' +
      '&nbsp;*\/`END`PLN<br>' +
      '`END`KWDpublic`END`PLN `END`KWDfinal`END`PLN `END`KWDclass`END' +
          '`PLN `END`TYPFibonacci`END`PLN `END`KWDimplements`END`PLN `END' +
          '`TYPIterable`END`PUN&lt;`END`TYPInteger`END`PUN&gt;`END`PLN `END`' +
          'PUN{`END`PLN<br>' +
      '&nbsp; `END' +
          '`COM/** the next and previous members of the series. *\/`END' +
          '`PLN<br>' +
      '&nbsp; `END`KWDprivate`END`PLN `END`KWDint`END`PLN a `END`PUN=`END' +
          '`PLN `END`LIT1`END`PUN,`END`PLN b `END`PUN=`END`PLN `END`LIT1`END' +
          '`PUN;`END`PLN<br>' +
      '<br>' +
      '&nbsp; `END`LIT@Override`END`PLN<br>' +
      '&nbsp; `END`KWDpublic`END`PLN `END`TYPIterator`END`PUN&lt;`END' +
          '`TYPInteger`END`PUN&gt;`END`PLN iterator`END`PUN()`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDreturn`END`PLN `END`KWDnew`END`PLN `END' +
          '`TYPIterator`END`PUN&lt;`END`TYPInteger`END`PUN&gt;()`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`COM/** the series is infinite. *\/`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`KWDpublic`END`PLN `END`KWDboolean`END' +
          '`PLN hasNext`END`PUN()`END`PLN `END`PUN{`END`PLN `END' +
          '`KWDreturn`END`PLN `END`KWDtrue`END`PUN;`END`PLN `END`PUN}`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`KWDpublic`END`PLN `END`TYPInteger`END' +
          '`PLN next`END`PUN()`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDint`END`PLN tmp `END`PUN=`END' +
          '`PLN a`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`KWDpublic`END`PLN `END`KWDvoid`END' +
          '`PLN remove`END`PUN()`END`PLN `END`PUN{`END`PLN `END`KWDthrow`END' +
          '`PLN `END`KWDnew`END`PLN `END' +
          '`TYPUnsupportedOperationException`END`PUN();`END`PLN `END' +
          '`PUN}`END`PLN<br>' +
      '&nbsp; &nbsp; `END`PUN};`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '<br>' +
      '&nbsp; `END`COM/**<br>' +
      '&nbsp; &nbsp;* the n&lt;sup&gt;th&lt;/sup&gt; element of the given ' +
          'series.<br>' +
      '&nbsp; &nbsp;* @throws NoSuchElementException if there are less than ' +
          'n elements in the<br>' +
      '&nbsp; &nbsp;* &nbsp; given Iterable\'s {@link Iterable#iterator ' +
          'iterator}.<br>' +
      '&nbsp; &nbsp;*\/`END`PLN<br>' +
      '&nbsp; `END`KWDpublic`END`PLN `END`KWDstatic`END`PLN `END' +
          '`PUN&lt;`END`PLNT`END`PUN&gt;`END`PLN<br>' +
      '&nbsp; T nth`END`PUN(`END`KWDint`END`PLN n`END`PUN,`END`PLN `END' +
          '`TYPIterable`END`PUN&lt;`END`PLNT`END`PUN&gt;`END' +
          '`PLN iterable`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TYPIterator`END`PUN&lt;?`END`PLN `END' +
          '`KWDextends`END`PLN T`END`PUN&gt;`END`PLN in `END`PUN=`END' +
          '`PLN iterable`END`PUN.`END`PLNiterator`END`PUN();`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END' +
          '`PUN&gt;`END`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; in`END`PUN.`END`PLNnext`END`PUN();`END`PLN<br>' +
      '&nbsp; &nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDreturn`END`PLN in`END`PUN.`END`PLNnext`END' +
          '`PUN();`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '<br>' +
      '&nbsp; `END`KWDpublic`END`PLN `END`KWDstatic`END`PLN `END`KWDvoid`END' +
          '`PLN main`END`PUN(`END`TYPString`END`PUN[]`END`PLN args`END' +
          '`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TYPSystem`END`PUN.`END`PLNout`END`PUN.`END' +
          '`PLNprint`END`PUN(`END`PLNnth`END`PUN(`END`LIT10`END`PUN,`END' +
          '`PLN `END`KWDnew`END`PLN `END`TYPFibonacci`END`PUN()));`END' +
          '`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      '`END`PUN#`END`PLN not a java comment<br>' +
      '`END`PUN#`END`PLN not keywords`END`PUN:`END' +
          '`PLN static_cast and namespace`END'),
  javascript: (
      '`COM/**<br>' +
      '&nbsp;* nth element in the fibonacci series.<br>' +
      '&nbsp;* @param n &gt;= 0<br>' +
      '&nbsp;* @return the nth element, &gt;= 0.<br>' +
      '&nbsp;*\/`END`PLN<br>' +
      '`END`KWDfunction`END`PLN fib`END`PUN(`END`PLNn`END`PUN)`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN a `END`PUN=`END`PLN `END`LIT1`END`PUN,`END' +
          '`PLN b `END`PUN=`END`PLN `END`LIT1`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END`PUN&gt;=`END' +
          '`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; tmp `END`PUN=`END`PLN a`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      'document`END`PUN.`END`PLNwrite`END`PUN(`END`PLNfib`END`PUN(`END' +
          '`LIT10`END`PUN));`END'),
  perl: (
      '`COM#!/usr/bin/perl`END`PLN<br>' +
      '<br>' +
      '`END`KWDuse`END`PLN strict`END`PUN;`END`PLN<br>' +
      '`END`KWDuse`END`PLN integer`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`COM# the nth element of the fibonacci series`END`PLN<br>' +
      '`END`COM# param n - an int &gt;= 0`END`PLN<br>' +
      '`END`COM# return an int &gt;= 0`END`PLN<br>' +
      '`END`KWDsub`END`PLN fib`END`PUN(`END`PLN$`END`PUN)`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDmy`END`PLN $n `END`PUN=`END`PLN shift`END`PUN,`END`PLN ' +
      '$a `END`PUN=`END`PLN `END`LIT1`END`PUN,`END`PLN $b `END' +
          '`PUN=`END`PLN `END`LIT1`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN(`END`PLN$a`END`PUN,`END`PLN $b`END`PUN)`END' +
          '`PLN `END`PUN=`END`PLN `END`PUN(`END`PLN$a `END`PUN+`END' +
          '`PLN $b`END`PUN,`END`PLN $a`END`PUN)`END`PLN `END`KWDuntil`END' +
          '`PLN `END`PUN(--`END`PLN$n `END`PUN&lt;`END`PLN `END`LIT0`END' +
          '`PUN);`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN $a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      '`END`KWDprint`END`PLN fib`END`PUN(`END`LIT10`END`PUN);`END'),
  python: (
      '`COM#!/usr/bin/python2.4`END`PLN<br>' +
      '<br>' +
      '`END`KWDdef`END`PLN fib`END`PUN():`END`PLN<br>' +
      '&nbsp; `END`STR\'\'\'<br>' +
      '&nbsp; a generator that produces the elements of the fibonacci series' +
          '<br>' +
      '&nbsp; \'\'\'`END`PLN<br>' +
      '<br>' +
      '&nbsp; a `END`PUN=`END`PLN `END`LIT1`END`PLN<br>' +
      '&nbsp; b `END`PUN=`END`PLN `END`LIT1`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`KWDTrue`END`PUN:`END`PLN<br>' +
      '&nbsp; &nbsp; a`END`PUN,`END`PLN b `END`PUN=`END`PLN a `END`PUN+`END' +
          '`PLN b`END`PUN,`END`PLN a<br>' +
      '&nbsp; &nbsp; `END`KWDyield`END`PLN a<br>' +
      '<br>' +
      '`END`KWDdef`END`PLN nth`END`PUN(`END`PLNseries`END`PUN,`END`PLN n`END' +
          '`PUN):`END`PLN<br>' +
      '&nbsp; `END`STR\'\'\'<br>' +
      '&nbsp; returns the nth element of a series,<br>' +
      '&nbsp; consuming the earlier elements of the series<br>' +
      '&nbsp; \'\'\'`END`PLN<br>' +
      '<br>' +
      '&nbsp; `END`KWDfor`END`PLN x `END`KWDin`END`PLN series`END`PUN:`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; n `END`PUN=`END`PLN n `END`PUN-`END`PLN `END`LIT1`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDif`END`PLN n `END`PUN&lt;=`END`PLN `END' +
          '`LIT0`END`PUN:`END`PLN `END`KWDreturn`END`PLN x<br>' +
      '<br>' +
      '`END`KWDprint`END`PLN nth`END`PUN(`END`PLNfib`END`PUN(),`END`PLN `END' +
          '`LIT10`END`PUN)`END'),
  python_lang: (
      '`COM#!/usr/bin/python2.4`END`PLN<br>' +
      '<br>' +
      '`END`KWDdef`END`PLN fib`END`PUN():`END`PLN<br>' +
      '&nbsp; `END`STR\'\'\'<br>' +
      '&nbsp; a generator that produces the fibonacci series\'s elements' +
          '<br>' +
      '&nbsp; \'\'\'`END`PLN<br>' +
      '<br>' +
      '&nbsp; a `END`PUN=`END`PLN `END`LIT1`END`PLN<br>' +
      '&nbsp; b `END`PUN=`END`PLN `END`LIT1`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`KWDTrue`END`PUN:`END`PLN<br>' +
      '&nbsp; &nbsp; a`END`PUN,`END`PLN b `END`PUN=`END`PLN a `END`PUN+`END' +
          '`PLN b`END`PUN,`END`PLN a<br>' +
      '&nbsp; &nbsp; `END`KWDyield`END`PLN a<br>' +
      '<br>' +
      '`END`KWDdef`END`PLN nth`END`PUN(`END`PLNseries`END`PUN,`END`PLN n`END' +
          '`PUN):`END`PLN<br>' +
      '&nbsp; `END`STR\'\'\'<br>' +
      '&nbsp; returns the nth element of a series,<br>' +
      '&nbsp; consuming the earlier elements of the series<br>' +
      '&nbsp; \'\'\'`END`PLN<br>' +
      '<br>' +
      '&nbsp; `END`KWDfor`END`PLN x `END`KWDin`END`PLN series`END`PUN:`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; n `END`PUN-=`END`PLN `END`LIT1`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDif`END`PLN n `END`PUN&lt;=`END`PLN `END' +
          '`LIT0`END`PUN:`END`PLN `END`KWDreturn`END`PLN x<br>' +
      '<br>' +
      '`END`KWDprint`END`PLN nth`END`PUN(`END`PLNfib`END`PUN(),`END`PLN `END' +
          '`LIT10`END`PUN)`END`PLN<br>' +
      '<br>' +
      '`END`PUN/*`END`PLN `END`KWDnot`END`PLN a comment `END`KWDand`END' +
          '`PLN `END`KWDnot`END`PLN keywords`END`PUN:`END' +
          '`PLN null char true `END`PUN*/`END'),
  sql_lang: (
      '`COM/* A multi-line<br>' +
      '&nbsp;* comment */`END`PLN<br>' +
      '`END`STR\'Another string /* Isn\\\'t a comment\'`END`PUN,`END`PLN<br>' +
      '`END`STR"A string */"`END`PLN<br>' +
      '`END`COM-- A line comment`END`PLN<br>' +
      '`END`KWDSELECT`END`PLN `END`PUN*`END`PLN `END`KWDFROM`END' +
          '`PLN users `END`KWDWHERE`END`PLN id `END`KWDIN`END`PLN `END' +
          '`PUN(`END`LIT1`END`PUN,`END`PLN `END`LIT2.0`END`PUN,`END`PLN `END' +
          '`LIT+30e-1`END`PUN);`END`PLN<br>' +
      '`END`COM-- keywords are case-insensitive.`END`PLN<br>' +
      '`END`COM-- Note: user-table is a single identifier, not a pair of' +
          ' keywords`END`PLN<br>' +
      '`END`KWDselect`END`PLN `END`PUN*`END`PLN `END`KWDfrom`END' +
          '`PLN user-table `END`KWDwhere`END`PLN id `END`KWDin`END`PLN `END' +
          '`PUN(`END`PLNx`END`PUN,`END`PLN y`END`PUN,`END`PLN z`END`PUN);`END'
      ),
  xml: (
      '`DEC&lt;!DOCTYPE series PUBLIC "fibonacci numbers"&gt;`END`PLN<br>' +
      '<br>' +
      '`END`TAG&lt;series`END`PLN `END`ATNbase`END`PUN=`END' +
          '`ATV"1"`END`PLN `END' +
          '`ATNstep`END`PUN=`END`ATV"s(n-2) + s(n-1)"`END`TAG&gt;`END' +
          '`PLN<br>' +
      '&nbsp; `END`TAG&lt;element`END`PLN `END`ATNi`END`PUN=`END' +
          '`ATV"0"`END' +
          '`TAG&gt;`END`PLN1`END`TAG&lt;/element&gt;`END' +
          '`PLN<br>' +
      '&nbsp; `END`TAG&lt;element`END`PLN `END`ATNi`END`PUN=`END' +
          '`ATV"1"`END' +
          '`TAG&gt;`END`PLN1`END`TAG&lt;/element&gt;`END' +
          '`PLN<br>' +
      '&nbsp; `END`TAG&lt;element`END`PLN `END`ATNi`END`PUN=`END' +
          '`ATV"2"`END' +
          '`TAG&gt;`END`PLN2`END`TAG&lt;/element&gt;`END' +
          '`PLN<br>' +
      '&nbsp; `END`TAG&lt;element`END`PLN `END`ATNi`END`PUN=`END' +
          '`ATV"3"`END' +
          '`TAG&gt;`END`PLN3`END`TAG&lt;/element&gt;`END' +
          '`PLN<br>' +
      '&nbsp; `END`TAG&lt;element`END`PLN `END`ATNi`END`PUN=`END' +
          '`ATV"4"`END' +
          '`TAG&gt;`END`PLN5`END`TAG&lt;/element&gt;`END' +
          '`PLN<br>' +
      '&nbsp; `END`TAG&lt;element`END`PLN `END`ATNi`END`PUN=`END' +
          '`ATV"5"`END' +
          '`TAG&gt;`END`PLN8`END`TAG&lt;/element&gt;`END' +
          '`PLN<br>' +
      '&nbsp; ...<br>' +
      '`END`TAG&lt;/series&gt;`END'),
  html: (
      '`TAG&lt;html&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;head&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;title&gt;`END`PLNFibonacci number`END' +
          '`TAG&lt;/title&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;style&gt;`END`COM&lt;!--`END' +
          '`PLN BODY `END`PUN{`END`PLN `END`KWDtext-decoration`END`PUN:`END' +
          '`PLN blink `END`PUN}`END`PLN `END`COM--&gt;`END`TAG&lt;/' +
          'style&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;/head&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;body&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;noscript&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`TAG&lt;dl&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dt&gt;`END' +
          '`PLNFibonacci numbers`END`TAG&lt;/dt&gt;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN1`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN1`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN2`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN3`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN5`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN8`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &amp;hellip;<br>' +
      '&nbsp; &nbsp; &nbsp; `END`TAG&lt;/dl&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;/noscript&gt;`END`PLN<br>' +
      '<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;script`END`PLN `END`ATNtype`END`PUN=`END' +
          '`ATV"text/javascript"`END`TAG&gt;`END`PUN&lt;!--`END`PLN<br>' +
      '`END`KWDfunction`END`PLN fib`END`PUN(`END`PLNn`END`PUN)`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN a `END`PUN=`END`PLN `END`LIT1`END`PUN,`END' +
          '`PLN b `END`PUN=`END`PLN `END`LIT1`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END`PUN&gt;=`END' +
          '`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; tmp `END`PUN=`END`PLN a`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      'document`END`PUN.`END`PLNwriteln`END`PUN(`END`PLNfib`END`PUN(`END' +
          '`LIT10`END`PUN));`END`PLN<br>' +
      '`END`COM// --&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;/script&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;/body&gt;`END`PLN<br>' +
      '`END`TAG&lt;/html&gt;`END'),
  html_lang: (
      '`PLNFibonacci Numbers<br>' +
      '<br>' +
      '`END`TAG&lt;noscript&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;dl`END`PLN `END`ATNstyle`END`PUN=`END' +
          '`ATV"`END`KWDlist-style`END`PUN:`END`PLN disc`END`ATV"`END' +
          '`TAG&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;dt&gt;`END' +
          '`PLNFibonacci numbers`END`TAG&lt;/dt&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN1`END`TAG&lt;/dd&gt;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN1`END`TAG&lt;/dd&gt;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN2`END`TAG&lt;/dd&gt;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN3`END`TAG&lt;/dd&gt;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN5`END`TAG&lt;/dd&gt;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN8`END`TAG&lt;/dd&gt;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &amp;hellip;<br>' +
      '&nbsp; `END`TAG&lt;/dl&gt;`END`PLN<br>' +
      '`END`TAG&lt;/noscript&gt;`END`PLN<br>' +
      '<br>' +
      '`END`TAG&lt;script`END`PLN `END`ATNtype`END`PUN=`END' +
          '`ATV"text/javascript"`END`TAG&gt;`END`PUN&lt;!--`END`PLN<br>' +
      '`END`KWDfunction`END`PLN fib`END`PUN(`END`PLNn`END`PUN)`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN a `END`PUN=`END`PLN `END`LIT1`END`PUN,`END' +
          '`PLN b `END`PUN=`END`PLN `END`LIT1`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END`PUN&gt;=`END' +
          '`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; tmp `END`PUN=`END`PLN a`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      'document`END`PUN.`END`PLNwriteln`END`PUN(`END`PLNfib`END`PUN(`END' +
          '`LIT10`END`PUN));`END`PLN<br>' +
      '`END`COM// --&gt;`END`PLN<br>' +
      '`END`TAG&lt;/script&gt;`END'),
  htmlXmp: (
      '`TAG&lt;html&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;head&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;title&gt;`END`PLNFibonacci number`END' +
          '`TAG&lt;/title&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;/head&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;body&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;noscript&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`TAG&lt;dl&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dt&gt;`END' +
          '`PLNFibonacci numbers`END`TAG&lt;/dt&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN1`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN1`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN2`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN3`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN5`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`TAG&lt;dd&gt;`END`PLN8`END' +
          '`TAG&lt;/dd&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &amp;hellip;<br>' +
      '&nbsp; &nbsp; &nbsp; `END`TAG&lt;/dl&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;/noscript&gt;`END`PLN<br>' +
      '<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;script`END`PLN `END`ATNtype`END`PUN=`END' +
          '`ATV"text/javascript"`END`TAG&gt;`END`PUN&lt;!--`END`PLN<br>' +
      '`END`KWDfunction`END`PLN fib`END`PUN(`END`PLNn`END`PUN)`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN a `END`PUN=`END`PLN `END`LIT1`END`PUN,`END' +
          '`PLN b `END`PUN=`END`PLN `END`LIT1`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END`PUN&gt;=`END' +
          '`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; tmp `END`PUN=`END`PLN a`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '<br>' +
      'document`END`PUN.`END`PLNwriteln`END`PUN(`END`PLNfib`END`PUN(`END' +
          '`LIT10`END`PUN));`END`PLN<br>' +
      '`END`COM// --&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;/script&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;/body&gt;`END`PLN<br>' +
      '`END`TAG&lt;/html&gt;`END'),
  xhtml: (
      '`TAG&lt;xhtml&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;head&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;title&gt;`END' +
          '`PLNFibonacci number`END`TAG&lt;/title&gt;`END' +
          '`PLN<br>' +
      '&nbsp; `END`TAG&lt;/head&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;body`END`PLN `END`ATNonload`END`PUN=`END' +
          '`ATV"`END`PLNalert`END`PUN(`END`PLNfib`END`PUN(`END`LIT10`END' +
          '`PUN))`END`ATV"`END`TAG&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;script`END`PLN `END`ATNtype`END' +
          '`PUN=`END`ATV"text/javascript"`END`TAG&gt;`END' +
          '`PUN&lt;![`END`PLNCDATA`END`PUN[`END`PLN<br>' +
      '`END`KWDfunction`END`PLN fib`END`PUN(`END`PLNn`END`PUN)`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN a `END`PUN=`END`PLN `END`LIT1`END`PUN,`END' +
          '`PLN b `END`PUN=`END`PLN `END`LIT1`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDvar`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END`PLNn `END`PUN&gt;=`END' +
          '`PLN `END`LIT0`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; tmp `END`PUN=`END`PLN a`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; a `END`PUN+=`END`PLN b`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; b `END`PUN=`END`PLN tmp`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN a`END`PUN;`END`PLN<br>' +
      '`END`PUN}`END`PLN<br>' +
      '`END`PUN]]&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;/script&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;/body&gt;`END`PLN<br>' +
      '`END`TAG&lt;/xhtml&gt;`END'),
  PHP: (
      '`TAG&lt;html&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;head&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;title&gt;`END`PUN&lt;?=`END' +
          '`PLN `END' +
          '`STR\'Fibonacci numbers\'`END`PLN `END' +
          '`PUN?&gt;`END`TAG&lt;/title&gt;`END`PLN<br>' +
      '<br>' +
      '&nbsp; &nbsp; `END`PUN&lt;?`END`PLNphp<br>' +
      '&nbsp; &nbsp; &nbsp; `END`COM// PHP has a plethora of comment types' +
          '`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`COM\/* What is a<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;"plethora"? *\/`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`KWDfunction`END`PLN fib`END`PUN(`END' +
          '`PLN$n`END`PUN)`END`PLN `END`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`COM# I don\'t know.`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; $a `END`PUN=`END`PLN `END`LIT1`END' +
          '`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; $b `END`PUN=`END`PLN `END`LIT1`END' +
          '`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDwhile`END`PLN `END`PUN(--`END' +
          '`PLN$n `END`PUN&gt;=`END`PLN `END`LIT0`END`PUN)`END`PLN `END' +
          '`PUN{`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo `END`STR"$a\\n"`END`PUN;`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $tmp `END`PUN=`END`PLN $a`END' +
          '`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $a `END`PUN+=`END`PLN $b`END' +
          '`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $b `END`PUN=`END`PLN $tmp`END' +
          '`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; &nbsp; `END`PUN?&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;/head&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;body&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`PUN&lt;?=`END`PLN fib`END' +
          '`PUN(`END`LIT10`END`PUN)`END`PLN `END`PUN?&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;/body&gt;`END`PLN<br>' +
      '`END`TAG&lt;/html&gt;`END'),
  xsl: (
      '`COM&lt;!-- Test elements and attributes with namespaces --&gt;' +
          '`END`PLN<br>' +
      '<br>' +
      '`END`TAG&lt;xsl:stylesheet`END`PLN `END`ATNxml:lang`END' +
          '`PUN=`END`ATV"en"`END`TAG&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;xsl:template`END' +
          '`PLN `END`ATNmatch`END`PUN=`END`ATV"."`END' +
          '`TAG&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;xsl:text&gt;`END' +
          '`PLNHello World`END' +
          '`TAG&lt;/xsl:text&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;/xsl:template&gt;`END`PLN<br>' +
      '`END`TAG&lt;/xsl:stylesheet&gt;`END'
      ),
  whitespace: '',
  misc1: '`COM// ends with line comment token`END`PLN<br>' +
      '`END`COM//`END',
  issue4: (
      '`TAG&lt;script`END`PLN `END' +
          '`ATNtype`END`PUN=`END`ATV"text/javascript"`END' +
          '`TAG&gt;`END`PLN<br>' +
      '&nbsp; &nbsp;var savedTarget=null' +
          '; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ' +
          '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // The target ' +
          'layer (effectively vidPane)<br>' +
      '&nbsp; &nbsp;var orgCursor=null' +
          '; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ' +
          '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // The ' +
          'original mouse style so we can restore it<br>' +
      '&nbsp; &nbsp;var dragOK=false' +
          '; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ' +
          '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ' +
          '// True if we\'re allowed to move the element under mouse' +
          '<br>' +
      '&nbsp; &nbsp;var dragXoffset=0' +
          '; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ' +
          '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;' +
          '// How much we\'ve moved the element on the horozontal' +
          '<br>' +
      '&nbsp; &nbsp;var dragYoffset=0' +
          '; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ' +
          '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;' +
          '// How much we\'ve moved the element on the verticle' +
          '<br>' +
      '&nbsp; &nbsp;vidPaneID = document.' +
          'getElementById(\'vidPane\');' +
          ' // Our movable layer<br>' +
      '&nbsp; &nbsp;vidPaneID.style.top' +
          '=\'75px\'; &nbsp; &nbsp; &nbsp; ' +
          '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // ' +
          'Starting location horozontal<br>' +
      '&nbsp; &nbsp;vidPaneID.style.left' +
          '=\'75px\'; &nbsp; &nbsp; &nbsp; ' +
          '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;// ' +
          'Starting location verticle<br>' +
      '`END`TAG&lt;script&gt;`END'),
  issue8: (
      '<b>`PLNone`END</b>`PLN &nbsp; &nbsp; `END<b>`TYPTwo`END</b>`PLN' +
          ' &nbsp; &nbsp; `END<b>`PLNthree`END</b>`PLN &nbsp; `END`TYPFour' +
          '`END`PLN &nbsp; &nbsp;`END<b>`PLNfive`END</b>`PLN &nbsp; &nbsp;' +
          '`END`PUN|`END`PLN<br>' +
      '`END`TYPSix`END`PLN &nbsp; &nbsp; `END<b>`PLNseven`END</b>`PLN &nbsp; ' +
          '`END`TYPEight`END`PLN &nbsp; nine &nbsp; &nbsp;`END`TYPTen`END' +
          '`PLN &nbsp; &nbsp; `END`PUN|`END`PLN<br>' +
      '`END<b>`PLNeleven`END</b>`PLN &nbsp;`END`TYPTwelve`END`PLN &nbsp;`END' +
          '<b>`PLNthirteen`END</b>`PLN &nbsp; &nbsp; &nbsp; &nbsp;`END' +
          '`TYPFourteen`END`PLN &nbsp; &nbsp; &nbsp; &nbsp;fifteen `END`' +
          'PUN|`END'),
  issue12: (
      '`STR/foo/`END`PUN;`END`PLN &nbsp;`END`COM// a slash starting a line ' +
          'treated as a regexp beginning`END`PLN<br>' +
      '`END`STR"foo"`END`PUN.`END`PLNmatch`END`PUN(`END`STR/fo+$/`END' +
          '`PUN);`END`PLN<br>' +
      '`END`COM// this line comment not treated as a regular expressions`END' +
          '`PLN<br>' +
      '`END`STR"foo /bar/"`END`PUN.`END`PLNtest`END`PUN(`END`STR/"baz"/`END' +
          '`PUN);`END`PLN &nbsp;`END`COM// test string and regexp boundaries' +
          '`END`PLN<br>' +
      '`END`KWDvar`END`PLN division `END`PUN=`END`PLN `END' +
          '`STR/\\b\\d+\\/\\d+/`END`PLNg`END`PUN;`END`PLN &nbsp;`END' +
          '`COM// test char sets and escaping of specials`END`PLN<br>' +
      '`END`KWDvar`END`PLN allSpecials `END`PUN=`END`PLN `END' +
          '`STR/([^\\(\\)\\[\\]\\{\\}\\-\\?\\+\\*\\.\\^\\$\\/]+)\\\\/`END' +
          '`PUN;`END`PLN<br>' +
      '`END`KWDvar`END`PLN slashInCharset `END`PUN=`END`PLN `END' +
          '`STR/[^/]/`END`PLNg`END`PUN,`END`PLN notCloseSq `END`PUN=`END' +
          '`PLN `END`STR/[^\\]]/`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`COM// test that slash used in numeric context treated as an ' +
          'operator`END`PLN<br>' +
      '`END`LIT1`END`PLN `END`PUN/`END`PLN `END`LIT2`END`PUN;`END`PLN<br>' +
      '`END`LIT1.`END`PLN `END`PUN/`END`PLN x`END`PUN;`END`PLN<br>' +
      'x `END`PUN/`END`PLN y`END`PUN;`END`PLN<br>' +
      '`END`PUN(`END`PLNx`END`PUN)`END`PLN `END`PUN/`END`PLN y`END`PUN;`END' +
          '`PLN<br>' +
      '`END`LIT1`END`PLN `END`COM/* foo *\/`END`PLN `END`PUN/`END`PLN `END' +
          '`LIT2`END`PUN;`END`PLN<br>' +
      '`END`LIT1`END`PLN `END`COM/* foo *\/`END`PUN/`END`PLN `END`LIT2`END' +
          '`PUN;`END`PLN<br>' +
      '`END`LIT1`END`PUN/`END`LIT2`END`PUN;`END`PLN<br>' +
      '`END`LIT1.`END`PUN/`END`PLNx`END`PUN;`END`PLN<br>' +
      'x`END`PUN/`END`PLNy`END`PUN;`END`PLN<br>' +
      '`END`PUN(`END`PLNx`END`PUN)/`END`PLNy`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`COM// test split over two lines. &nbsp;line comment should not ' +
          'fool it`END`PLN<br>' +
      '`END`LIT1`END`COM//`END`PLN<br>' +
      '`END`PUN/`END`LIT2`END`PUN;`END`PLN<br>' +
      '<br>' +
      'x`END`PUN++/`END`PLNy`END`PUN;`END`PLN<br>' +
      'x`END`PUN--/`END`PLNy`END`PUN;`END`PLN<br>' +
      'x`END`PUN[`END`PLNy`END`PUN]`END`PLN `END`PUN/`END`PLN z`END`PUN;`END' +
          '`PLN<br>' +
      'f`END`PUN()`END`PLN `END`PUN/`END`PLN n`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`COM// test that slash after non postfix operator is start of ' +
          'regexp`END`PLN<br>' +
      'log`END`PUN(`END`STR\'matches = \'`END`PLN `END`PUN+`END`PLN `END' +
          '`STR/foo/`END`PUN.`END`PLNtest`END`PUN(`END`PLNfoo`END`PUN));`END' +
          '`PLN<br>' +
      '<br>' +
      '`END`COM// test keyword preceders`END`PLN<br>' +
      '`END`KWDreturn`END`PLN `END`STR/a regexp/`END`PUN;`END`PLN<br>' +
      'division `END`PUN=`END`PLN notreturn `END`PUN/`END`PLN not_a_regexp ' +
          '`END`PUN/`END`PLN `END`LIT2`END`PUN;`END`PLN &nbsp;`END`COM// ' +
          'keyword suffix does not match`END`PLN<br>' +
      '<br>' +
      '`END`COM// &amp; not used as prefix operator in javascript but this ' +
          'should still work`END`PLN<br>' +
      '`END`PUN&amp;`END`STR/foo/`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`KWDextends`END`PLN `END`PUN=`END`PLN `END`STR/extends/`END' +
          '`PUN;`END'),
  issue12_lang: (
      '`STR/foo/`END`PUN;`END`PLN &nbsp;`END`COM// a slash starting a line ' +
          'treated as a regexp beginning`END`PLN<br>' +
      '`END`STR"foo"`END`PUN.`END`PLNmatch`END`PUN(`END`STR/fo+$/`END' +
          '`PUN);`END`PLN<br>' +
      '`END`COM// this line comment not treated as a regular expressions`END' +
          '`PLN<br>' +
      '`END`STR"foo /bar/"`END`PUN.`END`PLNtest`END`PUN(`END`STR/"baz"/`END' +
          '`PUN);`END`PLN &nbsp;`END`COM// test string and regexp boundaries' +
          '`END`PLN<br>' +
      '`END`KWDvar`END`PLN division `END`PUN=`END`PLN `END' +
          '`STR/\\b\\d+\\/\\d+/`END`PLNg`END`PUN;`END`PLN &nbsp;`END' +
          '`COM// test char sets and escaping of specials`END`PLN<br>' +
      '`END`KWDvar`END`PLN allSpecials `END`PUN=`END`PLN `END' +
          '`STR/([^\\(\\)\\[\\]\\{\\}\\-\\?\\+\\*\\.\\^\\$\\/]+)\\\\/`END' +
          '`PUN;`END`PLN<br>' +
      '`END`KWDvar`END`PLN slashInCharset `END`PUN=`END`PLN `END' +
          '`STR/[^/]/`END`PLNg`END`PUN,`END`PLN notCloseSq `END`PUN=`END' +
          '`PLN `END`STR/[^\\]]/`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`COM// test that slash used in numeric context treated as an ' +
          'operator`END`PLN<br>' +
      '`END`LIT1`END`PLN `END`PUN/`END`PLN `END`LIT2`END`PUN;`END`PLN<br>' +
      '`END`LIT1.`END`PLN `END`PUN/`END`PLN x`END`PUN;`END`PLN<br>' +
      'x `END`PUN/`END`PLN y`END`PUN;`END`PLN<br>' +
      '`END`PUN(`END`PLNx`END`PUN)`END`PLN `END`PUN/`END`PLN y`END`PUN;`END' +
          '`PLN<br>' +
      '`END`LIT1`END`PLN `END`COM/* foo *\/`END`PLN `END`PUN/`END`PLN `END' +
          '`LIT2`END`PUN;`END`PLN<br>' +
      '`END`LIT1`END`PLN `END`COM/* foo *\/`END`PUN/`END`PLN `END`LIT2`END' +
          '`PUN;`END`PLN<br>' +
      '`END`LIT1`END`PUN/`END`LIT2`END`PUN;`END`PLN<br>' +
      '`END`LIT1.`END`PUN/`END`PLNx`END`PUN;`END`PLN<br>' +
      'x`END`PUN/`END`PLNy`END`PUN;`END`PLN<br>' +
      '`END`PUN(`END`PLNx`END`PUN)/`END`PLNy`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`COM// test split over two lines. &nbsp;line comment should not ' +
          'fool it`END`PLN<br>' +
      '`END`LIT1`END`COM//`END`PLN<br>' +
      '`END`PUN/`END`LIT2`END`PUN;`END`PLN<br>' +
      '<br>' +
      'x`END`PUN++/`END`PLNy`END`PUN;`END`PLN<br>' +
      'x`END`PUN--/`END`PLNy`END`PUN;`END`PLN<br>' +
      'x`END`PUN[`END`PLNy`END`PUN]`END`PLN `END`PUN/`END`PLN z`END`PUN;`END' +
          '`PLN<br>' +
      'f`END`PUN()`END`PLN `END`PUN/`END`PLN n`END`PUN;`END`PLN<br>' +
      '<br>' +
      '`END`COM// test that slash after non postfix operator is start of ' +
          'regexp`END`PLN<br>' +
      'log`END`PUN(`END`STR\'matches = \'`END`PLN `END`PUN+`END`PLN `END' +
          '`STR/foo/`END`PUN.`END`PLNtest`END`PUN(`END`PLNfoo`END`PUN));`END' +
          '`PLN<br>' +
      '<br>' +
      '`END`COM// test keyword preceders`END`PLN<br>' +
      '`END`KWDreturn`END`PLN `END`STR/a regexp/`END`PUN;`END`PLN<br>' +
      'division `END`PUN=`END`PLN notreturn `END`PUN/`END`PLN not_a_regexp ' +
          '`END`PUN/`END`PLN `END`LIT2`END`PUN;`END`PLN &nbsp;`END`COM// ' +
          'keyword suffix does not match`END`PLN<br>' +
      '<br>' +
      '`END`COM// &amp; not used as prefix operator in javascript but this ' +
          'should still work`END`PLN<br>' +
      '`END`PUN&amp;`END`STR/foo/`END`PUN;`END`PLN<br>' +
      '<br>' +
      'extends `END`PUN=`END`PLN `END`STR/extends/`END`PUN;`END'),
  issue14a: (
      '`COM//comment`END`PLN<br>' +
      '`END`KWDint`END`PLN main`END`PUN(`END`KWDint`END`PLN argc`END`PUN,`END' +
          '`PLN `END`KWDchar`END`PLN `END`PUN**`END`PLNargv`END`PUN)`END' +
          '`PLN<br>' +
      '`END`PUN{}`END'),
  issue14b: (
      '`COM&lt;!-- There\'s an `END<acronym title="tag soup">`COMHTML`END' +
          '</acronym>`COM comment in my comment --&gt;`END`PLN<br>' +
      '`END`TAG&lt;p&gt;`END' +
          '`PLNAnd another one inside the end tag`END' +
      '`TAG&lt;/p&gt;`END'),
  issue20: (
      '`TAG&lt;html&gt;`END`PLN<br>' +
      '<br>' +
      '`END`TAG&lt;head&gt;`END'),
  issue21: (
      '`TAG&lt;html&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;head&gt;`END`PLN<br>' +
      '&nbsp; &nbsp; `END`TAG&lt;title&gt;`END`PLNTest`END' +
          '`TAG&lt;/title&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;/head&gt;`END`PLN<br>' +
      '`END`TAG&lt;/html&gt;`END'),
  issue22: (
      '<span class="nocode">01: `END`COM// This is a line of code`END`PLN<br>' +
      '`END<span class="nocode">02: `END`COM/* Multiline comments can<br>' +
      '`END<span class="nocode">03: `END`COM&nbsp;* span over and around<br>' +
      '`END<span class="nocode">04: `END`COM&nbsp;* line markers<br>' +
      '`END<span class="nocode annot">And can even be interrupted`END`COM<br>' +
      '`END<span class="nocode annot">by inline code annotations`END`COM<br>' +
      '`END<span class="nocode">05: `END`COM&nbsp;*/`END`PLN<br>' +
      '`END<span class="nocode">06: `END`KWDclass`END`PLN `END`TYPMyClass`END' +
          '`PLN `END`KWDextends`END`PLN `END`TYPFoo`END`PLN `END`PUN{`END' +
          '`PLN<br>' +
      '`END<span class="nocode">07: `END`PLN&nbsp; `END`KWDpublic`END' +
          '`PLN `END`KWDstatic`END`PLN `END`KWDvoid`END`PLN main`END`PUN(`END' +
          '`TYPString`END`PUN...`END`PLN argv`END`PUN)`END`PLN `END`PUN{`END' +
          '`PLN<br>' +
      '`END<span class="nocode">08: `END`PLN&nbsp; &nbsp; `END`TYPSystem`END' +
          '`PUN.`END`KWDout`END`PUN.`END`KWDprint`END`PUN(`END' +
          '`STR"Hello World"`END`PUN);`END`PLN<br>' +
      '`END<span class="nocode">09: `END`PLN&nbsp; `END`PUN}`END`PLN<br>' +
      '`END<span class="nocode">10: `END`PUN}`END'
      ),
  issue24: (
      '`PLNos`END`PUN=`END`PLNrequire`END`PUN(`END`STR"os"`END`PUN)`END`PLN<br>' +
      'math`END`PUN=`END`PLNrequire`END`PUN(`END`STR"math"`END`PUN)`END`PLN<br>' +
      '<br>' +
      '`END`COM-- Examples from the language reference`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp;a `END`PUN=`END`PLN `END`STR\'alo\\n123"\'`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp;a `END`PUN=`END`PLN `END`STR"alo\\n123\\""`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp;a `END`PUN=`END`PLN `END' +
          '`STR\'\\97lo\\10\\04923"\'`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp;a `END`PUN=`END`PLN `END`STR[[alo<br>' +
      '&nbsp; &nbsp; &nbsp;123"]]`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp;a `END`PUN=`END`PLN `END`STR[==[<br>' +
      '&nbsp; &nbsp; &nbsp;alo<br>' +
      '&nbsp; &nbsp; &nbsp;123"]==]`END`PLN<br>' +
      '<br>' +
      '`END`LIT3`END`PLN &nbsp; `END`LIT3.0`END`PLN &nbsp; `END`LIT3.1416`END' +
          '`PLN &nbsp; `END`LIT314.16e-2`END`PLN &nbsp; `END`LIT0.31416E1`END' +
          '`PLN &nbsp; `END`LIT0xff`END`PLN &nbsp; `END`LIT0x56`END`PLN<br>' +
      '<br>' +
      '`END`COM-- Some comments that demonstrate long brackets`END`PLN<br>' +
      'double_quoted `END`PUN=`END`PLN `END`STR"Not a long bracket [=["`END' +
          '`PLN<br>' +
      '`END`COM--[=[ quoting out<br>' +
      '&nbsp;[[ foo ]]<br>' +
      '&nbsp;[==[does not end comment either]==]<br>' +
      ']=]`END`PLN<br>' +
      'past_end_of_comment<br>' +
      '`END`COM--]=]`END`PLN<br>' +
      '<br>' +
      '`END`COM-- Example code courtesy Joseph Harmbruster`END`PLN<br>' +
      '`END`PUN#`END`PLN<br>' +
      '`END`KWDdo`END`PLN<br>' +
      '&nbsp; `END`KWDlocal`END`PLN `END`KWDfunction`END`PLN ssgeneral`END' +
          '`PUN(`END`PLNt`END`PUN,`END`PLN n`END`PUN,`END`PLN before`END' +
          '`PUN)`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDfor`END`PLN _`END`PUN,`END`PLN h `END`KWDin`END' +
          '`PLN ipairs`END`PUN(`END`PLNincs`END`PUN)`END`PLN `END`KWDdo`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; `END`KWDfor`END`PLN i `END`PUN=`END`PLN h `END' +
          '`PUN+`END`PLN `END`LIT1`END`PUN,`END`PLN n `END`KWDdo`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDlocal`END`PLN v `END`PUN=`END' +
          '`PLN t`END`PUN[`END`PLNi`END`PUN]`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDfor`END`PLN j `END`PUN=`END' +
          '`PLN i `END`PUN-`END`PLN h`END`PUN,`END`PLN `END`LIT1`END`PUN,`END' +
          '`PLN `END`PUN-`END`PLNh `END`KWDdo`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; `END`KWDlocal`END`PLN testval `END' +
          '`PUN=`END`PLN t`END`PUN[`END`PLNj`END`PUN]`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; `END`KWDif`END`PLN `END`KWDnot`END' +
          '`PLN before`END`PUN(`END`PLNv`END`PUN,`END`PLN testval`END' +
          '`PUN)`END`PLN `END`KWDthen`END`PLN `END`KWDbreak`END`PLN `END' +
          '`KWDend`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; t`END`PUN[`END`PLNi`END`PUN]`END' +
          '`PLN `END`PUN=`END`PLN testval`END`PUN;`END`PLN i `END`PUN=`END' +
          '`PLN j<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDend`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; t`END`PUN[`END`PLNi`END`PUN]`END`PLN `END' +
          '`PUN=`END`PLN v<br>' +
      '&nbsp; &nbsp; &nbsp; `END`KWDend`END`PLN <br>' +
      '&nbsp; &nbsp; `END`KWDend`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDreturn`END`PLN t<br>' +
      '&nbsp; `END`KWDend`END`PLN<br>' +
      '<br>' +
      '&nbsp; `END`KWDfunction`END`PLN shellsort`END`PUN(`END`PLNt`END' +
          '`PUN,`END`PLN before`END`PUN,`END`PLN n`END`PUN)`END`PLN<br>' +
      '&nbsp; &nbsp; n `END`PUN=`END`PLN n `END`KWDor`END`PLN `END`PUN#`END' +
          '`PLNt<br>' +
      '&nbsp; &nbsp; `END`KWDif`END`PLN `END`KWDnot`END`PLN before `END' +
          '`KWDor`END`PLN before `END`PUN==`END`PLN `END`STR"&lt;"`END' +
          '`PLN `END`KWDthen`END`PLN `END`KWDreturn`END`PLN ssup`END`PUN(`END' +
          '`PLNt`END`PUN,`END`PLN n`END`PUN)`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDelseif`END`PLN before `END`PUN==`END`PLN `END' +
          '`STR"&gt;"`END`PLN `END`KWDthen`END`PLN `END`KWDreturn`END' +
          '`PLN ssdown`END`PUN(`END`PLNt`END`PUN,`END`PLN n`END`PUN)`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDelse`END`PLN `END`KWDreturn`END' +
          '`PLN ssgeneral`END`PUN(`END`PLNt`END`PUN,`END`PLN n`END`PUN,`END' +
          '`PLN before`END`PUN)`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDend`END`PLN<br>' +
      '&nbsp; `END`KWDend`END`PLN<br>' +
      '&nbsp; `END`KWDreturn`END`PLN shellsort<br>' +
      '`END`KWDend`END'),
  issue27: (
      '`KWDImports`END`PLN System<br>' +
      '<br>' +
      '`END`KWDClass`END`PLN [class]<br>' +
      '&nbsp; &nbsp; `END`KWDShared`END`PLN `END`KWDSub`END`PLN [shared]`END' +
          '`PUN(`END`KWDByVal`END`PLN [boolean] `END`KWDAs`END`PLN `END' +
          '`KWDBoolean`END`PUN)`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDIf`END`PLN [boolean] `END' +
          '`KWDThen`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console`END`PUN.`END' +
          '`PLNWriteLine`END`PUN(`END`STR"true"`END`PUN)`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDElse`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Console`END`PUN.`END' +
          '`PLNWriteLine`END`PUN(`END`STR"false"`END`PUN)`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`KWDEnd`END`PLN `END`KWDIf`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDEnd`END`PLN `END`KWDSub`END`PLN<br>' +
      '`END`KWDEnd`END`PLN `END`KWDClass`END`PLN<br>' +
      '<br>' +
      '`END`KWDModule`END`PLN [module]<br>' +
      '&nbsp; &nbsp; `END`KWDSub`END`PLN Main`END`PUN()`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; [class]`END`PUN.`END`PLN[shared]`END' +
          '`PUN(`END`LITTrue`END`PUN)`END`PLN<br>' +
      '<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`COM\' This prints out: \".`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; Console`END`PUN.`END`PLNWriteLine`END' +
          '`PUN(`END`STR""""`END`PUN)`END`PLN<br>' +
      '<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`COM\' This prints out: a"b.`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; Console`END`PUN.`END`PLNWriteLine`END' +
          '`PUN(`END`STR"a""b"`END`PUN)`END`PLN<br>' +
      '<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`COM\' This prints out: a.`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; Console`END`PUN.`END`PLNWriteLine`END' +
          '`PUN(`END`STR"a"c`END`PUN)`END`PLN<br>' +
      '<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; `END`COM\' This prints out: ".`END' +
          '`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; Console`END`PUN.`END`PLNWriteLine`END' +
          '`PUN(`END`STR""""c`END`PUN)`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDEnd`END`PLN `END`KWDSub`END`PLN<br>' +
      '`END`KWDEnd`END`PLN `END`KWDModule`END`PLN<br>' +
      '<br>' +
      '`END`KWDDim`END`PLN d `END`KWDAs`END`PLN `END`KWDDate`END`PLN<br>' +
      'd `END`PUN=`END`PLN `END`LIT# 8/23/1970 3:45:39AM #`END`PLN<br>' +
      'd `END`PUN=`END`PLN `END`LIT# 8/23/1970 #`END`PLN<br>' +
      'd `END`PUN=`END`PLN `END`LIT# 3:45:39AM #`END`PLN<br>' +
      'd `END`PUN=`END`PLN `END`LIT# 3:45:39 #`END`PLN<br>' +
      'd `END`PUN=`END`PLN `END`LIT# 13:45:39 #`END`PLN<br>' +
      'd `END`PUN=`END`PLN `END`LIT# 13:45:39PM #`END`PLN<br>' +
      '<br>' +
      '`END`KWDDim`END`PLN n `END`KWDAs`END`PLN Float<br>' +
      'n `END`PUN=`END`PLN `END`PUN(`END`LIT0.0`END`PUN,`END`PLN `END' +
          '`LIT.99F`END`PUN,`END`PLN `END`LIT1.0E-2D`END`PUN,`END`PLN `END' +
          '`LIT1.0E+3D`END`PUN,`END`PLN `END`LIT.5E4`END`PUN,`END`PLN `END' +
          '`LIT1E3R`END`PUN,`END`PLN `END`LIT4D`END`PUN)`END`PLN<br>' +
      '<br>' +
      '`END`KWDDim`END`PLN i `END`KWDAs`END`PLN `END`KWDInteger`END`PLN<br>' +
      'i `END`PUN=`END`PLN `END`PUN(`END`LIT0`END`PUN,`END`PLN `END' +
          '`LIT123`END`PUN,`END`PLN `END`LIT45L`END`PUN,`END`PLN `END' +
          '`LIT&amp;HA0I`END`PUN,`END`PLN `END`LIT&amp;O177S`END`PUN)`END'),
  issue30: (
      '`COM-- A comment`END`PLN<br>' +
      'Not`END`PUN(--`END`STR"a comment"`END`PUN)`END`PLN<br>' +
      'Also.not`END`PUN(--(`END`PLNA.comment`END`PUN))`END`PLN<br>' +
      '<br>' +
      '`END`KWDmodule`END`PLN Foo`END`PUN(`END`PLNbar`END`PUN)`END`PLN `END' +
          '`KWDwhere`END`PLN<br>' +
      '`END`KWDimport`END`PLN Blah<br>' +
      '`END`KWDimport`END`PLN BlahBlah`END`PUN(`END`PLNblah`END`PUN)`END' +
          '`PLN<br>' +
      '`END`KWDimport`END`PLN Monads`END`PUN(`END`PLNException`END' +
          '`PUN(..),`END`PLN FIO`END`PUN(..),`END`PLNunFIO`END`PUN,`END' +
          '`PLNhandle`END`PUN,`END`PLNrunFIO`END`PUN,`END`PLNfixFIO`END' +
          '`PUN,`END`PLNfio`END`PUN,`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; write`END`PUN,`END' +
          '`PLNwriteln`END`PUN,`END`PLNHasNext`END`PUN(..),`END' +
          '`PLNHasOutput`END`PUN(..))`END`PLN<br>' +
      '<br>' +
      '`END`COM{- nested comments<br>' +
      '&nbsp;- don\'t work {-yet-}`END`PLN `END`PUN-}`END`PLN<br>' +
      '`END`KWDinstance`END`PLN Thingy Foo `END`KWDwhere`END`PLN<br>' +
      '&nbsp; a `END`PUN=`END`PLN b<br>' +
      '<br>' +
      '`END`KWDdata`END`PLN Foo `END`PUN::`END`PLN `END`PUN(*`END`PLN `END' +
          '`PUN-&gt;`END`PLN `END`PUN*`END`PLN `END`PUN-&gt;`END`PLN `END' +
          '`PUN*)`END`PLN `END`PUN-&gt;`END`PLN `END`PUN*`END`PLN `END' +
          '`PUN&gt;`END`PLN `END`PUN*`END`PLN `END`PUN-&gt;`END`PLN `END' +
          '`PUN*`END`PLN `END`KWDwhere`END`PLN<br>' +
      '&nbsp; Nil `END`PUN::`END`PLN Foo a b c<br>' +
      '&nbsp; Cons `END`PUN::`END`PLN a b c `END`PUN-&gt;`END' +
          '`PLN Foo abc `END`PUN-&gt;`END`PLN Foo a b c<br>' +
      '<br>' +
      'str `END`PUN=`END`PLN `END`STR"Foo\\\\Bar"`END`PLN<br>' +
      'char `END`PUN=`END`PLN `END`STR\'x\'`END`PLN<br>' +
      'Not.A.Char `END`PUN=`END`PLN `END`STR\'t`END`PLNoo long\' &nbsp;`END' +
          '`COM-- Don\'t barf. &nbsp;Show that \'t is a lexical error.`END' +
          '`PLN<br>' +
      '<br>' +
      '`END`PUN(`END`PLNident`END`PUN,`END`PLN ident\'`END`PUN,`END' +
          '`PLN Fo\'\'o.b\'ar`END`PUN)`END`PLN<br>' +
      '<br>' +
      '`END`PUN(`END`LIT0`END`PUN,`END`PLN `END`LIT12`END`PUN,`END`PLN `END' +
          '`LIT0x45`END`PUN,`END`PLN `END`LIT0xA7`END`PUN,`END`PLN `END' +
          '`LIT0o177`END`PUN,`END`PLN `END`LIT0O377`END`PUN,`END`PLN `END' +
          '`LIT0.1`END`PUN,`END`PLN `END`LIT1.0`END`PUN,`END`PLN `END' +
          '`LIT1e3`END`PUN,`END`PLN `END`LIT0.5E-3`END`PUN,`END`PLN `END' +
          '`LIT1.0E+45`END`PUN)`END'
       ),
  issue33: (
      '`COM(*<br>' +
      '&nbsp;* Print the 10th fibonacci number<br>' +
      '&nbsp;*)`END`PLN<br>' +
      '<br>' +
      '`END`COM//// A line comment`END`PLN<br>' +
      '`END`STR"A string"`END`PUN;;`END`PLN<br>' +
      '`END`PUN(`END`LIT0`END`PUN,`END`PLN `END`LIT125`END`PUN,`END' +
           '`PLN `END`LIT0xa0`END`PUN,`END`PLN `END`LIT-1.0`END`PUN,`END' +
           '`PLN `END`LIT1e6`END`PUN,`END`PLN `END`LIT1.2e-3`END`PUN);;`END' +
           '`PLN &nbsp;`END`COM// number literals`END`PLN<br>' +
      '<br>' +
      '`END`COM#if fibby`END`PLN<br>' +
      '&nbsp; `END`KWDlet`END`PLN<br>' +
      '&nbsp; &nbsp; `END`KWDrec`END`PLN fib `END`PUN=`END`PLN `END' +
           '`KWDfunction`END`PLN `END`PUN(`END`LIT0`END`PUN,`END`PLN a`END' +
           '`PUN,`END`PLN _`END`PUN)`END`PLN `END`PUN-&gt;`END`PLN a<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ' +
           '&nbsp;`END`PUN|`END`PLN `END`PUN(`END`PLNn`END`PUN,`END`PLN a`END' +
           '`PUN,`END`PLN b`END`PUN)`END`PLN `END`PUN-&gt;`END`PLN fib`END' +
           '`PUN(`END`PLNn `END`PUN-`END`PLN `END`LIT1`END`PUN,`END' +
           '`PLN a `END`PUN+`END`PLN b`END`PUN,`END`PLN a`END`PUN)`END' +
           '`PLN<br>' +
      '&nbsp; `END`KWDin`END`PLN<br>' +
      '&nbsp; &nbsp; print_int`END`PUN(`END`PLNfib`END`PUN(`END`LIT10`END' +
           '`PUN,`END`PLN `END`LIT1`END`PUN,`END`PLN `END`LIT1`END' +
           '`PUN));;`END`PLN<br>' +
      '`END`COM#endif`END'),
  issue42: (
      '`COM; -*- mode: lisp -*-`END`PLN<br>' +
      '<br>' +
      '`END`OPN(`END`KWDdefun`END`PLN back-six-lines `END`OPN(`END`CLO)`END' +
           '`PLN `END`OPN(`END`PLNinteractive`END`CLO)`END`PLN `END`OPN(`END' +
           '`PLNforward-line `END`LIT-6`END`CLO))`END`PLN<br>' +
      '`END`OPN(`END`KWDdefun`END`PLN forward-six-lines `END`OPN(`END' +
           '`CLO)`END`PLN `END`OPN(`END`PLNinteractive`END`CLO)`END`PLN `END' +
           '`OPN(`END`PLNforward-line `END`LIT6`END`CLO))`END`PLN<br>' +
      '<br>' +
      '`END`OPN(`END`PLNglobal-set-key `END`STR"\\M-l"`END`PLN `END' +
           '`LIT\'goto-line`END`CLO)`END`PLN<br>' +
      '`END`OPN(`END`PLNglobal-set-key `END`STR"\\C-z"`END`PLN `END' +
           '`LIT\'advertised-undo`END`CLO)`END`PLN<br>' +
      '`END`OPN(`END`PLNglobal-set-key `END`PUN[`END`PLNC-insert`END' +
           '`PUN]`END`PLN `END`LIT\'clipboard-kill-ring-save`END`CLO)`END' +
           '`PLN<br>' +
      '`END`OPN(`END`PLNglobal-set-key `END`PUN[`END`PLNS-insert`END`PUN]`END' +
           '`PLN `END`LIT\'clipboard-yank`END`CLO)`END`PLN<br>' +
      '`END`OPN(`END`PLNglobal-set-key `END`PUN[`END`PLNC-up`END`PUN]`END' +
           '`PLN `END`LIT\'back-six-lines`END`CLO)`END`PLN<br>' +
      '`END`OPN(`END`PLNglobal-set-key `END`PUN[`END`PLNC-down`END`PUN]`END' +
           '`PLN `END`LIT\'forward-six-lines`END`CLO)`END`PLN<br>' +
      '<br>' +
      '`END`OPN(`END`KWDsetq`END`PLN visible-bell `END`KWDt`END`CLO)`END' +
           '`PLN<br>' +
      '`END`OPN(`END`KWDsetq`END`PLN user-mail-address `END' +
           '`STR"foo@bar.com"`END`CLO)`END`PLN<br>' +
      '`END`OPN(`END`KWDsetq`END`PLN default-major-mode `END' +
           '`LIT\'text-mode`END`CLO)`END`PLN<br>' +
      '<br>' +
      '`END`OPN(`END`PLNsetenv `END`STR"TERM"`END`PLN `END' +
           '`STR"emacs"`END`CLO)`END`PLN<br>' +
      '`END`OPN(`END`PLNc-set-offset `END`LIT\'case-label`END`PLN `END' +
           '`LIT2`END`CLO)`END`PLN<br>' +
      '`END`OPN(`END`KWDsetq`END`PLN c-basic-offset `END`LIT2`END`CLO)`END' +
           '`PLN<br>' +
      '`END`OPN(`END`KWDsetq`END`PLN perl-indent-level `END`LIT0x2`END`CLO)`END' +
           '`PLN<br>' +
      '`END`OPN(`END`KWDsetq`END`PLN delete-key-deletes-forward `END`KWDt`END' +
           '`CLO)`END`PLN<br>' +
      '`END`OPN(`END`KWDsetq`END`PLN indent-tabs-mode `END`KWDnil`END' +
           '`CLO)`END`PLN<br>' +
      '<br>' +
      '`END`COM;; Text mode`END`PLN<br>' +
      '`END`OPN(`END`PLNadd-hook `END`LIT\'text-mode-hook`END`PLN <br>' +
      '&nbsp; `END`LIT\'`END`OPN(`END`KWDlambda`END`PLN `END`OPN(`END' +
           '`CLO)`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp;`END`OPN(`END`PLNturn-on-auto-fill`END`CLO)`END' +
           '`PLN<br>' +
      '&nbsp; &nbsp;`END`CLO)`END`PLN<br>' +
      '`END`CLO)`END`PLN<br>' +
      '<br>' +
      '`END`COM;; Fundamental mode`END`PLN<br>' +
      '`END`OPN(`END`PLNadd-hook `END`LIT\'fundamental-mode-hook`END' +
           '`PLN <br>' +
      '&nbsp; `END`LIT\'`END`OPN(`END`KWDlambda`END`PLN `END`OPN(`END' +
           '`CLO)`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp;`END`OPN(`END`PLNturn-on-auto-fill`END' +
           '`CLO)`END`PLN<br>' +
      '&nbsp; &nbsp;`END`CLO)`END`PLN<br>' +
      '`END`CLO)`END'),
  issue45: (
      '`KWDthrow`END`PLN `END`KWDnew`END`PLN `END`TYPRuntimeException`END' +
           '`PUN(`END`STR"Element ["`END`PLN `END`PUN+`END`PLN element`END' +
           '`PUN.`END`PLNgetName`END`PUN()`END`PLN `END`PUN+`END`PLN <br>' +
      '&nbsp; `END`STR"] missing attribute."`END`PUN);`END`PLN<br>' +
      'variable`END`PUN++;`END'),
  proto: (
      '`KWDmessage`END`PLN `END`TYPSearchRequest`END`PLN `END`PUN{`END' +
           '`PLN<br>' +
      '&nbsp; `END`KWDrequired`END`PLN `END`KWDstring`END`PLN query `END' +
           '`PUN=`END`PLN `END`LIT1`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDoptional`END`PLN `END`KWDint32`END`PLN page_number `END' +
           '`PUN=`END`PLN `END`LIT2`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`KWDoptional`END`PLN `END`KWDint32`END' +
           '`PLN result_per_page `END`PUN=`END`PLN `END`LIT3`END`PLN `END' +
           '`PUN[`END`KWDdefault`END`PLN `END`PUN=`END`PLN `END`LIT10`END' +
           '`PUN];`END`PLN<br>' +
      '&nbsp; `END`KWDenum`END`PLN `END`TYPCorpus`END`PLN `END`PUN{`END' +
           '`PLN<br>' +
      '&nbsp; &nbsp; UNIVERSAL `END`PUN=`END`PLN `END`LIT0`END`PUN;`END' +
           '`PLN<br>' +
      '&nbsp; &nbsp; WEB `END`PUN=`END`PLN `END`LIT1`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; IMAGES `END`PUN=`END`PLN `END`LIT2`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; LOCAL `END`PUN=`END`PLN `END`LIT3`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; NEWS `END`PUN=`END`PLN `END`LIT4`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; PRODUCTS `END`PUN=`END`PLN `END`LIT5`END`PUN;`END' +
           '`PLN<br>' +
      '&nbsp; &nbsp; VIDEO `END`PUN=`END`PLN `END`LIT6`END`PUN;`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '&nbsp; `END`KWDoptional`END`PLN `END`TYPCorpus`END`PLN corpus `END' +
           '`PUN=`END`PLN `END`LIT4`END`PLN `END`PUN[`END`KWDdefault`END' +
           '`PLN `END`PUN=`END`PLN UNIVERSAL`END`PUN];`END`PLN<br>' +
      '`END`PUN}`END'),
  wiki: (
      '`KWD#summary`END`PLN hello world<br>' +
      '`END`KWD#labels`END`PLN `END`LITHelloWorld`END`PLN `END' +
           '`LITWikiWord`END`PLN Hiya<br>' +
      '<br>' +
      '`END`PUN[`END' +
           '`STRhttp://www.google.com/?q=WikiSyntax+site:code.google.com`END' +
           '`PLN `END`LITWikiSyntax`END`PUN]`END`PLN<br>' +
      '<br>' +
      'Lorem Ipsum ``END`KWDwhile`END`PLN `END`PUN(`END`LIT1`END' +
           '`PUN)`END`PLN `END`KWDprint`END`PUN(`END`STR"blah blah"`END' +
           '`PUN);`END`PLN`<br>' +
      '<br>' +
      '&nbsp; &nbsp;`END`PUN*`END`PLN Bullet<br>' +
      '&nbsp; &nbsp;`END`PUN*`END`PLN Points<br>' +
      '&nbsp; &nbsp; &nbsp; `END`PUN*`END`PLN `END`LITNestedBullet`END' +
           '`PLN<br>' +
      '<br>' +
      '`END`PUN==`END`LITDroningOnAndOn`END`PUN==`END`PLN<br>' +
      '{{{<br>' +
      '&nbsp; `END`COM// Some EmbeddedSourceCode`END`PLN<br>' +
      '&nbsp; `END`KWDvoid`END`PLN main`END`PUN()`END`PLN `END`PUN{`END' +
           '`PLN<br>' +
      '&nbsp; &nbsp; `END`TYPPrint`END`PUN(`END`STR\'hello world\'`END' +
           '`PUN);`END`PLN<br>' +
      '&nbsp; `END`PUN}`END`PLN<br>' +
      '}}}<br>' +
      '<br>' +
      '{{{<br>' +
      '&nbsp; `END`COM&lt;!-- Embedded XML --&gt;`END`PLN<br>' +
      '&nbsp; `END`TAG&lt;foo`END`PLN `END`ATNbar`END`PUN=`END' +
           '`ATV"baz"`END`TAG&gt;&lt;boo`END`PLN `END' +
           '`TAG/&gt;&lt;foo&gt;`END`PLN<br>' +
      '}}}`END'
      ),
  css: (
      '`COM&lt;!--`END`PLN<br>' +
      '`END`KWD@charset`END`PUN(`END`STR\'UTF-8\'`END`PUN);`END`PLN<br>' +
      '<br>' +
      '`END`COM/** A url that is not quoted. */`END`PLN<br>' +
      '`END`KWD@import`END`PUN(`END`KWDurl`END`PUN(`END`STR/more-styles.css`END' +
          '`PUN));`END`PLN<br>' +
      '<br>' +
      'HTML `END`PUN{`END`PLN `END`KWDcontent-before`END`PUN:`END`PLN `END' +
          '`STR\'hello\\20\'`END`PUN;`END`PLN `END`KWDcontent-after`END' +
          '`PUN:`END`PLN `END`STR\'w\\6f rld\'`END`PUN;`END`PLN<br>' +
      '&nbsp; &nbsp; &nbsp; &nbsp;`END`KWD-moz-spiff`END`PUN:`END`PLN `END' +
          '`KWDinherit`END`PLN `END`KWD!important`END`PLN `END`PUN}`END' +
          '`PLN<br>' +
      '<br>' +
      '`END`COM/* Test units on numbers. */`END`PLN<br>' +
      'BODY `END`PUN{`END`PLN `END`KWDmargin-bottom`END`PUN:`END`PLN `END' +
          '`LIT4px`END`PUN;`END`PLN `END`KWDmargin-left`END`PUN:`END' +
          '`PLN `END`LIT3in`END`PUN;`END`PLN `END`KWDmargin-bottom`END' +
          '`PUN:`END`PLN `END`LIT0`END`PUN;`END`PLN `END`KWDmargin-top`END' +
          '`PUN:`END`PLN `END`LIT5%`END`PLN `END`PUN}`END`PLN<br>' +
      '<br>' +
      '`END`COM/** Test number literals and quoted values. */`END`PLN<br>' +
      'TABLE`END`PUN.`END`PLNfoo TR`END`PUN.`END`PLNbar A`END`PUN#`END' +
          '`PLNvisited `END`PUN{`END`PLN `END`KWDcolor`END`PUN:`END`PLN `END' +
          '`LIT#001123`END`PUN;`END`PLN `END`KWDfont-family`END`PUN:`END' +
          '`PLN `END`STR"monospace"`END`PLN `END`PUN}`END`PLN<br>' +
      '`END`COM/** bolder is not a name, so should be plain. ' +
          '&nbsp;!IMPORTANT is a keyword<br>' +
      '&nbsp; * regardless of case.<br>' +
      '&nbsp; */`END`PLN<br>' +
      'blink `END`PUN{`END`PLN `END`KWDtext-decoration`END`PUN:`END' +
          '`PLN BLINK `END`KWD!IMPORTANT`END`PUN;`END`PLN `END' +
          '`KWDfont-weight`END`PUN:`END`PLN bolder `END`PUN}`END`PLN<br>' +
      '`END`COM--&gt;`END'
      )
};