/* A map of tests which we know Parsoid currently fails.
 *
 * New patches which fix previously-broken tests should also patch this
 * file to document which tests are now expected to succeed.
 *
 * This helps clean up 'npm test' output, documents known bugs, and helps
 * Jenkins make sense of the parserTest output.
 *
 * NOTE that the selser blacklist depends on tests/selser.changes.json
 * If the selser change list is modified, this blacklist should be refreshed.
 *
 * This blacklist can be automagically updated by running
 *    parserTests.js --rewrite-blacklist
 * You might want to do this after you fix some bug that makes more tests
 * pass.  It is still your responsibility to carefully review the blacklist
 * diff to ensure there are no unexpected new failures (lines added).
 */

/*
 * This should map test titles to an array of test types (wt2html, wt2wt,
 * html2html, html2wt, selser) which are known to fail.
 * For easier maintenance, we group each test type together, and use a
 * helper function to create the array if needed then append the test type.
 */
'use strict';

var testBlackList = {};
var add = function(testtype, title, raw) {
	if (typeof (testBlackList[title]) !== 'object') {
		testBlackList[title] = {
			modes: [],
			raw: raw,
		};
	}
	testBlackList[title].modes.push(testtype);
};

// ### DO NOT REMOVE THIS LINE ### (start of automatically-generated section)

// Blacklist for wt2html
add("wt2html", "Extra newlines between heading and content are swallowed", "<h1 data-parsoid='{\"dsr\":[0,3,1,1]}'>b</h1>\n\n<p data-parsoid='{\"dsr\":[5,5,0,0]}'><br data-parsoid='{\"dsr\":[5,5,0,0]}'/></p>\n\n<p data-parsoid='{\"dsr\":[7,12,0,0]}'><a rel=\"mw:WikiLink\" href=\"./A\" title=\"A\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./A\"},\"sa\":{\"href\":\"a\"},\"dsr\":[7,12,2,2]}'>a</a></p>");
add("wt2html", "Non-word characters don't terminate tag names (bug 17663, 40670, 52022)", "&lt;blockquote|>a\n\n<p data-parsoid='{\"dsr\":[29,57,0,0]}'>&lt;b→> doesn't terminate &lt;/b→></p>\n\n<p data-parsoid='{\"dsr\":[59,87,0,0]}'>&lt;bä> doesn't terminate &lt;/bä></p>\n\n<p data-parsoid='{\"dsr\":[89,119,0,0]}'>&lt;boo> doesn't terminate &lt;/boo></p>\n\n<p data-parsoid='{\"dsr\":[121,155,0,0]}'>&lt;s.foo> doesn't terminate &lt;/s.foo></p>\n\n<p data-parsoid='{\"dsr\":[157,167,0,0]}'>&lt;sub-ID#1></p>");
add("wt2html", "Non-word characters don't terminate tag names + tidy", "&lt;blockquote|>a\n\n<p data-parsoid='{\"dsr\":[29,57,0,0]}'>&lt;b→> doesn't terminate &lt;/b→></p>\n\n<p data-parsoid='{\"dsr\":[59,87,0,0]}'>&lt;bä> doesn't terminate &lt;/bä></p>\n\n<p data-parsoid='{\"dsr\":[89,119,0,0]}'>&lt;boo> doesn't terminate &lt;/boo></p>\n\n<p data-parsoid='{\"dsr\":[121,155,0,0]}'>&lt;s.foo> doesn't terminate &lt;/s.foo></p>\n\n<p data-parsoid='{\"dsr\":[157,167,0,0]}'>&lt;sub-ID#1></p>");
add("wt2html", "Comment on its own line post-expand", "<p data-parsoid='{\"dsr\":[0,20,0,0]}'>a\n<span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[2,11,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"blank\",\"href\":\"./Template:Blank\"},\"params\":{},\"i\":0}}]}'></span><!---->\nb</p>");
add("wt2html", "Comment on its own line post-expand with non-significant whitespace", "<p data-parsoid='{\"dsr\":[0,23,0,0]}'>a\n <span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[3,12,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"blank\",\"href\":\"./Template:Blank\"},\"params\":{},\"i\":0}}]}'></span> <!----> \nb</p>");
add("wt2html", "Block tag on one line (<blockquote>)", "<p data-parsoid='{\"dsr\":[0,2,0,0]}'>a </p><blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[2,30,12,13]}'>foo</blockquote>\n\n<p data-parsoid='{\"dsr\":[32,33,0,0]}'>b</p>");
add("wt2html", "Block tag on both lines (<blockquote>)", "<p data-parsoid='{\"dsr\":[0,2,0,0]}'>a </p><blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[2,30,12,13]}'>foo</blockquote>\n\n<p data-parsoid='{\"dsr\":[32,34,0,0]}'>b </p><blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[34,62,12,13]}'>foo</blockquote>");
add("wt2html", "<pre> with <nowiki> inside (compatibility with 1.6 and earlier)", "<pre data-parsoid='{\"stx\":\"html\",\"dsr\":[0,45,5,6]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[5,39,8,9]}'>\n&lt;b>\n&lt;cite>\n&lt;em>\n</span></pre>");
add("wt2html", "Bug 52763: Preformatted in <blockquote>", "<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[0,74,12,13]}'>\n<p data-parsoid='{\"dsr\":[13,18,0,0]}'> Blah</p>\n<table data-parsoid='{\"dsr\":[19,60,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[22,58,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[22,57,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[22,57,1,0]}'>\n<pre data-parsoid='{\"dsr\":[24,57,1,0]}'>indented cell (no pre-wrapping!)</pre></td></tr>\n</tbody></table>\n</blockquote>");
add("wt2html", "Bug 15491: <ins>/<del> in blockquote (2)", "<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[0,64,12,13]}'>Foo <del data-parsoid='{\"stx\":\"html\",\"dsr\":[16,30,5,6]}'>bar</del> <ins data-parsoid='{\"stx\":\"html\",\"dsr\":[31,45,5,6]}'>baz</ins> quux\n</blockquote>");
add("wt2html", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content", "<pre about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,11,1,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\" \"}},\"i\":0}},\"a\"]}'>a</pre>\n\n<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[13,25,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n \"}},\"i\":0}},\"a\"]}'>\n</span><pre about=\"#mwt2\">a</pre>\n\n<span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[27,39,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n b\"}},\"i\":0}}]}'>\n</span><pre about=\"#mwt3\">b</pre>\n\n<p about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[41,54,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\\n \"}},\"i\":0}},\"b\"]}'>a</p><span about=\"#mwt4\">\n</span><pre about=\"#mwt4\">b</pre>\n\n<p about=\"#mwt5\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[56,67,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\\n\"}},\"i\":0}}]}'>a</p><span about=\"#mwt5\">\n</span><pre data-parsoid='{\"dsr\":[67,69,1,0]}'>b</pre>");
add("wt2html", "Templates: Don't strip whitespace from positional-param values", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,11,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a \"}},\"i\":0}}]}'>a </p>\n\n<p about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[13,33,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"{{echo|b}} \"}},\"i\":0}}]}'>b </p>\n\n<pre about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[35,48,null,null],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\" c \\n\"}},\"i\":0}}]}'>c </pre><span about=\"#mwt4\">\n</span>\n\n<pre about=\"#mwt5\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[50,71,null,null],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\" {{echo|d}}\\n\"}},\"i\":0}}]}'>d</pre><span about=\"#mwt5\">\n</span>\n\n<span about=\"#mwt7\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[73,85,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n e\"}},\"i\":0}}]}'>\n</span><pre about=\"#mwt7\">e</pre>\n\n<span about=\"#mwt8\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[87,100,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n* f\"}},\"i\":0}}]}'>\n</span><ul about=\"#mwt8\"><li> f</li></ul>\n\n<span about=\"#mwt9\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[102,114,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n \"}},\"i\":0}},\"g\"]}'>\n</span><pre about=\"#mwt9\">g</pre>");
add("wt2html", "Templates: Other wikitext in parameter names (bug 67657)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,18,0,0],\"pi\":[[{\"k\":\"&#39;&#39;1&#39;&#39;\",\"named\":true}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"&#39;&#39;1&#39;&#39;\":{\"wt\":\"foo\"}},\"i\":0}}]}'>foo</p>");
add("wt2html", "4. Indent-Pre and extension tags", "<pre data-parsoid='{\"dsr\":[0,39,1,0]}'>a <span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery>\\nFile:foobar.jpg\\n&lt;/gallery>\",\"tagWidths\":[9,10],\"autoInsertedEnd\":true,\"dsr\":[3,39,9,0]}'>&lt;gallery>\nFile:foobar.jpg\n&lt;/gallery></span></pre>");
add("wt2html", "6. Pre-blocks should extend across lines with leading WS even when there is no wrappable content", "<pre data-parsoid='{\"dsr\":[0,26,1,0]}'>a\n\n <!-- continue -->\nb</pre>\n\n<pre data-parsoid='{\"dsr\":[28,30,1,0]}'>c</pre>\n \n<p data-parsoid='{\"dsr\":[33,34,0,0]}'>d</p>");
add("wt2html", "Definition Lists: colons and tables 1", "<dl data-parsoid='{\"dsr\":[0,21,0,0]}'><dd data-parsoid='{\"dsr\":[0,10,1,0]}'><table data-parsoid='{\"dsr\":[1,10,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[4,8,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[4,7,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[4,7,1,0]}'> x</td></tr>\n</tbody></table></dd>\n<dd data-parsoid='{\"dsr\":[11,21,1,0]}'><table data-parsoid='{\"dsr\":[12,21,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[15,19,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[15,18,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[15,18,1,0]}'> y</td></tr>\n</tbody></table></dd></dl>");
add("wt2html", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid", "<p data-parsoid='{\"dsr\":[0,204,0,0]}'><i data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[0,29,2,0]}'><a rel=\"mw:ExtLink\" href=\"http://example.com\" data-parsoid='{\"targetOff\":22,\"contentOffsets\":[22,28],\"dsr\":[2,29,20,1]}'>text<i data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[26,28,2,0]}'></i></a></i>\n<a rel=\"mw:ExtLink\" href=\"http://example.com\" data-parsoid='{\"targetOff\":50,\"contentOffsets\":[50,57],\"dsr\":[30,58,20,1]}'><b data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[50,57,3,0]}'>text</b></a><b data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[58,61,3,0]}'></b>\n<i data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[62,106,2,0]}'>Something <a rel=\"mw:ExtLink\" href=\"http://example.com\" data-parsoid='{\"targetOff\":94,\"contentOffsets\":[94,105],\"dsr\":[74,106,20,1]}'>in italic<i data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[103,105,2,0]}'></i></a></i>\n<i data-parsoid='{\"dsr\":[107,164,2,2]}'>Something <a rel=\"mw:ExtLink\" href=\"http://example.com\" data-parsoid='{\"targetOff\":139,\"contentOffsets\":[139,160],\"dsr\":[119,161,20,1]}'>mixed<b data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[144,160,3,0]}'><i data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[147,160,2,0]}'>, even bold</i></b></a>'</i>\n<b data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[165,204,3,0]}'><i data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[168,204,2,0]}'>Now <a rel=\"mw:ExtLink\" href=\"http://example.com\" data-parsoid='{\"targetOff\":194,\"contentOffsets\":[194,203],\"dsr\":[174,204,20,1]}'>both<b data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[198,203,3,0]}'><i data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[201,203,2,0]}'></i></b></a></i></b></p>");
add("wt2html", "External link containing double-single-quotes in text embedded in italics (bug 4598 sanity check)", "<p data-parsoid='{\"dsr\":[0,60,0,0]}'><i data-parsoid='{\"dsr\":[0,60,2,2]}'>Some <a rel=\"mw:ExtLink\" href=\"http://example.com/\" data-parsoid='{\"targetOff\":28,\"contentOffsets\":[28,56],\"dsr\":[7,57,21,1]}'>pretty <i data-parsoid='{\"dsr\":[35,46,2,2]}'>italics</i> and stuff</a>!</i></p>");
add("wt2html", "! and || in element attributes should not be parsed as <th>/<td>", "<table data-parsoid='{\"dsr\":[0,86,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[3,84,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,83,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,71,1,0]}'> &lt;div style=\"color: red !important;\" data-contrived=\"put this here </td><td data-parsoid='{\"stx_v\":\"row\",\"autoInsertedEnd\":true,\"dsr\":[71,83,2,0]}'>\">hi</td></tr>\n</tbody></table>");
add("wt2html", "Self-link to numeric title", "<p data-parsoid='{\"dsr\":[0,5,0,0]}'><a rel=\"mw:WikiLink\" href=\"./0\" title=\"0\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./0\"},\"sa\":{\"href\":\"0\"},\"dsr\":[0,5,2,2]}'>0</a></p>");
add("wt2html", "<nowiki> inside a link", "<p data-parsoid='{\"dsr\":[0,96,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main&lt;nowiki> Page&lt;/nowiki>\"},\"dsr\":[0,30,2,2]}'>Main Page</a> <a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main Page\"},\"dsr\":[31,96,12,2]}'>the main page <span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[57,94,8,9]}'>[it's not very good]</span></a></p>");
add("wt2html", "Interlanguage link with spacing", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'>Blah blah blah</p>\n<link rel=\"mw:PageProp/Language\" href=\"http://zh.wikipedia.org/wiki/    Chinese     \" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"http://zh.wikipedia.org/wiki/    Chinese     \"},\"sa\":{\"href\":\"   zh  :    Chinese     \"},\"dsr\":[15,43,null,null]}'/>");
add("wt2html", "Space and question mark encoding in interlanguage links (T95473)", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'>Blah blah blah</p>\n<link rel=\"mw:PageProp/Language\" href=\"http://es.wikipedia.org/wiki/Foo bar?\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"http://es.wikipedia.org/wiki/Foo bar?\"},\"sa\":{\"href\":\"es:Foo bar?\"},\"dsr\":[15,30,null,null]}'/>");
add("wt2html", "2. Lists with start-of-line-transparent tokens before bullets: Template close", "<ul about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,18,0,0],\"firstWikitextNode\":\"UL\",\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[\"*foo \",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"bar\\n\"}},\"i\":0}}]}'><li>foo bar</li></ul><span about=\"#mwt1\">\n</span><p data-parsoid='{\"dsr\":[18,22,0,0]}'>*baz</p>");
add("wt2html", "Multiple list tags generated by templates", "<li about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[0,44,null,null],\"pi\":[[{\"k\":\"1\"}],[{\"k\":\"1\"}],[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&lt;li>\"}},\"i\":0}},\"a\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&lt;li>\"}},\"i\":1}},\"b\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&lt;li>\"}},\"i\":2}},\"c\"]}'>a\n</li><li about=\"#mwt1\">b\n</li><li about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[null,44,null,0]}'>c</li>");
add("wt2html", "Test the li-hack\n(The PHP parser relies on Tidy for the hack)", "<ul data-parsoid='{\"dsr\":[0,114,0,0]}'><li data-parsoid='{\"dsr\":[0,5,1,0]}'> foo</li>\n<li data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[6,19,6,0],\"liHackSrc\":\"* \"}'>li-hack</li>\n<li about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[20,52,2,null],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[\"* \",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&lt;li>templated li-hack\"}},\"i\":0}}]}'>templated li-hack</li>\n<li data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[53,66,1,0]}'> <!--foo--> </li><li data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[66,114,4,0]}'> unsupported li-hack with preceding comments</li></ul>\n\n<ul data-parsoid='{\"stx\":\"html\",\"dsr\":[116,154,4,5]}'>\n<li data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[121,125,4,0]}'></li><li data-parsoid='{\"stx\":\"html\",\"dsr\":[125,148,4,5]}'>not a li-hack\n</li>\n</ul>");
add("wt2html", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up)", "<p data-parsoid='{\"dsr\":[0,6,0,0]}'><span data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[0,6,6,0]}'></span></p>\n<ul data-parsoid='{\"dsr\":[7,32,0,0]}'><li data-parsoid='{\"dsr\":[7,22,1,0]}'>a<span data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[16,22,6,0]}'></span></li>\n<li data-parsoid='{\"dsr\":[23,32,1,0]}'>b</li></ul>");
add("wt2html", "Magic Word: {{CURRENTMONTH1}}", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,17,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"CURRENTMONTH1\",\"href\":\"./Template:CURRENTMONTH1\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:CURRENTMONTH1</span></p>");
add("wt2html", "Magic Words LOCAL (UTC)", "<ul data-parsoid='{\"dsr\":[0,252,0,0]}'><li data-parsoid='{\"dsr\":[0,16,1,0]}'> <span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[2,16,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALMONTH\",\"function\":\"localmonth\"},\"params\":{},\"i\":0}}]}'>01</span></li>\n<li data-parsoid='{\"dsr\":[17,34,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt2\" data-parsoid='{\"dsr\":[19,34,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALMONTH1\",\"href\":\"./Template:LOCALMONTH1\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:LOCALMONTH1</span></li>\n<li data-parsoid='{\"dsr\":[35,55,1,0]}'> <span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[37,55,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALMONTHNAME\",\"function\":\"localmonthname\"},\"params\":{},\"i\":0}}]}'>January</span></li>\n<li data-parsoid='{\"dsr\":[56,79,1,0]}'> <span about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[58,79,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALMONTHNAMEGEN\",\"function\":\"localmonthnamegen\"},\"params\":{},\"i\":0}}]}'>January</span></li>\n<li data-parsoid='{\"dsr\":[80,102,1,0]}'> <span about=\"#mwt5\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[82,102,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALMONTHABBREV\",\"function\":\"localmonthabbrev\"},\"params\":{},\"i\":0}}]}'>Jan</span></li>\n<li data-parsoid='{\"dsr\":[103,117,1,0]}'> <span about=\"#mwt6\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[105,117,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALDAY\",\"function\":\"localday\"},\"params\":{},\"i\":0}}]}'>1</span></li>\n<li data-parsoid='{\"dsr\":[118,133,1,0]}'> <span about=\"#mwt7\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[120,133,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALDAY2\",\"function\":\"localday2\"},\"params\":{},\"i\":0}}]}'>01</span></li>\n<li data-parsoid='{\"dsr\":[134,152,1,0]}'> <span about=\"#mwt8\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[136,152,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALDAYNAME\",\"function\":\"localdayname\"},\"params\":{},\"i\":0}}]}'>Thursday</span></li>\n<li data-parsoid='{\"dsr\":[153,168,1,0]}'> <span about=\"#mwt9\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[155,168,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALYEAR\",\"function\":\"localyear\"},\"params\":{},\"i\":0}}]}'>1970</span></li>\n<li data-parsoid='{\"dsr\":[169,184,1,0]}'> <span about=\"#mwt10\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[171,184,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALTIME\",\"function\":\"localtime\"},\"params\":{},\"i\":0}}]}'>00:02</span></li>\n<li data-parsoid='{\"dsr\":[185,200,1,0]}'> <span about=\"#mwt11\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[187,200,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALHOUR\",\"function\":\"localhour\"},\"params\":{},\"i\":0}}]}'>00</span></li>\n<li data-parsoid='{\"dsr\":[201,216,1,0]}'> <span about=\"#mwt12\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[203,216,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALWEEK\",\"function\":\"localweek\"},\"params\":{},\"i\":0}}]}'>1</span></li>\n<li data-parsoid='{\"dsr\":[217,231,1,0]}'> <span about=\"#mwt13\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[219,231,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALDOW\",\"function\":\"localdow\"},\"params\":{},\"i\":0}}]}'>4</span></li>\n<li data-parsoid='{\"dsr\":[232,252,1,0]}'> <span about=\"#mwt14\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[234,252,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"LOCALTIMESTAMP\",\"function\":\"localtimestamp\"},\"params\":{},\"i\":0}}]}'>19700101000203</span></li></ul>");
add("wt2html", "Magic Word: {{FULLPAGENAMEE}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,17,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"FULLPAGENAMEE\",\"function\":\"fullpagenamee\"},\"params\":{},\"i\":0}}]}'>User:Ævar Arnfjörð Bjarmason</p>");
add("wt2html", "Magic Word: {{TALKSPACE}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"TALKSPACE\",\"function\":\"talkspace\"},\"params\":{},\"i\":0}}]}'>Talk</p>");
add("wt2html", "Magic Word: {{TALKSPACE}}, same namespace", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"TALKSPACE\",\"function\":\"talkspace\"},\"params\":{},\"i\":0}}]}'>Talk</p>");
add("wt2html", "Magic Word: {{TALKSPACEE}}", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,14,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"TALKSPACEE\",\"href\":\"./Template:TALKSPACEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:TALKSPACEE</span></p>");
add("wt2html", "Magic Word: {{SUBJECTSPACE}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,16,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTSPACE\",\"function\":\"subjectspace\"},\"params\":{},\"i\":0}}]}'>Main</p>");
add("wt2html", "Magic Word: {{SUBJECTSPACE}}, same namespace", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,16,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTSPACE\",\"function\":\"subjectspace\"},\"params\":{},\"i\":0}}]}'>Main</p>");
add("wt2html", "Magic Word: {{SUBJECTSPACE}}, main namespace", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,16,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTSPACE\",\"function\":\"subjectspace\"},\"params\":{},\"i\":0}}]}'>Main</p>");
add("wt2html", "Magic Word: {{SUBJECTSPACEE}}", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,17,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTSPACEE\",\"href\":\"./Template:SUBJECTSPACEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBJECTSPACEE</span></p>");
add("wt2html", "Magic Word: {{NAMESPACE}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"NAMESPACE\",\"function\":\"namespace\"},\"params\":{},\"i\":0}}]}'>Main</p>");
add("wt2html", "Magic Word: {{NAMESPACEE}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,14,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"NAMESPACEE\",\"function\":\"namespacee\"},\"params\":{},\"i\":0}}]}'>Main</p>");
add("wt2html", "Magic Word: {{NAMESPACENUMBER}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,19,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"NAMESPACENUMBER\",\"function\":\"namespacenumber\"},\"params\":{},\"i\":0}}]}'>0</p>");
add("wt2html", "Magic Word: {{SUBPAGENAME}}", "<p data-parsoid='{\"dsr\":[0,15,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,15,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBPAGENAME\",\"href\":\"./Template:SUBPAGENAME\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBPAGENAME</span></p>");
add("wt2html", "Magic Word: {{SUBPAGENAMEE}}", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,16,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBPAGENAMEE\",\"href\":\"./Template:SUBPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBPAGENAMEE</span></p>");
add("wt2html", "Magic Word: {{ROOTPAGENAME}}", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,16,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ROOTPAGENAME\",\"href\":\"./Template:ROOTPAGENAME\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:ROOTPAGENAME</span></p>");
add("wt2html", "Magic Word: {{ROOTPAGENAMEE}}", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,17,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ROOTPAGENAMEE\",\"href\":\"./Template:ROOTPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:ROOTPAGENAMEE</span></p>");
add("wt2html", "Magic Word: {{BASEPAGENAME}}", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,16,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"BASEPAGENAME\",\"href\":\"./Template:BASEPAGENAME\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:BASEPAGENAME</span></p>");
add("wt2html", "Magic Word: {{BASEPAGENAMEE}}", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,17,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"BASEPAGENAMEE\",\"href\":\"./Template:BASEPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:BASEPAGENAMEE</span></p>");
add("wt2html", "Magic Word: {{TALKPAGENAME}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,16,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"TALKPAGENAME\",\"function\":\"talkpagename\"},\"params\":{},\"i\":0}}]}'>User:Ævar Arnfjörð Bjarmason</p>");
add("wt2html", "Magic Word: {{TALKPAGENAMEE}}", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,17,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"TALKPAGENAMEE\",\"href\":\"./Template:TALKPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:TALKPAGENAMEE</span></p>");
add("wt2html", "Magic Word: {{SUBJECTPAGENAME}}", "<p data-parsoid='{\"dsr\":[0,19,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,19,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTPAGENAME\",\"href\":\"./Template:SUBJECTPAGENAME\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBJECTPAGENAME</span></p>");
add("wt2html", "Magic Word: {{SUBJECTPAGENAMEE}}", "<p data-parsoid='{\"dsr\":[0,20,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,20,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTPAGENAMEE\",\"href\":\"./Template:SUBJECTPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBJECTPAGENAMEE</span></p>");
add("wt2html", "Magic Word: {{NUMBEROFFILES}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,17,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"NUMBEROFFILES\",\"function\":\"numberoffiles\"},\"params\":{},\"i\":0}}]}'>2</p>");
add("wt2html", "Magic Word: {{PAGENAME}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,12,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"PAGENAME\",\"function\":\"pagename\"},\"params\":{},\"i\":0}}]}'>User:Ævar Arnfjörð Bjarmason</p>");
add("wt2html", "Magic Word: {{PAGENAMEE}}", "<span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,13,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"PAGENAMEE\",\"function\":\"pagenamee\"},\"params\":{},\"i\":0}}]}'></span>");
add("wt2html", "Magic Word: {{PAGENAMEE}} with metacharacters (bug 26781)", "<span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,13,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"PAGENAMEE\",\"function\":\"pagenamee\"},\"params\":{},\"i\":0}}]}'></span>");
add("wt2html", "Magic Word: {{REVISIONID}}", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,14,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"REVISIONID\",\"href\":\"./Template:REVISIONID\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:REVISIONID</span></p>");
add("wt2html", "Magic Word: {{SCRIPTPATH}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,14,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SCRIPTPATH\",\"function\":\"scriptpath\"},\"params\":{},\"i\":0}}]}'>/</p>");
add("wt2html", "Magic Word: {{STYLEPATH}}", "<p data-parsoid='{\"dsr\":[0,13,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,13,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"STYLEPATH\",\"href\":\"./Template:STYLEPATH\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:STYLEPATH</span></p>");
add("wt2html", "Case-sensitive magic words, when cased differently, should just be template transclusions", "<p data-parsoid='{\"dsr\":[0,63,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,16,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"CurrentMonth\",\"href\":\"./Template:CurrentMonth\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:CurrentMonth</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt2\" data-parsoid='{\"dsr\":[17,31,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"currentday\",\"href\":\"./Template:Currentday\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:Currentday</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt3\" data-parsoid='{\"dsr\":[32,47,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"cURreNTweEK\",\"href\":\"./Template:CURreNTweEK\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:CURreNTweEK</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt4\" data-parsoid='{\"dsr\":[48,63,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"currentHour\",\"href\":\"./Template:CurrentHour\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:CurrentHour</span></p>");
add("wt2html", "Namespace 1 {{ns:1}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,8,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ns:1\",\"function\":\"ns\"},\"params\":{},\"i\":0}}]}'>1</p>");
add("wt2html", "Namespace 1 {{ns:01}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,9,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ns:01\",\"function\":\"ns\"},\"params\":{},\"i\":0}}]}'>01</p>");
add("wt2html", "Namespace 0 {{ns:0}} (bug 4783)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,8,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ns:0\",\"function\":\"ns\"},\"params\":{},\"i\":0}}]}'>0</p>");
add("wt2html", "Namespace 0 {{ns:00}} (bug 4783)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,9,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ns:00\",\"function\":\"ns\"},\"params\":{},\"i\":0}}]}'>00</p>");
add("wt2html", "Namespace -1 {{ns:-1}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,9,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ns:-1\",\"function\":\"ns\"},\"params\":{},\"i\":0}}]}'>-1</p>");
add("wt2html", "Namespace (lang=de) Benutzer Diskussion {{ns:3}}", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,8,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ns:3\",\"function\":\"ns\"},\"params\":{},\"i\":0}}]}'>3</p>");
add("wt2html", "Urlencode", "<p data-parsoid='{\"dsr\":[0,115,0,0]}'><span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[0,24,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"urlencode:hi world?!\",\"function\":\"urlencode\"},\"params\":{},\"i\":0}}]}'>hi%20world%3F!</span>\n<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[25,54,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"urlencode:hi world?!\",\"function\":\"urlencode\"},\"params\":{\"1\":{\"wt\":\"WIKI\"}},\"i\":0}}]}'>hi%20world%3F!</span>\n<span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[55,84,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"urlencode:hi world?!\",\"function\":\"urlencode\"},\"params\":{\"1\":{\"wt\":\"PATH\"}},\"i\":0}}]}'>hi%20world%3F!</span>\n<span about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[85,115,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"urlencode:hi world?!\",\"function\":\"urlencode\"},\"params\":{\"1\":{\"wt\":\"QUERY\"}},\"i\":0}}]}'>hi%20world%3F!</span></p>");
add("wt2html", "Nonexistent template", "<p data-parsoid='{\"dsr\":[0,28,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,28,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"thistemplatedoesnotexist\",\"href\":\"./Template:Thistemplatedoesnotexist\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:Thistemplatedoesnotexist</span></p>");
add("wt2html", "Template with invalid target containing tags", "<p data-parsoid='{\"dsr\":[0,54,0,0]}'>{{a<b data-parsoid='{\"stx\":\"html\",\"dsr\":[3,11,3,4]}'>b</b>|<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[12,24,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\"}},\"i\":0}}]}'>foo</span>|<span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[25,35,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\"}},\"i\":0}}]}'>a</span>=<span about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[36,46,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"b\"}},\"i\":0}}]}'>b</span>|a =b}}</p>");
add("wt2html", "Template with invalid target containing unclosed tag", "<p data-parsoid='{\"dsr\":[0,49,0,0]}'>{{a<b data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[3,49,3,0]}'>|<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[7,19,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\"}},\"i\":0}}]}'>foo</span>|<span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[20,30,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\"}},\"i\":0}}]}'>a</span>=<span about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[31,41,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"b\"}},\"i\":0}}]}'>b</span>|a =b}}</b></p>");
add("wt2html", "Template with invalid target containing wikilink", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'>{{<a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main Page\"},\"dsr\":[2,15,2,2]}'>Main Page</a>}}</p>");
add("wt2html", "Template with complex arguments", "<p data-parsoid='{\"dsr\":[0,106,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Template:Complextemplate\" title=\"Template:Complextemplate\" about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Template:Complextemplate\"},\"sa\":{\"href\":\"Template:complextemplate\"},\"dsr\":[0,106,null,null],\"pi\":[[{\"k\":\"param\",\"named\":true,\"spc\":[\"\\n  \",\" \",\"\",\"\"]},{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"complextemplate\",\"href\":\"./Template:Complextemplate\"},\"params\":{\"1\":{\"wt\":\"[[Template:complextemplate|link]]\"},\"param\":{\"wt\":\"{{ templateasargtest  |\\n templ = simple }}\"}},\"i\":0}}]}'>link</a><span about=\"#mwt1\"> This is a test template with parameter (test)</span></p>");
add("wt2html", "Template infinite loop", "<span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,9,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"loop1\",\"href\":\"./Template:Loop1\"},\"params\":{},\"i\":0}}]}'></span>");
add("wt2html", "Template with targets containing wikilinks", "<p data-parsoid='{\"dsr\":[0,11,0,0]}'>{{<a rel=\"mw:WikiLink\" href=\"./Foo\" title=\"Foo\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Foo\"},\"sa\":{\"href\":\"foo\"},\"dsr\":[2,9,2,2]}'>foo</a>}}</p>\n\n<p data-parsoid='{\"dsr\":[13,33,0,0]}'>{{<a typeof=\"mw:ExpandedAttrs\" about=\"#mwt4\" rel=\"mw:WikiLink\" href=\"./Foo\" title=\"Foo\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Foo\"},\"sa\":{\"href\":\"{{echo|foo}}\"},\"dsr\":[15,31,null,null]}' data-mw='{\"attribs\":[[{\"txt\":\"href\"},{\"html\":\"&lt;span about=\\\"#mwt3\\\" typeof=\\\"mw:Transclusion\\\" data-parsoid=&#39;{\\\"pi\\\":[[{\\\"k\\\":\\\"1\\\"}]],\\\"dsr\\\":[17,29,null,null]}&#39; data-mw=&#39;{\\\"parts\\\":[{\\\"template\\\":{\\\"target\\\":{\\\"wt\\\":\\\"echo\\\",\\\"href\\\":\\\"./Template:Echo\\\"},\\\"params\\\":{\\\"1\\\":{\\\"wt\\\":\\\"foo\\\"}},\\\"i\\\":0}}]}&#39;>foo&lt;/span>\"}]]}'>foo</a>}}</p>\n\n<p data-parsoid='{\"dsr\":[35,55,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt5\" data-parsoid='{\"dsr\":[35,55,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"{{echo|[[foo}}]]\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:[[foo]]</span></p>");
add("wt2html", "int keyword", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,45,0,0],\"pi\":[[{\"k\":\"1\"},{\"k\":\"2\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"int:youhavenewmessages\",\"function\":\"int\"},\"params\":{\"1\":{\"wt\":\"lots of money\"},\"2\":{\"wt\":\"not!\"}},\"i\":0}}]}'>Parser function implementation for pf_int missing in Parsoid.</p>");
add("wt2html", "int keyword - non-existing message", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,11,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"int:var\",\"function\":\"int\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_int missing in Parsoid.</p>");
add("wt2html", "Self-closed noinclude, includeonly, onlyinclude tags", "<meta typeof=\"mw:Includes/NoInclude\" data-parsoid='{\"src\":\"&lt;noinclude />\",\"dsr\":[0,13,null,null]}'/>\n<meta typeof=\"mw:Includes/IncludeOnly\" data-parsoid='{\"src\":\"&lt;includeonly />\",\"dsr\":[14,29,null,null]}'/>\n<meta typeof=\"mw:Includes/OnlyInclude\" data-parsoid='{\"src\":\"&lt;onlyinclude />\",\"dsr\":[30,45,null,null]}'/>");
add("wt2html", "Bug 6563: Section extraction for section shown by <includeonly>", "<meta typeof=\"mw:Includes/IncludeOnly\" data-parsoid='{\"src\":\"&lt;includeonly>\\n==Includeonly section==\\n&lt;/includeonly>\",\"dsr\":[0,52,null,null]}'/><meta typeof=\"mw:Includes/IncludeOnly/End\" data-parsoid='{\"src\":\"\",\"dsr\":[52,52,null,null]}'/>\n<h2 data-parsoid='{\"dsr\":[53,68,2,2]}'>Section T-2</h2>");
add("wt2html", "Bug 6563: Section extraction for section suppressed by <includeonly>", "<meta typeof=\"mw:Includes/IncludeOnly\" data-parsoid='{\"src\":\"&lt;includeonly>\\n==Includeonly section==\\n&lt;/includeonly>\",\"dsr\":[0,52,null,null]}'/><meta typeof=\"mw:Includes/IncludeOnly/End\" data-parsoid='{\"src\":\"\",\"dsr\":[52,52,null,null]}'/>\n<h2 data-parsoid='{\"dsr\":[53,66,2,2]}'>Section 1</h2>");
add("wt2html", "2. includeonly in html attr value", "<p data-parsoid='{\"dsr\":[0,155,0,0]}'><span id=\"v1\" about=\"#mwt1\" typeof=\"mw:ExpandedAttrs\" data-parsoid='{\"stx\":\"html\",\"a\":{\"id\":\"v1\"},\"sa\":{\"id\":\"&lt;noinclude>v1&lt;/noinclude>&lt;includeonly>v2&lt;/includeonly>\"},\"dsr\":[0,76,66,7]}' data-mw='{\"attribs\":[[{\"txt\":\"id\"},{\"html\":\"&lt;meta typeof=\\\"mw:Includes/NoInclude\\\" data-parsoid=&#39;{\\\"src\\\":\\\"&amp;lt;noinclude>\\\",\\\"dsr\\\":[10,21,null,null]}&#39;/>v1&lt;meta typeof=\\\"mw:Includes/NoInclude/End\\\" data-parsoid=&#39;{\\\"src\\\":\\\"&amp;lt;/noinclude>\\\",\\\"dsr\\\":[23,35,null,null]}&#39;/>&lt;meta typeof=\\\"mw:Includes/IncludeOnly\\\" data-parsoid=&#39;{\\\"src\\\":\\\"&amp;lt;includeonly>v2&amp;lt;/includeonly>\\\",\\\"dsr\\\":[35,64,null,null]}&#39;/>&lt;meta typeof=\\\"mw:Includes/IncludeOnly/End\\\" data-parsoid=&#39;{\\\"src\\\":\\\"\\\",\\\"dsr\\\":[64,64,null,null]}&#39;/>\"}]]}'>bar</span>\n<span id='\"v1\"' about=\"#mwt2\" typeof=\"mw:ExpandedAttrs\" data-parsoid='{\"stx\":\"html\",\"a\":{\"id\":\"\\\"v1\\\"\"},\"sa\":{\"id\":\"&lt;noinclude>\\\"v1\\\"&lt;/noinclude>&lt;includeonly>\\\"v2\\\"&lt;/includeonly>\"},\"dsr\":[77,155,68,7]}' data-mw='{\"attribs\":[[{\"txt\":\"id\"},{\"html\":\"&lt;meta typeof=\\\"mw:Includes/NoInclude\\\" data-parsoid=&#39;{\\\"src\\\":\\\"&amp;lt;noinclude>\\\",\\\"dsr\\\":[86,97,null,null]}&#39;/>\\\"v1\\\"&lt;meta typeof=\\\"mw:Includes/NoInclude/End\\\" data-parsoid=&#39;{\\\"src\\\":\\\"&amp;lt;/noinclude>\\\",\\\"dsr\\\":[101,113,null,null]}&#39;/>&lt;meta typeof=\\\"mw:Includes/IncludeOnly\\\" data-parsoid=&#39;{\\\"src\\\":\\\"&amp;lt;includeonly>\\\\\\\"v2\\\\\\\"&amp;lt;/includeonly>\\\",\\\"dsr\\\":[113,144,null,null]}&#39;/>&lt;meta typeof=\\\"mw:Includes/IncludeOnly/End\\\" data-parsoid=&#39;{\\\"src\\\":\\\"\\\",\\\"dsr\\\":[144,144,null,null]}&#39;/>\"}]]}'>bar</span></p>");
add("wt2html", "4. includeonly in table attributes", "<table data-parsoid='{\"dsr\":[0,77,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[3,75,0,0]}'><tr about=\"#mwt1\" typeof=\"mw:ExpandedAttrs\" data-parsoid='{\"startTagSrc\":\"|-\",\"a\":{\"&lt;noinclude>\\n|-\\n|a\\n&lt;/noinclude>\":null},\"sa\":{\"&lt;noinclude>\\n|-\\n|a\\n&lt;/noinclude>\":\"\"},\"autoInsertedEnd\":true,\"dsr\":[3,36,33,0]}' data-mw='{\"attribs\":[[{\"txt\":\"a\",\"html\":\"&lt;meta typeof=\\\"mw:Includes/NoInclude\\\" data-parsoid=&#39;{\\\"src\\\":\\\"&amp;lt;noinclude>\\\",\\\"dsr\\\":[6,17,null,null]}&#39;/>\\n|-\\n|a\\n&lt;meta typeof=\\\"mw:Includes/NoInclude/End\\\" data-parsoid=&#39;{\\\"src\\\":\\\"&amp;lt;/noinclude>\\\",\\\"dsr\\\":[24,36,null,null]}&#39;/>\"},{\"html\":\"\"}]]}'></tr>\n<tr about=\"#mwt2\" typeof=\"mw:ExpandedAttrs\" data-parsoid='{\"startTagSrc\":\"|-\",\"a\":{\"&lt;includeonly>\\n|-\\n|b\\n&lt;/includeonly>\":null},\"sa\":{\"&lt;includeonly>\\n|-\\n|b\\n&lt;/includeonly>\":\"\"},\"autoInsertedEnd\":true,\"dsr\":[37,74,37,0]}' data-mw='{\"attribs\":[[{\"txt\":\"\",\"html\":\"&lt;meta typeof=\\\"mw:Includes/IncludeOnly\\\" data-parsoid=&#39;{\\\"src\\\":\\\"&amp;lt;includeonly>\\\\n|-\\\\n|b\\\\n&amp;lt;/includeonly>\\\",\\\"dsr\\\":[40,74,null,null]}&#39;/>&lt;meta typeof=\\\"mw:Includes/IncludeOnly/End\\\" data-parsoid=&#39;{\\\"src\\\":\\\"\\\",\\\"dsr\\\":[74,74,null,null]}&#39;/>\"},{\"html\":\"\"}]]}'></tr>\n</tbody></table>");
add("wt2html", "Templates: 2. Inside a block tag", "<div data-parsoid='{\"stx\":\"html\",\"dsr\":[0,23,5,6]}'><span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[5,17,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"Foo\"}},\"i\":0}}]}'>Foo</span></div>\n<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[24,61,12,13]}'><span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[36,48,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"Foo\"}},\"i\":0}}]}'>Foo</span></blockquote>");
add("wt2html", "Templates: HTML Tag: 2. Generation of HTML attr. value", "<div style=\"'color:red;'\" about=\"#mwt2\" typeof=\"mw:ExpandedAttrs\" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\"&#39;color:red;&#39;\"},\"sa\":{\"style\":\"{{echo|&#39;color:red;&#39;}}\"},\"dsr\":[0,42,33,6]}' data-mw='{\"attribs\":[[{\"txt\":\"style\"},{\"html\":\"&lt;span about=\\\"#mwt1\\\" typeof=\\\"mw:Transclusion\\\" data-parsoid=&#39;{\\\"pi\\\":[[{\\\"k\\\":\\\"1\\\"}]],\\\"dsr\\\":[11,32,null,null]}&#39; data-mw=&#39;{\\\"parts\\\":[{\\\"template\\\":{\\\"target\\\":{\\\"wt\\\":\\\"echo\\\",\\\"href\\\":\\\"./Template:Echo\\\"},\\\"params\\\":{\\\"1\\\":{\\\"wt\\\":\\\"&amp;#39;color:red;&amp;#39;\\\"}},\\\"i\\\":0}}]}&#39;>&#39;color:red;&#39;&lt;/span>\"}]]}'>foo</div>");
add("wt2html", "Templates: HTML Tag: 3. Generation of HTML attr key and value", "<div style=\"'color:red;'\" about=\"#mwt3\" typeof=\"mw:ExpandedAttrs\" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\"&#39;color:red;&#39;\"},\"sa\":{\"style\":\"{{echo|&#39;color:red;&#39;}}\"},\"dsr\":[0,51,42,6]}' data-mw='{\"attribs\":[[{\"txt\":\"style\",\"html\":\"&lt;span about=\\\"#mwt2\\\" typeof=\\\"mw:Transclusion\\\" data-parsoid=&#39;{\\\"pi\\\":[[{\\\"k\\\":\\\"1\\\"}]],\\\"dsr\\\":[5,19,null,null]}&#39; data-mw=&#39;{\\\"parts\\\":[{\\\"template\\\":{\\\"target\\\":{\\\"wt\\\":\\\"echo\\\",\\\"href\\\":\\\"./Template:Echo\\\"},\\\"params\\\":{\\\"1\\\":{\\\"wt\\\":\\\"style\\\"}},\\\"i\\\":0}}]}&#39;>style&lt;/span>\"},{\"html\":\"&lt;span about=\\\"#mwt1\\\" typeof=\\\"mw:Transclusion\\\" data-parsoid=&#39;{\\\"pi\\\":[[{\\\"k\\\":\\\"1\\\"}]],\\\"dsr\\\":[20,41,null,null]}&#39; data-mw=&#39;{\\\"parts\\\":[{\\\"template\\\":{\\\"target\\\":{\\\"wt\\\":\\\"echo\\\",\\\"href\\\":\\\"./Template:Echo\\\"},\\\"params\\\":{\\\"1\\\":{\\\"wt\\\":\\\"&amp;#39;color:red;&amp;#39;\\\"}},\\\"i\\\":0}}]}&#39;>&#39;color:red;&#39;&lt;/span>\"}]]}'>foo</div>");
add("wt2html", "Templates: Wiki Tables: 1a. Fostering of entire template content", "<p about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,16,null,null],\"firstWikitextNode\":\"TABLE\",\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[\"{|\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\"}},\"i\":0}},\"\\n|}\"]}'>a</p><table about=\"#mwt2\">\n\n</table>");
add("wt2html", "Templates: Wiki Tables: 1b. Fostering of entire template content", "<div about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"stx\":\"html\",\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,40,null,null],\"firstWikitextNode\":\"TABLE\",\"pi\":[[{\"k\":\"1\"}],[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[\"{|\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&lt;div>\"}},\"i\":0}},\"\\nfoo\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&lt;/div>\"}},\"i\":1}},\"\\n|}\"]}'>\n<p>foo</p>\n</div><table about=\"#mwt3\">\n\n</table>");
add("wt2html", "Templates: Wiki Tables: 2. Fostering of partial template content", "<p about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,29,null,null],\"firstWikitextNode\":\"TABLE\",\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[\"{|\\n\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a\\n&lt;div>b&lt;/div>\"}},\"i\":0}},\"\\n|}\"]}'>a</p><div about=\"#mwt2\">b</div><table about=\"#mwt2\">\n\n\n</table>");
add("wt2html", "Templates: Wiki Tables: 4. Templated tags, no content", "<table about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,25,null,null],\"pi\":[[],[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"tbl-start\",\"href\":\"./Template:Tbl-start\"},\"params\":{},\"i\":0}},\"\\n\",{\"template\":{\"target\":{\"wt\":\"tbl-end\",\"href\":\"./Template:Tbl-end\"},\"params\":{},\"i\":1}}]}'>\n</table>");
add("wt2html", "Templates: Lists: Multi-line list-items via templates", "<ul data-parsoid='{\"dsr\":[0,71,0,0]}'><li data-parsoid='{\"dsr\":[0,35,1,0]}'><span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[1,35,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"a {{nonexistent|\\nunused}}\"}},\"i\":0}}]}'>a </span><span typeof=\"mw:Placeholder\" about=\"#mwt1\">Warning: Page/template fetching disabled, and no cache for Template:Nonexistent</span></li>\n<li data-parsoid='{\"dsr\":[36,71,1,0]}'><span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[37,71,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"b {{nonexistent|\\nunused}}\"}},\"i\":0}}]}'>b </span><span typeof=\"mw:Placeholder\" about=\"#mwt3\">Warning: Page/template fetching disabled, and no cache for Template:Nonexistent</span></li></ul>");
add("wt2html", "Templates: Ugly nesting: 1. Quotes opened/closed across templates (echo)", "<p data-parsoid='{\"dsr\":[0,40,0,0]}'><i about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,40,null,null],\"pi\":[[{\"k\":\"1\"}],[{\"k\":\"1\"}],[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&#39;&#39;a\"}},\"i\":0}},{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"b&#39;&#39;c&#39;&#39;d\"}},\"i\":1}},{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&#39;&#39;e\"}},\"i\":2}}]}'>ab</i><span about=\"#mwt1\">c</span><i about=\"#mwt1\">d</i><span about=\"#mwt1\">e</span></p>");
add("wt2html", "Templates: Ugly templates: 1. Navbox template parses badly leading to table misnesting\n(Parsoid-centric)", "<table about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,32,2,null],\"firstWikitextNode\":\"TABLE_html\",\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[\"{|\\n|\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo&lt;/table>\"}},\"i\":0}},\"\\n|bar\\n|}\"]}'>\n<tbody><tr><td>foo</td></tr></tbody></table><span about=\"#mwt1\">\n|bar</span><span about=\"#mwt1\">\n</span>");
add("wt2html", "Templates: Ugly templates: 4. newline-only template parameter inconsistency", "<span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[0,10,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"\\n\"}},\"i\":0}}]}'>\n</span>");
add("wt2html", "subst: does not work during normal parse", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SubstTest\",\"href\":\"./Template:SubstTest\"},\"params\":{},\"i\":0}}]}'>Foobar</p>");
add("wt2html", "message transform: magic variables", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,12,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SITENAME\",\"function\":\"sitename\"},\"params\":{},\"i\":0}}]}'>MediaWiki</p>");
add("wt2html", "message transform: should not transform wiki markup", "<p data-parsoid='{\"dsr\":[0,8,0,0]}'><i data-parsoid='{\"dsr\":[0,8,2,2]}'>test</i></p>");
add("wt2html", "message transform: <noinclude> in transcluded template (bug 4926)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,12,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Includes\",\"href\":\"./Template:Includes\"},\"params\":{},\"i\":0}}]}'>Foobar</p>");
add("wt2html", "message transform: <onlyinclude> in transcluded template (bug 4926)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Includes2\",\"href\":\"./Template:Includes2\"},\"params\":{},\"i\":0}}]}'>Foo<meta typeof=\"mw:Includes/OnlyInclude/End\"/></p>");
add("wt2html", "{{#special:}} page name, known", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,26,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#special:Recentchanges\",\"function\":\"#special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#special missing in Parsoid.</p>");
add("wt2html", "{{#special:}} page name with subpage, known", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,32,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#special:Recentchanges/param\",\"function\":\"#special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#special missing in Parsoid.</p>");
add("wt2html", "{{#special:}} page name, unknown", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,31,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#special:foobar nonexistent\",\"function\":\"#special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#special missing in Parsoid.</p>");
add("wt2html", "{{#speciale:}} page name, known", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,27,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#speciale:Recentchanges\",\"function\":\"#speciale\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#speciale missing in Parsoid.</p>");
add("wt2html", "{{#speciale:}} page name with subpage, known", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,33,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#speciale:Recentchanges/param\",\"function\":\"#speciale\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#speciale missing in Parsoid.</p>");
add("wt2html", "{{#speciale:}} page name, unknown", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,32,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#speciale:foobar nonexistent\",\"function\":\"#speciale\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#speciale missing in Parsoid.</p>");
add("wt2html", "Image with link parameter, wgNoFollowLinks set to false", "<p data-parsoid='{\"dsr\":[0,45,0,0]}'><span class=\"mw-default-size\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"link\",\"ak\":\"link=http://example.com/\"}],\"dsr\":[0,45,null,null]}'><a href=\"http://example.com/\" data-parsoid=\"{}\"><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></span></p>");
add("wt2html", "Image with link parameter, wgNoFollowDomainExceptions", "<p data-parsoid='{\"dsr\":[0,45,0,0]}'><span class=\"mw-default-size\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"link\",\"ak\":\"link=http://example.com/\"}],\"dsr\":[0,45,null,null]}'><a href=\"http://example.com/\" data-parsoid=\"{}\"><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></span></p>");
add("wt2html", "SVG thumbnails with invalid language code", "<figure class=\"mw-default-size\" typeof=\"mw:Image/Thumb\" data-parsoid='{\"optList\":[{\"ck\":\"thumbnail\",\"ak\":\"thumb\"},{\"ck\":\"caption\",\"ak\":\"caption\"},{\"ck\":\"lang\",\"ak\":\"lang=invalid.language.code\"}],\"dsr\":[0,60,2,2]}'><a href=\"./File:Foobar.svg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.svg\"},\"sa\":{},\"dsr\":[2,null,null,null]}'><img resource=\"./File:Foobar.svg\" src=\"//example.com/images/thumb/f/ff/Foobar.svg/220px-Foobar.svg\" lang=\"invalid.language.code\" data-file-width=\"240\" data-file-height=\"180\" data-file-type=\"drawing\" height=\"165\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.svg\",\"lang\":\"invalid.language.code\",\"height\":\"165\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Foobar.svg\",\"lang\":\"lang=invalid.language.code\"}}'/></a><figcaption data-parsoid='{\"dsr\":[null,58,null,null]}'>caption</figcaption></figure>");
add("wt2html", "BUG 561: {{/Subpage}}", "<p data-parsoid='{\"dsr\":[0,12,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,12,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"/Subpage\",\"href\":\"./Template:/Subpage\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:/Subpage</span></p>");
add("wt2html", "Simple category", "<link rel=\"mw:PageProp/Category\" href=\"./Category:MediaWiki_User's_Guide\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:MediaWiki_User&#39;s_Guide\"},\"sa\":{\"href\":\"Category:MediaWiki User&#39;s Guide\"},\"dsr\":[0,35,null,null]}'/>");
add("wt2html", "PAGESINCATEGORY invalid title fatal (r33546 fix)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,27,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"PAGESINCATEGORY:&lt;bogus>\",\"function\":\"pagesincategory\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_pagesincategory missing in Parsoid.</p>");
add("wt2html", "Category with different sort key", "<link rel=\"mw:PageProp/Category\" href=\"./Category:MediaWiki_User's_Guide#Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Category:MediaWiki_User&#39;s_Guide\"},\"sa\":{\"href\":\"Category:MediaWiki User&#39;s Guide\"},\"dsr\":[0,39,null,null]}'/>");
add("wt2html", "Category with identical sort key", "<link rel=\"mw:PageProp/Category\" href=\"./Category:MediaWiki_User's_Guide#MediaWiki%20User's%20Guide\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Category:MediaWiki_User&#39;s_Guide\"},\"sa\":{\"href\":\"Category:MediaWiki User&#39;s Guide\"},\"dsr\":[0,58,null,null]}'/>");
add("wt2html", "Short headings with trailing space should match behavior of Parser::doHeadings (bug 19910)", "<p data-parsoid='{\"dsr\":[0,100,0,0]}'>=== \nThe line above must have a trailing space!\n=== <!--\n--> <!-- -->\nBut just in case it doesn't...</p>");
add("wt2html", "Header with space, plus and underscore as entity", "<p data-parsoid='{\"dsr\":[0,34,0,0]}'>Id should not contain + for spaces</p>\n\n<h2 data-parsoid='{\"dsr\":[36,60,2,2]}'> Space between Text </h2>\n<p data-parsoid='{\"dsr\":[61,70,0,0]}'>section 1</p>\n\n<h2 data-parsoid='{\"dsr\":[72,111,2,2]}'> Space-Entity<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#32;\",\"srcContent\":\" \",\"dsr\":[87,92,null,null]}'> </span>between<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#32;\",\"srcContent\":\" \",\"dsr\":[99,104,null,null]}'> </span>Text </h2>\n<p data-parsoid='{\"dsr\":[112,121,0,0]}'>section 2</p>\n\n<h2 data-parsoid='{\"dsr\":[123,146,2,2]}'> Plus+between+Text </h2>\n<p data-parsoid='{\"dsr\":[147,156,0,0]}'>section 3</p>\n\n<h2 data-parsoid='{\"dsr\":[158,196,2,2]}'> Plus-Entity<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#43;\",\"srcContent\":\"+\",\"dsr\":[172,177,null,null]}'>+</span>between<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#43;\",\"srcContent\":\"+\",\"dsr\":[184,189,null,null]}'>+</span>Text </h2>\n<p data-parsoid='{\"dsr\":[197,206,0,0]}'>section 4</p>\n\n<h2 data-parsoid='{\"dsr\":[208,237,2,2]}'> Underscore_between_Text </h2>\n<p data-parsoid='{\"dsr\":[238,247,0,0]}'>section 5</p>\n\n<h2 data-parsoid='{\"dsr\":[249,293,2,2]}'> Underscore-Entity<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#95;\",\"srcContent\":\"_\",\"dsr\":[269,274,null,null]}'>_</span>between<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#95;\",\"srcContent\":\"_\",\"dsr\":[281,286,null,null]}'>_</span>Text </h2>\n<p data-parsoid='{\"dsr\":[294,303,0,0]}'>section 6</p>\n\n<p data-parsoid='{\"dsr\":[305,501,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Main%20Page#Space_between_Text\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main%20Page#Space_between_Text\"},\"sa\":{\"href\":\"#Space between Text\"},\"dsr\":[305,328,2,2]}'>#Space between Text</a>\n<a rel=\"mw:WikiLink\" href=\"./Main%20Page#Space-Entity_between_Text\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main%20Page#Space-Entity_between_Text\"},\"sa\":{\"href\":\"#Space-Entity&amp;#32;between&amp;#32;Text\"},\"dsr\":[329,367,2,2]}'>#Space-Entity between Text</a>\n<a rel=\"mw:WikiLink\" href=\"./Main%20Page#Plus+between+Text\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main%20Page#Plus+between+Text\"},\"sa\":{\"href\":\"#Plus+between+Text\"},\"dsr\":[368,390,2,2]}'>#Plus+between+Text</a>\n<a rel=\"mw:WikiLink\" href=\"./Main%20Page#Plus-Entity+between+Text\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main%20Page#Plus-Entity+between+Text\"},\"sa\":{\"href\":\"#Plus-Entity&amp;#43;between&amp;#43;Text\"},\"dsr\":[391,428,2,2]}'>#Plus-Entity+between+Text</a>\n<a rel=\"mw:WikiLink\" href=\"./Main%20Page#Underscore_between_Text\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main%20Page#Underscore_between_Text\"},\"sa\":{\"href\":\"#Underscore_between_Text\"},\"dsr\":[429,457,2,2]}'>#Underscore_between_Text</a>\n<a rel=\"mw:WikiLink\" href=\"./Main%20Page#Underscore-Entity_between_Text\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main%20Page#Underscore-Entity_between_Text\"},\"sa\":{\"href\":\"#Underscore-Entity&amp;#95;between&amp;#95;Text\"},\"dsr\":[458,501,2,2]}'>#Underscore-Entity_between_Text</a></p>");
add("wt2html", "Single-line or multiline-comments can follow headings", "<h2 data-parsoid='{\"dsr\":[0,7,2,2]}'>foo</h2><!---->\n<h2 data-parsoid='{\"dsr\":[15,22,2,2]}'>bar</h2><!--c1-->\n<h2 data-parsoid='{\"dsr\":[32,39,2,2]}'>baz</h2><!--\nc2\nc3-->");
add("wt2html", "Namespaced link must have a title", "<p data-parsoid='{\"dsr\":[0,12,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Base_MW:\" title=\"Base MW:\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Base_MW:\"},\"sa\":{\"href\":\"Project:\"},\"dsr\":[0,12,2,2]}'>Project:</a></p>");
add("wt2html", "Namespaced link must have a title (bad fragment version)", "<p data-parsoid='{\"dsr\":[0,21,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Base_MW:Main%20Page#fragment\" title=\"Base MW:Main Page\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Base_MW:Main%20Page#fragment\"},\"sa\":{\"href\":\"Project:#fragment\"},\"dsr\":[0,21,2,2]}'>Project:#fragment</a></p>");
add("wt2html", "Media link", "<p data-parsoid='{\"dsr\":[0,20,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Media:Foobar.jpg\" title=\"Media:Foobar.jpg\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Media:Foobar.jpg\"},\"sa\":{\"href\":\"Media:Foobar.jpg\"},\"dsr\":[0,20,2,2]}'>Media:Foobar.jpg</a></p>");
add("wt2html", "Media link with text", "<p data-parsoid='{\"dsr\":[0,43,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Media:Foobar.jpg\" title=\"Media:Foobar.jpg\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Media:Foobar.jpg\"},\"sa\":{\"href\":\"Media:Foobar.jpg\"},\"dsr\":[0,43,19,2]}'>A neat file to look at</a></p>");
add("wt2html", "Media link with nasty text", "<p data-parsoid='{\"dsr\":[0,106,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Media:Foobar.jpg\" title=\"Media:Foobar.jpg\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Media:Foobar.jpg\"},\"sa\":{\"href\":\"Media:Foobar.jpg\"},\"dsr\":[0,106,19,2]}'>Safe Link<div style=\"display:none\" data-parsoid='{\"stx\":\"html\",\"dsr\":[28,104,24,6]}'>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div></a></p>");
add("wt2html", "Media link to nonexistent file (bug 1702)", "<p data-parsoid='{\"dsr\":[0,21,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Media:No_such.jpg\" title=\"Media:No such.jpg\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Media:No_such.jpg\"},\"sa\":{\"href\":\"Media:No such.jpg\"},\"dsr\":[0,21,2,2]}'>Media:No such.jpg</a></p>");
add("wt2html", "(bug 19451) Links should refer to the normalized form.", "<p data-parsoid='{\"dsr\":[0,64,0,0]}'><a rel=\"mw:WikiLink\" href=\"./אַ\" title=\"אַ\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./אַ\"},\"sa\":{\"href\":\"&amp;#xFB2E;\"},\"dsr\":[0,12,2,2]}'>אַ</a>\n<a rel=\"mw:WikiLink\" href=\"./אַ\" title=\"אַ\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./אַ\"},\"sa\":{\"href\":\"&amp;#x5d0;&amp;#x5b7;\"},\"dsr\":[13,31,2,2]}'>אַ</a>\n<a rel=\"mw:WikiLink\" href=\"./אַ\" title=\"אַ\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./אַ\"},\"sa\":{\"href\":\"&amp;#x5d0;ַ\"},\"dsr\":[32,44,2,2]}'>אַ</a>\n<a rel=\"mw:WikiLink\" href=\"./אַ\" title=\"אַ\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./אַ\"},\"sa\":{\"href\":\"א&amp;#x5b7;\"},\"dsr\":[45,57,2,2]}'>אַ</a>\n<a rel=\"mw:WikiLink\" href=\"./אַ\" title=\"אַ\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./אַ\"},\"sa\":{\"href\":\"אַ\"},\"dsr\":[58,64,2,2]}'>אַ</a></p>");
add("wt2html", "Bug 2304: HTML attribute safety (unsafe breakout parameter; 2309)", "<div style=\"float: right;  >alert(document.cookie)\" about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\"float: right;  >alert(document.cookie)\"},\"sa\":{\"style\":\"float: right; {{{1}}}\"},\"dsr\":[0,55,null,null],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"div style\",\"href\":\"./Template:Div_style\"},\"params\":{\"1\":{\"wt\":\"\\\">&lt;script>alert(document.cookie)&lt;/script>\"}},\"i\":0}}]}'>Magic div</div>");
add("wt2html", "Bug 2304: HTML attribute safety (unsafe breakout parameter 2; 2309)", "<div style=\"float: right;   >alert(document.cookie)\" about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\"float: right;   >alert(document.cookie)\"},\"sa\":{\"style\":\"float: right; {{{1}}}\"},\"dsr\":[0,56,null,null],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"div style\",\"href\":\"./Template:Div_style\"},\"params\":{\"1\":{\"wt\":\"\\\" >&lt;script>alert(document.cookie)&lt;/script>\"}},\"i\":0}}]}'>Magic div</div>");
add("wt2html", "CSS safety test (all browsers): vertical tab (bug 55332 / CVE-2013-4567)", "<p style=\"/* insecure input */\" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\"/* insecure input */\"},\"sa\":{\"style\":\"font-size: 100px; background-image:url\\\\b(https://www.google.com/images/srpr/logo6w.png)\"},\"dsr\":[0,104,99,4]}'>A</p>");
add("wt2html", "MSIE 6 CSS safety test: Fullwidth (bug 55332)", "<p style=\"font-size: 100px; color: ｅｘｐｒｅｓｓｉｏｎ((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,75,70,4]}'>A</p>\n<div style=\"top:ＥＸＰＲＥＳＳＩＯＮ(alert())\" data-parsoid='{\"stx\":\"html\",\"dsr\":[76,120,37,6]}'>B</div>");
add("wt2html", "MSIE 6 CSS safety test: IPA extensions (bug 55332)", "<div style=\"background-image:uʀʟ(javascript:alert())\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,61,54,6]}'>A</div>\n<p style=\"font-size: 100px; color: expʀessɪoɴ((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[62,137,70,4]}'>B</p>");
add("wt2html", "MSIE 6 CSS safety test: sup/sub script (bug 55332)", "<div style=\"background-image:url⁽javascript:alert())\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,61,54,6]}'>A</div>\n<div style=\"background-image:url₍javascript:alert())\" data-parsoid='{\"stx\":\"html\",\"dsr\":[62,123,54,6]}'>B</div>\n<p style=\"font-size: 100px; color: expressioⁿ((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[124,199,70,4]}'>C</p>");
add("wt2html", "Opera -o-link CSS", "<div title=\"data:text/html,&lt;img src=1 onerror=alert(1)>\" style=\"-o-link:attr(title);-o-link-source:current\" data-parsoid='{\"stx\":\"html\",\"a\":{\"title\":\"data:text/html,&lt;img src=1 onerror=alert(1)>\"},\"sa\":{\"title\":\"&amp;#100;&amp;#97;&amp;#116;&amp;#97;&amp;#58;&amp;#116;&amp;#101;&amp;#120;&amp;#116;&amp;#47;&amp;#104;&amp;#116;&amp;#109;&amp;#108;&amp;#44;&amp;#60;&amp;#105;&amp;#109;&amp;#103;&amp;#32;&amp;#115;&amp;#114;&amp;#99;&amp;#61;&amp;#49;&amp;#32;&amp;#111;&amp;#110;&amp;#101;&amp;#114;&amp;#114;&amp;#111;&amp;#114;&amp;#61;&amp;#97;&amp;#108;&amp;#101;&amp;#114;&amp;#116;&amp;#40;&amp;#49;&amp;#41;&amp;#62;\"},\"dsr\":[0,313,306,6]}'>X</div>");
add("wt2html", "MSIE 6 CSS safety test: Repetition markers (bug 55332)", "<p style=\"font-size: 100px; color: expres〱ion((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,75,70,4]}'>A</p>\n<p style=\"font-size: 100px; color: expresゝion((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[76,151,70,4]}'>B</p>\n<p style=\"font-size: 100px; color: expresーion((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[152,227,70,4]}'>C</p>\n<p style=\"font-size: 100px; color: expresヽion((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[228,303,70,4]}'>D</p>\n<p style=\"font-size: 100px; color: expresﹽion((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[304,379,70,4]}'>E</p>\n<p style=\"font-size: 100px; color: expresﹼion((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[380,455,70,4]}'>F</p>\n<p style=\"font-size: 100px; color: expresｰion((title='XSSed'),'red')\" data-parsoid='{\"stx\":\"html\",\"dsr\":[456,531,70,4]}'>G</p>");
add("wt2html", "CSS line continuation 2", "<div style=\"/* insecure input */\" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\"/* insecure input */\"},\"sa\":{\"style\":\"background-image: u\\\\&amp;#13;rl(test.jpg); \"},\"dsr\":[0,59,53,6]}'></div>");
add("wt2html", "Sanitizer: Closing of closed but not open table tags", "Table not started");
add("wt2html", "Sanitizer: Escaping of spaces, multibyte characters, colons & other stuff in id=\"\"", "<p data-parsoid='{\"dsr\":[0,45,0,0]}'><span id=\"æ: v\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,27,16,7]}'>byte</span><a rel=\"mw:WikiLink\" href=\"./Main%20Page#æ:_v\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#æ:_v\"},\"sa\":{\"href\":\"#æ: v\"},\"dsr\":[27,45,8,2]}'>backlink</a></p>");
add("wt2html", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata", "<div itemscope=\"\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,308,15,6]}'>\n\t<p data-parsoid='{\"dsr\":[17,301,0,0]}'>&lt;meta itemprop=\"hello\" content=\"world\">\n\t&lt;meta http-equiv=\"refresh\" content=\"5\">\n\t&lt;meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\">\n\t&lt;link itemprop=\"hello\" href=\"{{SERVER}}\">\n\t&lt;link rel=\"stylesheet\" href=\"{{SERVER}}\">\n\t&lt;link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\"></p>\n</div>");
add("wt2html", "Language converter: output gets cut off unexpectedly (bug 5757)", "<p data-parsoid='{\"dsr\":[0,20,0,0]}'>this bit is safe: }-</p>\n\n<p data-parsoid='{\"dsr\":[22,82,0,0]}'>but if we add a conversion instance: -{zh-cn:xxx;zh-tw:yyy}-</p>\n\n<p data-parsoid='{\"dsr\":[84,112,0,0]}'>then we get cut off here: }-</p>\n\n<p data-parsoid='{\"dsr\":[114,145,0,0]}'>all additional text is vanished</p>");
add("wt2html", "Self closed html pairs (bug 5487)", "<center data-parsoid='{\"stx\":\"html\",\"dsr\":[0,47,8,9]}'><font id=\"bug\" data-parsoid='{\"stx\":\"html\",\"selfClose\":true,\"dsr\":[8,25,17,0]}'></font>Centered text</center>\n<div data-parsoid='{\"stx\":\"html\",\"dsr\":[48,88,5,6]}'><font id=\"bug2\" data-parsoid='{\"stx\":\"html\",\"selfClose\":true,\"dsr\":[53,71,18,0]}'></font>In div text</div>");
add("wt2html", "Fuzz testing: Parser14", "<h2 data-parsoid='{\"dsr\":[0,18,2,2]}'> onmouseover= </h2>\n<p data-parsoid='{\"dsr\":[19,33,0,0]}'><a rel=\"mw:ExtLink\" href=\"http://__TOC__\" data-parsoid='{\"stx\":\"url\",\"dsr\":[19,33,0,0]}'>http://__TOC__</a></p>");
add("wt2html", "Fuzz testing: Parser24", "<p data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,0]}'>{{{|\n<u class=\"|\" about=\"#mwt2\" typeof=\"mw:ExpandedAttrs\" data-parsoid='{\"stx\":\"html\",\"a\":{\"{{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->&lt;noinclude>}}}}\":null},\"sa\":{\"{{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->&lt;noinclude>}}}}\":\"\"},\"autoInsertedEnd\":true,\"dsr\":[8,0,74,0]}' data-mw='{\"attribs\":[[{\"txt\":\"{{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->}}}}\",\"html\":\"{&lt;span about=\\\"#mwt1\\\" typeof=\\\"mw:Param\\\" data-parsoid=&#39;{\\\"dsr\\\":[21,79,null,null],\\\"src\\\":\\\"{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->&amp;lt;noinclude>}}}\\\"}&#39;>{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->}}}&lt;/span>}\"},{\"html\":\"\"}]]}'>\n<br style=\"onmouseover='alert(document.cookie);' \" data-parsoid='{\"stx\":\"html\",\"selfClose\":true,\"dsr\":[83,0,53,0]}'/></u></p><p data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"dsr\":[0,0]}'><u class=\"|\" about=\"#mwt2\" typeof=\"mw:ExpandedAttrs\" data-parsoid='{\"stx\":\"html\",\"a\":{\"{{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->&lt;noinclude>}}}}\":null},\"sa\":{\"{{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->&lt;noinclude>}}}}\":\"\"},\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[-37,0,0,0]}' data-mw='{\"attribs\":[[{\"txt\":\"{{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->}}}}\",\"html\":\"{&lt;span about=\\\"#mwt1\\\" typeof=\\\"mw:Param\\\" data-parsoid=&#39;{\\\"dsr\\\":[21,79,null,null],\\\"src\\\":\\\"{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->&amp;lt;noinclude>}}}\\\"}&#39;>{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx-->}}}&lt;/span>}\"},{\"html\":\"\"}]]}'>MOVE YOUR MOUSE CURSOR OVER THIS TEXT</u></p><table data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[0,177,2,0]}'>\n\n\n\n<tbody data-parsoid='{\"dsr\":[176,177,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[176,177,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[176,177,1,0]}'></td></tr></tbody></table>");
add("wt2html", "Fuzz testing: Parser25 (bug 6055)", "<li class=\"\" about=\"#mwt1\" typeof=\"mw:Param\" data-parsoid='{\"stx\":\"html\",\"srcTagName\":\"LI\",\"a\":{\"||\":null},\"sa\":{\"||\":\"\"},\"autoInsertedEnd\":true,\"dsr\":[0,110,15,0],\"src\":\"{{{\\n| \\n&lt;LI CLASS=||\\n >\\n}}}blah\\\" onmouseover=\\\"alert(&#39;hello world&#39;);\\\" align=\\\"left\\\"&#39;&#39;&#39;MOVE MOUSE CURSOR OVER HERE\"}'>\n<p data-parsoid='{\"dsr\":[26,110,0,0]}'>blah\" onmouseover=\"alert('hello world');\" align=\"left\"<b data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[80,110,3,0]}'>MOVE MOUSE CURSOR OVER HERE</b></p></li>");
add("wt2html", "Inline HTML vs wiki block nesting", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'><b data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[0,17,3,0]}'>Bold paragraph</b></p><b data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[17,37,0,0]}'>\n\n<p data-parsoid='{\"dsr\":[19,37,0,0]}'>New wiki paragraph</p></b>");
add("wt2html", "Special page transclusion", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,30,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Special:Prefixindex/Xyzzyx\",\"function\":\"special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_special missing in Parsoid.</p>");
add("wt2html", "Special page transclusion twice (bug 5021)", "<p data-parsoid='{\"dsr\":[0,61,0,0]}'><span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[0,30,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Special:Prefixindex/Xyzzyx\",\"function\":\"special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_special missing in Parsoid.</span>\n<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[31,61,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Special:Prefixindex/Xyzzyx\",\"function\":\"special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_special missing in Parsoid.</span></p>");
add("wt2html", "Transclusion of default MediaWiki message", "<p data-parsoid='{\"dsr\":[0,22,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,22,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"MediaWiki:Mainpage\",\"href\":\"./MediaWiki:Mainpage\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for MediaWiki:Mainpage</span></p>");
add("wt2html", "Transclusion of nonexistent MediaWiki message", "<p data-parsoid='{\"dsr\":[0,25,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,25,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"MediaWiki:Mainpagexxx\",\"href\":\"./MediaWiki:Mainpagexxx\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for MediaWiki:Mainpagexxx</span></p>");
add("wt2html", "Transclusion of MediaWiki message with underscore", "<p data-parsoid='{\"dsr\":[0,27,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,27,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"MediaWiki:history_short\",\"href\":\"./MediaWiki:History_short\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for MediaWiki:History_short</span></p>");
add("wt2html", "Transclusion of MediaWiki message with space", "<p data-parsoid='{\"dsr\":[0,27,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,27,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"MediaWiki:history short\",\"href\":\"./MediaWiki:History_short\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for MediaWiki:History_short</span></p>");
add("wt2html", "Special:Search page linking.", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,18,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Special:search\",\"function\":\"special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_special missing in Parsoid.</p>");
add("wt2html", "Say the magic word", "<ul data-parsoid='{\"dsr\":[0,544,0,0]}'><li data-parsoid='{\"dsr\":[0,14,1,0]}'> <span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[2,14,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"PAGENAME\",\"function\":\"pagename\"},\"params\":{},\"i\":0}}]}'>Parser test</span></li>\n<li data-parsoid='{\"dsr\":[15,30,1,0]}'> <span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[17,30,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"PAGENAMEE\",\"function\":\"pagenamee\"},\"params\":{},\"i\":0}}]}'></span></li>\n<li data-parsoid='{\"dsr\":[31,49,1,0]}'> <span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[33,49,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"FULLPAGENAME\",\"function\":\"fullpagename\"},\"params\":{},\"i\":0}}]}'>Parser test</span></li>\n<li data-parsoid='{\"dsr\":[50,69,1,0]}'> <span about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[52,69,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"FULLPAGENAMEE\",\"function\":\"fullpagenamee\"},\"params\":{},\"i\":0}}]}'>Parser test</span></li>\n<li data-parsoid='{\"dsr\":[70,88,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt5\" data-parsoid='{\"dsr\":[72,88,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"BASEPAGENAME\",\"href\":\"./Template:BASEPAGENAME\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:BASEPAGENAME</span></li>\n<li data-parsoid='{\"dsr\":[89,108,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt6\" data-parsoid='{\"dsr\":[91,108,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"BASEPAGENAMEE\",\"href\":\"./Template:BASEPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:BASEPAGENAMEE</span></li>\n<li data-parsoid='{\"dsr\":[109,126,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt7\" data-parsoid='{\"dsr\":[111,126,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBPAGENAME\",\"href\":\"./Template:SUBPAGENAME\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBPAGENAME</span></li>\n<li data-parsoid='{\"dsr\":[127,145,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt8\" data-parsoid='{\"dsr\":[129,145,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBPAGENAMEE\",\"href\":\"./Template:SUBPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBPAGENAMEE</span></li>\n<li data-parsoid='{\"dsr\":[146,164,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt9\" data-parsoid='{\"dsr\":[148,164,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ROOTPAGENAME\",\"href\":\"./Template:ROOTPAGENAME\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:ROOTPAGENAME</span></li>\n<li data-parsoid='{\"dsr\":[165,184,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt10\" data-parsoid='{\"dsr\":[167,184,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ROOTPAGENAMEE\",\"href\":\"./Template:ROOTPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:ROOTPAGENAMEE</span></li>\n<li data-parsoid='{\"dsr\":[185,203,1,0]}'> <span about=\"#mwt11\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[187,203,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"TALKPAGENAME\",\"function\":\"talkpagename\"},\"params\":{},\"i\":0}}]}'>Parser test</span></li>\n<li data-parsoid='{\"dsr\":[204,223,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt12\" data-parsoid='{\"dsr\":[206,223,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"TALKPAGENAMEE\",\"href\":\"./Template:TALKPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:TALKPAGENAMEE</span></li>\n<li data-parsoid='{\"dsr\":[224,245,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt13\" data-parsoid='{\"dsr\":[226,245,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTPAGENAME\",\"href\":\"./Template:SUBJECTPAGENAME\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBJECTPAGENAME</span></li>\n<li data-parsoid='{\"dsr\":[246,268,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt14\" data-parsoid='{\"dsr\":[248,268,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTPAGENAMEE\",\"href\":\"./Template:SUBJECTPAGENAMEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBJECTPAGENAMEE</span></li>\n<li data-parsoid='{\"dsr\":[269,285,1,0]}'> <span about=\"#mwt15\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[271,285,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"NAMESPACEE\",\"function\":\"namespacee\"},\"params\":{},\"i\":0}}]}'>Main</span></li>\n<li data-parsoid='{\"dsr\":[286,301,1,0]}'> <span about=\"#mwt16\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[288,301,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"NAMESPACE\",\"function\":\"namespace\"},\"params\":{},\"i\":0}}]}'>Main</span></li>\n<li data-parsoid='{\"dsr\":[302,323,1,0]}'> <span about=\"#mwt17\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[304,323,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"NAMESPACENUMBER\",\"function\":\"namespacenumber\"},\"params\":{},\"i\":0}}]}'>0</span></li>\n<li data-parsoid='{\"dsr\":[324,339,1,0]}'> <span about=\"#mwt18\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[326,339,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"TALKSPACE\",\"function\":\"talkspace\"},\"params\":{},\"i\":0}}]}'>Talk</span></li>\n<li data-parsoid='{\"dsr\":[340,356,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt19\" data-parsoid='{\"dsr\":[342,356,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"TALKSPACEE\",\"href\":\"./Template:TALKSPACEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:TALKSPACEE</span></li>\n<li data-parsoid='{\"dsr\":[357,375,1,0]}'> <span about=\"#mwt20\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[359,375,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTSPACE\",\"function\":\"subjectspace\"},\"params\":{},\"i\":0}}]}'>Main</span></li>\n<li data-parsoid='{\"dsr\":[376,395,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt21\" data-parsoid='{\"dsr\":[378,395,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"SUBJECTSPACEE\",\"href\":\"./Template:SUBJECTSPACEE\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:SUBJECTSPACEE</span></li>\n<li data-parsoid='{\"dsr\":[396,544,1,0]}'> <span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt22\" data-parsoid='{\"dsr\":[398,544,null,null],\"pi\":[[{\"k\":\"1\"},{\"k\":\"2\"},{\"k\":\"3\"},{\"k\":\"4\"},{\"k\":\"5\"},{\"k\":\"6\"},{\"k\":\"7\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Dynamic\",\"href\":\"./Template:Dynamic\"},\"params\":{\"1\":{\"wt\":\"{{NUMBEROFUSERS}}\"},\"2\":{\"wt\":\"{{NUMBEROFPAGES}}\"},\"3\":{\"wt\":\"{{CURRENTVERSION}}\"},\"4\":{\"wt\":\"{{CONTENTLANGUAGE}}\"},\"5\":{\"wt\":\"{{DIRECTIONMARK}}\"},\"6\":{\"wt\":\"{{CURRENTTIMESTAMP}}\"},\"7\":{\"wt\":\"{{NUMBEROFARTICLES}}\"}},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:Dynamic</span></li></ul>");
add("wt2html", "Gallery", "<p data-parsoid='{\"dsr\":[0,131,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery>\\nimage1.png |\\nimage2.gif|||||\\n\\nimage3|\\nimage4    |300px| centre\\n image5.svg| http://///////\\n[[x|xx]]]]\\n* image6\\n&lt;/gallery>\",\"tagWidths\":[9,10],\"autoInsertedEnd\":true,\"dsr\":[0,131,9,0]}'>&lt;gallery>\nimage1.png |\nimage2.gif|||||\n\nimage3|\nimage4    |300px| centre\n image5.svg| http://///////\n[[x|xx]]]]\n* image6\n&lt;/gallery></span></p>");
add("wt2html", "Gallery (with options)", "<p data-parsoid='{\"dsr\":[0,261,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid=\"{&quot;stx&quot;:&quot;html&quot;,&quot;src&quot;:&quot;&lt;gallery widths='70px' heights='40px' perrow='2' caption='Foo [[Main Page]]' >\\nFile:Nonexistent.jpg|caption\\nFile:Nonexistent.jpg\\nimage:foobar.jpg|some '''caption''' [[Main Page]]\\nimage:foobar.jpg\\nimage:foobar.jpg|Blabla|alt=This is a foo-bar.|blabla.\\n&lt;/gallery>&quot;,&quot;tagWidths&quot;:[78,10],&quot;autoInsertedEnd&quot;:true,&quot;dsr&quot;:[0,261,78,0]}\">&lt;gallery widths='70px' heights='40px' perrow='2' caption='Foo [[Main Page]]' >\nFile:Nonexistent.jpg|caption\nFile:Nonexistent.jpg\nimage:foobar.jpg|some '''caption''' [[Main Page]]\nimage:foobar.jpg\nimage:foobar.jpg|Blabla|alt=This is a foo-bar.|blabla.\n&lt;/gallery></span></p>");
add("wt2html", "Gallery with link that has fragment", "<p data-parsoid='{\"dsr\":[0,140,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery>\\nimage:foobar.jpg|link=Main_Page\\nimage:foobar.jpg|link=Main_Page#section\\nimage:foobar.jpg|link=Main Page#section|caption\\n&lt;/gallery>\",\"tagWidths\":[9,10],\"autoInsertedEnd\":true,\"dsr\":[0,140,9,0]}'>&lt;gallery>\nimage:foobar.jpg|link=Main_Page\nimage:foobar.jpg|link=Main_Page#section\nimage:foobar.jpg|link=Main Page#section|caption\n&lt;/gallery></span></p>");
add("wt2html", "Gallery with wikitext inside caption", "<p data-parsoid='{\"dsr\":[0,156,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery>\\nFile:foobar.jpg|[[File:foobar.jpg|20px|desc|alt=inneralt]]|alt=galleryalt\\nFile:foobar.jpg|{{Test|unamedParam|alt=param}}|alt=galleryalt\\n&lt;/gallery>\",\"tagWidths\":[9,10],\"autoInsertedEnd\":true,\"dsr\":[0,156,9,0]}'>&lt;gallery>\nFile:foobar.jpg|[[File:foobar.jpg|20px|desc|alt=inneralt]]|alt=galleryalt\nFile:foobar.jpg|{{Test|unamedParam|alt=param}}|alt=galleryalt\n&lt;/gallery></span></p>");
add("wt2html", "gallery (with showfilename option)", "<p data-parsoid='{\"dsr\":[0,149,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery showfilename>\\nFile:Nonexistent.jpg|caption\\nFile:Nonexistent.jpg\\nimage:foobar.jpg|some &#39;&#39;&#39;caption&#39;&#39;&#39; [[Main Page]]\\nFile:Foobar.jpg\\n&lt;/gallery>\",\"tagWidths\":[22,10],\"autoInsertedEnd\":true,\"dsr\":[0,149,22,0]}'>&lt;gallery showfilename>\nFile:Nonexistent.jpg|caption\nFile:Nonexistent.jpg\nimage:foobar.jpg|some '''caption''' [[Main Page]]\nFile:Foobar.jpg\n&lt;/gallery></span></p>");
add("wt2html", "Gallery (with namespace-less filenames)", "<p data-parsoid='{\"dsr\":[0,85,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery>\\nFile:Nonexistent.jpg\\nNonexistent.jpg\\nimage:foobar.jpg\\nfoobar.jpg\\n&lt;/gallery>\",\"tagWidths\":[9,10],\"autoInsertedEnd\":true,\"dsr\":[0,85,9,0]}'>&lt;gallery>\nFile:Nonexistent.jpg\nNonexistent.jpg\nimage:foobar.jpg\nfoobar.jpg\n&lt;/gallery></span></p>");
add("wt2html", "Illegal character references (T106578)", "<dl data-parsoid='{\"dsr\":[0,167,0,0]}'><dt data-parsoid='{\"dsr\":[0,6,1,0]}'> Null</dt><dd data-parsoid='{\"stx\":\"row\",\"dsr\":[6,13,1,0]}'> <span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#00;\",\"srcContent\":\"�\",\"dsr\":[8,13,null,null]}'>�</span></dd>\n<dt data-parsoid='{\"dsr\":[14,18,1,0]}'> FF</dt><dd data-parsoid='{\"stx\":\"row\",\"dsr\":[18,25,1,0]}'> <span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#xC;\",\"srcContent\":\"\\f\",\"dsr\":[20,25,null,null]}'>\f</span></dd>\n<dt data-parsoid='{\"dsr\":[26,30,1,0]}'> CR</dt><dd data-parsoid='{\"stx\":\"row\",\"dsr\":[30,37,1,0]}'> <span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#xD;\",\"srcContent\":\"\\r\",\"dsr\":[32,37,null,null]}'>\r</span></dd>\n<dt data-parsoid='{\"dsr\":[38,53,1,0]}'> Control (low)</dt><dd data-parsoid='{\"stx\":\"row\",\"dsr\":[53,59,1,0]}'> <span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#8;\",\"srcContent\":\"\\b\",\"dsr\":[55,59,null,null]}'>\b</span></dd>\n<dt data-parsoid='{\"dsr\":[60,76,1,0]}'> Control (high)</dt><dd data-parsoid='{\"stx\":\"row\",\"dsr\":[76,91,1,0]}'> <span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#x7F;\",\"srcContent\":\"\",\"dsr\":[78,84,null,null]}'></span> <span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#x9F;\",\"srcContent\":\"Ÿ\",\"dsr\":[85,91,null,null]}'>Ÿ</span></dd>\n<dt data-parsoid='{\"dsr\":[92,103,1,0]}'> Surrogate</dt><dd data-parsoid='{\"stx\":\"row\",\"dsr\":[103,121,1,0]}'> <span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#xD83D;\",\"srcContent\":\"�\",\"dsr\":[105,113,null,null]}'>�</span><span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#xDCA9;\",\"srcContent\":\"�\",\"dsr\":[113,121,null,null]}'>�</span></dd>\n<dt data-parsoid='{\"dsr\":[122,156,1,0]}'> This is an okay astral character</dt><dd data-parsoid='{\"stx\":\"row\",\"dsr\":[156,167,1,0]}'> <span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;#x1F4A9;\",\"srcContent\":\"💩\",\"dsr\":[158,167,null,null]}'>💩</span></dd></dl>");
add("wt2html", "Centre-aligned image", "<figure class=\"mw-default-size mw-halign-center\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"center\",\"ak\":\"centre\"}],\"dsr\":[0,27,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[2,25,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></figure>");
add("wt2html", "None-aligned image", "<figure class=\"mw-default-size mw-halign-none\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"none\",\"ak\":\"none\"}],\"dsr\":[0,25,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[2,23,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></figure>");
add("wt2html", "Width + Height sized image (using px) (height is ignored)", "<p data-parsoid='{\"dsr\":[0,30,0,0]}'><span typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"width\",\"ak\":\"640x480px\"}],\"dsr\":[0,30,null,null]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{}}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"73\" width=\"640\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"73\",\"width\":\"640\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></span></p>");
add("wt2html", "Width-sized image (using px, no following whitespace)", "<p data-parsoid='{\"dsr\":[0,26,0,0]}'><span typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"width\",\"ak\":\"640px\"}],\"dsr\":[0,26,null,null]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{}}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"73\" width=\"640\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"73\",\"width\":\"640\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></span></p>");
add("wt2html", "Width-sized image (using px, with following whitespace - test regression from r39467)", "<p data-parsoid='{\"dsr\":[0,27,0,0]}'><span typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"width\",\"ak\":\"640px \"}],\"dsr\":[0,27,null,null]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{}}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"73\" width=\"640\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"73\",\"width\":\"640\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></span></p>");
add("wt2html", "Width-sized image (using px, with preceding whitespace - test regression from r39467)", "<p data-parsoid='{\"dsr\":[0,27,0,0]}'><span typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"width\",\"ak\":\" 640px\"}],\"dsr\":[0,27,null,null]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{}}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"73\" width=\"640\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"73\",\"width\":\"640\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></span></p>");
add("wt2html", "HTML with raw HTML ($wgRawHtml==true)", "<p data-parsoid='{\"dsr\":[0,39,0,0]}'>&lt;html>&lt;script>alert(1);&lt;/script>&lt;/html></p>");
add("wt2html", "Parents of subpages, one level up, not named", "<p data-parsoid='{\"dsr\":[0,7,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Subpage_test/L1/L2\" title=\"Subpage test/L1/L2\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Subpage_test/L1/L2\"},\"sa\":{\"href\":\"../\"},\"dsr\":[0,7,2,2]}'>Subpage_test/L1/L2</a></p>");
add("wt2html", "Parents of subpages, two levels up, without trailing slash or name.", "<p data-parsoid='{\"dsr\":[0,9,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Subpage_test/L1/L2/..\" title=\"Subpage test/L1/L2/..\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Subpage_test/L1/L2/..\"},\"sa\":{\"href\":\"../..\"},\"dsr\":[0,9,2,2]}'>Subpage_test/L1/L2/..</a></p>");
add("wt2html", "Parents of subpages, two levels up, with lots of extra trailing slashes.", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Subpage_test/L1\" title=\"Subpage test/L1\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Subpage_test/L1\"},\"sa\":{\"href\":\"../../////\"},\"dsr\":[0,14,2,2]}'>Subpage_test/L1</a></p>");
add("wt2html", "Transclusion of a sibling page (one level up)", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,16,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"../L3Sibling\",\"href\":\"./Template:../L3Sibling\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:../L3Sibling</span></p>");
add("wt2html", "Transclusion of a child page", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,14,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"/L3Sibling\",\"href\":\"./Template:/L3Sibling\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:/L3Sibling</span></p>");
add("wt2html", "Non-transclusion because of too many up levels", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,32,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"../../../../More than parent\",\"href\":\"./Template:../../../../More_than_parent\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:../../../../More_than_parent</span></p>");
add("wt2html", "RAW magic word", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,14,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"RAW:QUERTY\",\"href\":\"./RAW:QUERTY\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for RAW:QUERTY</span></p>");
add("wt2html", "anchorencode", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,28,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"anchorencode:foo bar©#%n\",\"function\":\"anchorencode\"},\"params\":{},\"i\":0}}]}'>foo bar©#%n</p>");
add("wt2html", "anchorencode trims spaces", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,36,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"anchorencode: __pretty__please__\",\"function\":\"anchorencode\"},\"params\":{},\"i\":0}}]}'>__pretty__please__</p>");
add("wt2html", "anchorencode deals with links", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,40,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"anchorencode: [[hello|world]] [[hi]]\",\"function\":\"anchorencode\"},\"params\":{},\"i\":0}}]}'>world hi</p>");
add("wt2html", "anchorencode encodes like the TOC generator: (bug 18431)", "<h3 data-parsoid='{\"dsr\":[0,26,3,3]}'> _ +:.3A%3A&amp;<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;amp;\",\"srcContent\":\"&amp;\",\"dsr\":[15,20,null,null]}'>&amp;</span>]] </h3>\n<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[27,64,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"anchorencode: _ +:.3A%3A&amp;&amp;amp;]] \",\"function\":\"anchorencode\"},\"params\":{},\"i\":0}}]}'>_ +:.3A%3A&amp;&amp;]]</p>\n<meta property=\"mw:PageProp/noeditsection\" data-parsoid='{\"src\":\"__NOEDITSECTION__\",\"magicSrc\":\"__NOEDITSECTION__\",\"dsr\":[65,82,null,null]}'/>");
add("wt2html", "Self-link in language variants", "<p data-parsoid='{\"dsr\":[0,54,0,0]}'>Both <a rel=\"mw:WikiLink\" href=\"./Dunav\" title=\"Dunav\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Dunav\"},\"sa\":{\"href\":\"Dunav\"},\"dsr\":[5,14,2,2]}'>Dunav</a> and <a rel=\"mw:WikiLink\" href=\"./Дунав\" title=\"Дунав\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Дунав\"},\"sa\":{\"href\":\"Дунав\"},\"dsr\":[19,28,2,2]}'>Дунав</a> are names for this river.</p>");
add("wt2html", "Link to another existing title shouldn't be parsed as self-link even if it's a variant of this title", "<p data-parsoid='{\"dsr\":[0,77,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Дуна\" title=\"Дуна\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Дуна\"},\"sa\":{\"href\":\"Дуна\"},\"dsr\":[0,8,2,2]}'>Дуна</a> is not a self-link while <a rel=\"mw:WikiLink\" href=\"./Duna\" title=\"Duna\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Duna\"},\"sa\":{\"href\":\"Duna\"},\"dsr\":[34,42,2,2]}'>Duna</a> and <a rel=\"mw:WikiLink\" href=\"./Dуна\" title=\"Dуна\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Dуна\"},\"sa\":{\"href\":\"Dуна\"},\"dsr\":[47,55,2,2]}'>Dуна</a> are still self-links.</p>");
add("wt2html", "Link to a section of a variant of this title shouldn't be parsed as self-link", "<p data-parsoid='{\"dsr\":[0,79,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Dуна\" title=\"Dуна\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Dуна\"},\"sa\":{\"href\":\"Dуна\"},\"dsr\":[0,8,2,2]}'>Dуна</a> is a self-link while <a rel=\"mw:WikiLink\" href=\"./Dunа#Foo\" title=\"Dunа\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Dunа#Foo\"},\"sa\":{\"href\":\"Dunа#Foo\"},\"dsr\":[30,42,2,2]}'>Dunа#Foo</a> and <a rel=\"mw:WikiLink\" href=\"./Dуна#Foo\" title=\"Dуна\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Dуна#Foo\"},\"sa\":{\"href\":\"Dуна#Foo\"},\"dsr\":[47,59,2,2]}'>Dуна#Foo</a> are not self-links.</p>");
add("wt2html", "Link to pages in language variants", "<p data-parsoid='{\"dsr\":[0,41,0,0]}'>Main Page can be written as <a rel=\"mw:WikiLink\" href=\"./Маин_Паге\" title=\"Маин Паге\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Маин_Паге\"},\"sa\":{\"href\":\"Маин Паге\"},\"dsr\":[28,41,2,2]}'>Маин Паге</a></p>");
add("wt2html", "Multiple links to pages in language variants", "<p data-parsoid='{\"dsr\":[0,68,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main Page\"},\"dsr\":[0,13,2,2]}'>Main Page</a> can be written as <a rel=\"mw:WikiLink\" href=\"./Маин_Паге\" title=\"Маин Паге\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Маин_Паге\"},\"sa\":{\"href\":\"Маин Паге\"},\"dsr\":[32,45,2,2]}'>Маин Паге</a> same as <a rel=\"mw:WikiLink\" href=\"./Маин_Паге\" title=\"Маин Паге\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Маин_Паге\"},\"sa\":{\"href\":\"Маин Паге\"},\"dsr\":[54,67,2,2]}'>Маин Паге</a>.</p>");
add("wt2html", "Simple template in language variants", "<p data-parsoid='{\"dsr\":[0,8,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,8,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"тест\",\"href\":\"./Шаблон:тест\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Шаблон:тест</span></p>");
add("wt2html", "Template with explicit namespace in language variants", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,17,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Template:тест\",\"href\":\"./Template:Тест\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Template:Тест</span></p>");
add("wt2html", "Basic test for template parameter in language variants", "<p data-parsoid='{\"dsr\":[0,23,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,23,null,null],\"pi\":[[{\"k\":\"param\",\"named\":true}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"парамтест\",\"href\":\"./Шаблон:парамтест\"},\"params\":{\"param\":{\"wt\":\"foo\"}},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Шаблон:парамтест</span></p>");
add("wt2html", "Simple category in language variants", "<link rel=\"mw:PageProp/Category\" href=\"./Категорија:МедиаWики_Усер'с_Гуиде\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Категорија:МедиаWики_Усер&#39;с_Гуиде\"},\"sa\":{\"href\":\"Category:МедиаWики Усер&#39;с Гуиде\"},\"dsr\":[0,35,null,null]}'/>");
add("wt2html", "Stripping -{}- tags (language variants)", "<p data-parsoid='{\"dsr\":[0,36,0,0]}'>Latin proverb: -{Ne nuntium necare}-</p>");
add("wt2html", "Prevent conversion with -{}- tags (language variants)", "<p data-parsoid='{\"dsr\":[0,31,0,0]}'>Latinski: -{Ne nuntium necare}-</p>");
add("wt2html", "Prevent conversion of text with -{}- tags (language variants)", "<p data-parsoid='{\"dsr\":[0,31,0,0]}'>Latinski: -{Ne nuntium necare}-</p>");
add("wt2html", "Prevent conversion of links with -{}- tags (language variants)", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'>-{<a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main Page\"},\"dsr\":[2,15,2,2]}'>Main Page</a>}-</p>");
add("wt2html", "-{}- tags within headlines (within html for parserConvert())", "<h2 data-parsoid='{\"dsr\":[0,16,2,2]}'> -{Naslov}- </h2>");
add("wt2html", "Explicit definition of language variant alternatives", "<p data-parsoid='{\"dsr\":[0,36,0,0]}'>-{zh:China;zh-tw:Taiwan}-, not China</p>");
add("wt2html", "Conversion around HTML tags", "<p data-parsoid='{\"dsr\":[0,93,0,0]}'>-{H|span=>sr-ec:script;title=>sr-ec:src;}-\n<span title=\"La-{sr-el:L;sr-ec:C;}-tin\" data-parsoid='{\"stx\":\"html\",\"dsr\":[43,93,40,7]}'>ski</span></p>");
add("wt2html", "Explicit session-wise language variant mapping (A flag and - flag)", "<p data-parsoid='{\"dsr\":[0,140,0,0]}'>Taiwan is not China.\nBut -{A|zh:China;zh-tw:Taiwan}- is China,\n(This-{-|zh:China;zh-tw:Taiwan}- should be stripped!)\nand -{China}- is China.</p>");
add("wt2html", "Explicit session-wise language variant mapping (H flag for hide)", "<p data-parsoid='{\"dsr\":[0,70,0,0]}'>(This-{H|zh:China;zh-tw:Taiwan}- should be stripped!)\nTaiwan is China.</p>");
add("wt2html", "Adding explicit conversion rule for title (T flag)", "<p data-parsoid='{\"dsr\":[0,46,0,0]}'>Should be stripped-{T|zh:China;zh-tw:Taiwan}-!</p>");
add("wt2html", "Testing that changing the language variant here in the tests actually works", "<p data-parsoid='{\"dsr\":[0,46,0,0]}'>Should be stripped-{T|zh:China;zh-tw:Taiwan}-!</p>");
add("wt2html", "Recursive conversion of alt and title attrs shouldn't clear converter state", "<p data-parsoid='{\"dsr\":[0,125,0,0]}'>-{H|zh-cn:Exclamation;zh-tw:exclamation;}-\nShould be stripped-{T|zh-cn:China;zh-tw:Taiwan}-<span title=\"exclamation\" data-parsoid='{\"stx\":\"html\",\"dsr\":[91,125,26,7]}'>!</span></p>");
add("wt2html", "Bug 24072: more test on conversion rule for title", "<p data-parsoid='{\"dsr\":[0,128,0,0]}'>This should be stripped-{T|zh:China;zh-tw:Taiwan}-!\nThis won't take interferes with the title rule-{H|zh:Beijing;zh-tw:Taipei}-.</p>");
add("wt2html", "Partly disable title conversion if variant == main language code", "<p data-parsoid='{\"dsr\":[0,23,0,0]}'>-{T|zh-cn:CN;zh-tw:TW}-</p>");
add("wt2html", "Partly disable title conversion if variant == main language code, more", "<p data-parsoid='{\"dsr\":[0,8,0,0]}'>-{T|TW}-</p>");
add("wt2html", "Raw output of variant escape tags (R flag)", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'>Raw: -{R|zh:China;zh-tw:Taiwan}-</p>");
add("wt2html", "Strings evaluating false shouldn't be ignored by Language converter (T51072)", "<p data-parsoid='{\"dsr\":[0,35,0,0]}'>-{zh-cn:0;zh-sg:1;zh-tw:2;zh-hk:3}-</p>");
add("wt2html", "Conversion rules from [numeric-only string] to [something else] (T48634)", "<p data-parsoid='{\"dsr\":[0,95,0,0]}'>-{H|0=>zh-cn:B}--{H|0=>zh-cn:C;0=>zh-cn:D}--{H|0=>zh-hans:A}-012345-{A|zh-tw:0;zh-cn:E;}-012345</p>");
add("wt2html", "Bidirectional converter rule entries with an empty value should be ignored (T53551)", "<p data-parsoid='{\"dsr\":[0,29,0,0]}'>-{H|zh-cn:foo;zh-tw:;}-foobar</p>");
add("wt2html", "Unidirectional converter rule entries with an empty \"from\" string should be ignored (T53551)", "<p data-parsoid='{\"dsr\":[0,24,0,0]}'>-{H|=>zh-cn:foo;}-foobar</p>");
add("wt2html", "Empty converter rule entries shouldn't be inserted into the conversion table (T53551)", "<p data-parsoid='{\"dsr\":[0,12,0,0]}'>-{H|}-foobar</p>");
add("wt2html", "Nested using of manual convert syntax", "<p data-parsoid='{\"dsr\":[0,113,0,0]}'>Nested: -{zh-hans:Hi -{zh-cn:China;zh-sg:Singapore;}-;zh-hant:Hello -{zh-tw:Taiwan;zh-hk:H-{ong}- K-{}-ong;}-;}-!</p>");
add("wt2html", "Proper conversion of text in external links", "<p data-parsoid='{\"dsr\":[0,269,0,0]}'><a rel=\"mw:ExtLink\" href=\"http://www.google.com\" data-parsoid='{\"stx\":\"url\",\"dsr\":[0,21,0,0]}'>http://www.google.com</a>\n<a rel=\"mw:ExtLink\" href=\"gopher://www.google.com\" data-parsoid='{\"stx\":\"url\",\"dsr\":[22,45,0,0]}'>gopher://www.google.com</a>\n<a rel=\"mw:ExtLink\" href=\"http://www.google.com\" data-parsoid='{\"targetOff\":69,\"contentOffsets\":[69,90],\"dsr\":[46,91,23,1]}'>http://www.google.com</a>\n<a rel=\"mw:ExtLink\" href=\"gopher://www.google.com\" data-parsoid='{\"targetOff\":117,\"contentOffsets\":[117,140],\"dsr\":[92,141,25,1]}'>gopher://www.google.com</a>\n<a rel=\"mw:ExtLink\" href=\"https://www.google.com\" data-parsoid='{\"targetOff\":166,\"contentOffsets\":[166,186],\"dsr\":[142,187,24,1]}'>irc://www.google.com</a>\n<a rel=\"mw:ExtLink\" href=\"ftp://www.google.com\" data-parsoid='{\"targetOff\":210,\"contentOffsets\":[210,234],\"dsr\":[188,235,22,1]}'>www.google.com/ftp://dir</a>\n<a rel=\"mw:ExtLink\" href=\"//www.google.com\" data-parsoid='{\"targetOff\":254,\"contentOffsets\":[254,268],\"dsr\":[236,269,18,1]}'>www.google.com</a></p>");
add("wt2html", "Do not convert roman numbers to language variants", "<p data-parsoid='{\"dsr\":[0,18,0,0]}'>Fridrih IV je car.</p>");
add("wt2html", "Don't convert raw rule \"-{R|=&gt;}-\" to \"=>\"", "<p data-parsoid='{\"dsr\":[0,11,0,0]}'>-{R|=<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;gt;\",\"srcContent\":\">\",\"dsr\":[5,9,null,null]}'>></span>}-</p>");
add("wt2html", "Don't break link parsing if language converter markup is in the caption.", "<p data-parsoid='{\"dsr\":[0,29,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main Page\"},\"dsr\":[0,29,12,2]}'>-{R|main page}-</a></p>");
add("wt2html", "Don't break image parsing if language converter markup is in the caption.", "<p data-parsoid='{\"dsr\":[0,33,0,0]}'><span class=\"mw-default-size\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"bogus\",\"ak\":\"-{R\"},{\"ck\":\"caption\",\"ak\":\"caption}-\"}],\"dsr\":[0,33,null,null]}' data-mw='{\"caption\":\"caption}-\"}'><a href=\"./Датотека:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./Датотека:Foobar.jpg\"},\"sa\":{}}'><img resource=\"./Датотека:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./Датотека:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a></span></p>");
add("wt2html", "Don't break list handling if language converter markup is in the item.", "<dl data-parsoid='{\"dsr\":[0,24,0,0]}'><dt data-parsoid='{\"dsr\":[0,8,1,0]}'>-{zh-cn</dt><dd data-parsoid='{\"stx\":\"row\",\"dsr\":[8,24,1,0]}'>AAA;zh-tw:BBB}-</dd></dl>");
add("wt2html", "Don't break table handling if language converter markup is in the cell.", "<table data-parsoid='{\"dsr\":[0,18,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[3,16,0,0]}'><tr data-parsoid='{\"startTagSrc\":\"|-\",\"autoInsertedEnd\":true,\"dsr\":[3,15,2,0]}'>\n<td data-parsoid='{\"a\":{\"-{R\":null},\"sa\":{\"-{R\":\"\"},\"autoInsertedEnd\":true,\"dsr\":[6,15,6,0]}'>B}-</td></tr>\n</tbody></table>");
add("wt2html", "Bug 529: Uncovered bullet in parser function result", "<ul data-parsoid='{\"dsr\":[0,24,0,0]}'><li data-parsoid='{\"dsr\":[0,24,1,0]}'> Foo <span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[6,24,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"lc:{{bullet}} \",\"function\":\"lc\"},\"params\":{},\"i\":0}}]}'> bar</span></li></ul>");
add("wt2html", "Bug 5678: Double-parsed template invocation", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,42,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"lc:{{paramtest {{!}} param = hello }} \",\"function\":\"lc\"},\"params\":{},\"i\":0}}]}'>{{paramtest  param = hello }}</p>");
add("wt2html", "Case insensitivity of parser functions for non-ASCII characters (bug 8143)", "<p data-parsoid='{\"dsr\":[0,135,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,19,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"PRVNÍVELKÉ:ěščř\",\"href\":\"./PRVNÍVELKÉ:ěščř\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for PRVNÍVELKÉ:ěščř</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt2\" data-parsoid='{\"dsr\":[20,39,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"prvnívelké:ěščř\",\"href\":\"./Prvnívelké:ěščř\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Prvnívelké:ěščř</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt3\" data-parsoid='{\"dsr\":[40,58,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"PRVNÍMALÉ:ěščř\",\"href\":\"./PRVNÍMALÉ:ěščř\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for PRVNÍMALÉ:ěščř</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt4\" data-parsoid='{\"dsr\":[59,77,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"prvnímalé:ěščř\",\"href\":\"./Prvnímalé:ěščř\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Prvnímalé:ěščř</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt5\" data-parsoid='{\"dsr\":[78,91,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"MALÁ:ěščř\",\"href\":\"./MALÁ:ěščř\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for MALÁ:ěščř</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt6\" data-parsoid='{\"dsr\":[92,105,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"malá:ěščř\",\"href\":\"./Malá:ěščř\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Malá:ěščř</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt7\" data-parsoid='{\"dsr\":[106,120,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"VELKÁ:ěščř\",\"href\":\"./VELKÁ:ěščř\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for VELKÁ:ěščř</span>\n<span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt8\" data-parsoid='{\"dsr\":[121,135,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"velká:ěščř\",\"href\":\"./Velká:ěščř\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Velká:ěščř</span></p>");
add("wt2html", "Nesting tags, paragraphs on lines which begin with <div>", "<div data-parsoid='{\"stx\":\"html\",\"dsr\":[0,11,5,6]}'></div><p data-parsoid='{\"dsr\":[11,20,0,0]}'><strong data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[11,20,8,0]}'>A</strong></p>\n<p data-parsoid='{\"dsr\":[21,31,0,0]}'><strong data-parsoid='{\"stx\":\"html\",\"autoInsertedStart\":true,\"dsr\":[21,31,0,9]}'>B</strong></p>");
add("wt2html", "Bug 6200: paragraphs inside blockquotes (no extra line breaks)", "<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[0,43,12,13]}'>Line one\n\nLine two</blockquote>");
add("wt2html", "Bug 6200: paragraphs inside blockquotes (extra line break on close)", "<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[0,44,12,13]}'>Line one\n\n<p data-parsoid='{\"dsr\":[22,30,0,0]}'>Line two</p>\n</blockquote>");
add("wt2html", "Free external link invading image caption", "<figure class=\"mw-default-size\" typeof=\"mw:Image/Thumb\" data-parsoid='{\"optList\":[{\"ck\":\"thumbnail\",\"ak\":\"thumb\"},{\"ck\":\"bogus\",\"ak\":\"http://x\"},{\"ck\":\"caption\",\"ak\":\"hello\"}],\"dsr\":[0,41,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[2,null,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/220px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"25\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"25\",\"width\":\"220\"},\"sa\":{\"resource\":\"Image:Foobar.jpg\"}}'/></a><figcaption data-parsoid='{\"dsr\":[null,39,null,null]}'>hello</figcaption></figure>");
add("wt2html", "formatdate parser function", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,26,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#formatdate:2009-03-24\",\"function\":\"#formatdate\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#formatdate missing in Parsoid.</p>");
add("wt2html", "formatdate parser function, with default format", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,30,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#formatdate:2009-03-24\",\"function\":\"#formatdate\"},\"params\":{\"1\":{\"wt\":\"mdy\"}},\"i\":0}}]}'>Parser function implementation for pf_#formatdate missing in Parsoid.</p>");
add("wt2html", "Spacing of numbers in formatted dates", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,26,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#formatdate:January 15\",\"function\":\"#formatdate\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#formatdate missing in Parsoid.</p>");
add("wt2html", "formatdate parser function, with default format and on a page of which the content language is always English and different from the wiki content language", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,30,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#formatdate:2009-03-24\",\"function\":\"#formatdate\"},\"params\":{\"1\":{\"wt\":\"dmy\"}},\"i\":0}}]}'>Parser function implementation for pf_#formatdate missing in Parsoid.</p>");
add("wt2html", "Bad images - basic functionality", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><span class=\"mw-default-size\" typeof=\"mw:Error mw:Image\" data-parsoid='{\"optList\":[],\"dsr\":[0,16,null,null]}' data-mw='{\"errors\":[{\"key\":\"missing-image\",\"message\":\"This image does not exist.\"}]}'><a href=\"./File:Bad.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Bad.jpg\"},\"sa\":{}}'><img resource=\"./File:Bad.jpg\" src=\"./Special:FilePath/Bad.jpg\" height=\"220\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Bad.jpg\",\"height\":\"220\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Bad.jpg\"}}'/></a></span></p>");
add("wt2html", "Bad images - bug 16039: text after bad image disappears", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'>Foo bar\n<span class=\"mw-default-size\" typeof=\"mw:Error mw:Image\" data-parsoid='{\"optList\":[],\"dsr\":[8,24,null,null]}' data-mw='{\"errors\":[{\"key\":\"missing-image\",\"message\":\"This image does not exist.\"}]}'><a href=\"./File:Bad.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Bad.jpg\"},\"sa\":{}}'><img resource=\"./File:Bad.jpg\" src=\"./Special:FilePath/Bad.jpg\" height=\"220\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Bad.jpg\",\"height\":\"220\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Bad.jpg\"}}'/></a></span>\nBar foo</p>");
add("wt2html", "Page status indicators: Empty name is invalid", "<p data-parsoid='{\"dsr\":[0,56,0,0]}'>&lt;indicator name=\" \">&lt;/indicator>\n&lt;indicator>&lt;/indicator></p>");
add("wt2html", "Page status indicators: Weird syntaxes that are okay", "<p data-parsoid='{\"dsr\":[0,62,0,0]}'>&lt;indicator name=\"empty\" />\n&lt;indicator name=\"name\">&lt;/indicator></p>");
add("wt2html", "Page status indicators: Torture test", "<p data-parsoid='{\"dsr\":[0,240,0,0]}'>&lt;indicator name=\"01\">hello world&lt;/indicator>\n&lt;indicator name=\"02\"><a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main Page\"},\"dsr\":[66,79,2,2]}'>Main Page</a>&lt;/indicator>\n&lt;indicator name=\"03\"><span typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"width\",\"ak\":\"25px\"},{\"ck\":\"link\",\"ak\":\"link=\"}],\"dsr\":[113,143,null,null]}'><span data-parsoid=\"{}\"><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/25px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"3\" width=\"25\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"3\",\"width\":\"25\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></span></span>&lt;/indicator>\n&lt;indicator name=\"04\"><span typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"width\",\"ak\":\"25px\"}],\"dsr\":[177,201,null,null]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{}}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/25px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"3\" width=\"25\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"3\",\"width\":\"25\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a></span>&lt;/indicator>\n&lt;indicator name=\"05\">* foo</p>\n<ul data-parsoid='{\"dsr\":[241,258,0,0]}'><li data-parsoid='{\"dsr\":[241,258,1,0]}'> bar&lt;/indicator></li></ul>\n<p data-parsoid='{\"dsr\":[259,359,0,0]}'>&lt;indicator name=\"06\"><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[280,300,8,9]}'>foo</span>&lt;/indicator>\n&lt;indicator name=\"07\"> Preformatted&lt;/indicator></p>\n<p data-parsoid='{\"dsr\":[360,381,0,0]}'>&lt;indicator name=\"08\"></p><div data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[381,519,5,0]}'>Broken tag&lt;/indicator>\n<p data-parsoid='{\"dsr\":[409,495,0,0]}'>&lt;indicator name=\"09\">{| class=wikitable\n| cell\n|}&lt;/indicator>\n&lt;indicator name=\"10\">Two</p>\n\n<p data-parsoid='{\"dsr\":[497,519,0,0]}'>paragraphs&lt;/indicator></p></div>");
add("wt2html", "Bug 31098 Template which includes system messages which includes the template", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,13,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"Identical\",\"href\":\"./Template:Identical\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_int missing in Parsoid.\nParser function implementation for pf_int missing in Parsoid.</p>");
add("wt2html", "Bug31490 Turkish: ucfirst 'ix'", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,14,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ucfirst:ix\",\"function\":\"ucfirst\"},\"params\":{},\"i\":0}}]}'>Ix</p>");
add("wt2html", "Bug31490 Turkish: ucfırst (with a dotless i)", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,16,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ucfırst:blah\",\"href\":\"./Ucfırst:blah\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Ucfırst:blah</span></p>");
add("wt2html", "Bug31490 ucfırst (with a dotless i) with English language", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><span typeof=\"mw:Transclusion mw:Placeholder\" about=\"#mwt1\" data-parsoid='{\"dsr\":[0,16,null,null],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"ucfırst:blah\",\"href\":\"./Ucfırst:blah\"},\"params\":{},\"i\":0}}]}'>Warning: Page/template fetching disabled, and no cache for Ucfırst:blah</span></p>");
add("wt2html", "Bug 33845: Headings become cursive in TOC when they contain an image", "<meta property=\"mw:PageProp/toc\" data-parsoid='{\"src\":\"__TOC__\",\"magicSrc\":\"__TOC__\",\"dsr\":[0,7,null,null]}'/>\n<h2 data-parsoid='{\"dsr\":[8,40,2,2]}'> Image <span class=\"mw-default-size\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[],\"dsr\":[17,37,null,null]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{}}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"Image:foobar.jpg\"}}'/></a></span> </h2>");
add("wt2html", "Bug 33845 (2): Headings become bold in TOC when they contain a blockquote", "<meta property=\"mw:PageProp/toc\" data-parsoid='{\"src\":\"__TOC__\",\"magicSrc\":\"__TOC__\",\"dsr\":[0,7,null,null]}'/>\n<h2 data-parsoid='{\"dsr\":[8,44,2,2]}'> <blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[11,41,12,13]}'>Quote</blockquote> </h2>");
add("wt2html", "Multiple tags in TOC", "<meta property=\"mw:PageProp/toc\" data-parsoid='{\"src\":\"__TOC__\",\"magicSrc\":\"__TOC__\",\"dsr\":[0,7,null,null]}'/>\n<h2 data-parsoid='{\"dsr\":[8,35,2,2]}'> <i data-parsoid='{\"stx\":\"html\",\"dsr\":[11,21,3,4]}'>Foo</i> <b data-parsoid='{\"stx\":\"html\",\"dsr\":[22,32,3,4]}'>Bar</b> </h2>\n\n<h2 data-parsoid='{\"dsr\":[37,82,2,2]}'> <i data-parsoid='{\"stx\":\"html\",\"dsr\":[40,50,3,4]}'>Foo</i> <blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[51,79,12,13]}'>Bar</blockquote> </h2>");
add("wt2html", "span tags with directionality in TOC", "<meta property=\"mw:PageProp/toc\" data-parsoid='{\"src\":\"__TOC__\",\"magicSrc\":\"__TOC__\",\"dsr\":[0,7,null,null]}'/>\n<h2 data-parsoid='{\"dsr\":[8,40,2,2]}'> <span dir=\"ltr\" data-parsoid='{\"stx\":\"html\",\"dsr\":[11,37,16,7]}'>C++</span> </h2>\n\n<h2 data-parsoid='{\"dsr\":[42,76,2,2]}'> <span dir=\"rtl\" data-parsoid='{\"stx\":\"html\",\"dsr\":[45,73,16,7]}'>זבנג!</span> </h2>\n\n<h2 data-parsoid='{\"dsr\":[78,186,2,2]}'> <span style=\"font-style: italic\" data-parsoid='{\"stx\":\"html\",\"dsr\":[81,183,33,7]}'>The attributes on these span tags must be deleted from the TOC</span> </h2>\n\n<h2 data-parsoid='{\"dsr\":[188,306,2,2]}'> <span style=\"font-style: italic\" dir=\"ltr\" data-parsoid='{\"stx\":\"html\",\"dsr\":[191,303,43,7]}'>All attributes on these span tags must be deleted from the TOC</span> </h2>\n\n<h2 data-parsoid='{\"dsr\":[308,432,2,2]}'> <span dir=\"ltr\" style=\"font-style: italic\" data-parsoid='{\"stx\":\"html\",\"dsr\":[311,429,43,7]}'>Attributes after dir on these span tags must be deleted from the TOC</span> </h2>");
add("wt2html", "Empty <p> tag in TOC, removed by Sanitizer (T92892)", "<meta property=\"mw:PageProp/toc\" data-parsoid='{\"src\":\"__TOC__\",\"magicSrc\":\"__TOC__\",\"dsr\":[0,7,null,null]}'/>\n<h2 data-parsoid='{\"dsr\":[8,15,2,2]}'> x </h2>");
add("wt2html", "Bug 32057: Title needed when expanding <h> nodes.", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,16,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"int:Bug32057\",\"function\":\"int\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_int missing in Parsoid.</p>");
add("wt2html", "Check noCommafy in formatNum", "<p data-parsoid='{\"dsr\":[0,53,0,0]}'><span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[0,23,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"formatnum:123456.78\",\"function\":\"formatnum\"},\"params\":{},\"i\":0}}]}'>123456.78</span>\n<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[24,53,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"formatnum:123456.78\",\"function\":\"formatnum\"},\"params\":{\"1\":{\"wt\":\"NOSEP\"}},\"i\":0}}]}'>123456.78</span></p>");
add("wt2html", "Wrong option for formatNum (bug 56199)", "<p data-parsoid='{\"dsr\":[0,126,0,0]}'><span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[0,29,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"formatnum:1,234.56\",\"function\":\"formatnum\"},\"params\":{\"1\":{\"wt\":\"Random\"}},\"i\":0}}]}'>1,234.56</span>\n<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[30,63,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"formatnum:1,234.56\",\"function\":\"formatnum\"},\"params\":{\"1\":{\"wt\":\"EVERYTHING\"}},\"i\":0}}]}'>1,234.56</span>\n<span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[64,126,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"formatnum:1234.56\",\"function\":\"formatnum\"},\"params\":{\"1\":{\"wt\":\"any argument that has the string &#39;NOSEP&#39;\"}},\"i\":0}}]}'>1234.56</span></p>");
add("wt2html", "Strip marker in grammar", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,35,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"grammar:elative\",\"function\":\"grammar\"},\"params\":{\"1\":{\"wt\":\"foo&lt;nowiki/>bar\"}},\"i\":0}}]}'>Parser function implementation for pf_grammar missing in Parsoid.</p>");
add("wt2html", "Gallery override link with WikiLink (bug 34852)", "<p data-parsoid='{\"dsr\":[0,78,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery>\\nFile:foobar.jpg|caption|alt=galleryalt|link=InterWikiLink\\n&lt;/gallery>\",\"tagWidths\":[9,10],\"autoInsertedEnd\":true,\"dsr\":[0,78,9,0]}'>&lt;gallery>\nFile:foobar.jpg|caption|alt=galleryalt|link=InterWikiLink\n&lt;/gallery></span></p>");
add("wt2html", "Gallery override link with absolute external link (bug 34852)", "<p data-parsoid='{\"dsr\":[0,87,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery>\\nFile:foobar.jpg|caption|alt=galleryalt|link=http://www.example.org\\n&lt;/gallery>\",\"tagWidths\":[9,10],\"autoInsertedEnd\":true,\"dsr\":[0,87,9,0]}'>&lt;gallery>\nFile:foobar.jpg|caption|alt=galleryalt|link=http://www.example.org\n&lt;/gallery></span></p>");
add("wt2html", "Gallery override link with malicious javascript (bug 34852)", "<p data-parsoid='{\"dsr\":[0,112,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery>\\nFile:foobar.jpg|caption|alt=galleryalt|link=\\\" onclick=\\\"alert(&#39;malicious javascript code!&#39;);\\n&lt;/gallery>\",\"tagWidths\":[9,10],\"autoInsertedEnd\":true,\"dsr\":[0,112,9,0]}'>&lt;gallery>\nFile:foobar.jpg|caption|alt=galleryalt|link=\" onclick=\"alert('malicious javascript code!');\n&lt;/gallery></span></p>");
add("wt2html", "Gallery with invalid title as link (bug 43964)", "<p data-parsoid='{\"dsr\":[0,43,0,0]}'><span typeof=\"mw:Extension/gallery\" about=\"#mwt1\" data-parsoid='{\"stx\":\"html\",\"src\":\"&lt;gallery>\\nFile:foobar.jpg|link=&lt;\\n&lt;/gallery>\",\"tagWidths\":[9,10],\"autoInsertedEnd\":true,\"dsr\":[0,43,9,0]}'>&lt;gallery>\nFile:foobar.jpg|link=&lt;\n&lt;/gallery></span></p>");
add("wt2html", "Language parser function", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,16,0,0],\"pi\":[[]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#language:ar\",\"function\":\"#language\"},\"params\":{},\"i\":0}}]}'>ar</p>");
add("wt2html", "Special parser function", "<p data-parsoid='{\"dsr\":[0,65,0,0]}'><span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[0,23,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#special:RandomPage\",\"function\":\"#special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#special missing in Parsoid.</span>\n<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[24,45,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#special:BaDtItLe\",\"function\":\"#special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#special missing in Parsoid.</span>\n<span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[]],\"dsr\":[46,65,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"#special:Foobar\",\"function\":\"#special\"},\"params\":{},\"i\":0}}]}'>Parser function implementation for pf_#special missing in Parsoid.</span></p>");
add("wt2html", "1. SOL-sensitive wikitext tokens as template-args", "<p data-parsoid='{\"dsr\":[0,35,0,0]}'><span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[0,11,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"*a\"}},\"i\":0}}]}'>*a</span>\n<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[12,23,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"#a\"}},\"i\":0}}]}'>#a</span>\n<span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[24,35,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\":a\"}},\"i\":0}}]}'>:a</span></p>");
add("wt2html", "Empty table rows go away", "<table data-parsoid='{\"dsr\":[0,39,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[3,37,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,18,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,10,1,0]}'> Hello</td>\n<td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[11,18,1,0]}'> there</td></tr>\n<tr class=\"foo\" data-parsoid='{\"startTagSrc\":\"|-\",\"autoInsertedEnd\":true,\"dsr\":[19,33,14,0]}'></tr>\n<tr data-parsoid='{\"startTagSrc\":\"|-\",\"autoInsertedEnd\":true,\"dsr\":[34,36,2,0]}'></tr>\n</tbody></table>");


// Blacklist for wt2wt
add("wt2wt", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up)", "{|\n!''a''!!''b''\n|''a''||''b''\n|}");
add("wt2wt", "Non-word characters don't terminate tag names (bug 17663, 40670, 52022)", "<blockquote|>a\n\n<b→> doesn't terminate </b→>\n\n<bä> doesn't terminate </bä>\n\n<boo> doesn't terminate </boo>\n\n<s.foo> doesn't terminate </s.foo>\n\n<sub-ID#1>\n");
add("wt2wt", "Non-word characters don't terminate tag names + tidy", "<blockquote|>a\n\n<b→> doesn't terminate </b→>\n\n<bä> doesn't terminate </bä>\n\n<boo> doesn't terminate </boo>\n\n<s.foo> doesn't terminate </s.foo>\n\n<sub-ID#1>\n");
add("wt2wt", "<nowiki> inside <pre> (bug 13238)", "<pre>\n<nowiki>\n</pre>\n<pre>\n<nowiki></nowiki>\n</pre>\n<pre><nowiki>&lt;nowiki&gt;</nowiki>Foo<nowiki></nowiki></nowiki></pre>");
add("wt2wt", "<nowiki> and <pre> preference (first one wins)", "<pre>\n<nowiki>\n</pre>\n</nowiki>\n</pre>\n\n<nowiki>\n<pre>\n&lt;nowiki&gt;\n</pre>\n</nowiki>\n</pre>\n");
add("wt2wt", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content", "{{echo| }}a\n\n{{echo|\n }}a\n\n{{echo|\n b}}\n\n{{echo|a\n }}b\n\n{{echo|a\n}}\n b\n");
add("wt2wt", "Templates: Handle comments in the target", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->|foo}}\n\n{{echo|foo}}");
add("wt2wt", "4. Indent-Pre and extension tags", " a <gallery>\n File:foobar.jpg\n </gallery>\n");
add("wt2wt", "Definition lists: self-closed tag", ";one<br />two : two-line fun");
add("wt2wt", "Definition Lists: colons occurring in tags", ";a:b\n;'''a:b'''\n;<i>a:b</i>\n;<span>a:b</span>\n;<div>a:b</div>\n;<div>a\n:b\n;{{echo|a:b}}\n;{{echo|''a:b''}}\n;;;''a:b''\n");
add("wt2wt", "BUG 289: \">\"-token in bracketed URL", "[http://www.example.com/ <hello> stuff]\n");
add("wt2wt", "BUG 289: literal \">\"-token in bracketed URL", "[http://www.example.com/ <b>html</b> stuff]\n");
add("wt2wt", "BUG 289: literal double quote in bracketed URL", "[http://www.example.com/ \"hello\" stuff]\n");
add("wt2wt", "External links: multiple legal whitespace is fine, Magnus. Don't break it please. (bug 5081)", "[http://www.example.com test]\n");
add("wt2wt", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid", "''[http://example.com text''<nowiki/>'']''\n[http://example.com '''text''']'''<nowiki/>'''\n''Something [http://example.com in italic''<nowiki/>'']''\n''Something [http://example.com mixed''''', even bold''''']'''\n'''''Now [http://example.com both'''''<nowiki/>''''']'''''\n");
add("wt2wt", "External link containing double-single-quotes with no space separating the url from text in italics", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm ''La muerte de Casagemas'' (1901) en el sitio de ][[Museo Picasso (París)|Museo Picasso]].\n");
add("wt2wt", "Unclosed and unmatched quotes", "'''''Bold italic text '''with bold deactivated''' in between.'''''\n\n'''''Bold italic text ''with italic deactivated'' in between.'''''\n\n'''Bold text..'''\n\n..spanning two paragraphs (should not work).'''<nowiki/>'''\n\n'''Bold tag left open'''\n\n''Italic tag left open''\n\nNormal text.\n\n<!-- Unmatching number of opening, closing tags: -->\n'''This year'<nowiki/>'''s election ''should'' beat '''last year''''s.\n\n''Tom'''s car is bigger than '''''<nowiki/>'''Susan'''s.\n\nPlain ''italic'''s plain\n");
add("wt2wt", "A table with captions with non-default spaced attributes and a table row", "{|\n|+ style=\"color: red;\" |caption2\n|+ style=\"color: red;\" | caption3\n|-\n| foo\n|}");
add("wt2wt", "Table td-cell syntax variations", "{|\n| foo bar | baz\n| foo bar foo || baz\n| style=\"color:red;\" | baz\n| style='color:red;' || baz\n|}");
add("wt2wt", "Allow +/- in 2nd and later cells in a row, in 1st cell when td-attrs are present, or in 1st cell when there is a space between \"|\" and +/- ", "{|\n|-\n| style=\"color:red;\" |+1\n| style=\"color:blue;\" |-1\n|-\n| 1 || 2 || 3\n| 1 ||+2 ||-3\n|-\n| +1\n| -1\n|}");
add("wt2wt", "Table rowspan", "{| border=\"1\"\n| Cell 1, row 1\n| rowspan=\"2\" | Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n| Cell 1, row 2\n| Cell 3, row 2\n|}");
add("wt2wt", "Nested table", "{| border=\"1\"\n| &alpha;\n|\n{| bgcolor=\"#ABCDEF\" border=\"2\"\n|nested\n|-\n|table\n|}\n|the original table again\n|}");
add("wt2wt", "Invalid attributes in table cell (bug 1830)", "{|\n| Cell: |broken\n|}");
add("wt2wt", "! and || in element attributes should not be parsed as <th>/<td>", "{|\n| <div style=\"color: red !important;\" data-contrived=\"put this here ||\">hi\n|}");
add("wt2wt", "Build table with {{!}}", "{{{!}} class=\"wikitable\"\n! header\n! second header\n{{!}}- style=\"color:red;\"\n{{!}} data {{!}}{{!}} style=\"color:red;\"{{!}} second data\n{{!}}}");
add("wt2wt", "Build table with pipe as data", "{| class=\"wikitable\"\n! header\n! second header\n|- style=\"color:red;\"\n| data || style=\"color:red;\" | second data\n|-\n| style=\"color:red;\" |<nowiki> data with | </nowiki>|| style=\"color:red;\" | second data with |\n|-\n||<nowiki> data with | </nowiki>||| second data with |\n|}");
add("wt2wt", "Piped link with multiple pipe characters in link text", "[[Main Page|<nowiki>|The|Main|Page|</nowiki>]]\n");
add("wt2wt", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved", "[[Foo|  bar]]\n\n[[Foo|  ''bar'']]\n\n[http://wp.org foo]\n\n[http://wp.org ''foo'']\n");
add("wt2wt", "Handling html with a div self-closing tag", "<div title=\"\" />\n<div title=\"\" />\n<div title=\"\" />\n<div title=\"bar\" />\n<div title=\"bar\" />\n<div title=\"bar/\">");
add("wt2wt", "Handling html with a br self-closing tag", "<br title=\"\" />\n<br title=\"\" />\n<br title=\"\" />\n<br title=\"bar\" />\n<br title=\"bar\" />\n<br title=\"bar/\">\n");
add("wt2wt", "Horizontal ruler (should it add that extra space?)", "<hr>\n<hr>\nfoo <hr> bar\n");
add("wt2wt", "Nested lists 3 (first element empty)", "\n**bar\n");
add("wt2wt", "Nested lists 6 (both elements empty)", "\n**\n");
add("wt2wt", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up)", "<span>\n*a<span>\n*b");
add("wt2wt", "Template with invalid target containing tags", "<nowiki>{{a</nowiki><b>b</b>|{{echo|foo}}|{{echo|a}}={{echo|b}}<nowiki>|a =b}}</nowiki>\n");
add("wt2wt", "Template with invalid target containing unclosed tag", "<nowiki>{{a</nowiki><b>|{{echo|foo}}|{{echo|a}}={{echo|b}}<nowiki>|a =b}}</nowiki>\n");
add("wt2wt", "Template with invalid target containing wikilink", "<nowiki>{{</nowiki>[[Main Page]]<nowiki>}}</nowiki>\n");
add("wt2wt", "Template with just whitespace in it, bug #68421", "{{echo|{{ }<nowiki>}</nowiki>}}");
add("wt2wt", "Template with argument in separate line", "{{templateasargtest  |\n templ = simple }}");
add("wt2wt", "BUG 553: link with two variables in a piped link", "{|\n|[[{{{1}}}<nowiki>|</nowiki>{{{2}}}<nowiki>]]</nowiki>\n|}");
add("wt2wt", "Abort table cell attribute parsing on wikilink", "{|\n| testing [[one|two]]<nowiki> | three </nowiki>|| four\n| testing one two | three || four\n| testing=\"[[one|two]]<nowiki>\" | three </nowiki>|| four\n|}");
add("wt2wt", "Template with targets containing wikilinks", "<nowiki>{{</nowiki>[[foo]]<nowiki>}}</nowiki>\n\n<nowiki>{{</nowiki>[[{{echo|foo}}]]<nowiki>}}</nowiki>\n\n{{{{echo|[[foo}}]]}}\n");
add("wt2wt", "2. includeonly in html attr value", "<span id=\"<noinclude>v1</noinclude><includeonly>v2</includeonly>\">bar</span>\n<span id=\"<noinclude>&quot;v1&quot;</noinclude><includeonly>&quot;v2&quot;</includeonly>\">bar</span>\n");
add("wt2wt", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR", "{{echo|}}\n{| width=\"100%\"\n|foo\n|}");
add("wt2wt", "Templates: HTML Tag: 2. Generation of HTML attr. value", "<div style=\"{{echo|'color:red;'}}\">foo</div>");
add("wt2wt", "Templates: HTML Tag: 3. Generation of HTML attr key and value", "<div {{echo|style}}=\"{{echo|'color:red;'}}\">foo</div>");
add("wt2wt", "Templates: HTML Tag: 9. Multiple template-generated attributes", "<div {{echo|1=id=\"v1\" title=\"foo\"}} title=\"foo\">bar</div>");
add("wt2wt", "Templates: HTML Tables: 5. Proper fostering of categories from inside", "[[Category:foo1]]\n<table><tr><td>foo</td></tr></table>\n<!--Two categories (Bug 50330)-->\n[[Category:bar1]]\n[[Category:bar2]]\n<table><tr><td>foo</td></tr></table>");
add("wt2wt", "Allow empty links in image captions (Bug 60753)", "[[File:Foobar.jpg|thumb|Caption [[Link1]]\n<nowiki>[[]]</nowiki>\n[[Link2]]\n]]");
add("wt2wt", "Image with multiple attributes from the same template", "[[File:Foobar.jpg|right|Caption text]]");
add("wt2wt", "Image with multiple widths -- use last", "[[File:Foobar.jpg|300px|caption]]\n");
add("wt2wt", "Render invalid page names as plain text (bug 51090)", "[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n<nowiki>[[foo~~~bar]]</nowiki>\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\n[[{{echo|./../foo}}<nowiki>|bar]]</nowiki>\n[[{{echo|foo/.}}<nowiki>|bar]]</nowiki>\n[[{{echo|foo/..}}<nowiki>|bar]]</nowiki>\n[[{{echo|foo~~~~bar}}<nowiki>]]</nowiki>\n[[{{echo|foo>bar}}<nowiki>]]</nowiki>\n[[{{echo|foo././bar}}<nowiki>]]</nowiki>\n[[{{echo|foo{bar}}<nowiki>]]</nowiki>\n[[{{echo|foo}bar}}<nowiki>]]</nowiki>\n[[{{echo|foo[bar}}<nowiki>]]</nowiki>\n[[{{echo|foo]bar}}<nowiki>]]</nowiki>\n[[{{echo|foo<bar}}<nowiki>]]</nowiki>\n");
add("wt2wt", "Handling of sections up to level 6 and beyond", "= Level 1 Heading=\n== Level 2 Heading==\n=== Level 3 Heading===\n==== Level 4 Heading====\n===== Level 5 Heading=====\n====== Level 6 Heading======\n======<nowiki>= Level 7 Heading=</nowiki>======\n======<nowiki>== Level 8 Heading==</nowiki>======\n======<nowiki>=== Level 9 Heading===</nowiki>======\n======<nowiki>==== Level 10 Heading====</nowiki>======\n");
add("wt2wt", "div with single-quoted attribute", "<div id=\"rock\">HTML rocks</div>");
add("wt2wt", "div with unquoted attribute", "<div id=\"rock\">HTML rocks</div>");
add("wt2wt", "div with illegal double attributes", "<div id=\"b\">HTML rocks</div>");
add("wt2wt", "HTML multiple attributes correction", "<p class=\"awesome\">Awesome!</p>");
add("wt2wt", "Table multiple attributes correction", "{|\n! class=\"awesome\" + | status\n|}");
add("wt2wt", "DIV IN UPPERCASE", "<DIV id=\"x\">HTML ROCKS</DIV>");
add("wt2wt", "Media link with nasty text", "[[Media:Foobar.jpg|Safe Link]]<div style=\"display:none\">[[Media:Foobar.jpg|\" onmouseover=\"alert(document.cookie)\" onfoo=\"]]</div>\n");
add("wt2wt", "Empty attribute crash test single-quotes (bug 2067)", "<font color=\"\">foo</font>\n");
add("wt2wt", "Attribute test: unquoted but illegal value (hash)", "<font color=\"#x\">foo</font>\n");
add("wt2wt", "Bug 2095: link with pipe and three closing brackets, version 2", "[[Main Page|<nowiki>[http://example.com/]</nowiki>]]\n");
add("wt2wt", "Opera -o-link CSS", "<div title=\"&#100;&#97;&#116;&#97;&#58;&#116;&#101;&#120;&#116;&#47;&#104;&#116;&#109;&#108;&#44;&#60;&#105;&#109;&#103;&#32;&#115;&#114;&#99;&#61;&#49;&#32;&#111;&#110;&#101;&#114;&#114;&#111;&#114;&#61;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;&#62;\" style=\"-o-link:attr(title);-o-link-source:current\">X</div>");
add("wt2wt", "Table attribute legitimate extension", "{|\n! style=\"<nowiki>color:blue</nowiki>\" + | status\n|}");
add("wt2wt", "Table attribute safety", "{|\n! style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\" + | status\n|}");
add("wt2wt", "Parser hook: nested tags", "<tag><tag></tag><nowiki></tag></nowiki>");
add("wt2wt", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata", "<div itemscope=\"\">\n\t<nowiki><meta itemprop=\"hello\" content=\"world\"></nowiki>\n\t<nowiki><meta http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><link itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n</div>");
add("wt2wt", "Fuzz testing: Parser13", "{| \n| http: / a |\n|}");
add("wt2wt", "Fuzz testing: Parser16", "{|\n!https://||||||\n|}");
add("wt2wt", "Fuzz testing: Parser21", "{|\n! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n|\n|}");
add("wt2wt", "Fuzz testing: Parser22", "http://===r:::https://b\n\n{|\n|}");
add("wt2wt", "Fuzz testing: Parser24", "<nowiki>{{{|</nowiki>\n<u class=\"|\" {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}}>\n<br style=\"onmouseover='alert(document.cookie);' \" />\n\nMOVE YOUR MOUSE CURSOR OVER THIS TEXT\n{|\n\n|\n|}");
add("wt2wt", "Inline wiki vs wiki block nesting", "'''Bold paragraph'''\n\nNew wiki paragraph\n");
add("wt2wt", "Mixing markup for italics and bold", "'<nowiki/>''bold'<nowiki/>'''''bold''bolditalics'''''\n");
add("wt2wt", "Illegal character references (T106578)", "; Null: &#00;\n; FF: &#xC;\n; CR: &#x0A;\n; Control (low): &#8;\n; Control (high): &#x7F; &#x9F;\n; Surrogate: &#xD83D;&#xDCA9;\n; This is an okay astral character: &#x1F4A9;");
add("wt2wt", "Image with page parameter", "[[File:LoremIpsum.djvu]]\n");
add("wt2wt", "Don't fall for the self-closing div", "<div>hello world</div>");
add("wt2wt", "Parsing of overlapping (improperly nested) inline html tags", "<span><s>x</span>\n");
add("wt2wt", "Don't break table handling if language converter markup is in the cell.", "{|\n|-\n| -{R |B}-\n|}");
add("wt2wt", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy", "******* Foo \n{{bullet}}");
add("wt2wt", "HHP2.1: Heuristics for headings in preprocessor parenthetical structures", "<nowiki>{{foo|</nowiki>\n=heading=\n");
add("wt2wt", "HHP2.2: Heuristics for headings in preprocessor parenthetical structures", "<nowiki>{{foo|</nowiki>\n==heading==\n");
add("wt2wt", "Bug 19052 U+3000 IDEOGRAPHIC SPACE should terminate bracketed external links", "[http://www.example.org/ ideograms]\n");
add("wt2wt", "Ignore pipe between table row attributes", "{|\n| quux\n|- id=\"foo\" style=\"color: red\" |\n| bar\n|}");
add("wt2wt", "2. Bad treebuilder fixup of formatting elt is cleaned up", "'''foo'''[[File:Foobar.jpg|thumb|'''caption''']]'''bar'''\n\n<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("wt2wt", "3. Bad treebuilder fixup of formatting elt is cleaned up", "<small>'''foo'''[[File:Foobar.jpg|thumb|'''caption''']]'''bar'''</small>\n");
add("wt2wt", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored", "'''<small>'''[[Image:Foobar.jpg|right|300px]]\n");
add("wt2wt", "Ref: 3. spaces in ref-names should be ignored", "A <ref name=\"x\">foo</ref>\nB <ref name=\"x\" />\nC <ref name=\"x\" />\n<references />");
add("wt2wt", "Ref: 5. body should accept generic wikitext", "A <ref>This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\n<references />");
add("wt2wt", "Ref: 6. indent-pres should not be output in ref-body", "A <ref>foo\n bar\n baz\n</ref>\n\n<references />");
add("wt2wt", "Ref: 7. No p-wrapping in ref-body", "A <ref>foo\nbar\nbaz\nbooz\n</ref>\n\n<references />");
add("wt2wt", "Ref: 8. transclusion wikitext has lower precedence", "A <ref><nowiki>foo {{echo|</nowiki></ref><nowiki> B C}}</nowiki>\n\n<references />");
add("wt2wt", "Ref: 9. unclosed comments should not leak out of ref-body", "A <ref>foo <!----></ref> B C\n<references />");
add("wt2wt", "Ref: 10. Unclosed HTML tags should not leak out of ref-body", "A <ref><b> foo </ref> B C\n\n<references />");
add("wt2wt", "Ref: 19. ref-tags with identical name encodings should get identical indexes", "1 <ref name=\"a & b\">foo</ref> 2 <ref name=\"a &amp;amp; b\" />\n\n<references />");
add("wt2wt", "References: 9. Generate missing references list at the end", "A <ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>\n<references />\n<references group=\"inexistent\" />");
add("wt2wt", "Entities in ref name", "<ref name=\"test &amp;amp; me\">hi</ref>\n<references />");
add("wt2wt", "Trailing newlines in a deep dom-subtree that ends a wikitext line should be migrated out", "{|\n|<small>foo\n\nbar\n|}\n\n{|\n|<small>foo<small>\n|}");
add("wt2wt", "Empty TD followed by TD with tpl-generated attribute", "{|\n|-\n|\n| {{echo|style='color:red'}} |foo\n|}");
add("wt2wt", "Improperly nested inline or quotes tags with whitespace in between", "<span> <s>x</span> </s>\n''' ''x'''''<nowiki/>'' ''\n");
add("wt2wt", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost)", "<nowiki> </nowiki><nowiki>||</nowiki> <nowiki>||</nowiki>\n<table>\n<tr><td> a\n</table>");
add("wt2wt", "8. Encapsulate foster-parented transclusion content", "{{echo|a\n}}\n{|{{echo|style='color:red'}}\n|-\n|b\n|}\n");
add("wt2wt", "T73074: More fostering fun", "[[Category:Two]]\n<table><td></td>{{echo|<tr>}}<!--c-->[[Category:Two]]");
add("wt2wt", "Image: upright option is ignored on inline and frame images (parsoid)", "[[File:Foobar.jpg|500x500px|caption]]\n");


// Blacklist for html2html
add("html2html", "Extra newlines followed by heading", "<p data-parsoid='{\"dsr\":[0,1,0,0]}'>a</p>\n\n<p data-parsoid='{\"dsr\":[3,3,0,0]}'><br data-parsoid='{\"dsr\":[3,3,0,0]}'/></p>\n\n<h1 data-parsoid='{\"dsr\":[5,10,1,1]}'> b </h1>\n<p data-parsoid='{\"dsr\":[11,55,0,0]}'>[/index.php?title=A&amp;action=edit&amp;redlink=1 a]</p>\n\n<p data-parsoid='{\"dsr\":[57,57,0,0]}'><br data-parsoid='{\"dsr\":[57,57,0,0]}'/></p>\n\n<h1 data-parsoid='{\"dsr\":[59,64,1,1]}'> b </h1>\n");
add("html2html", "Extra newlines between heading and content are swallowed", "<h1 data-parsoid='{\"dsr\":[0,5,1,1]}'> b </h1>\n<p data-parsoid='{\"dsr\":[6,50,0,0]}'>[/index.php?title=A&amp;action=edit&amp;redlink=1 a]</p>\n");
add("html2html", "Parsing an URL", "<p data-parsoid='{\"dsr\":[0,42,0,0]}'><a rel=\"mw:ExtLink\" href=\"http://fr.wikipedia.org/wiki/🍺\" title=\"fr:🍺\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"http://fr.wikipedia.org/wiki/🍺\"},\"sa\":{\"href\":\":fr:🍺\"},\"isIW\":true,\"dsr\":[0,42,9,2]}'>http://fr.wikipedia.org/wiki/🍺</a></p>\n");
add("html2html", "Italics and possessives (1)", "<p data-parsoid='{\"dsr\":[0,115,0,0]}'>obtained by <i data-parsoid='{\"dsr\":[12,91,2,2]}'>[/index.php?title=Lunar_Prospector&amp;action=edit&amp;redlink=1 Lunar Prospector]'</i>s gamma-ray spectrometer</p>\n");
add("html2html", "Italics and possessives (3)", "<p data-parsoid='{\"dsr\":[0,421,0,0]}'>The first monolingual dictionary written in a Romance language was <i data-parsoid='{\"dsr\":[67,93,2,2]}'>Sebastián Covarrubias'</i> <i data-parsoid='{\"dsr\":[94,139,2,2]}'>Tesoro de la lengua castellana o española</i>, published in 1611 in Madrid. In 1612 the first edition of the <i data-parsoid='{\"dsr\":[203,310,2,2]}'>Vocabolario dell'[/index.php?title=Accademia_della_Crusca&amp;action=edit&amp;redlink=1 Accademia della Crusca]</i>, for Italian, was published. In 1690 in Rotterdam was published, posthumously, the <i data-parsoid='{\"dsr\":[394,420,2,2]}'>Dictionnaire Universel</i>.</p>\n");
add("html2html", "Preformatted text", "<pre data-parsoid='{\"dsr\":[0,96,1,0]}'>This is some\nPreformatted text\nWith <i data-parsoid='{\"dsr\":[39,49,2,2]}'>italic</i>\nAnd <b data-parsoid='{\"dsr\":[55,65,3,3]}'>bold</b>\nAnd a <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[73,96,17,2]}'>link</a></pre>\n");
add("html2html", "Bug 52763: Preformatted in <blockquote>", "<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[0,77,12,13]}'>\n<p data-parsoid='{\"dsr\":[13,18,0,0]}'> Blah</p>\n\n<table data-parsoid='{\"dsr\":[20,63,2,2]}'>\n\n<tbody data-parsoid='{\"dsr\":[24,61,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[24,59,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[24,59,1,0]}'>\n<pre data-parsoid='{\"dsr\":[26,59,1,0]}'>indented cell (no pre-wrapping!)</pre></td></tr>\n\n</tbody></table>\n</blockquote>\n");
add("html2html", "<pre> with attributes (bug 3202)", "<pre data-parsoid='{\"dsr\":[0,24,1,0]}'>Bluescreen of WikiDeath</pre>\n");
add("html2html", "<pre> with width attribute (bug 3202)", "<pre data-parsoid='{\"dsr\":[0,22,1,0]}'>Narrow screen goodies</pre>\n");
add("html2html", "<pre> with forbidden attribute (bug 3202)", "<pre data-parsoid='{\"dsr\":[0,22,1,0]}'>Narrow screen goodies</pre>\n");
add("html2html", "<pre> with forbidden attribute values (bug 3202)", "<pre data-parsoid='{\"dsr\":[0,22,1,0]}'>Narrow screen goodies</pre>\n");
add("html2html", "<nowiki> inside <pre> (bug 13238)", "<pre data-parsoid='{\"dsr\":[0,15,1,0]}'><span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;lt;\",\"srcContent\":\"&lt;\",\"dsr\":[1,5,null,null]}'>&lt;</span>nowiki<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;gt;\",\"srcContent\":\">\",\"dsr\":[11,15,null,null]}'>></span></pre>\n\n <p data-parsoid='{\"dsr\":[18,18,0,0]}'><br data-parsoid='{\"dsr\":[18,18,0,0]}'/></p>\n\n<pre data-parsoid='{\"dsr\":[20,53,1,0]}'><span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;lt;\",\"srcContent\":\"&lt;\",\"dsr\":[21,25,null,null]}'>&lt;</span>nowiki<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;gt;\",\"srcContent\":\">\",\"dsr\":[31,35,null,null]}'>></span>Foo<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;lt;\",\"srcContent\":\"&lt;\",\"dsr\":[38,42,null,null]}'>&lt;</span>/nowiki<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;gt;\",\"srcContent\":\">\",\"dsr\":[49,53,null,null]}'>></span></pre>\n");
add("html2html", "<nowiki> and <pre> preference (first one wins)", "<pre data-parsoid='{\"stx\":\"html\",\"strippedNL\":true,\"dsr\":[0,21,5,6]}'>&lt;nowiki>\n</pre>\n<p data-parsoid='{\"dsr\":[22,38,0,0]}'><span typeof=\"mw:Placeholder\" data-parsoid='{\"src\":\"&lt;/nowiki>\",\"dsr\":[22,31,null,0]}'>&lt;/nowiki></span>\n&lt;/pre></p>\n\n<p data-parsoid='{\"dsr\":[40,93,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[40,86,8,9]}'>\n&lt;pre>\n<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;lt;\",\"srcContent\":\"&lt;\",\"dsr\":[55,59,null,null]}'>&lt;</span>nowiki<span typeof=\"mw:Entity\" data-parsoid='{\"src\":\"&amp;gt;\",\"srcContent\":\">\",\"dsr\":[65,69,null,null]}'>></span>\n&lt;/pre>\n</span>\n&lt;/pre></p>\n");
add("html2html", "Templates: Handle comments in the target", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,39,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo &lt;!-- should be ignored -->\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\"}},\"i\":0}}]}'>foo</p>\n\n<p about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[41,79,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo&lt;!-- should be ignored -->\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\"}},\"i\":0}}]}'>foo</p>\n\n<p about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[81,119,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo&lt;!-- should be ignored -->\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\"}},\"i\":0}}]}'>foo</p>\n\n<p about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[121,133,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\"}},\"i\":0}}]}'>foo</p>");
add("html2html", "Templates: Handle comments in parameter names (bug 67657)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,41,0,0],\"pi\":[[{\"k\":\"1\",\"named\":true}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\",\"key\":{\"wt\":\"1 &lt;!-- should be ignored -->\"}}},\"i\":0}}]}'>foo</p>\n\n<p about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[43,84,0,0],\"pi\":[[{\"k\":\"1\",\"named\":true}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\",\"key\":{\"wt\":\"&lt;!-- should be ignored --> 1\"}}},\"i\":0}}]}'>foo</p>\n\n<p about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[86,126,0,0],\"pi\":[[{\"k\":\"1\",\"named\":true}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\",\"key\":{\"wt\":\"1&lt;!-- should be ignored -->\"}}},\"i\":0}}]}'>foo</p>\n\n<p about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[128,168,0,0],\"pi\":[[{\"k\":\"1\",\"named\":true}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo\",\"key\":{\"wt\":\"&lt;!-- should be ignored -->1\"}}},\"i\":0}}]}'>foo</p>");
add("html2html", "Templates: Other wikitext in parameter names (bug 67657)", "<p about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[0,18,0,0],\"pi\":[[{\"k\":\"&#39;&#39;1&#39;&#39;\",\"named\":true}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"&#39;&#39;1&#39;&#39;\":{\"wt\":\"foo\"}},\"i\":0}}]}'>foo</p>");
add("html2html", "3c. Indent-Pre and block tags (pre-content on separate line)", "\n<p data-parsoid='{\"dsr\":[1,22,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[1,19,8,9]}'> </span>foo</p>\n\n<div data-parsoid='{\"stx\":\"html\",\"dsr\":[24,42,5,6]}'>\n<pre data-parsoid='{\"dsr\":[30,34,1,0]}'>foo</pre>\n\n</div>\n<center data-parsoid='{\"stx\":\"html\",\"dsr\":[43,67,8,9]}'>\n<pre data-parsoid='{\"dsr\":[52,56,1,0]}'>foo</pre>\n\n</center>\n<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[68,100,12,13]}'>\n<p data-parsoid='{\"dsr\":[81,85,0,0]}'> foo</p>\n\n</blockquote>\n<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[101,133,12,13]}'>\n<p data-parsoid='{\"dsr\":[114,118,0,0]}'> foo</p>\n\n</blockquote>\n<table data-parsoid='{\"dsr\":[134,147,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[137,145,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[137,143,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[137,143,1,0]}'>\n<pre data-parsoid='{\"dsr\":[139,143,1,0]}'>foo</pre></td></tr>\n\n</tbody></table>\n<ul data-parsoid='{\"dsr\":[148,154,0,0]}'><li data-parsoid='{\"dsr\":[148,154,1,0]}'>  foo</li></ul>\n");
add("html2html", "4. Indent-Pre and extension tags", "<p data-parsoid='{\"dsr\":[0,1,0,0]}'>a</p>\n\n<ul data-parsoid='{\"dsr\":[3,220,0,0]}'><li data-parsoid='{\"dsr\":[3,220,1,0]}'><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,220,26,6]}'> <div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[31,181,41,6]}'> <div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[73,174,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[104,168,null,null]}'/></div> </div> <div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[182,213,25,6]}'></div> </div></li></ul>\n");
add("html2html", "5a. White-space in indent-pre", "<pre data-parsoid='{\"dsr\":[0,13,1,0]}'>a<br data-parsoid='{\"stx\":\"html\",\"noClose\":true,\"dsr\":[2,8,4,null]}'/>\n\n\nb</pre>\n");
add("html2html", "Definition list with wikilink containing colon", "<dl data-parsoid='{\"dsr\":[0,95,0,0]}'><dt data-parsoid='{\"dsr\":[0,24,1,0]}'> [/index.php?title=Help</dt><dd data-parsoid='{\"stx\":\"row\",\"dsr\":[24,60,1,0]}'>FAQ&amp;action=edit&amp;redlink=1 Help:FAQ]</dd>\n<dd data-parsoid='{\"dsr\":[61,95,1,0]}'> The least-read page on Wikipedia</dd></dl>\n");
add("html2html", "Definition lists: colon in HTML attribute", "<dl data-parsoid='{\"dsr\":[0,12,0,0]}'><dt data-parsoid='{\"dsr\":[0,12,1,0]}'> <b data-parsoid='{\"dsr\":[2,12,3,3]}'>bold</b></dt></dl>\n");
add("html2html", "Definition Lists: colons and tables 1", "<dl data-parsoid='{\"dsr\":[0,26,0,0]}'><dd data-parsoid='{\"dsr\":[0,12,1,0]}'> <table data-parsoid='{\"dsr\":[2,12,2,2]}'>\n\n<tbody data-parsoid='{\"dsr\":[6,10,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[6,9,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[6,9,1,0]}'> x</td></tr>\n</tbody></table></dd>\n\n<dd data-parsoid='{\"dsr\":[14,26,1,0]}'> <table data-parsoid='{\"dsr\":[16,26,2,2]}'>\n\n<tbody data-parsoid='{\"dsr\":[20,24,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[20,23,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[20,23,1,0]}'> y</td></tr>\n</tbody></table></dd></dl>\n");
add("html2html", "! and || in element attributes should not be parsed as <th>/<td>", "<table data-parsoid='{\"dsr\":[0,86,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[3,84,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,83,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,71,1,0]}'> &lt;div style=\"color: red !important;\" data-contrived=\"put this here </td><td data-parsoid='{\"stx_v\":\"row\",\"autoInsertedEnd\":true,\"dsr\":[71,83,2,0]}'>\">hi</td></tr>\n</tbody></table>\n");
add("html2html", "Indented table markup mixed with indented pre content (proposed in bug 6200)", " <table data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[1,59,2,0]}'>\n \n <tbody data-parsoid='{\"dsr\":[7,59,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[7,58,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[7,58,1,0]}'>\n<pre data-parsoid='{\"dsr\":[9,58,1,0]}'>Text that should be rendered preformatted \n\n|}</pre></td></tr>\n</tbody></table>");
add("html2html", "Build table with wikilink", "<table class=\"wikitable\" data-parsoid='{\"dsr\":[0,216,20,2]}'>\n\n<tbody data-parsoid='{\"dsr\":[22,214,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[22,47,0,0]}'><th data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[22,31,1,0]}'> header </th>\n<th data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[32,47,1,0]}'> second header</th></tr>\n\n<tr style=\"color:red;\" data-parsoid='{\"startTagSrc\":\"|-\",\"autoInsertedEnd\":true,\"dsr\":[49,148,21,0]}'>\n<td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[71,106,1,0]}'> data <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[78,105,17,2]}'>linktext</a> </td>\n<td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[107,148,1,0]}'> second data <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[121,148,17,2]}'>linktext</a></td></tr>\n\n<tr data-parsoid='{\"startTagSrc\":\"|-\",\"autoInsertedEnd\":true,\"dsr\":[150,213,2,0]}'>\n<td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[153,160,1,0]}'> data </td>\n<td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[161,213,1,0]}'> second data <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[175,213,17,2]}'>link|text with pipe</a></td></tr>\n</tbody></table>\n");
add("html2html", "Plain link, capitalized", "<p data-parsoid='{\"dsr\":[0,28,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,28,17,2]}'>Main Page</a></p>\n");
add("html2html", "Plain link, uncapitalized", "<p data-parsoid='{\"dsr\":[0,28,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,28,17,2]}'>main Page</a></p>\n");
add("html2html", "Piped link", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,32,17,2]}'>The Main Page</a></p>\n");
add("html2html", "Piped link with comment in link text", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,32,17,2]}'>The Main Page</a></p>\n");
add("html2html", "Piped link with multiple pipe characters in link text", "<p data-parsoid='{\"dsr\":[0,46,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main Page\"},\"dsr\":[0,46,12,2]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[12,44,8,9]}'>|The|Main|Page|</span></a></p>\n");
add("html2html", "Broken link", "<p data-parsoid='{\"dsr\":[0,72,0,0]}'>[/index.php?title=Zigzagzogzagzig&amp;action=edit&amp;redlink=1 Zigzagzogzagzig]</p>\n");
add("html2html", "Broken link with fragment", "<p data-parsoid='{\"dsr\":[0,76,0,0]}'>[/index.php?title=Zigzagzogzagzig&amp;action=edit&amp;redlink=1 Zigzagzogzagzig#zug]</p>\n");
add("html2html", "Special page link with fragment", "<p data-parsoid='{\"dsr\":[0,54,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Special:Version#anchor\" title=\"Wiki/Special:Version\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Special:Version#anchor\"},\"sa\":{\"href\":\"wiki/Special:Version#anchor\"},\"dsr\":[0,54,30,2]}'>Special:Version#anchor</a></p>\n");
add("html2html", "Nonexistent special page link with fragment", "<p data-parsoid='{\"dsr\":[0,97,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Special:ThisNameWillHopefullyNeverBeUsed\" title=\"Wiki/Special:ThisNameWillHopefullyNeverBeUsed\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Special:ThisNameWillHopefullyNeverBeUsed\"},\"sa\":{\"href\":\"wiki/Special:ThisNameWillHopefullyNeverBeUsed\"},\"dsr\":[0,97,48,2]}'>Special:ThisNameWillHopefullyNeverBeUsed#anchor</a></p>\n");
add("html2html", "Link with prefix", "<p data-parsoid='{\"dsr\":[0,162,0,0]}'>xxx<a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[3,31,17,2]}'>main Page</a>, xxx<a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[36,64,17,2]}'>Main Page</a>, Xxx<a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[69,97,17,2]}'>main Page</a> XXX<a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[101,129,17,2]}'>main Page</a>, XXX<a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[134,162,17,2]}'>Main Page</a></p>\n");
add("html2html", "Link with suffix", "<p data-parsoid='{\"dsr\":[0,97,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,31,17,2]}'>Main Pagexxx</a>, <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[33,61,17,2]}'>Main Page</a>XXX, <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[66,94,17,2]}'>Main Page</a>!!!</p>\n");
add("html2html", "Bug 43661: Piped links with identical prefixes", "<p data-parsoid='{\"dsr\":[0,55,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Prefixed_article\" title=\"Wiki/Prefixed article\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Prefixed_article\"},\"sa\":{\"href\":\"wiki/Prefixed article\"},\"dsr\":[0,55,24,2]}'>prefixed articles with spaces</a></p>\n\n<p data-parsoid='{\"dsr\":[57,104,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Prefixed_article\" title=\"Wiki/Prefixed article\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Prefixed_article\"},\"sa\":{\"href\":\"wiki/Prefixed article\"},\"dsr\":[57,104,24,2]}'>prefixed articlesaoeu</a></p>\n\n<p data-parsoid='{\"dsr\":[106,139,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[106,139,17,2]}'>Main Page test</a></p>\n");
add("html2html", "Link with 4 brackets", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'>[[<a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[2,30,17,2]}'>Main Page</a>]]</p>\n");
add("html2html", "Link with multiple pipes", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,32,17,2]}'>The|Main|Page</a></p>\n");
add("html2html", "Link to namespaces", "<p data-parsoid='{\"dsr\":[0,156,0,0]}'>[/index.php?title=Talk:Parser_testing&amp;action=edit&amp;redlink=1 Talk:Parser testing], [/index.php?title=Meta:Disclaimers&amp;action=edit&amp;redlink=1 Meta:Disclaimers]</p>\n");
add("html2html", "Link with space in namespace", "<p data-parsoid='{\"dsr\":[0,76,0,0]}'>[/index.php?title=User_talk:Foo_bar&amp;action=edit&amp;redlink=1 User talk:Foo bar]</p>\n");
add("html2html", "Namespace takes precedence over interwiki link (bug 51680)", "<p data-parsoid='{\"dsr\":[0,52,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/MemoryAlpha:AlphaTest\" title=\"Wiki/MemoryAlpha:AlphaTest\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/MemoryAlpha:AlphaTest\"},\"sa\":{\"href\":\"wiki/MemoryAlpha:AlphaTest\"},\"dsr\":[0,52,29,2]}'>MemoryAlpha:AlphaTest</a></p>\n");
add("html2html", "Piped link to namespace", "<p data-parsoid='{\"dsr\":[0,73,0,0]}'>[/index.php?title=Meta:Disclaimers&amp;action=edit&amp;redlink=1 The disclaimers]</p>\n");
add("html2html", "Link containing \"#<\" and \"#>\" % as a hex sequences- these are valid section anchors\nExample for such a section: == < ==", "<p data-parsoid='{\"dsr\":[0,36,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Main_Page#%3C\" title=\"Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main_Page#%3C\"},\"sa\":{\"href\":\"Main Page#&lt;\"},\"dsr\":[0,18,14,2]}'>#&lt;</a><a rel=\"mw:WikiLink\" href=\"./Main_Page#%3E\" title=\"Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main_Page#%3E\"},\"sa\":{\"href\":\"Main Page#>\"},\"dsr\":[18,36,14,2]}'>#></a></p>\n");
add("html2html", "Link containing double-single-quotes '' in text embedded in italics (bug 4598 sanity check)", "<p data-parsoid='{\"dsr\":[0,84,0,0]}'><i data-parsoid='{\"dsr\":[0,61,2,2]}'>Some [/index.php?title=Link&amp;action=edit&amp;redlink=1 pretty </i>italics<i data-parsoid='{\"dsr\":[68,84,2,2]}'> and stuff]!</i></p>\n");
add("html2html", "Plain link to page with question mark in title", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/A%3Fb\" title=\"Wiki/A?b\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/A%3Fb\"},\"sa\":{\"href\":\"wiki/A?b\"},\"dsr\":[0,16,11,2]}'>A?b</a></p>\n\n<p data-parsoid='{\"dsr\":[18,34,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/A%3Fb\" title=\"Wiki/A?b\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/A%3Fb\"},\"sa\":{\"href\":\"wiki/A?b\"},\"dsr\":[18,34,11,2]}'>Baz</a></p>\n");
add("html2html", "Self-link to section should not be bold", "<p data-parsoid='{\"dsr\":[0,44,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page#section\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page#section\"},\"sa\":{\"href\":\"wiki/Main Page#section\"},\"dsr\":[0,44,25,2]}'>Main Page#section</a></p>\n");
add("html2html", "Link to numeric-equivalent title", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/00\" title=\"Wiki/00\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/00\"},\"sa\":{\"href\":\"wiki/00\"},\"dsr\":[0,14,10,2]}'>00</a></p>\n");
add("html2html", "<nowiki> inside a link", "<p data-parsoid='{\"dsr\":[0,84,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[0,30,8,9]}'>[[Main Page]]</span> <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[31,83,17,2]}'>the main page [it's not very good</a>]</p>\n");
add("html2html", "Non-breaking spaces in title", "<p data-parsoid='{\"dsr\":[0,34,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,34,17,2]}'>  Main   Page  </a></p>\n");
add("html2html", "Internal link with ca linktrail, surrounded by bold apostrophes (bug 27473 primary issue)", "<p data-parsoid='{\"dsr\":[0,34,0,0]}'><b data-parsoid='{\"dsr\":[0,34,3,3]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[3,31,17,2]}'>Main Page</a></b></p>\n");
add("html2html", "Internal link with ca linktrail, surrounded by italic apostrophes (bug 27473 primary issue)", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'><i data-parsoid='{\"dsr\":[0,32,2,2]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[2,30,17,2]}'>Main Page</a></i></p>\n");
add("html2html", "Internal link with en linktrail: no apostrophes (bug 27473)", "<p data-parsoid='{\"dsr\":[0,65,0,0]}'>[/index.php?title=Something&amp;action=edit&amp;redlink=1 Something]'nice</p>\n");
add("html2html", "Internal link with ca linktrail with apostrophes (bug 27473)", "<p data-parsoid='{\"dsr\":[0,65,0,0]}'>[/index.php?title=Something&amp;action=edit&amp;redlink=1 Something'nice]</p>\n");
add("html2html", "Internal link with kaa linktrail with apostrophes (bug 27473)", "<p data-parsoid='{\"dsr\":[0,65,0,0]}'>[/index.php?title=Something&amp;action=edit&amp;redlink=1 Something'nice]</p>\n");
add("html2html", "Internal link with is link prefix", "<p data-parsoid='{\"dsr\":[0,45,0,0]}'>Aðrir <a rel=\"mw:WikiLink\" href=\"./Wiki/Söfnuður\" title=\"Wiki/Söfnuður\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Söfnuður\"},\"sa\":{\"href\":\"wiki/Söfnuður\"},\"dsr\":[6,42,16,2]}'>mótmælendasöfnuðir</a> og</p>\n");
add("html2html", "Internal link with is link trail and link prefix", "<p data-parsoid='{\"dsr\":[0,181,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Mótmælendatrú\" title=\"Wiki/Mótmælendatrú\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Mótmælendatrú\"},\"sa\":{\"href\":\"wiki/Mótmælendatrú\"},\"dsr\":[0,28,21,2]}'>xxxar</a>\n<a rel=\"mw:WikiLink\" href=\"./Wiki/Mótmælendatrú\" title=\"Wiki/Mótmælendatrú\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Mótmælendatrú\"},\"sa\":{\"href\":\"wiki/Mótmælendatrú\"},\"dsr\":[29,67,21,2]}'>mótmælendatrúar</a>\n<a rel=\"mw:WikiLink\" href=\"./Wiki/Söfnuður\" title=\"Wiki/Söfnuður\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Söfnuður\"},\"sa\":{\"href\":\"wiki/Söfnuður\"},\"dsr\":[68,104,16,2]}'>mótmælendasöfnuður</a>\n<a rel=\"mw:WikiLink\" href=\"./Wiki/Söfnuður\" title=\"Wiki/Söfnuður\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Söfnuður\"},\"sa\":{\"href\":\"wiki/Söfnuður\"},\"dsr\":[105,141,16,2]}'>mótmælendasöfnuðir</a>\n<a rel=\"mw:WikiLink\" href=\"./Wiki/Söfnuður\" title=\"Wiki/Söfnuður\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Söfnuður\"},\"sa\":{\"href\":\"wiki/Söfnuður\"},\"dsr\":[142,181,16,2]}'>mótmælendasöfnuðirxxx</a></p>\n");
add("html2html", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved", "<p data-parsoid='{\"dsr\":[0,18,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[0,18,11,2]}'>  bar</a></p>\n\n<p data-parsoid='{\"dsr\":[20,42,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[20,42,11,2]}'>  <i data-parsoid='{\"dsr\":[33,40,2,2]}'>bar</i></a></p>\n\n<p data-parsoid='{\"dsr\":[44,63,0,0]}'><a rel=\"mw:ExtLink\" href=\"http://wp.org\" data-parsoid='{\"targetOff\":59,\"contentOffsets\":[59,62],\"dsr\":[44,63,15,1]}'>foo</a></p>\n\n<p data-parsoid='{\"dsr\":[65,88,0,0]}'><a rel=\"mw:ExtLink\" href=\"http://wp.org\" data-parsoid='{\"targetOff\":80,\"contentOffsets\":[80,87],\"dsr\":[65,88,15,1]}'><i data-parsoid='{\"dsr\":[80,87,2,2]}'>foo</i></a></p>\n");
add("html2html", "Space and question mark encoding in interlanguage links (T95473)", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'>Blah blah blah</p>\n<link rel=\"mw:PageProp/Language\" href=\"http://es.wikipedia.org/wiki/Foo_bar?\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"http://es.wikipedia.org/wiki/Foo_bar?\"},\"sa\":{\"href\":\"es:Foo_bar?\"},\"dsr\":[15,30,null,null]}'/>");
add("html2html", "Parsoid-specific test: Wikilinks with &nbsp; should RT properly", "<p data-parsoid='{\"dsr\":[0,52,0,0]}'>[/index.php?title=WW_II&amp;action=edit&amp;redlink=1 WW II]</p>\n");
add("html2html", "<br> to <br />", "<p data-parsoid='{\"dsr\":[0,5,0,0]}'>1\n2\n3</p>\n");
add("html2html", "Incorrecly removing closing slashes from correctly formed XHTML", "\n");
add("html2html", "Failing to transform badly formed HTML into correct XHTML", "\n\n<p data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[2,2,0,0]}'><br data-parsoid='{\"dsr\":[2,2,0,0]}'/></p>\n");
add("html2html", "Handling html with a br self-closing tag", "\n\n<p data-parsoid='{\"dsr\":[2,2,0,0]}'><br data-parsoid='{\"dsr\":[2,2,0,0]}'/></p>\n\n\n<p data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[5,5,0,0]}'><br data-parsoid='{\"dsr\":[5,5,0,0]}'/></p>\n");
add("html2html", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up)", "<p data-parsoid='{\"dsr\":[0,6,0,0]}'><span data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[0,6,6,0]}'></span></p>\n\n<ul data-parsoid='{\"dsr\":[8,28,0,0]}'><li data-parsoid='{\"dsr\":[8,24,1,0]}'> a<span data-parsoid='{\"stx\":\"html\",\"dsr\":[11,24,6,7]}'></span></li>\n<li data-parsoid='{\"dsr\":[25,28,1,0]}'> b</li></ul>\n\n<p data-parsoid='{\"dsr\":[30,37,0,0]}'></p>");
add("html2html", "2. List embedded in a formatting tag", "<p data-parsoid='{\"dsr\":[0,23,0,0]}'><small data-parsoid='{\"stx\":\"html\",\"dsr\":[0,15,7,8]}'></small>\n<small data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[16,23,7,0]}'></small></p><small data-parsoid='{\"stx\":\"html\",\"autoInsertedStart\":true,\"dsr\":[23,36,0,8]}'>\n<ul data-parsoid='{\"dsr\":[24,27,0,0]}'><li data-parsoid='{\"dsr\":[24,27,1,0]}'> a</li></ul>\n</small>\n<ul data-parsoid='{\"dsr\":[37,55,0,0]}'><li data-parsoid='{\"dsr\":[37,55,1,0]}'> <small data-parsoid='{\"stx\":\"html\",\"dsr\":[39,55,7,8]}'>b</small></li></ul>\n");
add("html2html", "Case-sensitive magic words, when cased differently, should just be template transclusions", "<p data-parsoid='{\"dsr\":[0,331,0,0]}'>[/index.php?title=Template:CurrentMonth&amp;action=edit&amp;redlink=1 Template:CurrentMonth]\n[/index.php?title=Template:Currentday&amp;action=edit&amp;redlink=1 Template:Currentday]\n[/index.php?title=Template:CURreNTweEK&amp;action=edit&amp;redlink=1 Template:CURreNTweEK]\n[/index.php?title=Template:CurrentHour&amp;action=edit&amp;redlink=1 Template:CurrentHour]</p>\n");
add("html2html", "Nonexistent template", "<p data-parsoid='{\"dsr\":[0,108,0,0]}'>[/index.php?title=Template:Thistemplatedoesnotexist&amp;action=edit&amp;redlink=1 Template:Thistemplatedoesnotexist]</p>\n");
add("html2html", "Template with invalid target containing wikilink", "<p data-parsoid='{\"dsr\":[0,17,0,0]}'>{{<a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main Page\"},\"dsr\":[2,15,2,2]}'>Main Page</a>}}</p>\n");
add("html2html", "Template with just whitespace in it, bug #68421", "<p data-parsoid='{\"dsr\":[1,31,0,0]}'>{{echo|{{}<span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[11,29,8,9]}'>}</span>}}</p>");
add("html2html", "Template unnamed parameter", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,32,17,2]}'>the main page</a></p>\n");
add("html2html", "Template with complex arguments", "<p data-parsoid='{\"dsr\":[0,84,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Template:Complextemplate\" title=\"Wiki/Template:Complextemplate\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Template:Complextemplate\"},\"sa\":{\"href\":\"wiki/Template:Complextemplate\"},\"dsr\":[0,38,32,2]}'>link</a> This is a test template with parameter (test)</p>\n");
add("html2html", "BUG 553: link with two variables in a piped link", "<table data-parsoid='{\"dsr\":[0,60,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[3,58,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,57,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,57,1,0]}'>[[<span about=\"#mwt1\" typeof=\"mw:Param\" data-parsoid='{\"dsr\":[6,13,null,null],\"src\":\"{{{1}}}\"}'>{{{1}}}</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[13,31,8,9]}'>|</span><span about=\"#mwt2\" typeof=\"mw:Param\" data-parsoid='{\"dsr\":[31,38,null,null],\"src\":\"{{{2}}}\"}'>{{{2}}}</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[38,57,8,9]}'>]]</span></td></tr>\n</tbody></table>\n");
add("html2html", "Abort table cell attribute parsing on wikilink", "<table data-parsoid='{\"dsr\":[0,151,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[3,149,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[3,148,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[3,50,1,0]}'> testing <a rel=\"mw:WikiLink\" href=\"./One\" title=\"One\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./One\"},\"sa\":{\"href\":\"one\"},\"dsr\":[13,24,6,2]}'>two</a><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[24,50,8,9]}'> | three </span></td><td data-parsoid='{\"stx_v\":\"row\",\"autoInsertedEnd\":true,\"dsr\":[50,57,2,0]}'> four</td>\n<td data-parsoid='{\"a\":{\"testing\":null,\"one\":null,\"two\":null},\"sa\":{\"testing\":\"\",\"one\":\"\",\"two\":\"\"},\"autoInsertedEnd\":true,\"dsr\":[58,84,19,0]}'> three </td><td data-parsoid='{\"stx_v\":\"row\",\"autoInsertedEnd\":true,\"dsr\":[84,91,2,0]}'> four</td>\n<td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[92,141,1,0]}'> testing=\"<a rel=\"mw:WikiLink\" href=\"./One\" title=\"One\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./One\"},\"sa\":{\"href\":\"one\"},\"dsr\":[103,114,6,2]}'>two</a><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[114,141,8,9]}'>\" | three </span></td><td data-parsoid='{\"stx_v\":\"row\",\"autoInsertedEnd\":true,\"dsr\":[141,148,2,0]}'> four</td></tr>\n</tbody></table>\n");
add("html2html", "Template parameter as link source", "<p data-parsoid='{\"dsr\":[0,23,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,23,17,2]}'>link</a></p>\n");
add("html2html", "Template as link source", "<p data-parsoid='{\"dsr\":[0,28,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,28,17,2]}'>Main Page</a></p>\n\n<p data-parsoid='{\"dsr\":[30,58,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[30,58,17,2]}'>Main Page</a></p>\n\n<p data-parsoid='{\"dsr\":[60,92,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[60,88,17,2]}'>Main Page</a>Page</p>\n");
add("html2html", "Template infinite loop", "<p data-parsoid='{\"dsr\":[0,89,0,0]}'><span class=\"error\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,89,20,7]}'>Template loop detected: <a rel=\"mw:WikiLink\" href=\"./Wiki/Template:Loop1\" title=\"Wiki/Template:Loop1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Template:Loop1\"},\"sa\":{\"href\":\"wiki/Template:Loop1\"},\"dsr\":[44,82,22,2]}'>Template:Loop1</a></span></p>\n");
add("html2html", "Template with targets containing wikilinks", "<p data-parsoid='{\"dsr\":[0,54,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[0,19,8,9]}'>{{</span><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[19,35,11,2]}'>foo</a><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[35,54,8,9]}'>}}</span></p>\n\n<p data-parsoid='{\"dsr\":[56,110,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[56,75,8,9]}'>{{</span><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[75,91,11,2]}'>foo</a><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[91,110,8,9]}'>}}</span></p>\n\n<p data-parsoid='{\"dsr\":[112,140,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[112,138,8,9]}'>{{[[foo}}</span>]]</p>\n");
add("html2html", "Self-closed noinclude, includeonly, onlyinclude tags", "\n");
add("html2html", "Bug 6563: Section extraction for section shown by <includeonly>", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[0,32,8,9]}'>==Section T-2==</span></p>");
add("html2html", "Bug 6563: Section extraction for section suppressed by <includeonly>", "<p data-parsoid='{\"dsr\":[0,30,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[0,30,8,9]}'>==Section 1==</span></p>");
add("html2html", "Templates: Links: 1. Simple example", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[0,16,11,2]}'>bar</a></p>\n");
add("html2html", "Templates: Links: 2. Generation of link href", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[0,16,11,2]}'>bar</a></p>\n");
add("html2html", "Templates: Links: 3. Generation of part of a link href", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[0,16,11,2]}'>bar</a></p>\n\n<p data-parsoid='{\"dsr\":[18,72,0,0]}'>[/index.php?title=Foobar&amp;action=edit&amp;redlink=1 Foobar]</p>\n\n<p data-parsoid='{\"dsr\":[74,134,0,0]}'>[/index.php?title=Foobarbaz&amp;action=edit&amp;redlink=1 Foobarbaz]</p>\n\n<p data-parsoid='{\"dsr\":[136,187,0,0]}'>[/index.php?title=Foobar&amp;action=edit&amp;redlink=1 bar]</p>\n\n<p data-parsoid='{\"dsr\":[189,243,0,0]}'>[/index.php?title=Foobar&amp;action=edit&amp;redlink=1 Foobar]</p>\n\n<p data-parsoid='{\"dsr\":[245,296,0,0]}'>[/index.php?title=Foobar&amp;action=edit&amp;redlink=1 bar]</p>\n");
add("html2html", "Templates: Links: 4. Multiple templates generating link href", "<p data-parsoid='{\"dsr\":[0,54,0,0]}'>[/index.php?title=Foobar&amp;action=edit&amp;redlink=1 Foobar]</p>\n");
add("html2html", "Templates: Links: 5. Generation of link text", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[0,16,11,2]}'>bar</a></p>\n");
add("html2html", "Templates: Links: 5. Nested templates (only outermost template should be marked)", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[0,16,11,2]}'>bar</a></p>\n");
add("html2html", "Templates: Lists: Multi-line list-items via templates", "<ul data-parsoid='{\"dsr\":[0,173,0,0]}'><li data-parsoid='{\"dsr\":[0,86,1,0]}'> a [/index.php?title=Template:Nonexistent&amp;action=edit&amp;redlink=1 Template:Nonexistent]</li>\n<li data-parsoid='{\"dsr\":[87,173,1,0]}'> b [/index.php?title=Template:Nonexistent&amp;action=edit&amp;redlink=1 Template:Nonexistent]</li></ul>\n");
add("html2html", "Templates: Ugly templates: 1. Navbox template parses badly leading to table misnesting\n(Parsoid-centric)", "<table about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,32,2,null],\"firstWikitextNode\":\"TABLE_html\",\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[\"{|\\n|\",{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo&lt;/table>\"}},\"i\":0}},\"\\n|bar\\n|}\"]}'>\n<tbody><tr><td>foo</td></tr></tbody></table><span about=\"#mwt1\">\n|bar</span><span about=\"#mwt1\">\n</span>");
add("html2html", "Templates: Ugly templates: 4. newline-only template parameter inconsistency", "\n");
add("html2html", "message transform: magic variables", "<p data-parsoid='{\"dsr\":[0,9,0,0]}'>MediaWiki</p>");
add("html2html", "message transform: should not transform wiki markup", "<p data-parsoid='{\"dsr\":[0,25,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[0,25,8,9]}'>''test''</span></p>");
add("html2html", "message transform: <noinclude> in transcluded template (bug 4926)", "<p data-parsoid='{\"dsr\":[0,6,0,0]}'>Foobar</p>");
add("html2html", "message transform: <onlyinclude> in transcluded template (bug 4926)", "<p data-parsoid='{\"dsr\":[0,3,0,0]}'>Foo</p>");
add("html2html", "{{#special:}} page name, known", "<p data-parsoid='{\"dsr\":[0,21,0,0]}'>Special:RecentChanges</p>");
add("html2html", "{{#special:}} page name with subpage, known", "<p data-parsoid='{\"dsr\":[0,27,0,0]}'>Special:RecentChanges/param</p>");
add("html2html", "{{#special:}} page name, unknown", "<p data-parsoid='{\"dsr\":[0,26,0,0]}'>Special:Foobar nonexistent</p>");
add("html2html", "{{#speciale:}} page name, known", "<p data-parsoid='{\"dsr\":[0,21,0,0]}'>Special:RecentChanges</p>");
add("html2html", "{{#speciale:}} page name with subpage, known", "<p data-parsoid='{\"dsr\":[0,27,0,0]}'>Special:RecentChanges/param</p>");
add("html2html", "{{#speciale:}} page name, unknown", "<p data-parsoid='{\"dsr\":[0,26,0,0]}'>Special:Foobar_nonexistent</p>");
add("html2html", "Allow empty links in image captions (Bug 60753)", "<figure class=\"mw-default-size\" typeof=\"mw:Image/Thumb\" data-parsoid='{\"optList\":[{\"ck\":\"thumbnail\",\"ak\":\"thumb\"},{\"ck\":\"caption\",\"ak\":\"Caption [[Link1]]\\n&lt;nowiki>[[]]&lt;/nowiki>\\n[[Link2]]\\n\"}],\"dsr\":[0,76,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[2,null,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/220px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"25\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"25\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a><figcaption data-parsoid='{\"dsr\":[null,74,null,null]}'>Caption <a rel=\"mw:WikiLink\" href=\"./Link1\" title=\"Link1\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Link1\"},\"sa\":{\"href\":\"Link1\"},\"dsr\":[32,41,2,2]}'>Link1</a>\n<span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[42,63,8,9]}'>[[]]</span>\n<a rel=\"mw:WikiLink\" href=\"./Link2\" title=\"Link2\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Link2\"},\"sa\":{\"href\":\"Link2\"},\"dsr\":[64,73,2,2]}'>Link2</a>\n</figcaption></figure>");
add("html2html", "Image with multiple attributes from the same template", "<figure class=\"mw-default-size mw-halign-right\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"right\",\"ak\":\"right\"},{\"ck\":\"caption\",\"ak\":\"Caption text\"}],\"dsr\":[0,38,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[2,null,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a><figcaption data-parsoid='{\"dsr\":[null,36,null,null]}'>Caption text</figcaption></figure>\n");
add("html2html", "Image with link tails", "<p data-parsoid='{\"dsr\":[0,29,0,0]}'>123<span class=\"mw-default-size\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[],\"dsr\":[3,22,null,null]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{}}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a></span>456\n123</p>\n<figure class=\"mw-default-size mw-halign-right\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"right\",\"ak\":\"right\"}],\"dsr\":[30,55,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[32,53,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a></figure>\n<p data-parsoid='{\"dsr\":[56,63,0,0]}'>456\n123</p>\n<figure class=\"mw-default-size\" typeof=\"mw:Image/Thumb\" data-parsoid='{\"optList\":[{\"ck\":\"thumbnail\",\"ak\":\"thumb\"}],\"dsr\":[64,89,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[66,87,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/220px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"25\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"25\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a></figure>\n<p data-parsoid='{\"dsr\":[90,93,0,0]}'>456</p>\n");
add("html2html", "Image with link parameter, wgNoFollowLinks set to false", "<p data-parsoid='{\"dsr\":[0,41,0,0]}'><img src=\"http://example.com/images/3/3a/Foobar.jpg\" alt=\"Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[0,41,null,null]}'/></p>\n");
add("html2html", "Image with link parameter, wgNoFollowDomainExceptions", "<p data-parsoid='{\"dsr\":[0,41,0,0]}'><img src=\"http://example.com/images/3/3a/Foobar.jpg\" alt=\"Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[0,41,null,null]}'/></p>\n");
add("html2html", "Link to image page- image page normally doesn't exists, hence edit link\nAdd test with existing image page\n#<p><a href=\"/wiki/File:Test\" title=\"Image:Test\">Image:test</a>", "<p data-parsoid='{\"dsr\":[0,61,0,0]}'>[/index.php?title=File:Test&amp;action=edit&amp;redlink=1 Image:test]</p>\n");
add("html2html", "bug 18784  Link to non-existent image page with caption should use caption as link text", "<p data-parsoid='{\"dsr\":[0,58,0,0]}'>[/index.php?title=File:Test&amp;action=edit&amp;redlink=1 caption]</p>\n");
add("html2html", "SVG thumbnails with invalid language code", "<figure class=\"mw-default-size\" typeof=\"mw:Image/Thumb\" data-parsoid='{\"optList\":[{\"ck\":\"thumbnail\",\"ak\":\"thumb\"},{\"ck\":\"lang\",\"ak\":\"lang=invalid.language.code\"}],\"dsr\":[0,52,2,2]}'><a href=\"./File:Foobar.svg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.svg\"},\"sa\":{},\"dsr\":[2,50,null,null]}'><img resource=\"./File:Foobar.svg\" src=\"//example.com/images/thumb/f/ff/Foobar.svg/220px-Foobar.svg\" lang=\"invalid.language.code\" data-file-width=\"240\" data-file-height=\"180\" data-file-type=\"drawing\" height=\"165\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.svg\",\"lang\":\"invalid.language.code\",\"height\":\"165\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Foobar.svg\",\"lang\":\"lang=invalid.language.code\"}}'/></a></figure>\n");
add("html2html", "T93580: 3. Templated <ref> inside inline images", "<p data-parsoid='{\"dsr\":[0,98,0,0]}'><span class=\"mw-default-size\" typeof=\"mw:Image\" data-parsoid='{\"optList\":[{\"ck\":\"caption\",\"ak\":\"Undisplayed caption in inline image with ref: {{echo|&lt;ref>{{echo|foo}}&lt;/ref>}}\"}],\"dsr\":[0,98,null,null]}' data-mw='{\"caption\":\"Undisplayed caption in inline image with ref: &lt;span about=\\\"#mwt3\\\" class=\\\"mw-ref\\\" id=\\\"cite_ref-1\\\" rel=\\\"dc:references\\\" typeof=\\\"mw:Transclusion  mw:Extension/ref\\\" data-parsoid=&#39;{\\\"dsr\\\":[64,96,null,null],\\\"pi\\\":[[{\\\"k\\\":\\\"1\\\"}]]}&#39; data-mw=&#39;{\\\"parts\\\":[{\\\"template\\\":{\\\"target\\\":{\\\"wt\\\":\\\"echo\\\",\\\"href\\\":\\\"./Template:Echo\\\"},\\\"params\\\":{\\\"1\\\":{\\\"wt\\\":\\\"&amp;lt;ref>{{echo|foo}}&amp;lt;/ref>\\\"}},\\\"i\\\":0}}]}&#39;>&lt;a href=\\\"#cite_note-1\\\" style=\\\"counter-reset: mw-Ref 1;\\\">&lt;span class=\\\"mw-reflink-text\\\">[1]&lt;/span>&lt;/a>&lt;/span>&lt;meta typeof=\\\"mw:Transclusion mw:Extension/ref/Marker\\\" about=\\\"#mwt3\\\" data-parsoid=&#39;{\\\"group\\\":\\\"\\\",\\\"name\\\":\\\"\\\",\\\"content\\\":\\\"foo\\\",\\\"hasRefInRef\\\":false,\\\"dsr\\\":[64,96,null,null],\\\"pi\\\":[[{\\\"k\\\":\\\"1\\\"}]]}&#39; data-mw=&#39;{\\\"parts\\\":[{\\\"template\\\":{\\\"target\\\":{\\\"wt\\\":\\\"echo\\\",\\\"href\\\":\\\"./Template:Echo\\\"},\\\"params\\\":{\\\"1\\\":{\\\"wt\\\":\\\"&amp;lt;ref>{{echo|foo}}&amp;lt;/ref>\\\"}},\\\"i\\\":0}}]}&#39;/>\"}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{}}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/3/3a/Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"220\" width=\"1941\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"220\",\"width\":\"1941\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a></span></p>\n\n<ol class=\"mw-references\" typeof=\"mw:Extension/references\" about=\"#mwt7\" data-parsoid='{\"dsr\":[100,114,2,2]}' data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\" id=\"cite_note-1\"><a href=\"#cite_ref-1\" rel=\"mw:referencedBy\"><span class=\"mw-linkback-text\">↑ </span></a> <span id=\"mw-reference-text-cite_note-1\" class=\"mw-reference-text\" data-parsoid=\"{}\">foo</span></li></ol>");
add("html2html", "Subpage link", "<p data-parsoid='{\"dsr\":[0,38,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Subpage_test/subpage\" title=\"Wiki/Subpage test/subpage\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Subpage_test/subpage\"},\"sa\":{\"href\":\"wiki/Subpage test/subpage\"},\"dsr\":[0,38,28,2]}'>/subpage</a></p>\n");
add("html2html", "Subpage noslash link", "<p data-parsoid='{\"dsr\":[0,37,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Subpage_test/subpage\" title=\"Wiki/Subpage test/subpage\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Subpage_test/subpage\"},\"sa\":{\"href\":\"wiki/Subpage test/subpage\"},\"dsr\":[0,37,28,2]}'>subpage</a></p>\n");
add("html2html", "Render invalid page names as plain text (bug 51090)", "<p data-parsoid='{\"dsr\":[0,141,0,0]}'>[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n<span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[59,89,8,9]}'>[[foo~~~bar]]</span>\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]</p>\n\n<p data-parsoid='{\"dsr\":[143,576,0,0]}'>[[<span about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[145,162,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"./../foo\"}},\"i\":0}}]}'>./../foo</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[162,185,8,9]}'>|bar]]</span>\n[[<span about=\"#mwt2\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[188,202,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo/.\"}},\"i\":0}}]}'>foo/.</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[202,225,8,9]}'>|bar]]</span>\n[[<span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[228,243,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo/..\"}},\"i\":0}}]}'>foo/..</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[243,266,8,9]}'>|bar]]</span>\n[[<span about=\"#mwt4\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[269,288,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo~~~~bar\"}},\"i\":0}}]}'>foo~~~~bar</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[288,307,8,9]}'>]]</span>\n[[<span about=\"#mwt5\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[310,326,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo>bar\"}},\"i\":0}}]}'>foo>bar</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[326,345,8,9]}'>]]</span>\n[[<span about=\"#mwt6\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[348,367,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo././bar\"}},\"i\":0}}]}'>foo././bar</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[367,386,8,9]}'>]]</span>\n[[<span about=\"#mwt7\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[389,405,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo{bar\"}},\"i\":0}}]}'>foo{bar</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[405,424,8,9]}'>]]</span>\n[[<span about=\"#mwt8\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[427,443,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo}bar\"}},\"i\":0}}]}'>foo}bar</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[443,462,8,9]}'>]]</span>\n[[<span about=\"#mwt9\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[465,481,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo[bar\"}},\"i\":0}}]}'>foo[bar</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[481,500,8,9]}'>]]</span>\n[[<span about=\"#mwt10\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[503,519,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo]bar\"}},\"i\":0}}]}'>foo]bar</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[519,538,8,9]}'>]]</span>\n[[<span about=\"#mwt11\" typeof=\"mw:Transclusion\" data-parsoid='{\"pi\":[[{\"k\":\"1\"}]],\"dsr\":[541,557,null,null]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"foo&lt;bar\"}},\"i\":0}}]}'>foo&lt;bar</span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[557,576,8,9]}'>]]</span></p>\n");
add("html2html", "Disabled subpages", "<p data-parsoid='{\"dsr\":[0,58,0,0]}'>[/index.php?title=/subpage&amp;action=edit&amp;redlink=1 /subpage]</p>\n");
add("html2html", "BUG 561: {{/Subpage}}", "<p data-parsoid='{\"dsr\":[0,66,0,0]}'>[/index.php?title=Page/Subpage&amp;action=edit&amp;redlink=1 Page/Subpage]</p>\n");
add("html2html", "Link to category", "<p data-parsoid='{\"dsr\":[0,72,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Category:MediaWiki_User's_Guide\" title=\"Wiki/Category:MediaWiki User's Guide\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Category:MediaWiki_User&#39;s_Guide\"},\"sa\":{\"href\":\"wiki/Category:MediaWiki User&#39;s Guide\"},\"dsr\":[0,72,39,2]}'>Category:MediaWiki User's Guide</a></p>\n");
add("html2html", "Simple category", "<p data-parsoid='{\"dsr\":[0,63,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Category:MediaWiki_User's_Guide\" title=\"Wiki/Category:MediaWiki User's Guide\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Category:MediaWiki_User&#39;s_Guide\"},\"sa\":{\"href\":\"wiki/Category:MediaWiki User&#39;s Guide\"},\"dsr\":[0,63,39,2]}'>MediaWiki User's Guide</a></p>");
add("html2html", "Category with different sort key", "<p data-parsoid='{\"dsr\":[0,63,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Category:MediaWiki_User's_Guide\" title=\"Wiki/Category:MediaWiki User's Guide\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Category:MediaWiki_User&#39;s_Guide\"},\"sa\":{\"href\":\"wiki/Category:MediaWiki User&#39;s Guide\"},\"dsr\":[0,63,39,2]}'>MediaWiki User's Guide</a></p>");
add("html2html", "Category with identical sort key", "<p data-parsoid='{\"dsr\":[0,63,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Category:MediaWiki_User's_Guide\" title=\"Wiki/Category:MediaWiki User's Guide\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Category:MediaWiki_User&#39;s_Guide\"},\"sa\":{\"href\":\"wiki/Category:MediaWiki User&#39;s Guide\"},\"dsr\":[0,63,39,2]}'>MediaWiki User's Guide</a></p>");
add("html2html", "Section headings with TOC", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,691,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,159,0,0]}'><li data-parsoid='{\"dsr\":[69,159,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Headline_1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Headline_1\"},\"sa\":{\"href\":\"#Headline_1\"},\"dsr\":[71,159,14,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[85,117,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[118,157,22,7]}'>Headline 1</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[161,260,0,0]}'><li data-parsoid='{\"dsr\":[161,260,1,0]}'><ul data-parsoid='{\"dsr\":[162,260,0,0]}'><li data-parsoid='{\"dsr\":[162,260,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Subheadline_1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Subheadline_1\"},\"sa\":{\"href\":\"#Subheadline_1\"},\"dsr\":[164,260,17,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[181,215,24,7]}'>1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[216,258,22,7]}'>Subheadline 1</span></a></li></ul></li></ul>\n\n<ul data-parsoid='{\"dsr\":[262,370,0,0]}'><li data-parsoid='{\"dsr\":[262,370,1,0]}'><ul data-parsoid='{\"dsr\":[263,370,0,0]}'><li data-parsoid='{\"dsr\":[263,370,1,0]}'><ul data-parsoid='{\"dsr\":[264,370,0,0]}'><li data-parsoid='{\"dsr\":[264,370,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Skipping_a_level\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Skipping_a_level\"},\"sa\":{\"href\":\"#Skipping_a_level\"},\"dsr\":[266,370,20,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[286,322,24,7]}'>1.1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[323,368,22,7]}'>Skipping a level</span></a></li></ul></li></ul></li></ul>\n\n<ul data-parsoid='{\"dsr\":[372,576,0,0]}'><li data-parsoid='{\"dsr\":[372,485,1,0]}'><ul data-parsoid='{\"dsr\":[373,485,0,0]}'><li data-parsoid='{\"dsr\":[373,485,1,0]}'><ul data-parsoid='{\"dsr\":[374,485,0,0]}'><li data-parsoid='{\"dsr\":[374,485,1,0]}'><ul data-parsoid='{\"dsr\":[375,485,0,0]}'><li data-parsoid='{\"dsr\":[375,485,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Skipping_a_level_2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Skipping_a_level_2\"},\"sa\":{\"href\":\"#Skipping_a_level_2\"},\"dsr\":[377,485,22,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[399,437,24,7]}'>1.1.1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[438,483,22,7]}'>Skipping a level</span></a></li></ul></li></ul></li></ul></li>\n<li data-parsoid='{\"dsr\":[486,576,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Headline_2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Headline_2\"},\"sa\":{\"href\":\"#Headline_2\"},\"dsr\":[488,576,14,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[502,534,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[535,574,22,7]}'>Headline 2</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[578,683,0,0]}'><li data-parsoid='{\"dsr\":[578,683,1,0]}'><ul data-parsoid='{\"dsr\":[579,683,0,0]}'><li data-parsoid='{\"dsr\":[579,683,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Another_headline\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Another_headline\"},\"sa\":{\"href\":\"#Another_headline\"},\"dsr\":[581,683,20,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[601,635,24,7]}'>2.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[636,681,22,7]}'>Another headline</span></a></li></ul></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[693,709,2,2]}'> Headline 1 </h2>\n\n<h3 data-parsoid='{\"dsr\":[711,732,3,3]}'> Subheadline 1 </h3>\n\n<h5 data-parsoid='{\"dsr\":[734,762,5,5]}'> Skipping a level </h5>\n\n<h6 data-parsoid='{\"dsr\":[764,794,6,6]}'> Skipping a level </h6>\n\n<h2 data-parsoid='{\"dsr\":[796,812,2,2]}'> Headline 2 </h2>\n<p data-parsoid='{\"dsr\":[813,822,0,0]}'>Some text</p>\n\n<h3 data-parsoid='{\"dsr\":[824,848,3,3]}'> Another headline </h3>\n");
add("html2html", "Handling of sections up to level 6 and beyond", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,1286,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,169,0,0]}'><li data-parsoid='{\"dsr\":[69,169,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Level_1_Heading\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Level_1_Heading\"},\"sa\":{\"href\":\"#Level_1_Heading\"},\"dsr\":[71,169,19,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[90,122,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[123,167,22,7]}'>Level 1 Heading</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[171,274,0,0]}'><li data-parsoid='{\"dsr\":[171,274,1,0]}'><ul data-parsoid='{\"dsr\":[172,274,0,0]}'><li data-parsoid='{\"dsr\":[172,274,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Level_2_Heading\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Level_2_Heading\"},\"sa\":{\"href\":\"#Level_2_Heading\"},\"dsr\":[174,274,19,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[193,227,24,7]}'>1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[228,272,22,7]}'>Level 2 Heading</span></a></li></ul></li></ul>\n\n<ul data-parsoid='{\"dsr\":[276,382,0,0]}'><li data-parsoid='{\"dsr\":[276,382,1,0]}'><ul data-parsoid='{\"dsr\":[277,382,0,0]}'><li data-parsoid='{\"dsr\":[277,382,1,0]}'><ul data-parsoid='{\"dsr\":[278,382,0,0]}'><li data-parsoid='{\"dsr\":[278,382,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Level_3_Heading\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Level_3_Heading\"},\"sa\":{\"href\":\"#Level_3_Heading\"},\"dsr\":[280,382,19,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[299,335,24,7]}'>1.1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[336,380,22,7]}'>Level 3 Heading</span></a></li></ul></li></ul></li></ul>\n\n<ul data-parsoid='{\"dsr\":[384,493,0,0]}'><li data-parsoid='{\"dsr\":[384,493,1,0]}'><ul data-parsoid='{\"dsr\":[385,493,0,0]}'><li data-parsoid='{\"dsr\":[385,493,1,0]}'><ul data-parsoid='{\"dsr\":[386,493,0,0]}'><li data-parsoid='{\"dsr\":[386,493,1,0]}'><ul data-parsoid='{\"dsr\":[387,493,0,0]}'><li data-parsoid='{\"dsr\":[387,493,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Level_4_Heading\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Level_4_Heading\"},\"sa\":{\"href\":\"#Level_4_Heading\"},\"dsr\":[389,493,19,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[408,446,24,7]}'>1.1.1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[447,491,22,7]}'>Level 4 Heading</span></a></li></ul></li></ul></li></ul></li></ul>\n\n<ul data-parsoid='{\"dsr\":[495,607,0,0]}'><li data-parsoid='{\"dsr\":[495,607,1,0]}'><ul data-parsoid='{\"dsr\":[496,607,0,0]}'><li data-parsoid='{\"dsr\":[496,607,1,0]}'><ul data-parsoid='{\"dsr\":[497,607,0,0]}'><li data-parsoid='{\"dsr\":[497,607,1,0]}'><ul data-parsoid='{\"dsr\":[498,607,0,0]}'><li data-parsoid='{\"dsr\":[498,607,1,0]}'><ul data-parsoid='{\"dsr\":[499,607,0,0]}'><li data-parsoid='{\"dsr\":[499,607,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Level_5_Heading\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Level_5_Heading\"},\"sa\":{\"href\":\"#Level_5_Heading\"},\"dsr\":[501,607,19,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[520,560,24,7]}'>1.1.1.1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[561,605,22,7]}'>Level 5 Heading</span></a></li></ul></li></ul></li></ul></li></ul></li></ul>\n\n<ul data-parsoid='{\"dsr\":[609,1278,0,0]}'><li data-parsoid='{\"dsr\":[609,1278,1,0]}'><ul data-parsoid='{\"dsr\":[610,1278,0,0]}'><li data-parsoid='{\"dsr\":[610,1278,1,0]}'><ul data-parsoid='{\"dsr\":[611,1278,0,0]}'><li data-parsoid='{\"dsr\":[611,1278,1,0]}'><ul data-parsoid='{\"dsr\":[612,1278,0,0]}'><li data-parsoid='{\"dsr\":[612,1278,1,0]}'><ul data-parsoid='{\"dsr\":[613,1278,0,0]}'><li data-parsoid='{\"dsr\":[613,1278,1,0]}'><ul data-parsoid='{\"dsr\":[614,1278,0,0]}'><li data-parsoid='{\"dsr\":[614,724,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Level_6_Heading\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Level_6_Heading\"},\"sa\":{\"href\":\"#Level_6_Heading\"},\"dsr\":[616,724,19,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[635,677,24,7]}'>1.1.1.1.1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[678,722,22,7]}'>Level 6 Heading</span></a></li>\n<li data-parsoid='{\"dsr\":[725,850,6,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#.3D_Level_7_Heading.3D\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#.3D_Level_7_Heading.3D\"},\"sa\":{\"href\":\"#.3D_Level_7_Heading.3D\"},\"dsr\":[732,850,26,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[758,800,24,7]}'>1.1.1.1.1.2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[801,848,22,7]}'>= Level 7 Heading=</span></a></li>\n<li data-parsoid='{\"dsr\":[851,984,6,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#.3D.3D_Level_8_Heading.3D.3D\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#.3D.3D_Level_8_Heading.3D.3D\"},\"sa\":{\"href\":\"#.3D.3D_Level_8_Heading.3D.3D\"},\"dsr\":[858,984,32,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[890,932,24,7]}'>1.1.1.1.1.3</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[933,982,22,7]}'>== Level 8 Heading==</span></a></li>\n<li data-parsoid='{\"dsr\":[985,1126,6,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#.3D.3D.3D_Level_9_Heading.3D.3D.3D\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#.3D.3D.3D_Level_9_Heading.3D.3D.3D\"},\"sa\":{\"href\":\"#.3D.3D.3D_Level_9_Heading.3D.3D.3D\"},\"dsr\":[992,1126,38,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1030,1072,24,7]}'>1.1.1.1.1.4</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1073,1124,22,7]}'>=== Level 9 Heading===</span></a></li>\n<li data-parsoid='{\"dsr\":[1127,1278,6,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#.3D.3D.3D.3D_Level_10_Heading.3D.3D.3D.3D\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#.3D.3D.3D.3D_Level_10_Heading.3D.3D.3D.3D\"},\"sa\":{\"href\":\"#.3D.3D.3D.3D_Level_10_Heading.3D.3D.3D.3D\"},\"dsr\":[1134,1278,45,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1179,1221,24,7]}'>1.1.1.1.1.5</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1222,1276,22,7]}'>==== Level 10 Heading====</span></a></li></ul></li></ul></li></ul></li></ul></li></ul></li></ul>\n\n</div>\n\n<h1 data-parsoid='{\"dsr\":[1288,1307,1,1]}'> Level 1 Heading </h1>\n\n<h2 data-parsoid='{\"dsr\":[1309,1330,2,2]}'> Level 2 Heading </h2>\n\n<h3 data-parsoid='{\"dsr\":[1332,1355,3,3]}'> Level 3 Heading </h3>\n\n<h4 data-parsoid='{\"dsr\":[1357,1382,4,4]}'> Level 4 Heading </h4>\n\n<h5 data-parsoid='{\"dsr\":[1384,1411,5,5]}'> Level 5 Heading </h5>\n\n<h6 data-parsoid='{\"dsr\":[1413,1442,6,6]}'> Level 6 Heading </h6>\n\n<h6 data-parsoid='{\"dsr\":[1444,1476,6,6]}'> = Level 7 Heading= </h6>\n\n<h6 data-parsoid='{\"dsr\":[1478,1512,6,6]}'> == Level 8 Heading== </h6>\n\n<h6 data-parsoid='{\"dsr\":[1514,1550,6,6]}'> === Level 9 Heading=== </h6>\n\n<h6 data-parsoid='{\"dsr\":[1552,1591,6,6]}'> ==== Level 10 Heading==== </h6>\n");
add("html2html", "TOC regression (T11764)", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,624,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,153,0,0]}'><li data-parsoid='{\"dsr\":[69,153,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_1\"},\"sa\":{\"href\":\"#title_1\"},\"dsr\":[71,153,11,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[82,114,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[115,151,22,7]}'>title 1</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[155,246,0,0]}'><li data-parsoid='{\"dsr\":[155,246,1,0]}'><ul data-parsoid='{\"dsr\":[156,246,0,0]}'><li data-parsoid='{\"dsr\":[156,246,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_1.1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_1.1\"},\"sa\":{\"href\":\"#title_1.1\"},\"dsr\":[158,246,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[171,205,24,7]}'>1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[206,244,22,7]}'>title 1.1</span></a></li></ul></li></ul>\n\n<ul data-parsoid='{\"dsr\":[248,523,0,0]}'><li data-parsoid='{\"dsr\":[248,438,1,0]}'><ul data-parsoid='{\"dsr\":[249,438,0,0]}'><li data-parsoid='{\"dsr\":[249,346,1,0]}'><ul data-parsoid='{\"dsr\":[250,346,0,0]}'><li data-parsoid='{\"dsr\":[250,346,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_1.1.1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_1.1.1\"},\"sa\":{\"href\":\"#title_1.1.1\"},\"dsr\":[252,346,15,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[267,303,24,7]}'>1.1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[304,344,22,7]}'>title 1.1.1</span></a></li></ul></li>\n<li data-parsoid='{\"dsr\":[347,438,2,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_1.2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_1.2\"},\"sa\":{\"href\":\"#title_1.2\"},\"dsr\":[350,438,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[363,397,24,7]}'>1.2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[398,436,22,7]}'>title 1.2</span></a></li></ul></li>\n<li data-parsoid='{\"dsr\":[439,523,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_2\"},\"sa\":{\"href\":\"#title_2\"},\"dsr\":[441,523,11,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[452,484,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[485,521,22,7]}'>title 2</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[525,616,0,0]}'><li data-parsoid='{\"dsr\":[525,616,1,0]}'><ul data-parsoid='{\"dsr\":[526,616,0,0]}'><li data-parsoid='{\"dsr\":[526,616,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_2.1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_2.1\"},\"sa\":{\"href\":\"#title_2.1\"},\"dsr\":[528,616,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[541,575,24,7]}'>2.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[576,614,22,7]}'>title 2.1</span></a></li></ul></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[626,639,2,2]}'> title 1 </h2>\n\n<h3 data-parsoid='{\"dsr\":[641,658,3,3]}'> title 1.1 </h3>\n\n<h4 data-parsoid='{\"dsr\":[660,681,4,4]}'> title 1.1.1 </h4>\n\n<h3 data-parsoid='{\"dsr\":[683,700,3,3]}'> title 1.2 </h3>\n\n<h2 data-parsoid='{\"dsr\":[702,715,2,2]}'> title 2 </h2>\n\n<h3 data-parsoid='{\"dsr\":[717,734,3,3]}'> title 2.1 </h3>\n");
add("html2html", "TOC with wgMaxTocLevel=3 (bug 6204)", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,524,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,153,0,0]}'><li data-parsoid='{\"dsr\":[69,153,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_1\"},\"sa\":{\"href\":\"#title_1\"},\"dsr\":[71,153,11,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[82,114,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[115,151,22,7]}'>title 1</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[155,423,0,0]}'><li data-parsoid='{\"dsr\":[155,338,1,0]}'><ul data-parsoid='{\"dsr\":[156,338,0,0]}'><li data-parsoid='{\"dsr\":[156,246,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_1.1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_1.1\"},\"sa\":{\"href\":\"#title_1.1\"},\"dsr\":[158,246,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[171,205,24,7]}'>1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[206,244,22,7]}'>title 1.1</span></a></li>\n<li data-parsoid='{\"dsr\":[247,338,2,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_1.2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_1.2\"},\"sa\":{\"href\":\"#title_1.2\"},\"dsr\":[250,338,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[263,297,24,7]}'>1.2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[298,336,22,7]}'>title 1.2</span></a></li></ul></li>\n<li data-parsoid='{\"dsr\":[339,423,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_2\"},\"sa\":{\"href\":\"#title_2\"},\"dsr\":[341,423,11,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[352,384,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[385,421,22,7]}'>title 2</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[425,516,0,0]}'><li data-parsoid='{\"dsr\":[425,516,1,0]}'><ul data-parsoid='{\"dsr\":[426,516,0,0]}'><li data-parsoid='{\"dsr\":[426,516,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_2.1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_2.1\"},\"sa\":{\"href\":\"#title_2.1\"},\"dsr\":[428,516,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[441,475,24,7]}'>2.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[476,514,22,7]}'>title 2.1</span></a></li></ul></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[526,539,2,2]}'> title 1 </h2>\n\n<h3 data-parsoid='{\"dsr\":[541,558,3,3]}'> title 1.1 </h3>\n\n<h4 data-parsoid='{\"dsr\":[560,581,4,4]}'> title 1.1.1 </h4>\n\n<h3 data-parsoid='{\"dsr\":[583,600,3,3]}'> title 1.2 </h3>\n\n<h2 data-parsoid='{\"dsr\":[602,615,2,2]}'> title 2 </h2>\n\n<h3 data-parsoid='{\"dsr\":[617,634,3,3]}'> title 2.1 </h3>\n");
add("html2html", "TOC with wgMaxTocLevel=3 and two level four headings (bug 6204)", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,351,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,157,0,0]}'><li data-parsoid='{\"dsr\":[69,157,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Section_1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Section_1\"},\"sa\":{\"href\":\"#Section_1\"},\"dsr\":[71,157,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[84,116,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[117,155,22,7]}'>Section 1</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[159,343,0,0]}'><li data-parsoid='{\"dsr\":[159,254,1,0]}'><ul data-parsoid='{\"dsr\":[160,254,0,0]}'><li data-parsoid='{\"dsr\":[160,254,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Section_1.1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Section_1.1\"},\"sa\":{\"href\":\"#Section_1.1\"},\"dsr\":[162,254,15,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[177,211,24,7]}'>1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[212,252,22,7]}'>Section 1.1</span></a></li></ul></li>\n<li data-parsoid='{\"dsr\":[255,343,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Section_2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Section_2\"},\"sa\":{\"href\":\"#Section_2\"},\"dsr\":[257,343,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[270,302,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[303,341,22,7]}'>Section 2</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[353,368,2,2]}'> Section 1 </h2>\n\n<h3 data-parsoid='{\"dsr\":[370,389,3,3]}'> Section 1.1 </h3>\n\n<h4 data-parsoid='{\"dsr\":[391,414,4,4]}'> Section 1.1.1 </h4>\n\n<h4 data-parsoid='{\"dsr\":[416,441,4,4]}'> Section 1.1.1.1 </h4>\n\n<h2 data-parsoid='{\"dsr\":[443,458,2,2]}'> Section 2 </h2>\n");
add("html2html", "Link inside a section heading", "<h2 data-parsoid='{\"dsr\":[0,50,2,2]}'> Section with a <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[18,41,17,2]}'>link</a> in it </h2>\n");
add("html2html", "TOC regression (T14077)", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,339,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,153,0,0]}'><li data-parsoid='{\"dsr\":[69,153,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_1\"},\"sa\":{\"href\":\"#title_1\"},\"dsr\":[71,153,11,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[82,114,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[115,151,22,7]}'>title 1</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[155,331,0,0]}'><li data-parsoid='{\"dsr\":[155,246,1,0]}'><ul data-parsoid='{\"dsr\":[156,246,0,0]}'><li data-parsoid='{\"dsr\":[156,246,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_1.1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_1.1\"},\"sa\":{\"href\":\"#title_1.1\"},\"dsr\":[158,246,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[171,205,24,7]}'>1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[206,244,22,7]}'>title 1.1</span></a></li></ul></li>\n<li data-parsoid='{\"dsr\":[247,331,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#title_2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#title_2\"},\"sa\":{\"href\":\"#title_2\"},\"dsr\":[249,331,11,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[260,292,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[293,329,22,7]}'>title 2</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[341,354,2,2]}'> title 1 </h2>\n\n<h3 data-parsoid='{\"dsr\":[356,373,3,3]}'> title 1.1 </h3>\n\n<h2 data-parsoid='{\"dsr\":[375,388,2,2]}'> title 2 </h2>\n");
add("html2html", "Header with special characters (bug 25462)", "<p data-parsoid='{\"dsr\":[0,72,0,0]}'>The tooltips shall not show entities to the user (ie. be double escaped)</p>\n\n<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[74,625,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[100,141,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[120,134,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[143,617,0,0]}'><li data-parsoid='{\"dsr\":[143,237,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#text_.3E_text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#text_.3E_text\"},\"sa\":{\"href\":\"#text_.3E_text\"},\"dsr\":[145,237,17,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[162,194,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[195,235,22,7]}'>text > text</span></a></li>\n<li data-parsoid='{\"dsr\":[238,332,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#text_.3C_text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#text_.3C_text\"},\"sa\":{\"href\":\"#text_.3C_text\"},\"dsr\":[240,332,17,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[257,289,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[290,330,22,7]}'>text &lt; text</span></a></li>\n<li data-parsoid='{\"dsr\":[333,427,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#text_.26_text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#text_.26_text\"},\"sa\":{\"href\":\"#text_.26_text\"},\"dsr\":[335,427,17,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[352,384,24,7]}'>3</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[385,425,22,7]}'>text &amp; text</span></a></li>\n<li data-parsoid='{\"dsr\":[428,522,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#text_.27_text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#text_.27_text\"},\"sa\":{\"href\":\"#text_.27_text\"},\"dsr\":[430,522,17,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[447,479,24,7]}'>4</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[480,520,22,7]}'>text ' text</span></a></li>\n<li data-parsoid='{\"dsr\":[523,617,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#text_.22_text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#text_.22_text\"},\"sa\":{\"href\":\"#text_.22_text\"},\"dsr\":[525,617,17,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[542,574,24,7]}'>5</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[575,615,22,7]}'>text \" text</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[627,644,2,2]}'> text > text </h2>\n<p data-parsoid='{\"dsr\":[645,654,0,0]}'>section 1</p>\n\n<h2 data-parsoid='{\"dsr\":[656,673,2,2]}'> text &lt; text </h2>\n<p data-parsoid='{\"dsr\":[674,683,0,0]}'>section 2</p>\n\n<h2 data-parsoid='{\"dsr\":[685,702,2,2]}'> text &amp; text </h2>\n<p data-parsoid='{\"dsr\":[703,712,0,0]}'>section 3</p>\n\n<h2 data-parsoid='{\"dsr\":[714,731,2,2]}'> text ' text </h2>\n<p data-parsoid='{\"dsr\":[732,741,0,0]}'>section 4</p>\n\n<h2 data-parsoid='{\"dsr\":[743,760,2,2]}'> text \" text </h2>\n<p data-parsoid='{\"dsr\":[761,770,0,0]}'>section 5</p>\n");
add("html2html", "Header with space, plus and underscore as entity", "<p data-parsoid='{\"dsr\":[0,34,0,0]}'>Id should not contain + for spaces</p>\n\n<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[36,820,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[62,103,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[82,96,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[105,812,0,0]}'><li data-parsoid='{\"dsr\":[105,211,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Space_between_Text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Space_between_Text\"},\"sa\":{\"href\":\"#Space_between_Text\"},\"dsr\":[107,211,22,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[129,161,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[162,209,22,7]}'>Space between Text</span></a></li>\n<li data-parsoid='{\"dsr\":[212,332,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Space-Entity_between_Text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Space-Entity_between_Text\"},\"sa\":{\"href\":\"#Space-Entity_between_Text\"},\"dsr\":[214,332,29,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[243,275,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[276,330,22,7]}'>Space-Entity between Text</span></a></li>\n<li data-parsoid='{\"dsr\":[333,441,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Plus.2Bbetween.2BText\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Plus.2Bbetween.2BText\"},\"sa\":{\"href\":\"#Plus.2Bbetween.2BText\"},\"dsr\":[335,441,25,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[360,392,24,7]}'>3</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[393,439,22,7]}'>Plus+between+Text</span></a></li>\n<li data-parsoid='{\"dsr\":[442,564,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Plus-Entity.2Bbetween.2BText\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Plus-Entity.2Bbetween.2BText\"},\"sa\":{\"href\":\"#Plus-Entity.2Bbetween.2BText\"},\"dsr\":[444,564,32,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[476,508,24,7]}'>4</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[509,562,22,7]}'>Plus-Entity+between+Text</span></a></li>\n<li data-parsoid='{\"dsr\":[565,681,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Underscore_between_Text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Underscore_between_Text\"},\"sa\":{\"href\":\"#Underscore_between_Text\"},\"dsr\":[567,681,27,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[594,626,24,7]}'>5</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[627,679,22,7]}'>Underscore_between_Text</span></a></li>\n<li data-parsoid='{\"dsr\":[682,812,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Underscore-Entity_between_Text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Underscore-Entity_between_Text\"},\"sa\":{\"href\":\"#Underscore-Entity_between_Text\"},\"dsr\":[684,812,34,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[718,750,24,7]}'>6</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[751,810,22,7]}'>Underscore-Entity_between_Text</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[822,846,2,2]}'> Space between Text </h2>\n<p data-parsoid='{\"dsr\":[847,856,0,0]}'>section 1</p>\n\n<h2 data-parsoid='{\"dsr\":[858,889,2,2]}'> Space-Entity between Text </h2>\n<p data-parsoid='{\"dsr\":[890,899,0,0]}'>section 2</p>\n\n<h2 data-parsoid='{\"dsr\":[901,924,2,2]}'> Plus+between+Text </h2>\n<p data-parsoid='{\"dsr\":[925,934,0,0]}'>section 3</p>\n\n<h2 data-parsoid='{\"dsr\":[936,966,2,2]}'> Plus-Entity+between+Text </h2>\n<p data-parsoid='{\"dsr\":[967,976,0,0]}'>section 4</p>\n\n<h2 data-parsoid='{\"dsr\":[978,1007,2,2]}'> Underscore_between_Text </h2>\n<p data-parsoid='{\"dsr\":[1008,1017,0,0]}'>section 5</p>\n\n<h2 data-parsoid='{\"dsr\":[1019,1055,2,2]}'> Underscore-Entity_between_Text </h2>\n<p data-parsoid='{\"dsr\":[1056,1065,0,0]}'>section 6</p>\n\n<p data-parsoid='{\"dsr\":[1067,1274,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Main%20Page#Space_between_Text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Space_between_Text\"},\"sa\":{\"href\":\"#Space_between_Text\"},\"dsr\":[1067,1110,22,2]}'>#Space between Text</a>\n<a rel=\"mw:WikiLink\" href=\"./Main%20Page#Space-Entity_between_Text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Space-Entity_between_Text\"},\"sa\":{\"href\":\"#Space-Entity_between_Text\"},\"dsr\":[1111,1168,29,2]}'>#Space-Entity between Text</a>\n<a rel=\"mw:WikiLink\" href=\"./Main%20Page#Plus.2Bbetween.2BText\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Plus.2Bbetween.2BText\"},\"sa\":{\"href\":\"#Plus.2Bbetween.2BText\"},\"dsr\":[1169,1214,25,2]}'>#Plus+between+Text</a>\n<a rel=\"mw:WikiLink\" href=\"./Main%20Page#Plus-Entity.2Bbetween.2BText\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Plus-Entity.2Bbetween.2BText\"},\"sa\":{\"href\":\"#Plus-Entity.2Bbetween.2BText\"},\"dsr\":[1215,1274,32,2]}'>#Plus-Entity+between+Text</a></p>\n<ol data-parsoid='{\"dsr\":[1275,1331,0,0]}'><li data-parsoid='{\"dsr\":[1275,1299,1,0]}'>Underscore_between_Text</li>\n<li data-parsoid='{\"dsr\":[1300,1331,1,0]}'>Underscore-Entity_between_Text</li></ol>\n");
add("html2html", "Headers with excess '=' characters\n(Are similar tests necessary beyond the 1st level?)", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,452,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,444,0,0]}'><li data-parsoid='{\"dsr\":[69,149,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#foo.3D\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#foo.3D\"},\"sa\":{\"href\":\"#foo.3D\"},\"dsr\":[71,149,10,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[81,113,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[114,147,22,7]}'>foo=</span></a></li>\n<li data-parsoid='{\"dsr\":[150,230,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#.3Dfoo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#.3Dfoo\"},\"sa\":{\"href\":\"#.3Dfoo\"},\"dsr\":[152,230,10,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[162,194,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[195,228,22,7]}'>=foo</span></a></li>\n<li data-parsoid='{\"dsr\":[231,337,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#italic_heading.3D\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#italic_heading.3D\"},\"sa\":{\"href\":\"#italic_heading.3D\"},\"dsr\":[233,337,21,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[254,286,24,7]}'>3</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[287,335,22,7]}'><i data-parsoid='{\"dsr\":[309,319,2,2]}'>italic</i> heading=</span></a></li>\n<li data-parsoid='{\"dsr\":[338,444,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#.3Ditalic_heading\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#.3Ditalic_heading\"},\"sa\":{\"href\":\"#.3Ditalic_heading\"},\"dsr\":[340,444,21,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[361,393,24,7]}'>4</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[394,442,22,7]}'>=<i data-parsoid='{\"dsr\":[417,427,2,2]}'>italic</i> heading</span></a></li></ul>\n\n</div>\n\n<h1 data-parsoid='{\"dsr\":[454,462,1,1]}'> foo= </h1>\n\n<h1 data-parsoid='{\"dsr\":[464,472,1,1]}'> =foo </h1>\n\n<h1 data-parsoid='{\"dsr\":[474,497,1,1]}'> <i data-parsoid='{\"dsr\":[476,486,2,2]}'>italic</i> heading= </h1>\n\n<h1 data-parsoid='{\"dsr\":[499,522,1,1]}'> =<i data-parsoid='{\"dsr\":[502,512,2,2]}'>italic</i> heading </h1>\n");
add("html2html", "HTML headers vs TOC (bug 23393)\n(__NOEDITSECTION__ for clearer output, doesn't matter here)", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,628,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,155,0,0]}'><li data-parsoid='{\"dsr\":[69,155,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Header_1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Header_1\"},\"sa\":{\"href\":\"#Header_1\"},\"dsr\":[71,155,12,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[83,115,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[116,153,22,7]}'>Header 1</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[157,431,0,0]}'><li data-parsoid='{\"dsr\":[157,344,1,0]}'><ul data-parsoid='{\"dsr\":[158,344,0,0]}'><li data-parsoid='{\"dsr\":[158,250,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Header_1.1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Header_1.1\"},\"sa\":{\"href\":\"#Header_1.1\"},\"dsr\":[160,250,14,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[174,208,24,7]}'>1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[209,248,22,7]}'>Header 1.1</span></a></li>\n<li data-parsoid='{\"dsr\":[251,344,2,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Header_1.2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Header_1.2\"},\"sa\":{\"href\":\"#Header_1.2\"},\"dsr\":[254,344,14,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[268,302,24,7]}'>1.2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[303,342,22,7]}'>Header 1.2</span></a></li></ul></li>\n<li data-parsoid='{\"dsr\":[345,431,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Header_2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Header_2\"},\"sa\":{\"href\":\"#Header_2\"},\"dsr\":[347,431,12,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[359,391,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[392,429,22,7]}'>Header 2</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[433,620,0,0]}'><li data-parsoid='{\"dsr\":[433,620,1,0]}'><ul data-parsoid='{\"dsr\":[434,620,0,0]}'><li data-parsoid='{\"dsr\":[434,526,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Header_2.1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Header_2.1\"},\"sa\":{\"href\":\"#Header_2.1\"},\"dsr\":[436,526,14,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[450,484,24,7]}'>2.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[485,524,22,7]}'>Header 2.1</span></a></li>\n<li data-parsoid='{\"dsr\":[527,620,2,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Header_2.2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Header_2.2\"},\"sa\":{\"href\":\"#Header_2.2\"},\"dsr\":[530,620,14,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[544,578,24,7]}'>2.2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[579,618,22,7]}'>Header 2.2</span></a></li></ul></li></ul>\n\n</div>\n\n<h1 data-parsoid='{\"dsr\":[630,642,1,1]}'> Header 1 </h1>\n\n<h2 data-parsoid='{\"dsr\":[644,660,2,2]}'> Header 1.1 </h2>\n\n<h2 data-parsoid='{\"dsr\":[662,678,2,2]}'> Header 1.2 </h2>\n\n<h1 data-parsoid='{\"dsr\":[680,692,1,1]}'> Header 2 </h1>\n\n<h2 data-parsoid='{\"dsr\":[694,710,2,2]}'> Header 2.1 </h2>\n\n<h2 data-parsoid='{\"dsr\":[712,728,2,2]}'> Header 2.2 </h2>\n");
add("html2html", "Media link", "<p data-parsoid='{\"dsr\":[0,60,0,0]}'><a rel=\"mw:ExtLink\" href=\"http://example.com/images/3/3a/Foobar.jpg\" data-parsoid='{\"targetOff\":43,\"contentOffsets\":[43,59],\"dsr\":[0,60,43,1]}'>Media:Foobar.jpg</a></p>\n");
add("html2html", "Media link with text", "<p data-parsoid='{\"dsr\":[0,66,0,0]}'><a rel=\"mw:ExtLink\" href=\"http://example.com/images/3/3a/Foobar.jpg\" data-parsoid='{\"targetOff\":43,\"contentOffsets\":[43,65],\"dsr\":[0,66,43,1]}'>A neat file to look at</a></p>\n");
add("html2html", "Media link with nasty text", "<p data-parsoid='{\"dsr\":[0,53,0,0]}'><a rel=\"mw:ExtLink\" href=\"http://example.com/images/3/3a/Foobar.jpg\" data-parsoid='{\"targetOff\":43,\"contentOffsets\":[43,52],\"dsr\":[0,53,43,1]}'>Safe Link</a></p>\n<div style=\"display:none\" data-parsoid='{\"stx\":\"html\",\"dsr\":[54,132,26,6]}'>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>");
add("html2html", "Media link to nonexistent file (bug 1702)", "<p data-parsoid='{\"dsr\":[0,74,0,0]}'>[/index.php?title=Special:Upload&amp;wpDestFile=No_such.jpg Media:No such.jpg]</p>\n");
add("html2html", "Character reference normalization in link text (bug 1938)", "<p data-parsoid='{\"dsr\":[0,28,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,28,17,2]}'>this&amp;that</a></p>\n");
add("html2html", "(bug 19451) Links should refer to the normalized form.", "<p data-parsoid='{\"dsr\":[0,73,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/אַ\" title=\"Wiki/אַ\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/אַ\"},\"sa\":{\"href\":\"wiki/אַ\"},\"dsr\":[0,13,10,2]}'>אַ</a>\n<a rel=\"mw:WikiLink\" href=\"./Wiki/אַ\" title=\"Wiki/אַ\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/אַ\"},\"sa\":{\"href\":\"wiki/אַ\"},\"dsr\":[14,28,10,2]}'>אַ</a>\n<a rel=\"mw:WikiLink\" href=\"./Wiki/אַ\" title=\"Wiki/אַ\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/אַ\"},\"sa\":{\"href\":\"wiki/אַ\"},\"dsr\":[29,43,10,2]}'>אַ</a>\n<a rel=\"mw:WikiLink\" href=\"./Wiki/אַ\" title=\"Wiki/אַ\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/אַ\"},\"sa\":{\"href\":\"wiki/אַ\"},\"dsr\":[44,58,10,2]}'>אַ</a>\n<a rel=\"mw:WikiLink\" href=\"./Wiki/אַ\" title=\"Wiki/אַ\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/אַ\"},\"sa\":{\"href\":\"wiki/אַ\"},\"dsr\":[59,73,10,2]}'>אַ</a></p>\n");
add("html2html", "Bug 2095: link with pipe and three closing brackets, version 2", "<p data-parsoid='{\"dsr\":[0,52,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Main_Page\" title=\"Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main_Page\"},\"sa\":{\"href\":\"Main Page\"},\"dsr\":[0,52,12,2]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[12,50,8,9]}'>[http://example.com/]</span></a></p>\n");
add("html2html", "Bug 2304: HTML attribute safety (dangerous style template; 2309)", "<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[0,40,34,6]}'></div>\n");
add("html2html", "Bug 2304: HTML attribute safety (unsafe parameter; 2309)", "<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[0,49,34,6]}'>Magic div</div>\n");
add("html2html", "Bug 3244: HTML attribute safety (extension; unsafe)", "<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[0,40,34,6]}'></div>\n");
add("html2html", "MSIE CSS safety test: spurious slash", "<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[0,44,34,6]}'>evil</div>\n");
add("html2html", "MSIE CSS safety test: hex code", "<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[0,44,34,6]}'>evil</div>\n");
add("html2html", "CSS safety test (all browsers): vertical tab (bug 55332 / CVE-2013-4567)", "<p data-parsoid='{\"dsr\":[0,1,0,0]}'>A</p>\n");
add("html2html", "MSIE 6 CSS safety test: Fullwidth (bug 55332)", "<p data-parsoid='{\"dsr\":[0,1,0,0]}'>A</p>\n<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[2,43,34,6]}'>B</div>\n");
add("html2html", "MSIE 6 CSS safety test: IPA extensions (bug 55332)", "<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[0,41,34,6]}'>A</div>\n<p data-parsoid='{\"dsr\":[42,43,0,0]}'>B</p>\n");
add("html2html", "MSIE 6 CSS safety test: sup/sub script (bug 55332)", "<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[0,41,34,6]}'>A</div>\n<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[42,83,34,6]}'>B</div>\n<p data-parsoid='{\"dsr\":[84,85,0,0]}'>C</p>\n");
add("html2html", "Opera -o-link CSS", "<div title=\"data:text/html,&lt;img src=1 onerror=alert(1)\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,93,55,6]}'>\" style=\"/* insecure input */\">X</div>\n");
add("html2html", "MSIE 6 CSS safety test: Repetition markers (bug 55332)", "<p data-parsoid='{\"dsr\":[0,1,0,0]}'>A</p>\n\n<p data-parsoid='{\"dsr\":[3,4,0,0]}'>B</p>\n\n<p data-parsoid='{\"dsr\":[6,7,0,0]}'>C</p>\n\n<p data-parsoid='{\"dsr\":[9,10,0,0]}'>D</p>\n\n<p data-parsoid='{\"dsr\":[12,13,0,0]}'>E</p>\n\n<p data-parsoid='{\"dsr\":[15,16,0,0]}'>F</p>\n\n<p data-parsoid='{\"dsr\":[18,19,0,0]}'>G</p>\n");
add("html2html", "Table attribute safety", "<table data-parsoid='{\"dsr\":[0,46,2,2]}'>\n\n<tbody data-parsoid='{\"dsr\":[4,44,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[4,43,0,0]}'><th style=\" \" data-parsoid='{\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"autoInsertedEnd\":true,\"dsr\":[4,43,32,0]}'> status</th></tr>\n</tbody></table>\n");
add("html2html", "CSS line continuation 1", "<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* insecure input */\"},\"dsr\":[0,40,34,6]}'></div>\n");
add("html2html", "CSS line continuation 2", "<div style=\" \" data-parsoid='{\"stx\":\"html\",\"a\":{\"style\":\" \"},\"sa\":{\"style\":\"/* invalid control char */\"},\"dsr\":[0,46,40,6]}'></div>\n");
add("html2html", "Parser hook: nested tags", "<pre typeof=\"mw:Extension/tag\" data-mw='{\"name\":\"tag\",\"attrs\":{},\"body\":{\"extsrc\":\"&lt;tag>\"}}' data-parsoid='{\"dsr\":[0,16,2,2]}' about=\"#mwt2\"></pre><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[16,39,8,9]}'>&lt;/tag></span>");
add("html2html", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata", "<div itemscope=\"\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,244,18,6]}'>\n\t<p data-parsoid='{\"dsr\":[20,141,0,0]}'>&lt;meta itemprop=\"hello\" content=\"world\" />\n\t&lt;meta http-equiv=\"refresh\" content=\"5\">\n\t&lt;meta itemprop=\"hello\" content=\"5\" /></p>\n\n\t<p data-parsoid='{\"dsr\":[144,237,0,0]}'><a rel=\"mw:ExtLink\" href=\"http://example.org\" data-parsoid='{\"targetOff\":163,\"contentOffsets\":[163,163],\"dsr\":[144,164,19,1]}'></a>\n\t&lt;link rel=\"stylesheet\" href=\"http://example.org\">\n\t<a rel=\"mw:ExtLink\" href=\"http://example.org\" data-parsoid='{\"targetOff\":236,\"contentOffsets\":[236,236],\"dsr\":[217,237,19,1]}'></a></p>\n</div>\n");
add("html2html", "HTML ordered list item with parameters oddity", "<ol data-parsoid='{\"dsr\":[0,5,0,0]}'><li data-parsoid='{\"dsr\":[0,5,1,0]}'> One</li></ol>\n");
add("html2html", "Fuzz testing: Parser14", "<h2 data-parsoid='{\"dsr\":[0,18,2,2]}'> onmouseover= </h2>\n<p data-parsoid='{\"dsr\":[19,26,0,0]}'>http://</p>\n<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[27,201,26,6]}'>\n<div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[54,95,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[74,88,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[97,193,0,0]}'><li data-parsoid='{\"dsr\":[97,193,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#onmouseover.3D\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#onmouseover.3D\"},\"sa\":{\"href\":\"#onmouseover.3D\"},\"dsr\":[99,193,18,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[117,149,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[150,191,22,7]}'>onmouseover=</span></a></li></ul>\n\n</div>\n");
add("html2html", "Fuzz testing: Parser24", "\n<p data-parsoid='{\"dsr\":[1,64,0,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[1,22,8,9]}'>{{{|</span>\n<u class=\"|\" data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[23,64,13,0]}'><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[36,59,8,9]}'>}}}} ></span>\n<br data-parsoid='{\"stx\":\"html\",\"noClose\":true,\"dsr\":[60,64,4,null]}'/></u></p>\n\n<p data-parsoid='{\"dsr\":[66,108,0,0]}'><u class=\"|\" data-parsoid='{\"stx\":\"html\",\"autoInsertedStart\":true,\"dsr\":[66,108,0,4]}'>MOVE YOUR MOUSE CURSOR OVER THIS TEXT\n</u></p>\n<table data-parsoid='{\"dsr\":[109,117,2,2]}'>\n<tbody data-parsoid='{\"dsr\":[112,115,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[112,113,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[112,113,1,0]}'></td></tr>\n\n</tbody></table>\n<p data-parsoid='{\"dsr\":[118,135,0,0]}'><u class=\"|\" data-parsoid='{\"stx\":\"html\",\"dsr\":[118,135,13,4]}'></u></p>");
add("html2html", "Fuzz testing: encoded newline in generated HTML replacements (bug 6577)", " \n");
add("html2html", "Special page transclusion", "<ul data-parsoid='{\"dsr\":[0,24,0,0]}'><li data-parsoid='{\"dsr\":[0,24,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Wiki/Xyzzyx\" title=\"Wiki/Xyzzyx\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Xyzzyx\"},\"sa\":{\"href\":\"wiki/Xyzzyx\"},\"dsr\":[2,24,14,2]}'>Xyzzyx</a></li></ul>\n");
add("html2html", "Special page transclusion twice (bug 5021)", "<ul data-parsoid='{\"dsr\":[0,24,0,0]}'><li data-parsoid='{\"dsr\":[0,24,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Wiki/Xyzzyx\" title=\"Wiki/Xyzzyx\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Xyzzyx\"},\"sa\":{\"href\":\"wiki/Xyzzyx\"},\"dsr\":[2,24,14,2]}'>Xyzzyx</a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[26,50,0,0]}'><li data-parsoid='{\"dsr\":[26,50,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Wiki/Xyzzyx\" title=\"Wiki/Xyzzyx\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Xyzzyx\"},\"sa\":{\"href\":\"wiki/Xyzzyx\"},\"dsr\":[28,50,14,2]}'>Xyzzyx</a></li></ul>\n");
add("html2html", "Transclusion of nonexistent MediaWiki message", "<p data-parsoid='{\"dsr\":[0,84,0,0]}'>[/index.php?title=MediaWiki:Mainpagexxx&amp;action=edit&amp;redlink=1 MediaWiki:Mainpagexxx]</p>\n");
add("html2html", "Special:Search page linking.", "<p data-parsoid='{\"dsr\":[0,38,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Special:Search\" title=\"Wiki/Special:Search\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Special:Search\"},\"sa\":{\"href\":\"wiki/Special:Search\"},\"dsr\":[0,38,22,2]}'>Special:Search</a></p>\n");
add("html2html", "Say the magic word", "<ul data-parsoid='{\"dsr\":[0,312,0,0]}'><li data-parsoid='{\"dsr\":[0,13,1,0]}'> Parser test</li>\n<li data-parsoid='{\"dsr\":[14,27,1,0]}'> Parser_test</li>\n<li data-parsoid='{\"dsr\":[28,41,1,0]}'> Parser test</li>\n<li data-parsoid='{\"dsr\":[42,55,1,0]}'> Parser_test</li>\n<li data-parsoid='{\"dsr\":[56,69,1,0]}'> Parser test</li>\n<li data-parsoid='{\"dsr\":[70,83,1,0]}'> Parser_test</li>\n<li data-parsoid='{\"dsr\":[84,97,1,0]}'> Parser test</li>\n<li data-parsoid='{\"dsr\":[98,111,1,0]}'> Parser_test</li>\n<li data-parsoid='{\"dsr\":[112,125,1,0]}'> Parser test</li>\n<li data-parsoid='{\"dsr\":[126,139,1,0]}'> Parser_test</li>\n<li data-parsoid='{\"dsr\":[140,158,1,0]}'> Talk:Parser test</li>\n<li data-parsoid='{\"dsr\":[159,177,1,0]}'> Talk:Parser_test</li>\n<li data-parsoid='{\"dsr\":[178,191,1,0]}'> Parser test</li>\n<li data-parsoid='{\"dsr\":[192,205,1,0]}'> Parser_test</li>\n<li data-parsoid='{\"dsr\":[206,208,1,0]}'> </li>\n<li data-parsoid='{\"dsr\":[209,211,1,0]}'> </li>\n<li data-parsoid='{\"dsr\":[212,215,1,0]}'> 0</li>\n<li data-parsoid='{\"dsr\":[216,222,1,0]}'> Talk</li>\n<li data-parsoid='{\"dsr\":[223,229,1,0]}'> Talk</li>\n<li data-parsoid='{\"dsr\":[230,232,1,0]}'> </li>\n<li data-parsoid='{\"dsr\":[233,235,1,0]}'> </li>\n<li data-parsoid='{\"dsr\":[236,312,1,0]}'> [/index.php?title=Template:Dynamic&amp;action=edit&amp;redlink=1 Template:Dynamic]</li></ul>\n");
add("html2html", "Gallery", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,139,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[34,92,42,6]}'>Image1.png</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[96,130,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[140,144,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[144,279,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[174,232,42,6]}'>Image2.gif</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[236,270,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[280,284,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[284,415,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[314,368,42,6]}'>Image3</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[372,406,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[416,420,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[420,561,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[450,504,42,6]}'>Image4</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[508,552,25,6]}'>  centre  \t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[562,566,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[566,718,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[596,654,42,6]}'>Image5.svg</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[658,709,25,6]}'> <a rel=\"mw:ExtLink\" href=\"http://///////\" data-parsoid='{\"stx\":\"url\",\"dsr\":[684,698,0,0]}'>http://///////</a>  \t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[719,723,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[723,856,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[753,809,42,6]}'>* image6</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[813,847,25,6]}'>\t\t\t</div> \t\t</div>\n");
add("html2html", "Gallery (with options)", "<p data-parsoid='{\"dsr\":[0,35,0,0]}'>\t* Foo <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[7,35,17,2]}'>Main Page</a></p>\n<p data-parsoid='{\"dsr\":[36,40,0,0]}'>\t\t* </p><div style=\"width: 105px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[40,189,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 70px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[70,132,41,6]}'>Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[136,180,25,6]}'> caption  \t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[190,194,0,0]}'>\t\t* </p><div style=\"width: 105px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[194,333,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 70px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[224,286,41,6]}'>Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[290,324,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[334,338,0,0]}'>\t\t* </p><div style=\"width: 105px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[338,612,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 100px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[368,515,41,6]}'><div style=\"margin:31px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[409,509,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg\" alt=\"70px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[440,503,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[519,603,25,6]}'> some <b data-parsoid='{\"dsr\":[550,563,3,3]}'>caption</b> <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[564,592,17,2]}'>Main Page</a>  \t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[613,617,0,0]}'>\t\t* </p><div style=\"width: 105px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[617,841,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 100px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[647,794,41,6]}'><div style=\"margin:31px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[688,788,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg\" alt=\"70px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[719,782,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[798,832,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[842,846,0,0]}'>\t\t* </p><div style=\"width: 105px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[846,1080,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 100px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[876,1023,41,6]}'><div style=\"margin:31px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[917,1017,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg\" alt=\"70px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[948,1011,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1027,1071,25,6]}'> blabla.  \t\t\t</div> \t\t</div>\n");
add("html2html", "Gallery with link that has fragment", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,229,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[34,182,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[75,176,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[106,170,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[186,220,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[230,234,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[234,459,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[264,412,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[305,406,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[336,400,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[416,450,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[460,464,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[464,699,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[494,642,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[535,636,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[566,630,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[646,690,25,6]}'> caption  \t\t\t</div> \t\t</div>\n");
add("html2html", "Gallery with wikitext inside caption", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,295,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[34,182,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[75,176,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[106,170,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[186,286,25,6]}'> <img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/20px-Foobar.jpg\" alt=\"20px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[212,275,null,null]}'/>  \t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[296,300,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[300,551,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[330,478,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[371,472,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[402,466,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[482,542,25,6]}'> This is a test template  \t\t\t</div> \t\t</div>\n");
add("html2html", "gallery (with showfilename option)", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,200,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[34,97,42,6]}'>Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[101,191,25,6]}'> <a rel=\"mw:WikiLink\" href=\"./Wiki/File:Nonexistent.jpg\" title=\"Wiki/File:Nonexistent.jpg\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/File:Nonexistent.jpg\"},\"sa\":{\"href\":\"wiki/File:Nonexistent.jpg\"},\"dsr\":[127,172,28,2]}'>Nonexistent.jpg</a> caption  \t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[201,205,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[205,393,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[235,298,42,6]}'>Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[302,384,25,6]}'> <a rel=\"mw:WikiLink\" href=\"./Wiki/File:Nonexistent.jpg\" title=\"Wiki/File:Nonexistent.jpg\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/File:Nonexistent.jpg\"},\"sa\":{\"href\":\"wiki/File:Nonexistent.jpg\"},\"dsr\":[328,373,28,2]}'>Nonexistent.jpg</a>  \t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[394,398,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[398,709,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[428,576,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[469,570,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[500,564,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[580,700,25,6]}'> <a rel=\"mw:WikiLink\" href=\"./Wiki/File:Foobar.jpg\" title=\"Wiki/File:Foobar.jpg\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/File:Foobar.jpg\"},\"sa\":{\"href\":\"wiki/File:Foobar.jpg\"},\"dsr\":[606,641,23,2]}'>Foobar.jpg</a> some <b data-parsoid='{\"dsr\":[647,660,3,3]}'>caption</b> <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[661,689,17,2]}'>Main Page</a>  \t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[710,714,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[714,977,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[744,892,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[785,886,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[816,880,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[896,968,25,6]}'> <a rel=\"mw:WikiLink\" href=\"./Wiki/File:Foobar.jpg\" title=\"Wiki/File:Foobar.jpg\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/File:Foobar.jpg\"},\"sa\":{\"href\":\"wiki/File:Foobar.jpg\"},\"dsr\":[922,957,23,2]}'>Foobar.jpg</a>  \t\t\t</div> \t\t</div>\n");
add("html2html", "Gallery (with namespace-less filenames)", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,144,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[34,97,42,6]}'>Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[101,135,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[145,149,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[149,289,26,6]}'> \t\t\t<div class=\"thumb\" style=\"height: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[179,242,42,6]}'>Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[246,280,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[290,294,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[294,519,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[324,472,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[365,466,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[396,460,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[476,510,25,6]}'>\t\t\t</div> \t\t</div>\n<p data-parsoid='{\"dsr\":[520,524,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[524,749,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[554,702,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[595,696,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[626,690,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[706,740,25,6]}'>\t\t\t</div> \t\t</div>\n");
add("html2html", "Double RFC with a wiki link", "<p data-parsoid='{\"dsr\":[0,62,0,0]}'>RFC [/index.php?title=RFC_1234&amp;action=edit&amp;redlink=1 <a href=\"//tools.ietf.org/html/rfc1234\" rel=\"mw:ExtLink\" data-parsoid='{\"stx\":\"magiclink\",\"dsr\":[53,61,0,0]}'>RFC 1234</a>]</p>\n");
add("html2html", "Centre-aligned image", "<div class=\"center\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,96,20,6]}'><div class=\"floatnone\" data-parsoid='{\"stx\":\"html\",\"dsr\":[20,90,23,6]}'><img src=\"http://example.com/images/3/3a/Foobar.jpg\" alt=\"Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[43,84,null,null]}'/></div></div>\n");
add("html2html", "None-aligned image", "<div class=\"floatnone\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,70,23,6]}'><img src=\"http://example.com/images/3/3a/Foobar.jpg\" alt=\"Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[23,64,null,null]}'/></div>\n");
add("html2html", "Width + Height sized image (using px) (height is ignored)", "<p data-parsoid='{\"dsr\":[0,64,0,0]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\" alt=\"640px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[0,64,null,null]}'/></p>\n");
add("html2html", "Width-sized image (using px, no following whitespace)", "<p data-parsoid='{\"dsr\":[0,64,0,0]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\" alt=\"640px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[0,64,null,null]}'/></p>\n");
add("html2html", "Width-sized image (using px, with following whitespace - test regression from r39467)", "<p data-parsoid='{\"dsr\":[0,64,0,0]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\" alt=\"640px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[0,64,null,null]}'/></p>\n");
add("html2html", "Width-sized image (using px, with preceding whitespace - test regression from r39467)", "<p data-parsoid='{\"dsr\":[0,64,0,0]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\" alt=\"640px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[0,64,null,null]}'/></p>\n");
add("html2html", "HTML with raw HTML ($wgRawHtml==true)", "<p data-parsoid='{\"dsr\":[0,26,0,0]}'>&lt;script>alert(1);&lt;/script></p>\n");
add("html2html", "Parents of subpages, one level up", "<p data-parsoid='{\"dsr\":[0,62,0,0]}'>[/index.php?title=Subpage_test/L1/L2&amp;action=edit&amp;redlink=1 L2]</p>\n");
add("html2html", "Parents of subpages, one level up, not named", "<p data-parsoid='{\"dsr\":[0,78,0,0]}'>[/index.php?title=Subpage_test/L1/L2&amp;action=edit&amp;redlink=1 Subpage test/L1/L2]</p>\n");
add("html2html", "Parents of subpages, two levels up", "<p data-parsoid='{\"dsr\":[0,60,0,0]}'>[/index.php?title=Subpage_test/L1&amp;action=edit&amp;redlink=1 L1]2</p>\n\n<p data-parsoid='{\"dsr\":[62,122,0,0]}'>[/index.php?title=Subpage_test/L1&amp;action=edit&amp;redlink=1 L1l]</p>\n");
add("html2html", "Parents of subpages, two levels up, with lots of extra trailing slashes.", "<p data-parsoid='{\"dsr\":[0,72,0,0]}'>[/index.php?title=Subpage_test/L1&amp;action=edit&amp;redlink=1 Subpage test/L1]</p>\n");
add("html2html", "RAW magic word", "<p data-parsoid='{\"dsr\":[0,72,0,0]}'>[/index.php?title=Template:QUERTY&amp;action=edit&amp;redlink=1 Template:QUERTY]</p>\n");
add("html2html", "Out-of-order TOC heading levels", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,530,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,141,0,0]}'><li data-parsoid='{\"dsr\":[69,141,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#2\"},\"sa\":{\"href\":\"#2\"},\"dsr\":[71,141,5,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[76,108,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[109,139,22,7]}'>2</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[143,367,0,0]}'><li data-parsoid='{\"dsr\":[143,294,1,0]}'><ul data-parsoid='{\"dsr\":[144,294,0,0]}'><li data-parsoid='{\"dsr\":[144,218,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#6\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#6\"},\"sa\":{\"href\":\"#6\"},\"dsr\":[146,218,5,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[151,185,24,7]}'>1.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[186,216,22,7]}'>6</span></a></li>\n<li data-parsoid='{\"dsr\":[219,294,2,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#3\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#3\"},\"sa\":{\"href\":\"#3\"},\"dsr\":[222,294,5,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[227,261,24,7]}'>1.2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[262,292,22,7]}'>3</span></a></li></ul></li>\n<li data-parsoid='{\"dsr\":[295,367,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#1\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#1\"},\"sa\":{\"href\":\"#1\"},\"dsr\":[297,367,5,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[302,334,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[335,365,22,7]}'>1</span></a></li></ul>\n\n<ul data-parsoid='{\"dsr\":[369,522,0,0]}'><li data-parsoid='{\"dsr\":[369,522,1,0]}'><ul data-parsoid='{\"dsr\":[370,522,0,0]}'><li data-parsoid='{\"dsr\":[370,444,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#5\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#5\"},\"sa\":{\"href\":\"#5\"},\"dsr\":[372,444,5,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[377,411,24,7]}'>2.1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[412,442,22,7]}'>5</span></a></li>\n<li data-parsoid='{\"dsr\":[445,522,2,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#2_2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#2_2\"},\"sa\":{\"href\":\"#2_2\"},\"dsr\":[448,522,7,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[455,489,24,7]}'>2.2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[490,520,22,7]}'>2</span></a></li></ul></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[532,539,2,2]}'> 2 </h2>\n\n<h6 data-parsoid='{\"dsr\":[541,556,6,6]}'> 6 </h6>\n\n<h3 data-parsoid='{\"dsr\":[558,567,3,3]}'> 3 </h3>\n\n<h1 data-parsoid='{\"dsr\":[569,574,1,1]}'> 1 </h1>\n\n<h5 data-parsoid='{\"dsr\":[576,589,5,5]}'> 5 </h5>\n\n<h2 data-parsoid='{\"dsr\":[591,598,2,2]}'> 2 </h2>\n");
add("html2html", "ISBN with space-delimited number", "<p data-parsoid='{\"dsr\":[0,58,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Special:BookSources/9290170328\" title=\"Wiki/Special:BookSources/9290170328\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Special:BookSources/9290170328\"},\"sa\":{\"href\":\"wiki/Special:BookSources/9290170328\"},\"dsr\":[0,58,38,2]}'>ISBN 92 9017 032 8</a></p>\n");
add("html2html", "ISBN length", "<p data-parsoid='{\"dsr\":[0,14,0,0]}'>ISBN 123456789</p>\n\n<p data-parsoid='{\"dsr\":[16,71,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Special:BookSources/1234567890\" title=\"Wiki/Special:BookSources/1234567890\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Special:BookSources/1234567890\"},\"sa\":{\"href\":\"wiki/Special:BookSources/1234567890\"},\"dsr\":[16,71,38,2]}'>ISBN 1234567890</a></p>\n\n<p data-parsoid='{\"dsr\":[73,89,0,0]}'>ISBN 12345678901</p>\n");
add("html2html", "ISBN with trailing year (bug 8110)", "<p data-parsoid='{\"dsr\":[0,65,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Special:BookSources/1234567890\" title=\"Wiki/Special:BookSources/1234567890\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Special:BookSources/1234567890\"},\"sa\":{\"href\":\"wiki/Special:BookSources/1234567890\"},\"dsr\":[0,58,38,2]}'>ISBN 1-234-56789-0</a> - 2006</p>\n\n<p data-parsoid='{\"dsr\":[67,132,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Special:BookSources/1234567890\" title=\"Wiki/Special:BookSources/1234567890\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Special:BookSources/1234567890\"},\"sa\":{\"href\":\"wiki/Special:BookSources/1234567890\"},\"dsr\":[67,125,38,2]}'>ISBN 1 234 56789 0</a> - 2006</p>\n");
add("html2html", "Link to another existing title shouldn't be parsed as self-link even if it's a variant of this title", "<p data-parsoid='{\"dsr\":[0,147,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Дуна\" title=\"Wiki/Дуна\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Дуна\"},\"sa\":{\"href\":\"wiki/Дуна\"},\"dsr\":[0,18,12,2]}'>Дуна</a> is not a self-link while <strong class=\"selflink\" data-parsoid='{\"stx\":\"html\",\"dsr\":[44,82,25,9]}'>Duna</strong> and <strong class=\"selflink\" data-parsoid='{\"stx\":\"html\",\"dsr\":[87,125,25,9]}'>Dуна</strong> are still self-links.</p>\n");
add("html2html", "Link to a section of a variant of this title shouldn't be parsed as self-link", "<p data-parsoid='{\"dsr\":[0,129,0,0]}'><strong class=\"selflink\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,38,25,9]}'>Dуна</strong> is a self-link while <a rel=\"mw:WikiLink\" href=\"./Wiki/Дуна\" title=\"Wiki/Дуна\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Дуна\"},\"sa\":{\"href\":\"wiki/Дуна\"},\"dsr\":[60,82,12,2]}'>Dunа#Foo</a> and <a rel=\"mw:WikiLink\" href=\"./Wiki/Дуна\" title=\"Wiki/Дуна\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Дуна\"},\"sa\":{\"href\":\"wiki/Дуна\"},\"dsr\":[87,109,12,2]}'>Dуна#Foo</a> are not self-links.</p>\n");
add("html2html", "Link to pages in language variants", "<p data-parsoid='{\"dsr\":[0,56,0,0]}'>Main Page can be written as <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[28,56,17,2]}'>Маин Паге</a></p>\n");
add("html2html", "Multiple links to pages in language variants", "<p data-parsoid='{\"dsr\":[0,113,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,28,17,2]}'>Main Page</a> can be written as <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[47,75,17,2]}'>Маин Паге</a> same as <a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[84,112,17,2]}'>Маин Паге</a>.</p>\n");
add("html2html", "Simple category in language variants", "<p data-parsoid='{\"dsr\":[0,65,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Категорија:MediaWiki_User's_Guide\" title=\"Wiki/Категорија:MediaWiki User's Guide\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Категорија:MediaWiki_User&#39;s_Guide\"},\"sa\":{\"href\":\"wiki/Категорија:MediaWiki User&#39;s Guide\"},\"dsr\":[0,65,41,2]}'>MediaWiki User's Guide</a></p>");
add("html2html", "Prevent conversion of links with -{}- tags (language variants)", "<p data-parsoid='{\"dsr\":[0,28,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,28,17,2]}'>Main Page</a></p>\n");
add("html2html", "Adding explicit conversion rule for title (T flag)", "<p data-parsoid='{\"dsr\":[0,6,0,0]}'>Taiwan</p>\n\n<p data-parsoid='{\"dsr\":[8,27,0,0]}'>Should be stripped!</p>\n");
add("html2html", "Testing that changing the language variant here in the tests actually works", "<p data-parsoid='{\"dsr\":[0,5,0,0]}'>China</p>\n\n<p data-parsoid='{\"dsr\":[7,26,0,0]}'>Should be stripped!</p>\n");
add("html2html", "Recursive conversion of alt and title attrs shouldn't clear converter state", "<p data-parsoid='{\"dsr\":[0,5,0,0]}'>China</p>\n\n<p data-parsoid='{\"dsr\":[7,59,0,0]}'>Should be stripped<span title=\"Exclamation\" data-parsoid='{\"stx\":\"html\",\"dsr\":[25,59,26,7]}'>!</span></p>\n");
add("html2html", "Bug 24072: more test on conversion rule for title", "<p data-parsoid='{\"dsr\":[0,6,0,0]}'>Taiwan</p>\n\n<p data-parsoid='{\"dsr\":[8,80,0,0]}'>This should be stripped!\nThis won't take interferes with the title rule.</p>\n");
add("html2html", "Partly disable title conversion if variant == main language code", "<p data-parsoid='{\"dsr\":[0,2,0,0]}'>ZH</p>\n");
add("html2html", "Partly disable title conversion if variant == main language code, more", "<p data-parsoid='{\"dsr\":[0,2,0,0]}'>ZH</p>\n");
add("html2html", "Don't break link parsing if language converter markup is in the caption.", "<p data-parsoid='{\"dsr\":[0,28,0,0]}'><a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[0,28,17,2]}'>main page</a></p>\n");
add("html2html", "Don't break image parsing if language converter markup is in the caption.", "<p data-parsoid='{\"dsr\":[0,41,0,0]}'><img src=\"http://example.com/images/3/3a/Foobar.jpg\" alt=\"Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[0,41,null,null]}'/></p>\n");
add("html2html", "Free external link invading image caption", "<div class=\"thumb tright\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,236,26,6]}'><div class=\"thumbinner\" style=\"width:182px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,230,45,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/180px-Foobar.jpg\" alt=\"180px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[71,135,null,null]}'/>  <div class=\"thumbcaption\" data-parsoid='{\"stx\":\"html\",\"dsr\":[137,224,26,6]}'><div class=\"magnify\" data-parsoid='{\"stx\":\"html\",\"dsr\":[163,213,21,6]}'>[/wiki/File:Foobar.jpg]</div>hello</div></div></div>\n");
add("html2html", "Bad images - basic functionality", "<p data-parsoid='{\"dsr\":[0,16,0,0]}'><span class=\"mw-default-size\" typeof=\"mw:Error mw:Image\" data-parsoid='{\"optList\":[],\"dsr\":[0,16,null,null]}' data-mw='{\"errors\":[{\"key\":\"missing-image\",\"message\":\"This image does not exist.\"}]}'><a href=\"./File:Bad.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Bad.jpg\"},\"sa\":{}}'><img resource=\"./File:Bad.jpg\" src=\"./Special:FilePath/Bad.jpg\" height=\"220\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Bad.jpg\",\"height\":\"220\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Bad.jpg\"}}'/></a></span></p>\n");
add("html2html", "Bad images - bug 16039: text after bad image disappears", "<p data-parsoid='{\"dsr\":[0,32,0,0]}'>Foo bar\n<span class=\"mw-default-size\" typeof=\"mw:Error mw:Image\" data-parsoid='{\"optList\":[],\"dsr\":[8,24,null,null]}' data-mw='{\"errors\":[{\"key\":\"missing-image\",\"message\":\"This image does not exist.\"}]}'><a href=\"./File:Bad.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Bad.jpg\"},\"sa\":{}}'><img resource=\"./File:Bad.jpg\" src=\"./Special:FilePath/Bad.jpg\" height=\"220\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Bad.jpg\",\"height\":\"220\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Bad.jpg\"}}'/></a></span>\nBar foo</p>\n");
add("html2html", "Page status indicators: Weird syntaxes that are okay", "<p data-parsoid='{\"dsr\":[0,12,0,0]}'>empty=\nname=</p>\n\n<p data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[14,14,0,0]}'><br data-parsoid='{\"dsr\":[14,14,0,0]}'/></p>\n");
add("html2html", "Page status indicators: Torture test", "<p data-parsoid='{\"dsr\":[0,184,0,0]}'>01=hello world\n02=<a rel=\"mw:WikiLink\" href=\"./Wiki/Main_Page\" title=\"Wiki/Main Page\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Main_Page\"},\"sa\":{\"href\":\"wiki/Main Page\"},\"dsr\":[18,46,17,2]}'>Main Page</a>\n03=<img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/25px-Foobar.jpg\" alt=\"25px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[50,113,null,null]}'/>\n04=<img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/25px-Foobar.jpg\" alt=\"25px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[117,180,null,null]}'/>\n05=</p>\n<ul data-parsoid='{\"dsr\":[185,196,0,0]}'><li data-parsoid='{\"dsr\":[185,190,1,0]}'> foo</li>\n<li data-parsoid='{\"dsr\":[191,196,1,0]}'> bar</li></ul>\n\n<p data-parsoid='{\"dsr\":[198,208,0,0]}'>06=foo\n07=</p>\n<pre data-parsoid='{\"dsr\":[209,222,1,0]}'>Preformatted</pre>\n\n<p data-parsoid='{\"dsr\":[224,227,0,0]}'>08=</p><div data-parsoid='{\"stx\":\"html\",\"dsr\":[227,248,5,6]}'>Broken tag</div>\n\n<p data-parsoid='{\"dsr\":[250,253,0,0]}'>09=</p>\n<table class=\"wikitable\" data-parsoid='{\"dsr\":[254,285,20,2]}'>\n\n<tbody data-parsoid='{\"dsr\":[276,283,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[276,282,0,0]}'><td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[276,282,1,0]}'> cell</td></tr>\n</tbody></table>\n\n<p data-parsoid='{\"dsr\":[287,290,0,0]}'>10=</p>\n\n<p data-parsoid='{\"dsr\":[292,295,0,0]}'>Two</p>\n\n<p data-parsoid='{\"dsr\":[297,307,0,0]}'>paragraphs</p>\n\n<p data-parsoid='{\"dsr\":[309,309,0,0]}'><br data-parsoid='{\"dsr\":[309,309,0,0]}'/></p>\n\n\n<p data-parsoid='{\"dsr\":[312,312,0,0]}'><br data-parsoid='{\"dsr\":[312,312,0,0]}'/></p>\n\n\n<p data-parsoid='{\"dsr\":[315,315,0,0]}'><br data-parsoid='{\"dsr\":[315,315,0,0]}'/></p>\n\n\n");
add("html2html", "Bug 31098 Template which includes system messages which includes the template", "<p data-parsoid='{\"dsr\":[0,195,0,0]}'><span class=\"error\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,97,20,7]}'>Template loop detected: <a rel=\"mw:WikiLink\" href=\"./Wiki/Template:Identical\" title=\"Wiki/Template:Identical\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Template:Identical\"},\"sa\":{\"href\":\"wiki/Template:Identical\"},\"dsr\":[44,90,26,2]}'>Template:Identical</a></span>\n<span class=\"error\" data-parsoid='{\"stx\":\"html\",\"dsr\":[98,195,20,7]}'>Template loop detected: <a rel=\"mw:WikiLink\" href=\"./Wiki/Template:Identical\" title=\"Wiki/Template:Identical\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Template:Identical\"},\"sa\":{\"href\":\"wiki/Template:Identical\"},\"dsr\":[142,188,26,2]}'>Template:Identical</a></span></p>\n");
add("html2html", "Bug31490 Turkish: ucfırst (with a dotless i)", "<p data-parsoid='{\"dsr\":[0,90,0,0]}'>[/index.php?title=%C5%9Eablon:Ucf%C4%B1rst:blah&amp;action=edit&amp;redlink=1 Şablon:Ucfırst:blah]</p>\n");
add("html2html", "Bug31490 ucfırst (with a dotless i) with English language", "<p data-parsoid='{\"dsr\":[0,89,0,0]}'>[/index.php?title=Template:Ucf%C4%B1rst:blah&amp;action=edit&amp;redlink=1 Template:Ucfırst:blah]</p>\n");
add("html2html", "Bug 26375: TOC with italics", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,177,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,169,0,0]}'><li data-parsoid='{\"dsr\":[69,169,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Lost_episodes\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Lost_episodes\"},\"sa\":{\"href\":\"#Lost_episodes\"},\"dsr\":[71,169,17,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[88,120,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[121,167,22,7]}'><i data-parsoid='{\"dsr\":[143,151,2,2]}'>Lost</i> episodes</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[179,202,2,2]}'> <i data-parsoid='{\"dsr\":[182,190,2,2]}'>Lost</i> episodes </h2>\n");
add("html2html", "Bug 26375: TOC with bold", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,215,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,207,0,0]}'><li data-parsoid='{\"dsr\":[69,207,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#should_be_bold_then_normal_text\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#should_be_bold_then_normal_text\"},\"sa\":{\"href\":\"#should_be_bold_then_normal_text\"},\"dsr\":[71,207,35,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[106,138,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[139,205,22,7]}'><b data-parsoid='{\"dsr\":[161,181,3,3]}'>should be bold</b> then normal text</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[217,260,2,2]}'> <b data-parsoid='{\"dsr\":[220,240,3,3]}'>should be bold</b> then normal text </h2>\n");
add("html2html", "Bug 33845: Headings become cursive in TOC when they contain an image", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,157,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,149,0,0]}'><li data-parsoid='{\"dsr\":[69,149,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Image\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Image\"},\"sa\":{\"href\":\"#Image\"},\"dsr\":[71,149,9,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[80,112,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[113,147,22,7]}'>Image</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[159,212,2,2]}'> Image <img src=\"http://example.com/images/3/3a/Foobar.jpg\" alt=\"Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[168,209,null,null]}'/> </h2>\n");
add("html2html", "Bug 33845 (2): Headings become bold in TOC when they contain a blockquote", "\n<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1,159,26,6]}'>\n<div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[28,69,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[48,62,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[71,151,0,0]}'><li data-parsoid='{\"dsr\":[71,151,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Quote\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Quote\"},\"sa\":{\"href\":\"#Quote\"},\"dsr\":[73,151,9,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[82,114,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[115,149,22,7]}'>Quote</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[161,174,2,2]}'><meta typeof=\"mw:Placeholder\" data-parsoid='{\"src\":\"&lt;nowiki/>\",\"dsr\":[163,172,null,null]}'/></h2>\n<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[175,207,12,13]}'>\n<p data-parsoid='{\"dsr\":[188,193,0,0]}'>Quote</p>\n</blockquote>\n<p data-parsoid='{\"dsr\":[208,389,0,0]}'><span class=\"mw-editsection\" data-parsoid='{\"stx\":\"html\",\"dsr\":[208,389,29,7]}'><span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[237,282,37,7]}'>[</span>[/index.php?title=Main_Page&amp;action=edit&amp;section=1 edit]<span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[337,382,37,7]}'>]</span></span></p>\n");
add("html2html", "Unclosed tags in TOC", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,173,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,165,0,0]}'><li data-parsoid='{\"dsr\":[69,165,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Proof:_2_.3C_3\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Proof:_2_.3C_3\"},\"sa\":{\"href\":\"#Proof:_2_.3C_3\"},\"dsr\":[71,165,18,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[89,121,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[122,163,22,7]}'>Proof: 2 &lt; 3</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[175,193,2,2]}'> Proof: 2 &lt; 3 </h2>\n<p data-parsoid='{\"dsr\":[194,249,0,0]}'><small data-parsoid='{\"stx\":\"html\",\"dsr\":[194,245,7,8]}'>Hanc marginis exiguitas non caperet.</small>\nQED</p>\n");
add("html2html", "Multiple tags in TOC", "\n<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1,264,26,6]}'>\n<div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[28,69,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[48,62,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[71,256,0,0]}'><li data-parsoid='{\"dsr\":[71,165,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Foo_Bar\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Foo_Bar\"},\"sa\":{\"href\":\"#Foo_Bar\"},\"dsr\":[73,165,11,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[84,116,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[117,163,22,7]}'><i data-parsoid='{\"dsr\":[139,146,2,2]}'>Foo</i> <b data-parsoid='{\"dsr\":[147,156,3,3]}'>Bar</b></span></a></li>\n<li data-parsoid='{\"dsr\":[166,256,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Foo_Bar_2\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Foo_Bar_2\"},\"sa\":{\"href\":\"#Foo_Bar_2\"},\"dsr\":[168,256,13,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[181,213,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[214,254,22,7]}'><i data-parsoid='{\"dsr\":[236,243,2,2]}'>Foo</i> Bar</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[266,289,2,2]}'> <i data-parsoid='{\"dsr\":[269,276,2,2]}'>Foo</i> <b data-parsoid='{\"dsr\":[277,286,3,3]}'>Bar</b> </h2>\n\n<h2 data-parsoid='{\"dsr\":[291,304,2,2]}'> <i data-parsoid='{\"dsr\":[294,301,2,2]}'>Foo</i> </h2>\n<blockquote data-parsoid='{\"stx\":\"html\",\"dsr\":[305,335,12,13]}'>\n<p data-parsoid='{\"dsr\":[318,321,0,0]}'>Bar</p>\n</blockquote>\n<p data-parsoid='{\"dsr\":[336,519,0,0]}'><span class=\"mw-editsection\" data-parsoid='{\"stx\":\"html\",\"dsr\":[336,519,29,7]}'><span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[365,410,37,7]}'>[</span>[/index.php?title=Parser_test&amp;action=edit&amp;section=2 edit]<span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[467,512,37,7]}'>]</span></span></p>\n");
add("html2html", "span tags with directionality in TOC", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,952,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,944,0,0]}'><li data-parsoid='{\"dsr\":[69,172,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#C.2B.2B\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#C.2B.2B\"},\"sa\":{\"href\":\"#C.2B.2B\"},\"dsr\":[71,172,11,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[82,114,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[115,170,22,7]}'><span dir=\"ltr\" data-parsoid='{\"stx\":\"html\",\"dsr\":[137,163,16,7]}'>C++</span></span></a></li>\n<li data-parsoid='{\"dsr\":[173,298,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#.D7.96.D7.91.D7.A0.D7.92.21\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#.D7.96.D7.91.D7.A0.D7.92.21\"},\"sa\":{\"href\":\"#.D7.96.D7.91.D7.A0.D7.92.21\"},\"dsr\":[175,298,31,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[206,238,24,7]}'>2</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[239,296,22,7]}'><span dir=\"rtl\" data-parsoid='{\"stx\":\"html\",\"dsr\":[261,289,16,7]}'>זבנג!</span></span></a></li>\n<li data-parsoid='{\"dsr\":[299,506,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#The_attributes_on_these_span_tags_must_be_deleted_from_the_TOC\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#The_attributes_on_these_span_tags_must_be_deleted_from_the_TOC\"},\"sa\":{\"href\":\"#The_attributes_on_these_span_tags_must_be_deleted_from_the_TOC\"},\"dsr\":[301,506,66,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[367,399,24,7]}'>3</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[400,504,22,7]}'><span data-parsoid='{\"stx\":\"html\",\"dsr\":[422,497,6,7]}'>The attributes on these span tags must be deleted from the TOC</span></span></a></li>\n<li data-parsoid='{\"dsr\":[507,714,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#All_attributes_on_these_span_tags_must_be_deleted_from_the_TOC\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#All_attributes_on_these_span_tags_must_be_deleted_from_the_TOC\"},\"sa\":{\"href\":\"#All_attributes_on_these_span_tags_must_be_deleted_from_the_TOC\"},\"dsr\":[509,714,66,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[575,607,24,7]}'>4</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[608,712,22,7]}'><span data-parsoid='{\"stx\":\"html\",\"dsr\":[630,705,6,7]}'>All attributes on these span tags must be deleted from the TOC</span></span></a></li>\n<li data-parsoid='{\"dsr\":[715,944,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#Attributes_after_dir_on_these_span_tags_must_be_deleted_from_the_TOC\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#Attributes_after_dir_on_these_span_tags_must_be_deleted_from_the_TOC\"},\"sa\":{\"href\":\"#Attributes_after_dir_on_these_span_tags_must_be_deleted_from_the_TOC\"},\"dsr\":[717,944,72,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[789,821,24,7]}'>5</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[822,942,22,7]}'><span dir=\"ltr\" data-parsoid='{\"stx\":\"html\",\"dsr\":[844,935,16,7]}'>Attributes after dir on these span tags must be deleted from the TOC</span></span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[954,1169,2,2]}'> <span dir=\"ltr\" data-parsoid='{\"stx\":\"html\",\"dsr\":[957,983,16,7]}'>C++</span><span class=\"mw-editsection\" data-parsoid='{\"stx\":\"html\",\"dsr\":[983,1166,29,7]}'><span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1012,1057,37,7]}'>[</span>[/index.php?title=Parser_test&amp;action=edit&amp;section=1 edit]<span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1114,1159,37,7]}'>]</span></span> </h2>\n\n<h2 data-parsoid='{\"dsr\":[1171,1388,2,2]}'> <span dir=\"rtl\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1174,1202,16,7]}'>זבנג!</span><span class=\"mw-editsection\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1202,1385,29,7]}'><span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1231,1276,37,7]}'>[</span>[/index.php?title=Parser_test&amp;action=edit&amp;section=2 edit]<span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1333,1378,37,7]}'>]</span></span> </h2>\n\n<h2 data-parsoid='{\"dsr\":[1390,1681,2,2]}'> <span style=\"font-style: italic\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1393,1495,33,7]}'>The attributes on these span tags must be deleted from the TOC</span><span class=\"mw-editsection\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1495,1678,29,7]}'><span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1524,1569,37,7]}'>[</span>[/index.php?title=Parser_test&amp;action=edit&amp;section=3 edit]<span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1626,1671,37,7]}'>]</span></span> </h2>\n\n<h2 data-parsoid='{\"dsr\":[1683,1984,2,2]}'> <span style=\"font-style: italic\" dir=\"ltr\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1686,1798,43,7]}'>All attributes on these span tags must be deleted from the TOC</span><span class=\"mw-editsection\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1798,1981,29,7]}'><span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1827,1872,37,7]}'>[</span>[/index.php?title=Parser_test&amp;action=edit&amp;section=4 edit]<span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1929,1974,37,7]}'>]</span></span> </h2>\n\n<h2 data-parsoid='{\"dsr\":[1986,2293,2,2]}'> <span dir=\"ltr\" style=\"font-style: italic\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1989,2107,43,7]}'>Attributes after dir on these span tags must be deleted from the TOC</span><span class=\"mw-editsection\" data-parsoid='{\"stx\":\"html\",\"dsr\":[2107,2290,29,7]}'><span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[2136,2181,37,7]}'>[</span>[/index.php?title=Parser_test&amp;action=edit&amp;section=5 edit]<span class=\"mw-editsection-bracket\" data-parsoid='{\"stx\":\"html\",\"dsr\":[2238,2283,37,7]}'>]</span></span> </h2>\n");
add("html2html", "Bug 72884: bdi element in ToC", "<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[0,166,26,6]}'><div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[26,67,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[46,60,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[69,158,0,0]}'><li data-parsoid='{\"dsr\":[69,158,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#test\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#test\"},\"sa\":{\"href\":\"#test\"},\"dsr\":[71,158,8,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[79,111,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[112,156,22,7]}'><bdi data-parsoid='{\"stx\":\"html\",\"dsr\":[134,149,5,6]}'>test</bdi></span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[168,189,2,2]}'> <bdi data-parsoid='{\"stx\":\"html\",\"dsr\":[171,186,5,6]}'>test</bdi> </h2>\n");
add("html2html", "Empty <p> tag in TOC, removed by Sanitizer (T92892)", "\n<div id=\"toc\" class=\"toc\" data-parsoid='{\"stx\":\"html\",\"dsr\":[1,151,26,6]}'>\n<div id=\"toctitle\" data-parsoid='{\"stx\":\"html\",\"dsr\":[28,69,19,6]}'>\n<h2 data-parsoid='{\"dsr\":[48,62,2,2]}'> Contents </h2>\n</div>\n\n<ul data-parsoid='{\"dsr\":[71,143,0,0]}'><li data-parsoid='{\"dsr\":[71,143,1,0]}'> <a rel=\"mw:WikiLink\" href=\"./Main%20Page#x\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Main%20Page#x\"},\"sa\":{\"href\":\"#x\"},\"dsr\":[73,143,5,2]}'><span class=\"tocnumber\" data-parsoid='{\"stx\":\"html\",\"dsr\":[78,110,24,7]}'>1</span> <span class=\"toctext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[111,141,22,7]}'>x</span></a></li></ul>\n\n</div>\n\n<h2 data-parsoid='{\"dsr\":[153,160,2,2]}'> x </h2>\n");
add("html2html", "nowiki inside link inside heading (bug 18295)", "<h2 data-parsoid='{\"dsr\":[0,22,2,2]}'> <a rel=\"mw:WikiLink\" href=\"./Wiki/Foo\" title=\"Wiki/Foo\" data-parsoid='{\"stx\":\"piped\",\"a\":{\"href\":\"./Wiki/Foo\"},\"sa\":{\"href\":\"wiki/Foo\"},\"dsr\":[3,19,11,2]}'>xyz</a> </h2>\n");
add("html2html", "new support for bdi element (bug 31817)", "<p data-parsoid='{\"dsr\":[0,122,0,0]}'>ולדימיר לנין (ברוסית: <bdi lang=\"ru\" data-parsoid='{\"stx\":\"html\",\"dsr\":[22,57,15,6]}'>Владимир Ленин</bdi>, 24 באפריל 1870–22 בינואר 1924) הוא מנהיג פוליטי קומוניסטי רוסי.</p>\n");
add("html2html", "Gallery override link with WikiLink (bug 34852)", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,239,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[34,182,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[75,176,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[106,170,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[186,230,25,6]}'> caption  \t\t\t</div> \t\t</div>\n");
add("html2html", "Gallery override link with absolute external link (bug 34852)", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,239,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[34,182,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[75,176,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[106,170,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[186,230,25,6]}'> caption  \t\t\t</div> \t\t</div>\n");
add("html2html", "Gallery override link with malicious javascript (bug 34852)", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,239,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[34,182,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[75,176,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[106,170,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[186,230,25,6]}'> caption  \t\t\t</div> \t\t</div>\n");
add("html2html", "Gallery with invalid title as link (bug 43964)", "<p data-parsoid='{\"dsr\":[0,4,0,0]}'>\t\t* </p><div style=\"width: 155px\" data-parsoid='{\"stx\":\"html\",\"dsr\":[4,229,26,6]}'> \t\t\t<div class=\"thumb\" style=\"width: 150px;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[34,182,41,6]}'><div style=\"margin:68px auto;\" data-parsoid='{\"stx\":\"html\",\"dsr\":[75,176,31,6]}'><img src=\"http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg\" alt=\"120px-Foobar.jpg\" rel=\"mw:externalImage\" data-parsoid='{\"dsr\":[106,170,null,null]}'/></div></div> \t\t\t<div class=\"gallerytext\" data-parsoid='{\"stx\":\"html\",\"dsr\":[186,220,25,6]}'>\t\t\t</div> \t\t</div>\n");
add("html2html", "Ref: 8. transclusion wikitext has lower precedence", "<p data-parsoid='{\"dsr\":[0,64,0,0]}'>A <span about=\"#mwt2\" class=\"mw-ref\" id=\"cite_ref-1\" rel=\"dc:references\" typeof=\"mw:Extension/ref\" data-parsoid='{\"dsr\":[2,41,5,6]}' data-mw='{\"name\":\"ref\",\"body\":{\"id\":\"mw-reference-text-cite_note-1\"},\"attrs\":{}}'><a href=\"#cite_note-1\" style=\"counter-reset: mw-Ref 1;\"><span class=\"mw-reflink-text\">[1]</span></a></span><span typeof=\"mw:Nowiki\" data-parsoid='{\"dsr\":[41,64,8,9]}'> B C}}</span></p>\n<ol class=\"mw-references\" typeof=\"mw:Extension/references\" about=\"#mwt4\" data-parsoid='{\"dsr\":[65,79,2,2]}' data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\" id=\"cite_note-1\"><a href=\"#cite_ref-1\" rel=\"mw:referencedBy\"><span class=\"mw-linkback-text\">↑ </span></a> <span id=\"mw-reference-text-cite_note-1\" class=\"mw-reference-text\" data-parsoid=\"{}\">foo {{echo|</span></li></ol>");
add("html2html", "Ref: 19. ref-tags with identical name encodings should get identical indexes", "<p data-parsoid='{\"dsr\":[0,60,0,0]}'>1 <span about=\"#mwt3\" class=\"mw-ref\" id=\"cite_ref-a_.26_b_1-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\" data-parsoid='{\"dsr\":[2,29,18,6]}' data-mw='{\"name\":\"ref\",\"body\":{\"id\":\"mw-reference-text-cite_note-a_.26_b-1\"},\"attrs\":{\"name\":\"a &amp; b\"}}'><a href=\"#cite_note-a_.26_b-1\" style=\"counter-reset: mw-Ref 1;\"><span class=\"mw-reflink-text\">[1]</span></a></span> 2 <span about=\"#mwt4\" class=\"mw-ref\" id=\"cite_ref-a_.26amp.3B_b_2-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\" data-parsoid='{\"dsr\":[32,60,28,0]}' data-mw='{\"name\":\"ref\",\"attrs\":{\"name\":\"a &amp;amp;amp; b\"}}'><a href=\"#cite_note-a_.26amp.3B_b-2\" style=\"counter-reset: mw-Ref 2;\"><span class=\"mw-reflink-text\">[2]</span></a></span></p>\n\n<ol class=\"mw-references\" typeof=\"mw:Extension/references\" about=\"#mwt6\" data-parsoid='{\"dsr\":[62,76,2,2]}' data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-a_.26_b-1\" id=\"cite_note-a_.26_b-1\"><a href=\"#cite_ref-a_.26_b_1-0\" rel=\"mw:referencedBy\"><span class=\"mw-linkback-text\">↑ </span></a> <span id=\"mw-reference-text-cite_note-a_.26_b-1\" class=\"mw-reference-text\" data-parsoid=\"{}\">foo</span></li><li about=\"#cite_note-a_.26amp.3B_b-2\" id=\"cite_note-a_.26amp.3B_b-2\"><a href=\"#cite_ref-a_.26amp.3B_b_2-0\" rel=\"mw:referencedBy\"><span class=\"mw-linkback-text\">↑ </span></a> <span id=\"mw-reference-text-cite_note-a_.26amp.3B_b-2\" class=\"mw-reference-text\" data-parsoid=\"{}\"></span></li></ol>");
add("html2html", "References: 9. Generate missing references list at the end", "<p data-parsoid='{\"dsr\":[0,52,0,0]}'>A <span about=\"#mwt3\" class=\"mw-ref\" id=\"cite_ref-1\" rel=\"dc:references\" typeof=\"mw:Extension/ref\" data-parsoid='{\"dsr\":[2,16,5,6]}' data-mw='{\"name\":\"ref\",\"body\":{\"id\":\"mw-reference-text-cite_note-1\"},\"attrs\":{}}'><a href=\"#cite_note-1\" style=\"counter-reset: mw-Ref 1;\"><span class=\"mw-reflink-text\">[1]</span></a></span> B <span about=\"#mwt4\" class=\"mw-ref\" id=\"cite_ref-2\" rel=\"dc:references\" typeof=\"mw:Extension/ref\" data-parsoid='{\"dsr\":[19,52,24,6]}' data-mw='{\"name\":\"ref\",\"body\":{\"id\":\"mw-reference-text-cite_note-2\"},\"attrs\":{\"group\":\"inexistent\"}}'><a href=\"#cite_note-2\" style=\"counter-reset: mw-Ref 1;\" data-mw-group=\"inexistent\"><span class=\"mw-reflink-text\">[inexistent 1]</span></a></span></p>\n<ol class=\"mw-references\" typeof=\"mw:Extension/references\" about=\"#mwt6\" data-parsoid='{\"dsr\":[53,67,2,2]}' data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-1\" id=\"cite_note-1\"><a href=\"#cite_ref-1\" rel=\"mw:referencedBy\"><span class=\"mw-linkback-text\">↑ </span></a> <span id=\"mw-reference-text-cite_note-1\" class=\"mw-reference-text\" data-parsoid=\"{}\">foo</span></li></ol>\n<ol class=\"mw-references\" typeof=\"mw:Extension/references\" about=\"#mwt8\" data-mw-group=\"inexistent\" data-parsoid='{\"group\":\"inexistent\",\"dsr\":[68,101,2,2]}' data-mw='{\"name\":\"references\",\"attrs\":{\"group\":\"inexistent\"}}'><li about=\"#cite_note-2\" id=\"cite_note-2\"><a href=\"#cite_ref-2\" data-mw-group=\"inexistent\" rel=\"mw:referencedBy\"><span class=\"mw-linkback-text\">↑ </span></a> <span id=\"mw-reference-text-cite_note-2\" class=\"mw-reference-text\" data-parsoid=\"{}\">bar</span></li></ol>");
add("html2html", "Entities in ref name", "<p data-parsoid='{\"dsr\":[0,38,0,0]}'><span about=\"#mwt2\" class=\"mw-ref\" id=\"cite_ref-test_.26amp.3B_me_1-0\" rel=\"dc:references\" typeof=\"mw:Extension/ref\" data-parsoid='{\"dsr\":[0,38,30,6]}' data-mw='{\"name\":\"ref\",\"body\":{\"id\":\"mw-reference-text-cite_note-test_.26amp.3B_me-1\"},\"attrs\":{\"name\":\"test &amp;amp;amp; me\"}}'><a href=\"#cite_note-test_.26amp.3B_me-1\" style=\"counter-reset: mw-Ref 1;\"><span class=\"mw-reflink-text\">[1]</span></a></span></p>\n<ol class=\"mw-references\" typeof=\"mw:Extension/references\" about=\"#mwt4\" data-parsoid='{\"dsr\":[39,53,2,2]}' data-mw='{\"name\":\"references\",\"attrs\":{}}'><li about=\"#cite_note-test_.26amp.3B_me-1\" id=\"cite_note-test_.26amp.3B_me-1\"><a href=\"#cite_ref-test_.26amp.3B_me_1-0\" rel=\"mw:referencedBy\"><span class=\"mw-linkback-text\">↑ </span></a> <span id=\"mw-reference-text-cite_note-test_.26amp.3B_me-1\" class=\"mw-reference-text\" data-parsoid=\"{}\">hi</span></li></ol>");
add("html2html", "Empty LI and TR nodes should not be stripped from top-level content", "<ul data-parsoid='{\"dsr\":[0,9,0,0]}'><li data-parsoid='{\"dsr\":[0,3,1,0]}'> a</li>\n<li data-parsoid='{\"dsr\":[4,5,1,0]}'></li>\n<li data-parsoid='{\"dsr\":[6,9,1,0]}'> b</li></ul>\n\n<table data-parsoid='{\"dsr\":[11,26,2,2]}'>\n\n<tbody data-parsoid='{\"dsr\":[15,24,0,0]}'><tr data-parsoid='{\"startTagSrc\":\"|-\",\"autoInsertedEnd\":true,\"dsr\":[15,22,2,0]}'>\n<td data-parsoid='{\"autoInsertedEnd\":true,\"dsr\":[18,22,1,0]}'>foo</td></tr>\n\n</tbody></table>\n");
add("html2html", "Empty TR followed by a template-generated TR", "<table data-parsoid='{\"dsr\":[0,37,2,2]}'>\n\n<tbody about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"dsr\":[4,35,0,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&lt;tr>&lt;td>foo&lt;/td>&lt;/tr>\"}},\"i\":0}},\"\\n\"]}'><tr><td>foo</td></tr>\n</tbody></table>\n");
add("html2html", "Empty TR followed by mixed-ws-comment line should RT correctly", "<table data-parsoid='{\"dsr\":[0,37,2,2]}'>\n\n\n <!--c--><tbody data-parsoid='{\"dsr\":[14,35,0,0]}'><tr data-parsoid='{\"startTagSrc\":\"|-\",\"autoInsertedEnd\":true,\"dsr\":[14,26,2,0]}'>\n<!--c--> </tr><!--d-->\n</tbody></table>\n");
add("html2html", "T73074: More fostering fun", "<link rel=\"mw:PageProp/Category\" href=\"./Category:Two\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Two\"},\"sa\":{\"href\":\"Category:Two\"},\"dsr\":[0,16,null,null]}'/>\n<p data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[17,17]}'>&lt;tbody></p><link rel=\"mw:PageProp/Category\" href=\"./Category:Two\" data-parsoid='{\"stx\":\"simple\",\"a\":{\"href\":\"./Category:Two\"},\"sa\":{\"href\":\"Category:Two\"},\"fostered\":true,\"dsr\":[17,17]}'/><p data-parsoid='{\"fostered\":true,\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[17,17]}'>&lt;/tbody></p><table data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[17,85,7,0]}'><tbody data-parsoid='{\"dsr\":[24,85,0,0]}'><tr data-parsoid='{\"autoInsertedEnd\":true,\"autoInsertedStart\":true,\"dsr\":[24,40,0,0]}'><td data-parsoid='{\"stx\":\"html\",\"dsr\":[31,40,4,5]}'></td></tr><tr about=\"#mwt1\" typeof=\"mw:Transclusion\" data-parsoid='{\"stx\":\"html\",\"autoInsertedEnd\":true,\"dsr\":[40,85,null,0],\"pi\":[[{\"k\":\"1\"}]]}' data-mw='{\"parts\":[{\"template\":{\"target\":{\"wt\":\"echo\",\"href\":\"./Template:Echo\"},\"params\":{\"1\":{\"wt\":\"&lt;tr>\"}},\"i\":0}},\"&lt;!--c-->[[Category:Two]]&lt;/tbody>\"]}'><!--c--></tr></tbody></table>");
add("html2html", "Image: upright option (parsoid)", "<figure class=\"mw-default-size\" typeof=\"mw:Image/Thumb\" data-parsoid='{\"optList\":[{\"ck\":\"thumbnail\",\"ak\":\"thumb\"},{\"ck\":\"caption\",\"ak\":\"caption\"}],\"dsr\":[0,33,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[2,null,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/220px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"25\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"25\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a><figcaption data-parsoid='{\"dsr\":[null,31,null,null]}'>caption</figcaption></figure>\n<figure class=\"mw-default-size\" typeof=\"mw:Image/Thumb\" data-parsoid='{\"optList\":[{\"ck\":\"thumbnail\",\"ak\":\"thumb\"},{\"ck\":\"caption\",\"ak\":\"caption\"}],\"dsr\":[34,67,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[36,null,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/220px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"25\" width=\"220\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"25\",\"width\":\"220\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a><figcaption data-parsoid='{\"dsr\":[null,65,null,null]}'>caption</figcaption></figure>\n<figure typeof=\"mw:Image/Thumb\" data-parsoid='{\"optList\":[{\"ck\":\"thumbnail\",\"ak\":\"thumb\"},{\"ck\":\"width\",\"ak\":\"500x500px\"},{\"ck\":\"caption\",\"ak\":\"caption\"}],\"dsr\":[68,111,2,2]}'><a href=\"./File:Foobar.jpg\" data-parsoid='{\"a\":{\"href\":\"./File:Foobar.jpg\"},\"sa\":{},\"dsr\":[70,null,null,null]}'><img resource=\"./File:Foobar.jpg\" src=\"//example.com/images/thumb/3/3a/Foobar.jpg/500px-Foobar.jpg\" data-file-width=\"1941\" data-file-height=\"220\" data-file-type=\"bitmap\" height=\"57\" width=\"500\" data-parsoid='{\"a\":{\"resource\":\"./File:Foobar.jpg\",\"height\":\"57\",\"width\":\"500\"},\"sa\":{\"resource\":\"File:Foobar.jpg\"}}'/></a><figcaption data-parsoid='{\"dsr\":[null,109,null,null]}'>caption</figcaption></figure>\n");
add("html2html", "Consecutive <pre>s should not get merged", "<pre data-parsoid='{\"dsr\":[0,2,1,0]}'>a</pre>\n\n<pre data-parsoid='{\"dsr\":[4,6,1,0]}'>b</pre>\n\n<pre data-parsoid='{\"dsr\":[8,10,1,0]}'>c</pre>\n\n<pre data-parsoid='{\"dsr\":[12,14,1,0]}'>d</pre>\n\n<pre data-parsoid='{\"dsr\":[16,19,1,0]}'>e</pre>\n\n\n <p data-parsoid='{\"dsr\":[23,23,0,0]}'><br data-parsoid='{\"dsr\":[23,23,0,0]}'/></p>\n<pre data-parsoid='{\"dsr\":[24,26,1,0]}'>f</pre>\n");


// Blacklist for html2wt
add("html2wt", "Paragraphs with newline spacing with comment lines in between", "----\na\nb\n\n----\na\nb\n\n----\na\nb\n\n----\na\n\nb\n\n----\na\n\nb\n\n----\na\n\n\nb\n\n----\na\n\n\nb\n\n----\n");
add("html2wt", "Paragraphs with newline spacing with non-empty white-space lines in between", "----\na\n\nb\n\n----\na\n\n \nb\n\n----\n");
add("html2wt", "Paragraphs with newline spacing with non-empty mixed comment and white-space lines in between", "----\na\nb\n\n----\na\nb\n\n----\na\n\nb\n\n----\na\n\n \nb\n\n----\n");
add("html2wt", "Extra newlines: More paragraphs with indented comment", "a\n\n\nb\n");
add("html2wt", "Extra newlines followed by heading", "a\n\n\n\n= b =\n[/index.php?title=A&action=edit&redlink=1 a]\n\n\n\n= b =\n");
add("html2wt", "Extra newlines between heading and content are swallowed", "= b =\n[/index.php?title=A&action=edit&redlink=1 a]\n");
add("html2wt", "Parsing an URL", "[[:fr:🍺|http://fr.wikipedia.org/wiki/🍺]]\n");
add("html2wt", "Italics and possessives (1)", "obtained by ''[/index.php?title=Lunar_Prospector&action=edit&redlink=1 Lunar Prospector]'''s gamma-ray spectrometer\n");
add("html2wt", "Italics and possessives (3)", "The first monolingual dictionary written in a Romance language was ''Sebastián Covarrubias''' ''Tesoro de la lengua castellana o española'', published in 1611 in Madrid. In 1612 the first edition of the ''Vocabolario dell'[/index.php?title=Accademia_della_Crusca&action=edit&redlink=1 Accademia della Crusca]'', for Italian, was published. In 1690 in Rotterdam was published, posthumously, the ''Dictionnaire Universel''.\n");
add("html2wt", "<wbr> is valid wikitext (bug 52468)", "<wbr />\n");
add("html2wt", "Non-word characters don't terminate tag names (bug 17663, 40670, 52022)", "<blockquote|>a<nowiki></blockquote></nowiki>\n\n<b→> doesn't terminate </b→>\n\n<bä> doesn't terminate </bä>\n\n<boo> doesn't terminate </boo>\n\n<s.foo> doesn't terminate </s.foo>\n\n<sub-ID#1>\n");
add("html2wt", "Non-word characters don't terminate tag names + tidy", "<blockquote|>a\n\n<b→> doesn't terminate </b→>\n\n<bä> doesn't terminate </bä>\n\n<boo> doesn't terminate </boo>\n\n<s.foo> doesn't terminate </s.foo>\n\n<sub-ID#1>\n");
add("html2wt", "Bare pipe character from a template (bug 52363)", "|\n");
add("html2wt", "Entities inside <nowiki>", "<\n");
add("html2wt", "T71950: 2. Put nowiki as close to cause as possible, after ' :'", "This text : L<nowiki>''</nowiki>[[Foo]]\n");
add("html2wt", "Comments and Indent-Pre", " asdf\n\n asdf\n\n asdf\n\nxyz\n\n asdf\n xyz\n");
add("html2wt", "Comment test 2a", "asdf\njkl\n");
add("html2wt", "Comment test 2b", "asdf\n\njkl\n");
add("html2wt", "Comment test 3", "asdf\njkl\n");
add("html2wt", "Comment test 4", "asdfjkl\n");
add("html2wt", "Comment spacing", "a\n\n  b \n\nc\n");
add("html2wt", "Comment whitespace", "");
add("html2wt", "Comment in template title", "FOO\n");
add("html2wt", "Comment on its own line post-expand", "a\n\nb\n");
add("html2wt", "Comment on its own line post-expand with non-significant whitespace", "a\n\nb\n");
add("html2wt", "Block tag on one line (<div>)", "a\n<div>foo</div>\nb\n");
add("html2wt", "Block tag on one line (<blockquote>)", "a\n<blockquote>\nfoo\n</blockquote>\nb\n");
add("html2wt", "Block tag on both lines (<div>)", "a\n<div>foo</div>\nb\n<div>foo</div>");
add("html2wt", "Block tag on both lines (<blockquote>)", "a\n<blockquote>\nfoo\n</blockquote>\nb\n<blockquote>\nfoo\n</blockquote>");
add("html2wt", "Multiple lines without block tags", "<div>foo</div>\na\n\nb c d e\n\nx\n<div>foo</div>\nz\n");
add("html2wt", "Preformatted text", " This is some\n Preformatted text\n With ''italic''\n And '''bold'''\n And a [[wiki/Main Page|link]]\n");
add("html2wt", "<pre> with <nowiki> inside (compatibility with 1.6 and earlier)", " <nowiki><b></nowiki>\n <nowiki><cite></nowiki>\n <nowiki><em></nowiki>\n");
add("html2wt", "Regression with preformatted in <center>", "<center>\n Blah\n\n</center>\n");
add("html2wt", "Bug 52763: Preformatted in <blockquote>", "<blockquote>\n Blah\n\n{|\n\n|\n indented cell (no pre-wrapping!)\n\n|}\n</blockquote>\n");
add("html2wt", "Bug 51086: Double newlines in blockquotes should be turned into paragraphs", "<blockquote>\nFoo\n\nBar\n\n</blockquote>\n");
add("html2wt", "Bug 15491: <ins>/<del> in blockquote", "<blockquote>\nFoo <del>bar</del> <ins>baz</ins> quux\n\n</blockquote>\n");
add("html2wt", "Bug 15491: <ins>/<del> in blockquote (2)", "<blockquote>\nFoo\n\n<del>bar</del> <ins>baz</ins> quux</blockquote>");
add("html2wt", "<pre> with attributes (bug 3202)", " Bluescreen of WikiDeath\n");
add("html2wt", "<pre> with width attribute (bug 3202)", " Narrow screen goodies\n");
add("html2wt", "<pre> with forbidden attribute (bug 3202)", " Narrow screen goodies\n");
add("html2wt", "Entities inside <pre>", " <\n");
add("html2wt", "<pre> with forbidden attribute values (bug 3202)", " Narrow screen goodies\n");
add("html2wt", "<nowiki> inside <pre> (bug 13238)", " &lt;nowiki&gt;\n\n \n\n &lt;nowiki&gt;Foo&lt;/nowiki&gt;\n");
add("html2wt", "<nowiki> and <pre> preference (first one wins)", "<pre>\n<nowiki>\n</pre>\n</nowiki>\n</pre>\n\n<nowiki>\n<pre>\n&lt;nowiki&gt;\n</pre>\n</nowiki>\n</pre>\n");
add("html2wt", "</pre> inside nowiki", "</pre>\n");
add("html2wt", "HTML pre followed by indent-pre", " foo\n\n bar\n");
add("html2wt", "Templates: Indent-Pre: 1a. Templates that break a line should suppress <pre>", "");
add("html2wt", "Templates: Indent-Pre: 1b. Templates that break a line should suppress <pre>", "foo\n");
add("html2wt", "Templates: Indent-Pre: 1c: Wrapping should be based on expanded content", " a\n\nb\n");
add("html2wt", "Templates: Indent-Pre: 1d: Wrapping should be based on expanded content", " a\n\nb\nc\n\n d\n\ne\n");
add("html2wt", "Templates: Indent-Pre: 1e. Wrapping should be based on expanded content", " foo\n\n foo bar\n\n foo\n bar\n\n foo\n\n foo\n\n bar\n");
add("html2wt", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content", " a\n\n\n\n a\n\n\n\n b\n\na\n\n b\n\na\n\n b\n");
add("html2wt", "Templates: Strip leading and trailing whitespace from named-param values", "a\n\nb\n\nc\n\n* d\n");
add("html2wt", "Templates: Don't strip whitespace from positional-param values", "a \n\nb \n\n c \n\n\n\n d\n\n\n\n e\n\n\n\n* f\n\n\n g\n");
add("html2wt", "Templates: Handle empty comment-and-ws-only lines correctly", "foo\nbar\n");
add("html2wt", "Templates: Handle comments in the target", "{{echo <!-- should be ignored -->|foo}}\n\n{{echo<!-- should be ignored -->|foo}}\n\n{{echo<!-- should be ignored -->|foo}}\n\n{{echo|foo}}");
add("html2wt", "Templates: Handle comments in parameter names (bug 67657)", "{{echo|1 <!-- should be ignored -->=foo}}\n\n{{echo|<!-- should be ignored --> 1=foo}}\n\n{{echo|1<!-- should be ignored -->=foo}}\n\n{{echo|<!-- should be ignored -->1=foo}}");
add("html2wt", "1a. Indent-Pre and Comments", " a\n\nc\n");
add("html2wt", "1b. Indent-Pre and Comments", " a\n\nc\n");
add("html2wt", "1c. Indent-Pre and Comments", "  a\n\n  a\n");
add("html2wt", "1d. Indent-Pre and Comments\n(Pre-handler currently cannot distinguish between comment/ws order and normalizes them to [comment,ws] order)", " a\n\n b\n");
add("html2wt", "2a. Indent-Pre and tables", "{|\n\n!h1\n!h2\n\n|foo\n|bar\n|}\n");
add("html2wt", "2b. Indent-Pre and tables", "{|\n\n|foo\n|}\n");
add("html2wt", "2c. Indent-Pre and tables (bug 42252)", "{|\n|+ foo\n\n! bar\n|}\n");
add("html2wt", "3c. Indent-Pre and block tags (pre-content on separate line)", "\n<nowiki> </nowiki>foo\n\n<div>\n foo\n\n</div>\n<center>\n foo\n\n</center>\n<blockquote>\n foo\n\n</blockquote>\n<blockquote>\n foo\n\n</blockquote>\n{|\n|\n foo\n\n|}\n*  foo\n");
add("html2wt", "4. Indent-Pre and extension tags", "a\n\n*<div style=\"width: 155px\"> <div class=\"thumb\" style=\"width: 150px;\"> <div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div> </div> <div class=\"gallerytext\"></div> </div>\n");
add("html2wt", "Render paragraphs when indent-pre is suppressed in blocklevels", "<blockquote>\n foo\n\n bar\n\n</blockquote>\n");
add("html2wt", "4. Multiple spaces at start-of-line", "<nowiki>    </nowiki> foo \n    foo\n\n{|\n\n|foo\n|}\n");
add("html2wt", "5a. White-space in indent-pre", " a<br>\n \n \n b\n");
add("html2wt", "6. Pre-blocks should extend across lines with leading WS even when there is no wrappable content", " a\n \n b\n\n c\n \n\nd\n");
add("html2wt", "HTML-pre: 2: indented text", "  foo\n");
add("html2wt", "Simple definition", "; name \n: Definition\n");
add("html2wt", "Definition list with no space", "; name\n: Definition\n");
add("html2wt", "Definition list with URL link", "; http://example.com/ \n: definition\n");
add("html2wt", "Definition list with bracketed URL link", "; [http://www.example.com/ Example]\n: Something about it\n");
add("html2wt", "Definition list with wikilink containing colon", "; [/index.php?title=Help:FAQ&action=edit&redlink=1 Help:FAQ]\n: The least-read page on Wikipedia\n");
add("html2wt", "Definition lists: colon in external link text", "; [http://www.wikipedia2.org/ Wikipedia : The Next Generation]\n: OK, I made that up\n");
add("html2wt", "Definition lists: colon in HTML attribute", "; '''bold'''\n");
add("html2wt", "Definition lists: self-closed tag", "; one<br>two \n: two-line fun\n");
add("html2wt", "Bug 11748: Literal closing tags", "\n; test 1\n: test test test test test\n; test 2\n: test test test test test\n");
add("html2wt", "Definition and unordered list using wiki syntax nested in unordered list using html tags.", "\n*; term \n*: description\n** unordered\n");
add("html2wt", "\nDefinition list with empty definition and following paragraph", "; term\n:\nParagraph text\n");
add("html2wt", "Definition Lists: No nesting: Multiple dd's", "; x\n: a\n: b\n");
add("html2wt", "Definition Lists: Indentation: Regular", ": i1\n:: i2\n::: i3\n");
add("html2wt", "Definition Lists: Indentation: Missing 1st level", ":: i2\n::: i3\n");
add("html2wt", "Definition Lists: Indentation: Multi-level indent", "::: i3\n");
add("html2wt", "Definition Lists: Hacky use to indent tables", ":: {|\n\n|foo\n\n|bar\n|}\nthis text\nshould be left alone\n");
add("html2wt", "Definition Lists: Hacky use to indent tables, with comments (bug 63979)", "<!-- foo -->\n:: {|\n|foo\n|bar\n|}<!-- bar -->\nthis text\nshould be left alone\n");
add("html2wt", "Definition Lists: Hacky use to indent tables, with comment before table", ":: <!-- foo -->{|\n|foo\n|}\n");
add("html2wt", "Table / list interaction: indented table with lists in table contents", ": {|\n\n| a\n* b\n\n|-\n| c\n* d\n|}\n");
add("html2wt", "Table / list interaction: lists nested in tables nested in indented lists", ": {|\n\n|\n: a\n: b\n\n|\n* c\n* d\n|}\n* e\n* f\n");
add("html2wt", "Definition Lists: Nesting: Multi-level (Parsoid only)", "\n; t1 \n: d1      \n;; t2 \n;: :d2              \n;;; t3 \n;;: ::d3                    \n");
add("html2wt", "Definition Lists: Nesting: Test 2 (Parsoid only)", "\n; t1      \n:: d2      \n");
add("html2wt", "Definition Lists: Nesting: Test 3 (Parsoid only)", "      \n:; t1                                    \n:::: d2                                          \n");
add("html2wt", "Definition Lists: Nesting: Test 4", "::; t3\n::: d3\n");
add("html2wt", "Definition Lists: Mixed Lists: Test 1", "\n:;* foo\n::* bar\n:; baz\n");
add("html2wt", "Definition Lists: Mixed Lists: Test 4", "*; d1 \n*: d2\n*; d3 \n*: d4\n");
add("html2wt", "Definition Lists: Mixed Lists: Test 5", "*: d1\n*:: d2\n");
add("html2wt", "Definition Lists: Mixed Lists: Test 6", "#*: d1\n#*::: d3\n");
add("html2wt", "Definition Lists: Mixed Lists: Test 9", "*; foo \n*: bar\n");
add("html2wt", "Definition Lists: Mixed Lists: Test 10", "*#; foo \n*#: bar\n");
add("html2wt", "Definition Lists: Mixed Lists: Test 11", "\n*#*#;*;; foo :bar\n*#*#; boo :baz\n");
add("html2wt", "Definition Lists: Weird Ones: Test 1", "\n*#;*::;; foo : bar (who uses this?)\n");
add("html2wt", "Definition Lists: colons occurring in tags", "; a:b\n; '''a:b'''\n; <i>a:b</i>\n; <span>a:b</span>\n; <div>a:b</div>\n; <div>a\n: b\n; {{echo|a:b}}\n; {{echo|''a:b''}}\n;;; ''a:b''\n");
add("html2wt", "Definition Lists: colons and tables 1", ": {|\n\n| x\n|}\n\n: {|\n\n| y\n|}\n");
add("html2wt", "Definition Lists: colons and tables 2", ": {|\n\n| x\n|}\n: {|\n\n| y\n|}\n");
add("html2wt", "External links: Free with trailing punctuation", "http://example.com,\nhttp://example.com;\nhttp://example.com\\\nhttp://example.com.\nhttp://example.com:\nhttp://example.com!\nhttp://example.com?\nhttp://example.com)\nhttp://example.com/url_with_(brackets)\n(http://example.com/url_without_brackets)\nhttp://example.com/url_with_entity&\nhttp://example.com/url_with_entity&\nhttp://example.com/url_with_entity&\nhttp://example.com/url_with_entity&nbsp;\nhttp://example.com/url_with_entity&#xA0;\nhttp://example.com/url_with_entity&#160;\nhttp://example.com/url_with_entity&lt;\nhttp://example.com/url_with_entity&#x3C;\nhttp://example.com/url_with_entity&#60;\n");
add("html2wt", "External links: URL in text", "URL in text: http://example.com\n");
add("html2wt", "External links: raw ampersand", "Old & use: http://x&y\n");
add("html2wt", "External links: encoded ampersand", "Old &#x26; use: http://x&y\n");
add("html2wt", "External links: encoded equals (bug 6102)", "http://example.com/?foo=bar\n");
add("html2wt", "External links: [raw ampersand]", "Old &#x26; use: [http://x&y]\n");
add("html2wt", "BUG 289: \">\"-token in bracketed URL", "[http://www.example.com/ <hello> stuff]\n");
add("html2wt", "BUG 289: literal \">\"-token in bracketed URL", "[http://www.example.com/ '''html''' stuff]\n");
add("html2wt", "BUG 289: literal double quote in bracketed URL", "[http://www.example.com/ \"hello\" stuff]\n");
add("html2wt", "External links: multiple legal whitespace is fine, Magnus. Don't break it please. (bug 5081)", "[http://www.example.com test]\n");
add("html2wt", "Bracketed external links with template-generated invalid target", "[http:/example.com title]\n");
add("html2wt", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid", "[http://example.com ''text'']\n[http://example.com '''text''']\n''Something ''[http://example.com ''in italic'']\n''Something ''[http://example.com ''mixed''''', even bold''']\n'''''Now '''''[http://example.com '''''both''''']\n");
add("html2wt", "External link containing double-single-quotes in text embedded in italics (bug 4598 sanity check)", "''Some ''[http://example.com/ ''pretty ''italics'' and stuff'']''!''\n");
add("html2wt", "External link containing double-single-quotes with no space separating the url from text in italics", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm ''La muerte de Casagemas'' (1901) en el sitio de ][[Museo Picasso (París)|Museo Picasso]]<span>.</span>\n");
add("html2wt", "URL-encoding in URL functions (single parameter)", "/index.php?title=Some_page&amp=&\n");
add("html2wt", "URL-encoding in URL functions (multiple parameters)", "/index.php?title=Some_page&q=?&amp=&\n");
add("html2wt", "Unclosed and unmatched quotes", "'''''Bold italic text '''with bold deactivated''' in between.'''''\n\n'''''Bold italic text ''with italic deactivated'' in between.'''''\n\n'''Bold text..'''\n\n..spanning two paragraphs (should not work).'''<nowiki/>'''\n\n'''Bold tag left open'''\n\n''Italic tag left open''\n\nNormal text.\n\n<!-- Unmatching number of opening, closing tags: -->\n'''This year'<nowiki/>'''s election ''should'' beat '''last year''''s.\n\n''Tom'''s car is bigger than '''''<nowiki/>'''Susan'''s.\n\nPlain ''italic'''s plain\n");
add("html2wt", "A table with caption with default-spaced attributes and a table row", "{|\n|+ style=\"color: red;\" | caption1\n\n| foo\n|}\n");
add("html2wt", "A table with captions with non-default spaced attributes and a table row", "{|\n|+ style=\"color: red;\" |caption2\n\n|+ style=\"color: red;\" | caption3\n\n| foo\n|}\n");
add("html2wt", "Table td-cell syntax variations", "{|\n\n| baz\n\n| foo bar foo \n| baz\n\n| style=\"color:red;\" | baz\n\n| style='color:red;' \n| baz\n|}\n");
add("html2wt", "Simple table", "{|\n\n| 1 \n| 2\n\n|-\n| 3 \n| 4\n|}\n");
add("html2wt", "Simple table but with multiple dashes for row wikitext", "{|\n\n| foo\n\n|-\n| bar\n|}\n");
add("html2wt", "Multiplication table", "{| border=\"1\" cellpadding=\"2\"\n|+Multiplication table\n\n! × \n! 1 \n! 2 \n! 3\n\n|-\n! 1\n\n| 1 \n| 2 \n| 3\n\n|-\n! 2\n\n| 2 \n| 4 \n| 6\n\n|-\n! 3\n\n| 3 \n| 6 \n| 9\n\n|-\n! 4\n\n| 4 \n| 8 \n| 12\n\n|-\n! 5\n\n| 5 \n| 10 \n| 15\n|}\n");
add("html2wt", "Accept \"||\" in table headings", "{|\n\n!h1 \n! h2\n|}\n");
add("html2wt", "Accept \"||\" in indented table headings", ": {|\n\n!h1 \n! h2\n|}\n");
add("html2wt", "Accept empty attributes in td/th cells (td/th cells starting with leading ||)", "{|\n\n! h1\n\n| a\n|}\n");
add("html2wt", "Accept \"| !\" at start of line in tables (ignore !-attribute)", "{|\n\n| bar\n|}\n");
add("html2wt", "Allow +/- in 2nd and later cells in a row, in 1st cell when td-attrs are present, or in 1st cell when there is a space between \"|\" and +/- ", "{|\n\n| style=\"color:red;\" |+1\n\n| style=\"color:blue;\" |-1\n\n|-\n| 1 \n| 2 \n| 3\n\n| 1 \n|<nowiki>+2 </nowiki>\n|<nowiki>-3</nowiki>\n\n|-\n| +1\n\n| -1\n|}\n");
add("html2wt", "Table rowspan", "{| border=\"1\"\n\n| Cell 1, row 1\n\n| rowspan=\"2\" | Cell 2, row 1 (and 2)\n\n| Cell 3, row 1\n\n|-\n| Cell 1, row 2\n\n| Cell 3, row 2\n|}\n");
add("html2wt", "Nested table", "{| border=\"1\"\n\n| α\n\n|\n{| bgcolor=\"#ABCDEF\" border=\"2\"\n\n|nested\n\n|-\n|table\n|}\n\n|the original table again\n|}\n");
add("html2wt", "Invalid attributes in table cell (bug 1830)", "{|\n\n|broken\n|}\n");
add("html2wt", "Indented table markup mixed with indented pre content (proposed in bug 6200)", " {|\n \n |\n Text that should be rendered preformatted \n \n |}\n");
add("html2wt", "1. Template-generated table cell attributes and cell content", "{|\n\n| style=\"color:red;\" |Foo\n\n| style=\"color:red;\" |Foo\n\n| style=\"color:red;\"\n|Bar\n\n| style=\"color:red;\" |Foo\n\n| align=\"center\" style=\"color:red;\" |Foo\n\n| align=\"center\" style=\"color:red;\" |Foo\n|}\n");
add("html2wt", "Table with row followed by newlines and table heading", "{|\n\n! foo\n|}\n");
add("html2wt", "Table with empty line following the start tag", "{|\n\n| foo\n|}\n");
add("html2wt", "Wikitext table with a lot of comments", "{|\n\n| foo\n\n|-\n|\n|}\n");
add("html2wt", "Wikitext table with double-line table cell", "{|\n\n|a\nb\n\n|}\n");
add("html2wt", "Table cell with a single comment", "{|\n\n|\n\n| a\n|}\n");
add("html2wt", "Build table with {{!}}", "{| class=\"wikitable\"\n\n! header\n\n! second header\n\n|- style=\"color:red;\"\n| data \n| style=\"color:red;\" | second data\n|}\n");
add("html2wt", "Build table with pipe as data", "{| class=\"wikitable\"\n\n! header\n\n! second header\n\n|- style=\"color:red;\"\n| data \n| style=\"color:red;\" | second data\n\n|-\n| style=\"color:red;\" |<nowiki> data with | </nowiki>\n| style=\"color:red;\" |<nowiki> second data with |</nowiki>\n\n|-\n|<nowiki> data with | </nowiki>\n|<nowiki> second data with |</nowiki>\n|}\n");
add("html2wt", "Build table with wikilink", "{| class=\"wikitable\"\n\n! header \n! second header\n\n|- style=\"color:red;\"\n| data [[wiki/Main Page|linktext]] \n| second data [[wiki/Main Page|linktext]]\n\n|-\n| data \n| second data [[wiki/Main Page|link|text with pipe]]\n|}\n");
add("html2wt", "Wikitext table with html-syntax row", "{|\n\n|foo\n|}\n");
add("html2wt", "Plain link, capitalized", "[[wiki/Main Page|Main Page]]\n");
add("html2wt", "Plain link, uncapitalized", "[[wiki/Main Page|main Page]]\n");
add("html2wt", "Piped link", "[[wiki/Main Page|The Main Page]]\n");
add("html2wt", "Piped link with comment in link text", "[[wiki/Main Page|The Main Page]]\n");
add("html2wt", "Piped link with multiple pipe characters in link text", "[[Main Page|<nowiki>|The|Main|Page|</nowiki>]]\n");
add("html2wt", "Broken link", "[/index.php?title=Zigzagzogzagzig&action=edit&redlink=1 Zigzagzogzagzig]\n");
add("html2wt", "Broken link with fragment", "[/index.php?title=Zigzagzogzagzig&action=edit&redlink=1 Zigzagzogzagzig#zug]\n");
add("html2wt", "Special page link with fragment", "[[wiki/Special:Version#anchor|Special:Version#anchor]]\n");
add("html2wt", "Nonexistent special page link with fragment", "[[wiki/Special:ThisNameWillHopefullyNeverBeUsed|Special:ThisNameWillHopefullyNeverBeUsed#anchor]]\n");
add("html2wt", "Link with prefix", "xxx[[wiki/Main Page|main Page]], xxx[[wiki/Main Page|Main Page]], Xxx[[wiki/Main Page|main Page]] XXX[[wiki/Main Page|main Page]], XXX[[wiki/Main Page|Main Page]]\n");
add("html2wt", "Link with suffix", "[[wiki/Main Page|Main Pagexxx]], [[wiki/Main Page|Main Page]]XXX, [[wiki/Main Page|Main Page]]!!!\n");
add("html2wt", "Bug 43661: Piped links with identical prefixes", "[[wiki/Prefixed article|prefixed articles with spaces]]\n\n[[wiki/Prefixed article|prefixed articlesaoeu]]\n\n[[wiki/Main Page|Main Page test]]\n");
add("html2wt", "Link with 4 brackets", "[[[[wiki/Main Page|Main Page]]]]\n");
add("html2wt", "Link with multiple pipes", "[[wiki/Main Page|The|Main|Page]]\n");
add("html2wt", "Link to namespaces", "[/index.php?title=Talk:Parser_testing&action=edit&redlink=1 Talk:Parser testing], [/index.php?title=Meta:Disclaimers&action=edit&redlink=1 Meta:Disclaimers]\n");
add("html2wt", "Link with space in namespace", "[/index.php?title=User_talk:Foo_bar&action=edit&redlink=1 User talk:Foo bar]\n");
add("html2wt", "Namespace takes precedence over interwiki link (bug 51680)", "[[wiki/MemoryAlpha:AlphaTest|MemoryAlpha:AlphaTest]]\n");
add("html2wt", "Piped link to namespace", "[/index.php?title=Meta:Disclaimers&action=edit&redlink=1 The disclaimers]\n");
add("html2wt", "Link containing \"#<\" and \"#>\" % as a hex sequences- these are valid section anchors\nExample for such a section: == < ==", "[[Main Page#<|#<]][[Main Page#>|#>]]\n");
add("html2wt", "Link containing double-single-quotes '' in text embedded in italics (bug 4598 sanity check)", "''Some [/index.php?title=Link&action=edit&redlink=1 pretty ''italics'' and stuff]!''\n");
add("html2wt", "Plain link to page with question mark in title", "[[wiki/A?b|A?b]]\n\n[[wiki/A?b|Baz]]\n");
add("html2wt", "BUG 337: Escaped self-links should be bold", "[[Bug462]] [[Bug462]]\n");
add("html2wt", "Self-link to section should not be bold", "[[wiki/Main Page#section|Main Page#section]]\n");
add("html2wt", "Self-link to numeric title", "<strong class=\"selflink\">0</strong>\n");
add("html2wt", "Link to numeric-equivalent title", "[[wiki/00|00]]\n");
add("html2wt", "<nowiki> inside a link", "<nowiki>[[Main Page]]</nowiki> [[wiki/Main Page|the main page [it's not very good]]]\n");
add("html2wt", "Non-breaking spaces in title", "[[wiki/Main Page|  Main   Page  ]]\n");
add("html2wt", "Internal link with ca linktrail, surrounded by bold apostrophes (bug 27473 primary issue)", "'''[[wiki/Main Page|Main Page]]'''\n");
add("html2wt", "Internal link with ca linktrail, surrounded by italic apostrophes (bug 27473 primary issue)", "''[[wiki/Main Page|Main Page]]''\n");
add("html2wt", "Internal link with en linktrail: no apostrophes (bug 27473)", "[/index.php?title=Something&action=edit&redlink=1 Something]'nice\n");
add("html2wt", "Internal link with ca linktrail with apostrophes (bug 27473)", "[/index.php?title=Something&action=edit&redlink=1 Something'nice]\n");
add("html2wt", "Internal link with kaa linktrail with apostrophes (bug 27473)", "[/index.php?title=Something&action=edit&redlink=1 Something'nice]\n");
add("html2wt", "Internal link with is link prefix", "Aðrir [[wiki/Söfnuður|mótmælendasöfnuðir]] og\n");
add("html2wt", "Internal link with is link trail and link prefix", "[[wiki/Mótmælendatrú|xxxar]]\n[[wiki/Mótmælendatrú|mótmælendatrúar]]\n[[wiki/Söfnuður|mótmælendasöfnuður]]\n[[wiki/Söfnuður|mótmælendasöfnuðir]]\n[[wiki/Söfnuður|mótmælendasöfnuðirxxx]]\n");
add("html2wt", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved", "[[wiki/Foo|  bar]]\n\n[[wiki/Foo|  ''bar'']]\n\n[http://wp.org foo]\n\n[http://wp.org ''foo'']\n");
add("html2wt", "Interwiki link encoding conversion (bug 1636)", "* [[wikipedia:ro:Olteniţa|Wikipedia:ro:Olteniţa]]\n* [[wikipedia:ro:Olteniţa|Wikipedia:ro:Olteniţa]]\n");
add("html2wt", "Interwiki link with fragment (bug 2130)", "[[meatball:SoftSecurity#foo|MeatBall:SoftSecurity#foo]]\n");
add("html2wt", "Parsoid-specific test: Wikilinks with &nbsp; should RT properly", "[/index.php?title=WW_II&action=edit&redlink=1 WW II]\n");
add("html2wt", "<br> to <br />", "1\n2\n3\n");
add("html2wt", "Incorrecly removing closing slashes from correctly formed XHTML", "\n");
add("html2wt", "Failing to transform badly formed HTML into correct XHTML", "\n\n\n");
add("html2wt", "Handling html with a div self-closing tag", "<div title=\"\" />\n<div title=\"\" />\n<div title=\"\" />\n<div title=\"bar\" />\n<div title=\"bar\" />\n<div title=\"bar/\">");
add("html2wt", "Handling html with a br self-closing tag", "\n\n\n\n\n\n");
add("html2wt", "Horizontal ruler (should it add that extra space?)", "----\n----\nfoo\n----\nbar\n");
add("html2wt", "Horizontal ruler -- eats additional dashes on the same line", "----\n");
add("html2wt", "Horizontal ruler -- Supports content following dashes on same line", "----\nFoo\n");
add("html2wt", "Common list", "* Common list\n* item 2\n* item 3\n");
add("html2wt", "Numbered list", "# Numbered list\n# item 2\n# item 3\n");
add("html2wt", "Mixed list", "* Mixed list\n*# with numbers\n** and bullets\n*# and numbers\n* bullets again\n** bullet level 2\n*** bullet level 3\n***# Number on level 4\n** bullet level 2\n**# Number on level 3\n**# Number on level 3\n*# number level 2\n* Level 1\n*** Level 3\n#** Level 3, but ordered\n");
add("html2wt", "Nested lists 1", "* foo\n** bar\n");
add("html2wt", "Nested lists 2", "** foo\n* bar\n");
add("html2wt", "Nested lists 3 (first element empty)", "\n** bar\n");
add("html2wt", "Nested lists 4 (first element empty)", "**\n* bar\n");
add("html2wt", "Nested lists 6 (both elements empty)", "\n**\n");
add("html2wt", "1. Lists with start-of-line-transparent tokens before bullets: Comments", "* foo\n* bar\n* baz\n");
add("html2wt", "2. Lists with start-of-line-transparent tokens before bullets: Template close", "* foo bar\n* baz\n");
add("html2wt", "List items from template", "* item 1\n* item 2\n\n* item 0\n* item 1\n* item 2\n\n* item 0\n* notSOL\n* item 1\n* item 2\n");
add("html2wt", "List interrupted by empty line or heading", "* foo\n\n** bar\n\n== A heading ==\n* Another list item\n");
add("html2wt", "Multiple list tags generated by templates", "* a\n* b\n* c\n");
add("html2wt", "Single-comment whitespace lines dont break lists, and neither do multi-comment whitespace lines", "* a\n* b\n* c\n* d\n");
add("html2wt", "Replacing whitespace with tabs still doesn't break the list (gerrit 78327)", "* a\n* b\n* c\n* d\n");
add("html2wt", "Parsoid: Make sure nested lists are serialized on their own line even if HTML contains no newlines", "# foo\n## bar\n\n* foo\n** bar\n\n: foo\n:: bar\n");
add("html2wt", "Unbalanced closing block tags break a list\n(php parser relies on Tidy to fix up)", "<div>\n\n* a\n\n</div>\n<div>\n\n* b\n\n</div>");
add("html2wt", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up)", "<span>\n\n* a<span></span>\n* b\n\n</span>");
add("html2wt", "1. List embedded in a formatting tag", "<small>\n\n* foo\n\n</small>");
add("html2wt", "2. List embedded in a formatting tag", "<small></small>\n<small>\n* a\n</small>\n* <small>b</small>\n");
add("html2wt", "Magic Word: {{CURRENTDAY}}", "1\n");
add("html2wt", "Magic Word: {{CURRENTDAY2}}", "01\n");
add("html2wt", "Magic Word: {{CURRENTDAYNAME}}", "Thursday\n");
add("html2wt", "Magic Word: {{CURRENTDOW}}", "4\n");
add("html2wt", "Magic Word: {{CURRENTMONTH}}", "01\n");
add("html2wt", "Magic Word: {{CURRENTMONTH1}}", "1\n");
add("html2wt", "Magic Word: {{CURRENTMONTHABBREV}}", "Jan\n");
add("html2wt", "Magic Word: {{CURRENTMONTHNAME}}", "January\n");
add("html2wt", "Magic Word: {{CURRENTMONTHNAMEGEN}}", "January\n");
add("html2wt", "Magic Word: {{CURRENTTIME}}", "00:02\n");
add("html2wt", "Magic Word: {{CURRENTHOUR}}", "00\n");
add("html2wt", "Magic Word: {{CURRENTWEEK}} (@bug 4594)", "1\n");
add("html2wt", "Magic Word: {{CURRENTYEAR}}", "1970\n");
add("html2wt", "Magic Word: {{CURRENTTIMESTAMP}}", "19700101000203\n");
add("html2wt", "Magic Words LOCAL (UTC)", "* 01\n* 1\n* January\n* January\n* Jan\n* 1\n* 01\n* Thursday\n* 1970\n* 00:02\n* 00\n* 1\n* 4\n* 19700101000203\n");
add("html2wt", "Magic Word: {{FULLPAGENAME}}", "User:Ævar Arnfjörð Bjarmason\n");
add("html2wt", "Magic Word: {{FULLPAGENAMEE}}", "User:%C3%86var_Arnfj%C3%B6r%C3%B0_Bjarmason\n");
add("html2wt", "Magic Word: {{TALKSPACE}}", "User talk\n");
add("html2wt", "Magic Word: {{TALKSPACE}}, same namespace", "User talk\n");
add("html2wt", "Magic Word: {{TALKSPACE}}, main namespace", "Talk\n");
add("html2wt", "Magic Word: {{TALKSPACEE}}", "User_talk\n");
add("html2wt", "Magic Word: {{SUBJECTSPACE}}", "User\n");
add("html2wt", "Magic Word: {{SUBJECTSPACE}}, same namespace", "User\n");
add("html2wt", "Magic Word: {{SUBJECTSPACE}}, main namespace", "");
add("html2wt", "Magic Word: {{SUBJECTSPACEE}}", "User\n");
add("html2wt", "Magic Word: {{NAMESPACE}}", "User\n");
add("html2wt", "Magic Word: {{NAMESPACEE}}", "User\n");
add("html2wt", "Magic Word: {{NAMESPACENUMBER}}", "2\n");
add("html2wt", "Magic Word: {{SUBPAGENAME}}", "sub ö\n");
add("html2wt", "Magic Word: {{SUBPAGENAMEE}}", "sub_%C3%B6\n");
add("html2wt", "Magic Word: {{ROOTPAGENAME}}", "Ævar Arnfjörð Bjarmason\n");
add("html2wt", "Magic Word: {{ROOTPAGENAMEE}}", "%C3%86var_Arnfj%C3%B6r%C3%B0_Bjarmason\n");
add("html2wt", "Magic Word: {{BASEPAGENAME}}", "Ævar Arnfjörð Bjarmason\n");
add("html2wt", "Magic Word: {{BASEPAGENAMEE}}", "%C3%86var_Arnfj%C3%B6r%C3%B0_Bjarmason\n");
add("html2wt", "Magic Word: {{TALKPAGENAME}}", "User talk:Ævar Arnfjörð Bjarmason\n");
add("html2wt", "Magic Word: {{TALKPAGENAMEE}}", "User_talk:%C3%86var_Arnfj%C3%B6r%C3%B0_Bjarmason\n");
add("html2wt", "Magic Word: {{SUBJECTPAGENAME}}", "User:Ævar Arnfjörð Bjarmason\n");
add("html2wt", "Magic Word: {{SUBJECTPAGENAMEE}}", "User:%C3%86var_Arnfj%C3%B6r%C3%B0_Bjarmason\n");
add("html2wt", "Magic Word: {{NUMBEROFFILES}}", "6\n");
add("html2wt", "Magic Word: {{PAGENAME}}", "Ævar Arnfjörð Bjarmason\n");
add("html2wt", "Magic Word: {{PAGENAME}} with metacharacters", "''<nowiki/>'foo & bar = baz'''\n");
add("html2wt", "Magic Word: {{PAGENAME}} with metacharacters (bug 26781)", "<nowiki>*</nowiki><nowiki>RFC 1234</nowiki> <nowiki>http://example.com/</nowiki>\n");
add("html2wt", "Magic Word: {{PAGENAMEE}}", "%C3%86var_Arnfj%C3%B6r%C3%B0_Bjarmason\n");
add("html2wt", "Magic Word: {{PAGENAMEE}} with metacharacters (bug 26781)", "<nowiki>*</nowiki>RFC_1234_http://example.com/\n");
add("html2wt", "Magic Word: {{REVISIONID}}", "1337\n");
add("html2wt", "Magic Word: {{SCRIPTPATH}}", "");
add("html2wt", "Magic Word: {{STYLEPATH}}", "/skins\n");
add("html2wt", "Magic Word: {{SERVER}}", "http://example.org\n");
add("html2wt", "Magic Word: {{SERVERNAME}}", "example.org\n");
add("html2wt", "Magic Word: {{SITENAME}}", "MediaWiki\n");
add("html2wt", "Case-sensitive magic words, when cased differently, should just be template transclusions", "[/index.php?title=Template:CurrentMonth&action=edit&redlink=1 Template:CurrentMonth]\n[/index.php?title=Template:Currentday&action=edit&redlink=1 Template:Currentday]\n[/index.php?title=Template:CURreNTweEK&action=edit&redlink=1 Template:CURreNTweEK]\n[/index.php?title=Template:CurrentHour&action=edit&redlink=1 Template:CurrentHour]\n");
add("html2wt", "Case-insensitive magic words should still work with weird casing.", "example.org\naOEU\nAoeu\nhttp://example.org\n");
add("html2wt", "Namespace 1 {{ns:1}}", "Talk\n");
add("html2wt", "Namespace 1 {{ns:01}}", "Talk\n");
add("html2wt", "Namespace 0 {{ns:0}} (bug 4783)", "");
add("html2wt", "Namespace 0 {{ns:00}} (bug 4783)", "");
add("html2wt", "Namespace -1 {{ns:-1}}", "Special\n");
add("html2wt", "Namespace User {{ns:User}}", "User\n");
add("html2wt", "Namespace User talk {{ns:User_talk}}", "User talk\n");
add("html2wt", "Namespace User talk {{ns:uSeR tAlK}}", "User talk\n");
add("html2wt", "Namespace File {{ns:File}}", "File\n");
add("html2wt", "Namespace File {{ns:Image}}", "File\n");
add("html2wt", "Namespace (lang=de) Benutzer {{ns:User}}", "Benutzer\n");
add("html2wt", "Namespace (lang=de) Benutzer Diskussion {{ns:3}}", "Benutzer Diskussion\n");
add("html2wt", "Urlencode", "hi+world%3F%21\nhi_world%3F!\nhi%20world%3F%21\nhi+world%3F%21\n");
add("html2wt", "Nonexistent template", "[/index.php?title=Template:Thistemplatedoesnotexist&action=edit&redlink=1 Template:Thistemplatedoesnotexist]\n");
add("html2wt", "Template with invalid target containing tags", "<nowiki>{{a</nowiki>'''b'''<nowiki>|foo|a=b|a = b}}</nowiki>\n");
add("html2wt", "Template with invalid target containing unclosed tag", "<nowiki>{{a</nowiki>'''<nowiki>|foo|a=b|a = b}}</nowiki>'''\n");
add("html2wt", "Template with just whitespace in it, bug #68421", "{{echo|{{ }<nowiki>}</nowiki>}}");
add("html2wt", "Simple template", "This is a test template\n");
add("html2wt", "Template with explicit namespace", "This is a test template\n");
add("html2wt", "Template parameter", "This is a test template with parameter foo\n");
add("html2wt", "Template unnamed parameter", "[[wiki/Main Page|the main page]]\n");
add("html2wt", "Template with template name as unnamed argument", "(test)\n");
add("html2wt", "Template with template name as argument", "(test)\n");
add("html2wt", "Template with template name as argument (2)", "(test)\n");
add("html2wt", "Template with default value", "(test)\n");
add("html2wt", "Template with default value (value set)", "'''templ'''\n");
add("html2wt", "Template with argument in separate line", "(test)\n");
add("html2wt", "Template with complex template as argument", "This is a test template with parameter (test)\n");
add("html2wt", "Template with complex arguments", "[[wiki/Template:Complextemplate|link]] This is a test template with parameter (test)\n");
add("html2wt", "BUG 553: link with two variables in a piped link", "{|\n|[[{{{1}}}<nowiki>|</nowiki>{{{2}}}<nowiki>]]</nowiki>\n|}\n");
add("html2wt", "Abort table cell attribute parsing on wikilink", "{|\n| testing [[one|two]]<nowiki> | three </nowiki>|| four\n| testing one two | three || four\n| testing=\"[[one|two]]<nowiki>\" | three </nowiki>|| four\n|}\n");
add("html2wt", "Magic variable as template parameter", "This is a test template with parameter MediaWiki\n");
add("html2wt", "Template parameter as link source", "[[wiki/Main Page|link]]\n");
add("html2wt", "Template passing argument to another template", "including another template, This is a test template with parameter 'hmm'\n");
add("html2wt", "Template as link source", "[[wiki/Main Page|Main Page]]\n\n[[wiki/Main Page|Main Page]]\n\n[[wiki/Main Page|Main Page]]Page\n");
add("html2wt", "Template infinite loop", "<span class=\"error\">Template loop detected: [[wiki/Template:Loop1|Template:Loop1]]</span>\n");
add("html2wt", "Template from main namespace", "blah blah\n");
add("html2wt", "BUG 529: Template with table, not included at beginning of line", "foo \n\n{|\n\n| 1 \n| 2\n\n|-\n| 3 \n| 4\n|}\n");
add("html2wt", "BUG 523: Template shouldn't eat newline (or add an extra one before table)", "foo\n\n{|\n\n| 1 \n| 2\n\n|-\n| 3 \n| 4\n|}\n");
add("html2wt", "BUG 41: Template parameters shown as broken links", "<nowiki>{{{parameter}}}</nowiki>\n");
add("html2wt", "Template with targets containing wikilinks", "<nowiki>{{</nowiki>[[wiki/Foo|foo]]<nowiki>}}</nowiki>\n\n<nowiki>{{</nowiki>[[wiki/Foo|foo]]<nowiki>}}</nowiki>\n\n<nowiki>{{[[foo}}</nowiki>]]\n");
add("html2wt", "int keyword", "You have lots of money (not!).\n");
add("html2wt", "int keyword - non-existing message", "<nowiki><var></nowiki>\n");
add("html2wt", "<includeonly> and <noinclude> being included", "Foobar\n");
add("html2wt", "<onlyinclude> being included", "Foo\n");
add("html2wt", "<onlyinclude> and <includeonly> being included", "Foo\n");
add("html2wt", "<includeonly> and <noinclude> on a page", "Foozar\n");
add("html2wt", "Un-closed <noinclude>", "");
add("html2wt", "<onlyinclude> on a page", "Foobar\n");
add("html2wt", "Un-closed <onlyinclude>", "");
add("html2wt", "Self-closed noinclude, includeonly, onlyinclude tags", "\n");
add("html2wt", "Unbalanced includeonly and noinclude tags", "{|\n\n|a\n\n|b\n\n|c</includeonly>\n\n|d</includeonly></includeonly>\n|}\n");
add("html2wt", "Bug 6563: Edit link generation for section shown by <includeonly>", "== Includeonly section ==\n\n== Section T-1 ==\n");
add("html2wt", "Bug 6563: Section extraction for section shown by <includeonly>", "<nowiki>==Section T-2==</nowiki>");
add("html2wt", "Bug 6563: Edit link generation for section suppressed by <includeonly>", "== Section 1 ==\n");
add("html2wt", "Bug 6563: Section extraction for section suppressed by <includeonly>", "<nowiki>==Section 1==</nowiki>");
add("html2wt", "0. includeonly around the entire attribute", "<span id=\"v2\">bar</span>\n");
add("html2wt", "1. includeonly in html attr key", "<span id=\"foo\">bar</span>\n");
add("html2wt", "2. includeonly in html attr value", "<span id=\"v1\">bar</span>\n<span id=\"v1\">bar</span>\n");
add("html2wt", "3. includeonly in part of an attr value", "<span style=\"color:red;\">bar</span>\n");
add("html2wt", "4. includeonly in table attributes", "{|\n\n|a\n\n|}\n");
add("html2wt", "Templates: Template Name/Arg clash: 1. Use of positional param", "foo\n");
add("html2wt", "Templates: Template Name/Arg clash: 2. Use of named param", "foo\n");
add("html2wt", "Templates: Template Name/Arg clash: 3. Use of named param with empty input", "quote\n");
add("html2wt", "Templates: 1. Simple use", "Foo\n");
add("html2wt", "Templates: 2. Inside a block tag", "<div>Foo</div>\n<blockquote>\nFoo\n</blockquote>");
add("html2wt", "Templates: P-wrapping: 1a. Templates on consecutive lines", "Foo\nbar\n");
add("html2wt", "Templates: P-wrapping: 1b. Templates on consecutive lines", "Foo\n\nbar\nbaz\n");
add("html2wt", "Templates: P-wrapping: 1c. Templates on consecutive lines", "Foo\n\nbar\n<div>baz</div>");
add("html2wt", "Templates: Inline Text: 1. Multiple template uses", "Foobarbaz\n");
add("html2wt", "Templates: Inline Text: 2. Back-to-back template uses", "Foobar\n");
add("html2wt", "Templates: Block Tags: 1. Multiple template uses", "<div>Foo</div><div>bar</div><div>baz</div>\n");
add("html2wt", "Templates: Block Tags: 2. Back-to-back template uses", "<div>Foo</div><div>bar</div>\n");
add("html2wt", "Templates: Links: 1. Simple example", "[[wiki/Foo|bar]]\n");
add("html2wt", "Templates: Links: 2. Generation of link href", "[[wiki/Foo|bar]]\n");
add("html2wt", "Templates: Links: 3. Generation of part of a link href", "[[wiki/Foo|bar]]\n\n[/index.php?title=Foobar&action=edit&redlink=1 Foobar]\n\n[/index.php?title=Foobarbaz&action=edit&redlink=1 Foobarbaz]\n\n[/index.php?title=Foobar&action=edit&redlink=1 bar]\n\n[/index.php?title=Foobar&action=edit&redlink=1 Foobar]\n\n[/index.php?title=Foobar&action=edit&redlink=1 bar]\n");
add("html2wt", "Templates: Links: 4. Multiple templates generating link href", "[/index.php?title=Foobar&action=edit&redlink=1 Foobar]\n");
add("html2wt", "Templates: Links: 5. Generation of link text", "[[wiki/Foo|bar]]\n");
add("html2wt", "Templates: Links: 5. Nested templates (only outermost template should be marked)", "[[wiki/Foo|bar]]\n");
add("html2wt", "Templates: HTML Tag: 1. Generation of HTML attr. key", "<div style=\"color:red;\">foo</div>\n");
add("html2wt", "Templates: HTML Tag: 2. Generation of HTML attr. value", "<div style=\"color:red;\">foo</div>\n");
add("html2wt", "Templates: HTML Tag: 3. Generation of HTML attr key and value", "<div style=\"color:red;\">foo</div>\n");
add("html2wt", "Templates: HTML Tag: 4. Generation of starting piece of HTML attr value", "<div title=\"This is a long title with just one piece templated\">foo</div>\n");
add("html2wt", "Templates: HTML Tag: 5. Generation of middle piece of HTML attr value", "<div title=\"This is a long title with just one piece templated\">foo</div>\n");
add("html2wt", "Templates: HTML Tag: 6. Generation of end piece of HTML attr value", "<div title=\"This is a long title with just one piece templated\">foo</div>\n");
add("html2wt", "Templates: HTML Tag: 7. Generation of partial attribute key string", "<div style=\"color:red;\">foo</div>\n");
add("html2wt", "Templates: HTML Tag: 8. Template-generated attribute (k=v)", "<div id=\"v1\">bar</div>\n");
add("html2wt", "Templates: HTML Tag: 9. Multiple template-generated attributes", "<div id=\"v1\" title=\"foo\">bar</div>\n");
add("html2wt", "Templates: HTML Tables: 1. Generating start of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: HTML Tables: 2a. Generating middle of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: HTML Tables: 2b. Generating middle of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: HTML Tables: 3. Generating end of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: HTML Tables: 4a. Generating a single tag of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: HTML Tables: 4b. Generating a single tag of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: HTML Tables: 4c. Generating a single tag of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: HTML Tables: 4d. Generating a single tag of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: HTML Tables: 4e. Generating a single tag of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: HTML Tables: 4f. Generating a single tag of a HTML table", "{|\n|foo\n|}\n");
add("html2wt", "Templates: Wiki Tables: 1a. Fostering of entire template content", "a\n{|\n\n|\n\n|}\n");
add("html2wt", "Templates: Wiki Tables: 1b. Fostering of entire template content", "<div>\nfoo\n</div>\n{|\n\n|\n\n|}\n");
add("html2wt", "Templates: Wiki Tables: 2. Fostering of partial template content", "a\n<div>b</div>\n{|\n\n|\n\n|}\n");
add("html2wt", "Templates: Wiki Tables: 3. td-content via multiple templates", "{|\n\n|ab\n|}\n");
add("html2wt", "Templates: Wiki Tables: 4. Templated tags, no content", "{|\n|\n|}\n");
add("html2wt", "Templates: Wiki Tables: 5. Templated tags, regular td-tags", "{|\n\n|foo\n|}\n");
add("html2wt", "Templates: Wiki Tables: 6. Templated tags, templated td-tags", "{|\n\n|foo\n|}\n");
add("html2wt", "Templates: Lists: Multi-line list-items via templates", "* a [/index.php?title=Template:Nonexistent&action=edit&redlink=1 Template:Nonexistent]\n* b [/index.php?title=Template:Nonexistent&action=edit&redlink=1 Template:Nonexistent]\n");
add("html2wt", "Templates: Ugly nesting: 1. Quotes opened/closed across templates (echo)", "''ab''c''d''e\n");
add("html2wt", "Templates: Ugly nesting: 4. Divs opened/closed across templates", "a\n<div>bc</div>\nde\n");
add("html2wt", "Templates: Ugly templates: 3. newline-only template parameter", "foo \n");
add("html2wt", "Templates: Ugly templates: 4. newline-only template parameter inconsistency", "\n");
add("html2wt", "Parser Functions: 1. Simple example", "FOO\n");
add("html2wt", "Parser Functions: 2. Nested use (only outermost should be marked up)", "FOO\n");
add("html2wt", "(confirming safety of fix for subst bug 1936)", "@<span>Oh no</span>\n");
add("html2wt", "bug 22297: safesubst: works during normal parse", "Foobar\n");
add("html2wt", "subst: does not work during normal parse", "<nowiki>{{subst:Includes}}</nowiki>\n");
add("html2wt", "message transform: magic variables", "MediaWiki");
add("html2wt", "message transform: should not transform wiki markup", "<nowiki>''test''</nowiki>");
add("html2wt", "message transform: <noinclude> in transcluded template (bug 4926)", "Foobar");
add("html2wt", "message transform: <onlyinclude> in transcluded template (bug 4926)", "Foo");
add("html2wt", "{{#special:}} page name, known", "Special:RecentChanges");
add("html2wt", "{{#special:}} page name with subpage, known", "Special:RecentChanges/param");
add("html2wt", "{{#special:}} page name, unknown", "Special:Foobar nonexistent");
add("html2wt", "{{#speciale:}} page name, known", "Special:RecentChanges");
add("html2wt", "{{#speciale:}} page name with subpage, known", "Special:RecentChanges/param");
add("html2wt", "{{#speciale:}} page name, unknown", "Special:Foobar_nonexistent");
add("html2wt", "Allow empty links in image captions (Bug 60753)", "[[File:Foobar.jpg|thumb|Caption [[Link1]]\n<nowiki>[[]]</nowiki>\n[[Link2]]\n]]");
add("html2wt", "Image with multiple attributes from the same template", "[[File:Foobar.jpg|right|Caption text]]\n");
add("html2wt", "Image with link tails", "123[[File:Foobar.jpg]]456\n123\n[[File:Foobar.jpg|right]]\n456\n123\n[[File:Foobar.jpg|thumb]]\n456\n");
add("html2wt", "Image with multiple captions -- only last one is accepted", "[[File:Foobar.jpg|right|Caption3 - accepted]]\n");
add("html2wt", "Image with multiple widths -- use last", "[[File:Foobar.jpg|300x300px|caption]]\n");
add("html2wt", "Image with multiple alignments -- use first (bug 48664)", "[[File:Foobar.jpg|left|thumb|caption]]\n[[File:Foobar.jpg|middle|caption]]\n");
add("html2wt", "Image with width attribute at different positions", "[[File:Foobar.jpg|right|200x200px|Caption]]\n[[File:Foobar.jpg|right|200x200px|Caption]]\n[[File:Foobar.jpg|right|200x200px|Caption]]\n");
add("html2wt", "Image with link parameter, wiki target", "[[File:Foobar.jpg|link=Main_Page]]\n");
add("html2wt", "Image with link parameter, wgNoFollowLinks set to false", "http://example.com/images/3/3a/Foobar.jpg\n");
add("html2wt", "Image with link parameter, wgNoFollowDomainExceptions", "http://example.com/images/3/3a/Foobar.jpg\n");
add("html2wt", "Link to image page- image page normally doesn't exists, hence edit link\nAdd test with existing image page\n#<p><a href=\"/wiki/File:Test\" title=\"Image:Test\">Image:test</a>", "[/index.php?title=File:Test&action=edit&redlink=1 Image:test]\n");
add("html2wt", "bug 18784  Link to non-existent image page with caption should use caption as link text", "[/index.php?title=File:Test&action=edit&redlink=1 caption]\n");
add("html2wt", "Parsoid-specific image handling - simple image with size and middle alignment", "[[File:Foobar.jpg|middle|50x50px]]\n");
add("html2wt", "Parsoid-specific image handling - thumbnail with specific size, halign, valign, and caption", "[[File:Foobar.jpg|right|middle|thumb|50x50px|caption]]\n");
add("html2wt", "Parsoid-specific image handling - caption with a template in it", "[[File:Foobar.jpg|thumb|200x200px|This caption has a {{echo|transclusion}} in it.]]\n");
add("html2wt", "Subpage link", "[[wiki/Subpage test/subpage|/subpage]]\n");
add("html2wt", "Subpage noslash link", "[[wiki/Subpage test/subpage|subpage]]\n");
add("html2wt", "Render invalid page names as plain text (bug 51090)", "[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n<nowiki>[[foo~~~bar]]</nowiki>\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\n[[{{echo|./../foo}}<nowiki>|bar]]</nowiki>\n[[{{echo|foo/.}}<nowiki>|bar]]</nowiki>\n[[{{echo|foo/..}}<nowiki>|bar]]</nowiki>\n[[{{echo|foo~~~~bar}}<nowiki>]]</nowiki>\n[[{{echo|foo>bar}}<nowiki>]]</nowiki>\n[[{{echo|foo././bar}}<nowiki>]]</nowiki>\n[[{{echo|foo{bar}}<nowiki>]]</nowiki>\n[[{{echo|foo}bar}}<nowiki>]]</nowiki>\n[[{{echo|foo[bar}}<nowiki>]]</nowiki>\n[[{{echo|foo]bar}}<nowiki>]]</nowiki>\n[[{{echo|foo<bar}}<nowiki>]]</nowiki>\n");
add("html2wt", "Disabled subpages", "[/index.php?title=/subpage&action=edit&redlink=1 /subpage]\n");
add("html2wt", "BUG 561: {{/Subpage}}", "[/index.php?title=Page/Subpage&action=edit&redlink=1 Page/Subpage]\n");
add("html2wt", "Link to category", "[[wiki/Category:MediaWiki User's Guide|Category:MediaWiki User's Guide]]\n");
add("html2wt", "Simple category", "[[wiki/Category:MediaWiki User's Guide|MediaWiki User's Guide]]");
add("html2wt", "PAGESINCATEGORY invalid title fatal (r33546 fix)", "0\n");
add("html2wt", "Category with different sort key", "[[wiki/Category:MediaWiki User's Guide|MediaWiki User's Guide]]");
add("html2wt", "Category with identical sort key", "[[wiki/Category:MediaWiki User's Guide|MediaWiki User's Guide]]");
add("html2wt", "Basic section headings", "== Headline 1 ==\nSome text\n\n== Headline 2 ==\nMore\n\n=== Smaller headline ===\nBlah blah\n");
add("html2wt", "Section headings with TOC", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Headline_1|<span class=\"tocnumber\">1</span> <span class=\"toctext\">Headline 1</span>]]\n\n** [[#Subheadline_1|<span class=\"tocnumber\">1.1</span> <span class=\"toctext\">Subheadline 1</span>]]\n\n*** [[#Skipping_a_level|<span class=\"tocnumber\">1.1.1</span> <span class=\"toctext\">Skipping a level</span>]]\n\n**** [[#Skipping_a_level_2|<span class=\"tocnumber\">1.1.1.1</span> <span class=\"toctext\">Skipping a level</span>]]\n* [[#Headline_2|<span class=\"tocnumber\">2</span> <span class=\"toctext\">Headline 2</span>]]\n\n** [[#Another_headline|<span class=\"tocnumber\">2.1</span> <span class=\"toctext\">Another headline</span>]]\n\n</div>\n\n== Headline 1 ==\n\n=== Subheadline 1 ===\n\n===== Skipping a level =====\n\n====== Skipping a level ======\n\n== Headline 2 ==\nSome text\n\n=== Another headline ===\n");
add("html2wt", "Handling of sections up to level 6 and beyond", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Level_1_Heading|<span class=\"tocnumber\">1</span> <span class=\"toctext\">Level 1 Heading</span>]]\n\n** [[#Level_2_Heading|<span class=\"tocnumber\">1.1</span> <span class=\"toctext\">Level 2 Heading</span>]]\n\n*** [[#Level_3_Heading|<span class=\"tocnumber\">1.1.1</span> <span class=\"toctext\">Level 3 Heading</span>]]\n\n**** [[#Level_4_Heading|<span class=\"tocnumber\">1.1.1.1</span> <span class=\"toctext\">Level 4 Heading</span>]]\n\n***** [[#Level_5_Heading|<span class=\"tocnumber\">1.1.1.1.1</span> <span class=\"toctext\">Level 5 Heading</span>]]\n\n****** [[#Level_6_Heading|<span class=\"tocnumber\">1.1.1.1.1.1</span> <span class=\"toctext\">Level 6 Heading</span>]]\n****** [[#.3D_Level_7_Heading.3D|<span class=\"tocnumber\">1.1.1.1.1.2</span> <span class=\"toctext\">= Level 7 Heading=</span>]]\n****** [[#.3D.3D_Level_8_Heading.3D.3D|<span class=\"tocnumber\">1.1.1.1.1.3</span> <span class=\"toctext\">== Level 8 Heading==</span>]]\n****** [[#.3D.3D.3D_Level_9_Heading.3D.3D.3D|<span class=\"tocnumber\">1.1.1.1.1.4</span> <span class=\"toctext\">=== Level 9 Heading===</span>]]\n****** [[#.3D.3D.3D.3D_Level_10_Heading.3D.3D.3D.3D|<span class=\"tocnumber\">1.1.1.1.1.5</span> <span class=\"toctext\">==== Level 10 Heading====</span>]]\n\n</div>\n\n= Level 1 Heading =\n\n== Level 2 Heading ==\n\n=== Level 3 Heading ===\n\n==== Level 4 Heading ====\n\n===== Level 5 Heading =====\n\n====== Level 6 Heading ======\n\n====== = Level 7 Heading= ======\n\n====== == Level 8 Heading== ======\n\n====== === Level 9 Heading=== ======\n\n====== ==== Level 10 Heading==== ======\n");
add("html2wt", "TOC regression (T11764)", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#title_1|<span class=\"tocnumber\">1</span> <span class=\"toctext\">title 1</span>]]\n\n** [[#title_1.1|<span class=\"tocnumber\">1.1</span> <span class=\"toctext\">title 1.1</span>]]\n\n*** [[#title_1.1.1|<span class=\"tocnumber\">1.1.1</span> <span class=\"toctext\">title 1.1.1</span>]]\n** [[#title_1.2|<span class=\"tocnumber\">1.2</span> <span class=\"toctext\">title 1.2</span>]]\n* [[#title_2|<span class=\"tocnumber\">2</span> <span class=\"toctext\">title 2</span>]]\n\n** [[#title_2.1|<span class=\"tocnumber\">2.1</span> <span class=\"toctext\">title 2.1</span>]]\n\n</div>\n\n== title 1 ==\n\n=== title 1.1 ===\n\n==== title 1.1.1 ====\n\n=== title 1.2 ===\n\n== title 2 ==\n\n=== title 2.1 ===\n");
add("html2wt", "TOC with wgMaxTocLevel=3 (bug 6204)", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#title_1|<span class=\"tocnumber\">1</span> <span class=\"toctext\">title 1</span>]]\n\n** [[#title_1.1|<span class=\"tocnumber\">1.1</span> <span class=\"toctext\">title 1.1</span>]]\n** [[#title_1.2|<span class=\"tocnumber\">1.2</span> <span class=\"toctext\">title 1.2</span>]]\n* [[#title_2|<span class=\"tocnumber\">2</span> <span class=\"toctext\">title 2</span>]]\n\n** [[#title_2.1|<span class=\"tocnumber\">2.1</span> <span class=\"toctext\">title 2.1</span>]]\n\n</div>\n\n== title 1 ==\n\n=== title 1.1 ===\n\n==== title 1.1.1 ====\n\n=== title 1.2 ===\n\n== title 2 ==\n\n=== title 2.1 ===\n");
add("html2wt", "TOC with wgMaxTocLevel=3 and two level four headings (bug 6204)", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Section_1|<span class=\"tocnumber\">1</span> <span class=\"toctext\">Section 1</span>]]\n\n** [[#Section_1.1|<span class=\"tocnumber\">1.1</span> <span class=\"toctext\">Section 1.1</span>]]\n* [[#Section_2|<span class=\"tocnumber\">2</span> <span class=\"toctext\">Section 2</span>]]\n\n</div>\n\n== Section 1 ==\n\n=== Section 1.1 ===\n\n==== Section 1.1.1 ====\n\n==== Section 1.1.1.1 ====\n\n== Section 2 ==\n");
add("html2wt", "Resolving duplicate section names", "== Foo bar ==\n\n== Foo bar ==\n");
add("html2wt", "Resolving duplicate section names with differing case (bug 10721)", "== Foo bar ==\n\n== Foo Bar ==\n");
add("html2wt", "Template with sections, __NOTOC__", "== Section 0 ==\n\n=== Section 1 ===\n\n== Section 2 ==\n\n== Section 4 ==\n");
add("html2wt", "__NOEDITSECTION__ keyword", "== Section 1 ==\n\n== Section 2 ==\n");
add("html2wt", "Link inside a section heading", "== Section with a [[wiki/Main Page|link]] in it ==\n");
add("html2wt", "TOC regression (T14077)", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#title_1|<span class=\"tocnumber\">1</span> <span class=\"toctext\">title 1</span>]]\n\n** [[#title_1.1|<span class=\"tocnumber\">1.1</span> <span class=\"toctext\">title 1.1</span>]]\n* [[#title_2|<span class=\"tocnumber\">2</span> <span class=\"toctext\">title 2</span>]]\n\n</div>\n\n== title 1 ==\n\n=== title 1.1 ===\n\n== title 2 ==\n");
add("html2wt", "Short headings with trailing space should match behavior of Parser::doHeadings (bug 19910)", "= = =\nThe line above must have a trailing space!\n\n= = =\nBut just in case it doesn't...\n");
add("html2wt", "Header with special characters (bug 25462)", "The tooltips shall not show entities to the user (ie. be double escaped)\n\n<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#text_.3E_text|<span class=\"tocnumber\">1</span> <span class=\"toctext\">text > text</span>]]\n* [[#text_.3C_text|<span class=\"tocnumber\">2</span> <span class=\"toctext\">text < text</span>]]\n* [[#text_.26_text|<span class=\"tocnumber\">3</span> <span class=\"toctext\">text & text</span>]]\n* [[#text_.27_text|<span class=\"tocnumber\">4</span> <span class=\"toctext\">text ' text</span>]]\n* [[#text_.22_text|<span class=\"tocnumber\">5</span> <span class=\"toctext\">text \" text</span>]]\n\n</div>\n\n== text > text ==\nsection 1\n\n== text < text ==\nsection 2\n\n== text & text ==\nsection 3\n\n== text ' text ==\nsection 4\n\n== text \" text ==\nsection 5\n");
add("html2wt", "Header with space, plus and underscore as entity", "Id should not contain + for spaces\n\n<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Space_between_Text|<span class=\"tocnumber\">1</span> <span class=\"toctext\">Space between Text</span>]]\n* [[#Space-Entity_between_Text|<span class=\"tocnumber\">2</span> <span class=\"toctext\">Space-Entity between Text</span>]]\n* [[#Plus.2Bbetween.2BText|<span class=\"tocnumber\">3</span> <span class=\"toctext\">Plus+between+Text</span>]]\n* [[#Plus-Entity.2Bbetween.2BText|<span class=\"tocnumber\">4</span> <span class=\"toctext\">Plus-Entity+between+Text</span>]]\n* [[#Underscore_between_Text|<span class=\"tocnumber\">5</span> <span class=\"toctext\">Underscore_between_Text</span>]]\n* [[#Underscore-Entity_between_Text|<span class=\"tocnumber\">6</span> <span class=\"toctext\">Underscore-Entity_between_Text</span>]]\n\n</div>\n\n== Space between Text ==\nsection 1\n\n== Space-Entity between Text ==\nsection 2\n\n== Plus+between+Text ==\nsection 3\n\n== Plus-Entity+between+Text ==\nsection 4\n\n== Underscore_between_Text ==\nsection 5\n\n== Underscore-Entity_between_Text ==\nsection 6\n\n[[#Space_between_Text|#Space between Text]]\n[[#Space-Entity_between_Text|#Space-Entity between Text]]\n[[#Plus.2Bbetween.2BText|#Plus+between+Text]]\n[[#Plus-Entity.2Bbetween.2BText|#Plus-Entity+between+Text]]\n#Underscore_between_Text\n#Underscore-Entity_between_Text\n");
add("html2wt", "Headers with excess '=' characters\n(Are similar tests necessary beyond the 1st level?)", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#foo.3D|<span class=\"tocnumber\">1</span> <span class=\"toctext\">foo=</span>]]\n* [[#.3Dfoo|<span class=\"tocnumber\">2</span> <span class=\"toctext\">=foo</span>]]\n* [[#italic_heading.3D|<span class=\"tocnumber\">3</span> <span class=\"toctext\">''italic'' heading=</span>]]\n* [[#.3Ditalic_heading|<span class=\"tocnumber\">4</span> <span class=\"toctext\">=''italic'' heading</span>]]\n\n</div>\n\n= foo= =\n\n= =foo =\n\n= ''italic'' heading= =\n\n= =''italic'' heading =\n");
add("html2wt", "HTML headers vs TOC (bug 23393)\n(__NOEDITSECTION__ for clearer output, doesn't matter here)", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Header_1|<span class=\"tocnumber\">1</span> <span class=\"toctext\">Header 1</span>]]\n\n** [[#Header_1.1|<span class=\"tocnumber\">1.1</span> <span class=\"toctext\">Header 1.1</span>]]\n** [[#Header_1.2|<span class=\"tocnumber\">1.2</span> <span class=\"toctext\">Header 1.2</span>]]\n* [[#Header_2|<span class=\"tocnumber\">2</span> <span class=\"toctext\">Header 2</span>]]\n\n** [[#Header_2.1|<span class=\"tocnumber\">2.1</span> <span class=\"toctext\">Header 2.1</span>]]\n** [[#Header_2.2|<span class=\"tocnumber\">2.2</span> <span class=\"toctext\">Header 2.2</span>]]\n\n</div>\n\n= Header 1 =\n\n== Header 1.1 ==\n\n== Header 1.2 ==\n\n= Header 2 =\n\n== Header 2.1 ==\n\n== Header 2.2 ==\n");
add("html2wt", "Namespaced link must have a title", "<nowiki>[[Project:]]</nowiki>\n");
add("html2wt", "Namespaced link must have a title (bad fragment version)", "<nowiki>[[Project:#fragment]]</nowiki>\n");
add("html2wt", "div with single-quoted attribute", "<div id=\"rock\">HTML rocks</div>\n");
add("html2wt", "div with unquoted attribute", "<div id=\"rock\">HTML rocks</div>\n");
add("html2wt", "div with illegal double attributes", "<div id=\"b\">HTML rocks</div>\n");
add("html2wt", "HTML multiple attributes correction", "Awesome!\n");
add("html2wt", "Table multiple attributes correction", "{|\n\n! class=\"awesome\" | status\n|}\n");
add("html2wt", "DIV IN UPPERCASE", "<div id=\"x\">HTML ROCKS</div>\n");
add("html2wt", "text with character entity: eacute", "I always thought é was a cute letter.\n");
add("html2wt", "Media link", "[http://example.com/images/3/3a/Foobar.jpg Media:Foobar.jpg]\n");
add("html2wt", "Media link with text", "[http://example.com/images/3/3a/Foobar.jpg A neat file to look at]\n");
add("html2wt", "Media link with nasty text", "[http://example.com/images/3/3a/Foobar.jpg Safe Link]\n<div style=\"display:none\">\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>");
add("html2wt", "Media link to nonexistent file (bug 1702)", "[/index.php?title=Special:Upload&wpDestFile=No_such.jpg Media:No such.jpg]\n");
add("html2wt", ":Image link to nonexistent file (bug 1850 - bad)", "[[:File:No such.jpg|Image:No such.jpg]]\n");
add("html2wt", "Character reference normalization in link text (bug 1938)", "[[wiki/Main Page|this&that]]\n");
add("html2wt", "(bug 19451) Links should refer to the normalized form.", "[[wiki/אַ|אַ]]\n[[wiki/אַ|אַ]]\n[[wiki/אַ|אַ]]\n[[wiki/אַ|אַ]]\n[[wiki/אַ|אַ]]\n");
add("html2wt", "Empty attribute crash test single-quotes (bug 2067)", "<font color=\"\">foo</font>\n");
add("html2wt", "Attribute test: unquoted but illegal value (hash)", "<font color=\"#x\">foo</font>\n");
add("html2wt", "Bug 2095: link with pipe and three closing brackets, version 2", "[[Main Page|<nowiki>[http://example.com/]</nowiki>]]\n");
add("html2wt", "Bug 2304: HTML attribute safety (safe template; regression bug 2309)", "<div title=\"This is a test template\"></div>\n");
add("html2wt", "Bug 2304: HTML attribute safety (dangerous style template; 2309)", "<div style=\"/* insecure input */\"></div>\n");
add("html2wt", "Bug 2304: HTML attribute safety (safe parameter; 2309)", "<div style=\"float: right; width: 200px\">Magic div</div>\n");
add("html2wt", "Bug 2304: HTML attribute safety (unsafe parameter; 2309)", "<div style=\"/* insecure input */\">Magic div</div>\n");
add("html2wt", "Bug 2304: HTML attribute safety (unsafe breakout parameter; 2309)", "<div style=\"float: right;\"><script>alert(document.cookie)</script>\">Magic div</div>\n");
add("html2wt", "Bug 2304: HTML attribute safety (unsafe breakout parameter 2; 2309)", "<div style=\"float: right;\"><script>alert(document.cookie)</script>\">Magic div</div>\n");
add("html2wt", "Bug 3244: HTML attribute safety (extension; safe)", "<div style=\"background:blue\"></div>\n");
add("html2wt", "Bug 3244: HTML attribute safety (extension; unsafe)", "<div style=\"/* insecure input */\"></div>\n");
add("html2wt", "MSIE CSS safety test: spurious slash", "<div style=\"/* insecure input */\">evil</div>\n");
add("html2wt", "MSIE CSS safety test: hex code", "<div style=\"/* insecure input */\">evil</div>\n");
add("html2wt", "MSIE CSS safety test: comment in url", "<div style=\"background-image:u rl(javascript:alert('boo'))\">evil</div>\n");
add("html2wt", "MSIE CSS safety test: comment in expression", "<div style=\"background-image:expres sion(alert('boo4'))\">evil4</div>\n");
add("html2wt", "CSS safety test (all browsers): vertical tab (bug 55332 / CVE-2013-4567)", "A\n");
add("html2wt", "MSIE 6 CSS safety test: Fullwidth (bug 55332)", "A\n<div style=\"/* insecure input */\">B</div>\n");
add("html2wt", "MSIE 6 CSS safety test: IPA extensions (bug 55332)", "<div style=\"/* insecure input */\">A</div>\nB\n");
add("html2wt", "MSIE 6 CSS safety test: sup/sub script (bug 55332)", "<div style=\"/* insecure input */\">A</div>\n<div style=\"/* insecure input */\">B</div>\nC\n");
add("html2wt", "Opera -o-link CSS", "<div title=\"data:text/html,<img src=1 onerror=alert(1)>\" style=\"/* insecure input */\">X</div>\n");
add("html2wt", "MSIE 6 CSS safety test: Repetition markers (bug 55332)", "A\n\nB\n\nC\n\nD\n\nE\n\nF\n\nG\n");
add("html2wt", "Table attribute legitimate extension", "{|\n\n! style=\"color:blue\" | status\n|}\n");
add("html2wt", "Table attribute safety", "{|\n\n! style=\"/* insecure input */\" | status\n|}\n");
add("html2wt", "CSS line continuation 1", "<div style=\"/* insecure input */\"></div>\n");
add("html2wt", "CSS line continuation 2", "<div style=\"/* invalid control char */\"></div>\n");
add("html2wt", "Expansion of multi-line templates in attribute values (bug 6255)", "<div style=\"background: #00FF00\">-</div>\n");
add("html2wt", "Expansion of multi-line templates in attribute values (bug 6255 sanity check 2)", "<div style=\"background: \n#00FF00\">-</div>\n");
add("html2wt", "Parser hook: nested tags", "<tag><tag></tag><nowiki></tag></nowiki>");
add("html2wt", "Nested template calls", "(My parameter is: param)\n");
add("html2wt", "Sanitizer: Closing of open tags", "<s></s>\n{|\n|}\n");
add("html2wt", "Sanitizer: Closing of open but not closed tags", "<s>foo</s>\n");
add("html2wt", "Sanitizer: Escaping of spaces, multibyte characters, colons & other stuff in id=\"\"", "<span id=\".C3.A6:_v\">byte</span>[[#.C3.A6:_v|backlink]]\n");
add("html2wt", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata", "<div itemscope=\"\">\n\t<meta itemprop=\"hello\" content=\"world\" />\n\t<meta http-equiv=\"refresh\" content=\"5\">\n\t<meta itemprop=\"hello\" content=\"5\" />\n\n\t[http://example.org]\n\t<link rel=\"stylesheet\" href=\"http://example.org\">\n\t[http://example.org]\n</div>\n");
add("html2wt", "Language converter: output gets cut off unexpectedly (bug 5757)", "this bit is safe: }-\n\nbut if we add a conversion instance: xxx\n\nthen we get cut off here: }-\n\nall additional text is vanished\n");
add("html2wt", "Self closed html pairs (bug 5487)", "<center><nowiki><font id=\"bug\" /></nowiki>Centered text</center>\n<div><nowiki><font id=\"bug2\" /></nowiki>In div text</div>\n");
add("html2wt", "Punctuation: nbsp before exclamation", "C'est grave !\n");
add("html2wt", "HTML nested bullet list, closed tags (bug 5497)", "* One\n* Two:\n** Sub-one\n** Sub-two\n");
add("html2wt", "HTML nested bullet list, open tags (bug 5497)", "* One\n* Two:\n** Sub-one\n** Sub-two\n");
add("html2wt", "HTML nested ordered list, closed tags (bug 5497)", "# One\n# Two:\n## Sub-one\n## Sub-two\n");
add("html2wt", "HTML nested ordered list, open tags (bug 5497)", "# One\n# Two:\n## Sub-one\n## Sub-two\n");
add("html2wt", "HTML ordered list item with parameters oddity", "# One\n");
add("html2wt", "Fuzz testing: Parser13", "{|\n\n|\n\n|}\n");
add("html2wt", "Fuzz testing: Parser14", "== onmouseover= ==\nhttp://\n<div id=\"toc\" class=\"toc\">\n<div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#onmouseover.3D|<span class=\"tocnumber\">1</span> <span class=\"toctext\">onmouseover=</span>]]\n\n</div>\n");
add("html2wt", "Fuzz testing: Parser16", "{|\n\n!https://\n!\n!\n!\n\n|}\n");
add("html2wt", "Fuzz testing: Parser21", "{|\n\n! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n\n|\n\n|}\n");
add("html2wt", "Fuzz testing: Parser22", "http://===r:::https://b\n\n{|\n|\n|}\n");
add("html2wt", "Fuzz testing: Parser24", "\n<nowiki>{{{|</nowiki>\n<u class=\"|\"><nowiki>}}}} ></nowiki>\n<br>\n\nMOVE YOUR MOUSE CURSOR OVER THIS TEXT\n</u>\n{|\n|\n\n|}\n<u class=\"|\"></u>");
add("html2wt", "Fuzz testing: Parser25 (bug 6055)", "<LI CLASS=blah\" onmouseover=\"alert('hello world');\" align=\"left\"'''MOVE MOUSE CURSOR OVER HERE'''\n");
add("html2wt", "Fuzz testing: encoded newline in generated HTML replacements (bug 6577)", " \n");
add("html2wt", "Parsing optional HTML elements (Bug 6171)", "{|\n  \n    | Some tabular data\n    | More tabular data ...\n    | And yet som tabular data\n  \n|}\n");
add("html2wt", "Correct handling of <td>, <tr> (Bug 6171)", "{|\n  \n    | Some tabular data\n    | More tabular data ...\n    | And yet som tabular data\n  \n|}\n");
add("html2wt", "Inline wiki vs wiki block nesting", "'''Bold paragraph'''\n\nNew wiki paragraph\n");
add("html2wt", "Inline HTML vs wiki block nesting", "'''Bold paragraph'''\n\nNew wiki paragraph\n");
add("html2wt", "Mixing markup for italics and bold", "'<nowiki/>''bold'<nowiki/>'''''bold''bolditalics'''''\n");
add("html2wt", "Special page transclusion", "* [[wiki/Xyzzyx|Xyzzyx]]\n");
add("html2wt", "Special page transclusion twice (bug 5021)", "* [[wiki/Xyzzyx|Xyzzyx]]\n\n* [[wiki/Xyzzyx|Xyzzyx]]\n");
add("html2wt", "Transclusion of default MediaWiki message", "Main Page\n");
add("html2wt", "Transclusion of nonexistent MediaWiki message", "[/index.php?title=MediaWiki:Mainpagexxx&action=edit&redlink=1 MediaWiki:Mainpagexxx]\n");
add("html2wt", "Transclusion of MediaWiki message with underscore", "History\n");
add("html2wt", "Transclusion of MediaWiki message with space", "History\n");
add("html2wt", "Special:Search page linking.", "[[wiki/Special:Search|Special:Search]]\n");
add("html2wt", "Say the magic word", "* Parser test\n* Parser_test\n* Parser test\n* Parser_test\n* Parser test\n* Parser_test\n* Parser test\n* Parser_test\n* Parser test\n* Parser_test\n* Talk:Parser test\n* Talk:Parser_test\n* Parser test\n* Parser_test\n* \n* \n* 0\n* Talk\n* Talk\n* \n* \n* [/index.php?title=Template:Dynamic&action=edit&redlink=1 Template:Dynamic]\n");
add("html2wt", "Gallery", "\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">Image1.png</div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">Image2.gif</div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">Image3</div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">Image4</div> \t\t\t<div class=\"gallerytext\">  centre  \t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">Image5.svg</div> \t\t\t<div class=\"gallerytext\"> http://///////  \t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">* image6</div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n");
add("html2wt", "Gallery (with options)", "\t* Foo [[wiki/Main Page|Main Page]]\n\t\t* <div style=\"width: 105px\"> \t\t\t<div class=\"thumb\" style=\"height: 70px;\">Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\"> caption  \t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 105px\"> \t\t\t<div class=\"thumb\" style=\"height: 70px;\">Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 105px\"> \t\t\t<div class=\"thumb\" style=\"width: 100px;\"><div style=\"margin:31px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> some '''caption''' [[wiki/Main Page|Main Page]]  \t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 105px\"> \t\t\t<div class=\"thumb\" style=\"width: 100px;\"><div style=\"margin:31px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 105px\"> \t\t\t<div class=\"thumb\" style=\"width: 100px;\"><div style=\"margin:31px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/70px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> blabla.  \t\t\t</div> \t\t</div>\n");
add("html2wt", "Gallery with link that has fragment", "\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> caption  \t\t\t</div> \t\t</div>\n");
add("html2wt", "Gallery with wikitext inside caption", "\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> http://example.com/images/thumb/3/3a/Foobar.jpg/20px-Foobar.jpg  \t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> This is a test template  \t\t\t</div> \t\t</div>\n");
add("html2wt", "gallery (with showfilename option)", "\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\"> [[wiki/File:Nonexistent.jpg|Nonexistent.jpg]] caption  \t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\"> [[wiki/File:Nonexistent.jpg|Nonexistent.jpg]]  \t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> [[wiki/File:Foobar.jpg|Foobar.jpg]] some '''caption''' [[wiki/Main Page|Main Page]]  \t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> [[wiki/File:Foobar.jpg|Foobar.jpg]]  \t\t\t</div> \t\t</div>\n");
add("html2wt", "Gallery (with namespace-less filenames)", "\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"height: 150px;\">Nonexistent.jpg</div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n");
add("html2wt", "Illegal character references (T106578)", "\n; Null\n: &amp;#00;\n; FF\n: &amp;#xC;\n; CR\n: &amp;#xD;\n; Control (low)\n: &amp;#8;\n; Control (high)\n: &amp;#x7F; &amp;#x9F;\n; Surrogate\n: &amp;#xD83D;&amp;#xDCA9;\n; This is an okay astral character\n: 💩\n");
add("html2wt", "ISBN code coverage", "ISBN 978-0-1234-56&#x20;789\n");
add("html2wt", "Double RFC with a wiki link", "RFC [/index.php?title=RFC_1234&action=edit&redlink=1 RFC 1234]\n");
add("html2wt", "RFC code coverage", "RFC 983 987\n");
add("html2wt", "Centre-aligned image", "<div class=\"center\"><div class=\"floatnone\">http://example.com/images/3/3a/Foobar.jpg</div></div>\n");
add("html2wt", "None-aligned image", "<div class=\"floatnone\">http://example.com/images/3/3a/Foobar.jpg</div>\n");
add("html2wt", "Width + Height sized image (using px) (height is ignored)", "http://example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\n");
add("html2wt", "Width-sized image (using px, no following whitespace)", "http://example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\n");
add("html2wt", "Width-sized image (using px, with following whitespace - test regression from r39467)", "http://example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\n");
add("html2wt", "Width-sized image (using px, with preceding whitespace - test regression from r39467)", "http://example.com/images/thumb/3/3a/Foobar.jpg/640px-Foobar.jpg\n");
add("html2wt", "Image with page parameter", "[[File:LoremIpsum.djvu]]\n");
add("html2wt", "HTML with raw HTML ($wgRawHtml==true)", "<script>alert(1);</script>\n");
add("html2wt", "Parents of subpages, one level up", "[/index.php?title=Subpage_test/L1/L2&action=edit&redlink=1 L2]\n");
add("html2wt", "Parents of subpages, one level up, not named", "[/index.php?title=Subpage_test/L1/L2&action=edit&redlink=1 Subpage test/L1/L2]\n");
add("html2wt", "Parents of subpages, two levels up", "[/index.php?title=Subpage_test/L1&action=edit&redlink=1 L1]2\n\n[/index.php?title=Subpage_test/L1&action=edit&redlink=1 L1l]\n");
add("html2wt", "Parents of subpages, two levels up, without trailing slash or name.", "<nowiki>[[../..]]</nowiki>\n");
add("html2wt", "Parents of subpages, two levels up, with lots of extra trailing slashes.", "[/index.php?title=Subpage_test/L1&action=edit&redlink=1 Subpage test/L1]\n");
add("html2wt", "Transclusion of a sibling page (one level up)", "Sibling article\n");
add("html2wt", "Transclusion of a child page", "Sibling article\n");
add("html2wt", "Non-transclusion because of too many up levels", "<nowiki>{{../../../../More than parent}}</nowiki>\n");
add("html2wt", "Definition list code coverage", "; title   \n: def\n; title \n: def\n; title\n: def");
add("html2wt", "Don't fall for the self-closing div", "<div>hello world</div>\n");
add("html2wt", "RAW magic word", "[/index.php?title=Template:QUERTY&action=edit&redlink=1 Template:QUERTY]\n");
add("html2wt", "Template caching", "This is a test template\nThis is a test template\n");
add("html2wt", "Inclusion of !userCanEdit() content", "== header ==\n");
add("html2wt", "Out-of-order TOC heading levels", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#2|<span class=\"tocnumber\">1</span> <span class=\"toctext\">2</span>]]\n\n** [[#6|<span class=\"tocnumber\">1.1</span> <span class=\"toctext\">6</span>]]\n** [[#3|<span class=\"tocnumber\">1.2</span> <span class=\"toctext\">3</span>]]\n* [[#1|<span class=\"tocnumber\">2</span> <span class=\"toctext\">1</span>]]\n\n** [[#5|<span class=\"tocnumber\">2.1</span> <span class=\"toctext\">5</span>]]\n** [[#2_2|<span class=\"tocnumber\">2.2</span> <span class=\"toctext\">2</span>]]\n\n</div>\n\n== 2 ==\n\n====== 6 ======\n\n=== 3 ===\n\n= 1 =\n\n===== 5 =====\n\n== 2 ==\n");
add("html2wt", "ISBN with space-delimited number", "[[wiki/Special:BookSources/9290170328|ISBN 92 9017 032 8]]\n");
add("html2wt", "ISBN length", "ISBN 123456789\n\n[[wiki/Special:BookSources/1234567890|ISBN 1234567890]]\n\nISBN 12345678901\n");
add("html2wt", "ISBN with trailing year (bug 8110)", "[[wiki/Special:BookSources/1234567890|ISBN 1-234-56789-0]] - 2006\n\n[[wiki/Special:BookSources/1234567890|ISBN 1 234 56789 0]] - 2006\n");
add("html2wt", "anchorencode", "foo_bar.C2.A9.23.25n\n");
add("html2wt", "anchorencode trims spaces", "pretty_please\n");
add("html2wt", "anchorencode deals with links", "world_hi\n");
add("html2wt", "anchorencode deals with templates", "FOO\n");
add("html2wt", "anchorencode encodes like the TOC generator: (bug 18431)", "=== _ +:.3A%3A&&]] ===\n.2B:.3A.253A.26.26.5D.5D\n");
add("html2wt", "Bug 6200: blockquotes and paragraph formatting", "<blockquote>\nfoo\n\n</blockquote>\nbar\n\n baz\n");
add("html2wt", "Bug 8293: Use of center tag ruins paragraph formatting", "<center>\nfoo\n\n</center>\nbar\n\n baz\n");
add("html2wt", "Parsing of overlapping (improperly nested) inline html tags", "<span><s>x</s></span>\n");
add("html2wt", "Self-link in language variants", "Both <strong class=\"selflink\">Dunav</strong> and <strong class=\"selflink\">Дунав</strong> are names for this river.\n");
add("html2wt", "Link to another existing title shouldn't be parsed as self-link even if it's a variant of this title", "[[wiki/Дуна|Дуна]] is not a self-link while <strong class=\"selflink\">Duna</strong> and <strong class=\"selflink\">Dуна</strong> are still self-links.\n");
add("html2wt", "Link to a section of a variant of this title shouldn't be parsed as self-link", "<strong class=\"selflink\">Dуна</strong> is a self-link while [[wiki/Дуна|Dunа#Foo]] and [[wiki/Дуна|Dуна#Foo]] are not self-links.\n");
add("html2wt", "Link to pages in language variants", "Main Page can be written as [[wiki/Main Page|Маин Паге]]\n");
add("html2wt", "Multiple links to pages in language variants", "[[wiki/Main Page|Main Page]] can be written as [[wiki/Main Page|Маин Паге]] same as [[wiki/Main Page|Маин Паге]].\n");
add("html2wt", "Simple template in language variants", "This is a test template\n");
add("html2wt", "Template with explicit namespace in language variants", "This is a test template\n");
add("html2wt", "Basic test for template parameter in language variants", "This is a test template with parameter foo\n");
add("html2wt", "Simple category in language variants", "[[wiki/Категорија:MediaWiki User's Guide|MediaWiki User's Guide]]");
add("html2wt", "Stripping -{}- tags (language variants)", "Latin proverb: Ne nuntium necare\n");
add("html2wt", "Prevent conversion with -{}- tags (language variants)", "Латински: Ne nuntium necare\n");
add("html2wt", "Prevent conversion of text with -{}- tags (language variants)", "Латински: Ne nuntium necare\n");
add("html2wt", "Prevent conversion of links with -{}- tags (language variants)", "[[wiki/Main Page|Main Page]]\n");
add("html2wt", "-{}- tags within headlines (within html for parserConvert())", "== Naslov ==\n");
add("html2wt", "Explicit definition of language variant alternatives", "Taiwan, not China\n");
add("html2wt", "Conversion around HTML tags", "\n<span title=\"ЛаCтин\">ски</span>\n");
add("html2wt", "Explicit session-wise language variant mapping (A flag and - flag)", "Taiwan is not China.\nBut Taiwan is Taiwan,\n(This should be stripped!)\nand China is China.\n");
add("html2wt", "Explicit session-wise language variant mapping (H flag for hide)", "(This should be stripped!)\nTaiwan is Taiwan.\n");
add("html2wt", "Adding explicit conversion rule for title (T flag)", "Taiwan\n\nShould be stripped!\n");
add("html2wt", "Testing that changing the language variant here in the tests actually works", "China\n\nShould be stripped!\n");
add("html2wt", "Recursive conversion of alt and title attrs shouldn't clear converter state", "China\n\nShould be stripped<span title=\"Exclamation\">!</span>\n");
add("html2wt", "Bug 24072: more test on conversion rule for title", "Taiwan\n\nThis should be stripped!\nThis won't take interferes with the title rule.\n");
add("html2wt", "Partly disable title conversion if variant == main language code", "ZH\n");
add("html2wt", "Partly disable title conversion if variant == main language code, more", "ZH\n");
add("html2wt", "Raw output of variant escape tags (R flag)", "Raw: zh:China;zh-tw:Taiwan\n");
add("html2wt", "Strings evaluating false shouldn't be ignored by Language converter (T51072)", "0\n");
add("html2wt", "Conversion rules from [numeric-only string] to [something else] (T48634)", "D12345EE12345\n");
add("html2wt", "Bidirectional converter rule entries with an empty value should be ignored (T53551)", "foobar\n");
add("html2wt", "Unidirectional converter rule entries with an empty \"from\" string should be ignored (T53551)", "foobar\n");
add("html2wt", "Empty converter rule entries shouldn't be inserted into the conversion table (T53551)", "foobar\n");
add("html2wt", "Nested using of manual convert syntax", "Nested: Hello Hong Kong!\n");
add("html2wt", "Proper conversion of text in external links", "http://www.google.com\ngopher://www.google.com\nhttp://www.google.com\ngopher://www.google.com\n[https://www.google.com irc://www.google.com]\n[ftp://www.google.com www.гоогле.цом/фтп://дир]\n[//www.google.com www.гоогле.цом]\n");
add("html2wt", "Do not convert roman numbers to language variants", "Фридрих IV је цар.\n");
add("html2wt", "Don't convert raw rule \"-{R|=&gt;}-\" to \"=>\"", "=>\n");
add("html2wt", "Don't break link parsing if language converter markup is in the caption.", "[[wiki/Main Page|main page]]\n");
add("html2wt", "Don't break image parsing if language converter markup is in the caption.", "http://example.com/images/3/3a/Foobar.jpg\n");
add("html2wt", "Don't break list handling if language converter markup is in the item.", "; AAA\n");
add("html2wt", "Don't break table handling if language converter markup is in the cell.", "{|\n\n| B\n|}\n");
add("html2wt", "Bug 529: Uncovered bullet", "* Foo \n* Bar\n");
add("html2wt", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy", "******* Foo \n* Bar\n");
add("html2wt", "Bug 529: Uncovered table already at line-start", "x\n\n{|\n\n| 1 \n| 2\n\n|-\n| 3 \n| 4\n|}\ny\n");
add("html2wt", "Bug 529: Uncovered bullet in parser function result", "* Foo \n* bar\n");
add("html2wt", "Bug 5678: Double-parsed template argument", "<nowiki>{{{1}}}</nowiki>\n");
add("html2wt", "Bug 5678: Double-parsed template invocation", "<nowiki>{{paramtest | param = hello }}</nowiki>\n");
add("html2wt", "Case insensitivity of parser functions for non-ASCII characters (bug 8143)", "Ěščř\nĚščř\něščř\něščř\něščř\něščř\nĚŠČŘ\nĚŠČŘ\n");
add("html2wt", "Morwen/13: Unclosed link followed by heading", "[[link\n\n== heading ==\n");
add("html2wt", "HHP2.1: Heuristics for headings in preprocessor parenthetical structures", "<nowiki>{{foo|</nowiki>\n\n= heading =\n");
add("html2wt", "HHP2.2: Heuristics for headings in preprocessor parenthetical structures", "<nowiki>{{foo|</nowiki>\n\n== heading ==\n");
add("html2wt", "Paragraphs inside divs (no extra line breaks)", "<div>Line one\nLine two</div>\n");
add("html2wt", "Paragraphs inside divs (extra line break on close)", "<div>Line one\nLine two\n\n</div>\n");
add("html2wt", "Paragraphs inside divs (extra line break on open and close)", "<div>\nLine one\n\nLine two\n\n</div>\n");
add("html2wt", "Nesting tags, paragraphs on lines which begin with <div>", "<div></div>\n<strong>A\nB</strong>\n");
add("html2wt", "Bug 6200: paragraphs inside blockquotes (no extra line breaks)", "<blockquote>\nLine one Line two\n</blockquote>");
add("html2wt", "Bug 6200: paragraphs inside blockquotes (extra line break on close)", "<blockquote>\nLine one\n\nLine two\n</blockquote>");
add("html2wt", "Paragraphs inside blockquotes/divs (no extra line breaks)", "<blockquote><div>Line one\nLine two</div></blockquote>\n");
add("html2wt", "Paragraphs inside blockquotes/divs (extra line break on close)", "<blockquote><div>Line one\nLine two\n\n</div></blockquote>\n");
add("html2wt", "Paragraphs inside blockquotes/divs (extra line break on open and close)", "<blockquote><div>\nLine one\n\nLine two\n\n</div></blockquote>\n");
add("html2wt", "Free external link invading image caption", "<div class=\"thumb tright\"><div class=\"thumbinner\" style=\"width:182px;\">http://example.com/images/thumb/3/3a/Foobar.jpg/180px-Foobar.jpg  <div class=\"thumbcaption\"><div class=\"magnify\">[/wiki/File:Foobar.jpg]</div>hello</div></div></div>\n");
add("html2wt", "Multibyte character in padleft", "Æ-Hello\n");
add("html2wt", "Multibyte character in padright", "Hello-Æ\n");
add("html2wt", "formatdate parser function", "<span class=\"mw-formatted-date\" title=\"2009-03-24\">2009-03-24</span>\n");
add("html2wt", "formatdate parser function, with default format", "<span class=\"mw-formatted-date\" title=\"2009-03-24\">March 24, 2009</span>\n");
add("html2wt", "Spacing of numbers in formatted dates", "<span class=\"mw-formatted-date\" title=\"01-15\">January 15</span>\n");
add("html2wt", "formatdate parser function, with default format and on a page of which the content language is always English and different from the wiki content language", "<span class=\"mw-formatted-date\" title=\"2009-03-24\">24 March 2009</span>\n");
add("html2wt", "Page status indicators: Empty name is invalid", "<span class=\"error\"><strong>Error:</strong> Page status indicators' <code>name</code> attribute must not be empty.</span>\n<span class=\"error\"><strong>Error:</strong> Page status indicators' <code>name</code> attribute must not be empty.</span>\n");
add("html2wt", "Page status indicators: Weird syntaxes that are okay", "empty=\nname=\n\n\n");
add("html2wt", "Page status indicators: Torture test", "01=hello world\n02=[[wiki/Main Page|Main Page]]\n03=http://example.com/images/thumb/3/3a/Foobar.jpg/25px-Foobar.jpg\n04=http://example.com/images/thumb/3/3a/Foobar.jpg/25px-Foobar.jpg\n05=\n* foo\n* bar\n\n06=foo\n07=\n Preformatted\n\n08=<div>Broken tag</div>\n\n09=\n{| class=\"wikitable\"\n\n| cell\n|}\n\n10=\n\nTwo\n\nparagraphs\n\n\n\n\n\n\n\n\n\n\n");
add("html2wt", "Special characters in embedded file links (bug 27679)", "[[File:Contains_&_ampersand.jpg]]\n[[File:Does_not_exist.jpg|Title with & ampersand]]\n");
add("html2wt", "Confirm that 'apos' named character reference doesn't make it to output (not legal in HTML 4)", "Text's been normalized?\n");
add("html2wt", "Bug 19052 U+3000 IDEOGRAPHIC SPACE should terminate bracketed external links", "[http://www.example.org/ ideograms]\n");
add("html2wt", "Bug 31098 Template which includes system messages which includes the template", "<span class=\"error\">Template loop detected: [[wiki/Template:Identical|Template:Identical]]</span>\n<span class=\"error\">Template loop detected: [[wiki/Template:Identical|Template:Identical]]</span>\n");
add("html2wt", "Bug31490 Turkish: ucfirst 'blah'", "Blah\n");
add("html2wt", "Bug31490 Turkish: ucfirst 'ix'", "İx\n");
add("html2wt", "Bug31490 Turkish: lcfirst 'BLAH'", "bLAH\n");
add("html2wt", "Bug31490 Turkish: ucfırst (with a dotless i)", "[/index.php?title=%C5%9Eablon:Ucf%C4%B1rst:blah&action=edit&redlink=1 Şablon:Ucfırst:blah]\n");
add("html2wt", "Bug31490 ucfırst (with a dotless i) with English language", "[/index.php?title=Template:Ucf%C4%B1rst:blah&action=edit&redlink=1 Template:Ucfırst:blah]\n");
add("html2wt", "Bug 26375: TOC with italics", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Lost_episodes|<span class=\"tocnumber\">1</span> <span class=\"toctext\">''Lost'' episodes</span>]]\n\n</div>\n\n== ''Lost'' episodes ==\n");
add("html2wt", "Bug 26375: TOC with bold", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#should_be_bold_then_normal_text|<span class=\"tocnumber\">1</span> <span class=\"toctext\">'''should be bold''' then normal text</span>]]\n\n</div>\n\n== '''should be bold''' then normal text ==\n");
add("html2wt", "Bug 33845: Headings become cursive in TOC when they contain an image", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Image|<span class=\"tocnumber\">1</span> <span class=\"toctext\">Image</span>]]\n\n</div>\n\n== Image http://example.com/images/3/3a/Foobar.jpg ==\n");
add("html2wt", "Bug 33845 (2): Headings become bold in TOC when they contain a blockquote", "\n<div id=\"toc\" class=\"toc\">\n<div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Quote|<span class=\"tocnumber\">1</span> <span class=\"toctext\">Quote</span>]]\n\n</div>\n\n==<nowiki/>==\n<blockquote>\nQuote\n</blockquote>\n<span class=\"mw-editsection\"><span class=\"mw-editsection-bracket\">[</span>[/index.php?title=Main_Page&action=edit&section=1 edit]<span class=\"mw-editsection-bracket\">]</span></span>\n");
add("html2wt", "Unclosed tags in TOC", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Proof:_2_.3C_3|<span class=\"tocnumber\">1</span> <span class=\"toctext\">Proof: 2 < 3</span>]]\n\n</div>\n\n== Proof: 2 < 3 ==\n<small>Hanc marginis exiguitas non caperet.</small>\nQED\n");
add("html2wt", "Multiple tags in TOC", "\n<div id=\"toc\" class=\"toc\">\n<div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#Foo_Bar|<span class=\"tocnumber\">1</span> <span class=\"toctext\">''Foo'' '''Bar'''</span>]]\n* [[#Foo_Bar_2|<span class=\"tocnumber\">2</span> <span class=\"toctext\">''Foo'' Bar</span>]]\n\n</div>\n\n== ''Foo'' '''Bar''' ==\n\n== ''Foo'' ==\n<blockquote>\nBar\n</blockquote>\n<span class=\"mw-editsection\"><span class=\"mw-editsection-bracket\">[</span>[/index.php?title=Parser_test&action=edit&section=2 edit]<span class=\"mw-editsection-bracket\">]</span></span>\n");
add("html2wt", "span tags with directionality in TOC", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#C.2B.2B|<span class=\"tocnumber\">1</span> <span class=\"toctext\"><span dir=\"ltr\">C++</span></span>]]\n* [[#.D7.96.D7.91.D7.A0.D7.92.21|<span class=\"tocnumber\">2</span> <span class=\"toctext\"><span dir=\"rtl\">זבנג!</span></span>]]\n* [[#The_attributes_on_these_span_tags_must_be_deleted_from_the_TOC|<span class=\"tocnumber\">3</span> <span class=\"toctext\"><span>The attributes on these span tags must be deleted from the TOC</span></span>]]\n* [[#All_attributes_on_these_span_tags_must_be_deleted_from_the_TOC|<span class=\"tocnumber\">4</span> <span class=\"toctext\"><span>All attributes on these span tags must be deleted from the TOC</span></span>]]\n* [[#Attributes_after_dir_on_these_span_tags_must_be_deleted_from_the_TOC|<span class=\"tocnumber\">5</span> <span class=\"toctext\"><span dir=\"ltr\">Attributes after dir on these span tags must be deleted from the TOC</span></span>]]\n\n</div>\n\n== <span dir=\"ltr\">C++</span><span class=\"mw-editsection\"><span class=\"mw-editsection-bracket\">[</span>[/index.php?title=Parser_test&action=edit&section=1 edit]<span class=\"mw-editsection-bracket\">]</span></span> ==\n\n== <span dir=\"rtl\">זבנג!</span><span class=\"mw-editsection\"><span class=\"mw-editsection-bracket\">[</span>[/index.php?title=Parser_test&action=edit&section=2 edit]<span class=\"mw-editsection-bracket\">]</span></span> ==\n\n== <span style=\"font-style: italic\">The attributes on these span tags must be deleted from the TOC</span><span class=\"mw-editsection\"><span class=\"mw-editsection-bracket\">[</span>[/index.php?title=Parser_test&action=edit&section=3 edit]<span class=\"mw-editsection-bracket\">]</span></span> ==\n\n== <span style=\"font-style: italic\" dir=\"ltr\">All attributes on these span tags must be deleted from the TOC</span><span class=\"mw-editsection\"><span class=\"mw-editsection-bracket\">[</span>[/index.php?title=Parser_test&action=edit&section=4 edit]<span class=\"mw-editsection-bracket\">]</span></span> ==\n\n== <span dir=\"ltr\" style=\"font-style: italic\">Attributes after dir on these span tags must be deleted from the TOC</span><span class=\"mw-editsection\"><span class=\"mw-editsection-bracket\">[</span>[/index.php?title=Parser_test&action=edit&section=5 edit]<span class=\"mw-editsection-bracket\">]</span></span> ==\n");
add("html2wt", "Bug 72884: bdi element in ToC", "<div id=\"toc\" class=\"toc\"><div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#test|<span class=\"tocnumber\">1</span> <span class=\"toctext\"><bdi>test</bdi></span>]]\n\n</div>\n\n== <bdi>test</bdi> ==\n");
add("html2wt", "Empty <p> tag in TOC, removed by Sanitizer (T92892)", "\n<div id=\"toc\" class=\"toc\">\n<div id=\"toctitle\">\n== Contents ==\n</div>\n\n* [[#x|<span class=\"tocnumber\">1</span> <span class=\"toctext\">x</span>]]\n\n</div>\n\n== x ==\n");
add("html2wt", "Bug 32057: Title needed when expanding <h> nodes.", "== Headline text ==\n");
add("html2wt", "Strip marker in urlencode", "xy\nxy\nxy\nxy\n");
add("html2wt", "Strip marker in lc", "xy\n");
add("html2wt", "Strip marker in uc", "XY\n");
add("html2wt", "Strip marker in formatNum", "12\n12\n");
add("html2wt", "Check noCommafy in formatNum", "123 456,78\n123456.78\n");
add("html2wt", "Wrong option for formatNum (bug 56199)", "1,234.56\n1,234.56\n1,234.56\n");
add("html2wt", "Strip marker in grammar", "foobarista\n");
add("html2wt", "Strip marker in padleft", "xy\n");
add("html2wt", "Strip marker in padright", "xy\n");
add("html2wt", "Strip marker in anchorencode", "xy\n");
add("html2wt", "nowiki inside link inside heading (bug 18295)", "== [[wiki/Foo|xyz]] ==\n");
add("html2wt", "new support for bdi element (bug 31817)", "ולדימיר לנין (ברוסית: <bdi lang=\"ru\">Владимир Ленин</bdi>, 24 באפריל 1870–22 בינואר 1924) הוא מנהיג פוליטי קומוניסטי רוסי.\n");
add("html2wt", "Ignore pipe between table row attributes", "{|\n\n| quux\n\n|- id=\"foo\" style=\"color: red\"\n| bar\n|}\n");
add("html2wt", "Gallery override link with WikiLink (bug 34852)", "\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> caption  \t\t\t</div> \t\t</div>\n");
add("html2wt", "Gallery override link with absolute external link (bug 34852)", "\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> caption  \t\t\t</div> \t\t</div>\n");
add("html2wt", "Gallery override link with malicious javascript (bug 34852)", "\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\"> caption  \t\t\t</div> \t\t</div>\n");
add("html2wt", "Gallery with invalid title as link (bug 43964)", "\t\t* <div style=\"width: 155px\"> \t\t\t<div class=\"thumb\" style=\"width: 150px;\"><div style=\"margin:68px auto;\">http://example.com/images/thumb/3/3a/Foobar.jpg/120px-Foobar.jpg</div></div> \t\t\t<div class=\"gallerytext\">\t\t\t</div> \t\t</div>\n");
add("html2wt", "Language parser function", "العربية\n");
add("html2wt", "Padleft and padright as substr", "abc\nabc\n");
add("html2wt", "Special parser function", "Special:Random\nSpecial:Badtitle\nSpecial:Foobar\n");
add("html2wt", "Disable TOC", "Lead\n\n== Section 1 ==\n\n== Section 2 ==\n\n== Section 3 ==\n\n== Section 4 ==\n\n== Section 5 ==\n");
add("html2wt", "Ref: 3. spaces in ref-names should be ignored", "A <ref name=\"x\">foo</ref>\nB <ref name=\"x\" />\nC <ref name=\"x\" />\n<references />");
add("html2wt", "Ref: 5. body should accept generic wikitext", "A <ref>This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\n<references />");
add("html2wt", "Ref: 6. indent-pres should not be output in ref-body", "A <ref>foo\n bar\n baz\n</ref>\n\n<references />");
add("html2wt", "Ref: 7. No p-wrapping in ref-body", "A <ref>foo\nbar\nbaz\nbooz\n</ref>\n\n<references />");
add("html2wt", "Ref: 8. transclusion wikitext has lower precedence", "A <ref><nowiki>foo {{echo|</nowiki></ref><nowiki> B C}}</nowiki>\n<references />");
add("html2wt", "Ref: 9. unclosed comments should not leak out of ref-body", "A <ref>foo <!----></ref> B C\n<references />");
add("html2wt", "Ref: 10. Unclosed HTML tags should not leak out of ref-body", "A <ref><b> foo </ref> B C\n\n<references />");
add("html2wt", "Ref: 19. ref-tags with identical name encodings should get identical indexes", "1 <ref name=\"a & b\">foo</ref> 2 <ref name=\"a &amp;amp; b\" />\n\n<references />");
add("html2wt", "References: 9. Generate missing references list at the end", "A <ref>foo</ref> B <ref group=\"inexistent\">bar</ref>\n<references />\n<references group=\"inexistent\" />");
add("html2wt", "Entities in ref name", "<ref name=\"test &amp;amp; me\">hi</ref>\n<references />");
add("html2wt", "Empty LI and TR nodes should not be stripped from top-level content", "* a\n*\n* b\n\n{|\n\n|-\n|foo\n\n|}\n");
add("html2wt", "Lists: 4. No escapes needed", "* foo*bar\n\n* ''foo''*bar\n\n* [[Foo]]: bar\n\n* [[Foo]]*bar\n");
add("html2wt", "HRs: 1. Single line", "--------\n----=foo=\n----*foo");
add("html2wt", "3. Leading whitespace in indent-pre suppressing contexts should not be escaped", "<blockquote>\n\n a\n <span>b</span>\n c\n</blockquote>");
add("html2wt", "HTML tag with 'unnecessary' entity encoding in attributes", "<span title=\"&\">foo</span>\n");
add("html2wt", "Accept empty td cell attribute", "{|\n\n| align=\"center\" | foo \n|\n|}\n");
add("html2wt", "Non-empty attributes in th-cells", "{|\n\n! Foo \n! style=\"color: red\" | Bar\n|}\n");
add("html2wt", "Accept empty attributes in th-cells", "{|\n\n! foo \n! bar\n|}\n");
add("html2wt", "Empty table rows go away", "{|\n\n| Hello\n\n| there\n\n|}\n");
add("html2wt", "Trailing newlines in a deep dom-subtree that ends a wikitext line should be migrated out", "{|\n|<small>foo\n\nbar\n|}\n\n{|\n|<small>foo<small>\n|}\n");
add("html2wt", "Empty TD followed by TD with tpl-generated attribute", "{|\n\n|\n\n|foo\n|}\n");
add("html2wt", "Indented table with an empty td", "{|\n\n|\n\n|foo\n|}\n");
add("html2wt", "Empty TR followed by a template-generated TR", "{|\n\n{{echo|<tr><td>foo</td></tr>}}\n|}\n");
add("html2wt", "Empty TR followed by mixed-ws-comment line should RT correctly", "{|\n\n\n <!--c-->|-\n<!--c--> <!--d-->\n|}\n");
add("html2wt", "Improperly nested inline or quotes tags with whitespace in between", "<span> <s>x</s></span><s> </s>\n''' ''x'''''<nowiki/>'' ''\n");
add("html2wt", "T73074: More fostering fun", "[[Category:Two]]\n<table><tbody><td></td>{{echo|<tr>}}<!--c-->[[Category:Two]]</tbody>");
add("html2wt", "Image: upright option (parsoid)", "[[File:Foobar.jpg|thumb|caption]]\n[[File:Foobar.jpg|thumb|caption]]\n[[File:Foobar.jpg|thumb|500x500px|caption]]\n");
add("html2wt", "Image: upright option is ignored on inline and frame images (parsoid)", "[[File:Foobar.jpg|500x500px|caption]]\n");


// Blacklist for selser
add("selser", "Extra newlines followed by heading [1,2,1,3,0,4,0,4,1,3,4]", "a\n\n40z1qdji2lfskyb9\n\n\n\n=b=\n9h4x5nzjh28rggb9\n\n[[a]]\n\nkup4bo01iztzkt9\n\n\n\nzlbbwe36wkrcnmi\n");
add("selser", "Parsing an URL [[[2]],2,0]", "[[:fr:🍺|blv27e9oigmpwrk9http://fr.wikipedia.org/wiki/🍺]]\n\n7vcz2sjoo733ow29\n<!-- EasterEgg we love beer, better be able be able to link to it -->");
add("selser", "Italics and bold: 5-quote opening sequence: (5,6) [[[2]]]", "''7mymhlqo5nhlg14i'''foo''''''");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [1]", "{| data-foobar=\"pl7el6nksli8uxr\"\n!''a!!''b\n|''a||''b\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [[4,[[4,0,2,[1],0],4]]]", "{|<!--44rbogtlx8hncdi-->\n!5oylcgfssnfav2t9!!''b\n!qcinqswgq2r9t3xr\n|''a''||''b<!--b7ncx26rmqiu23xr-->\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [[0,[[[4],2,2,[1],3],3]]]", "{|\n!1dfhixwwz1pjh5mi\n!prh1yloryheel8fr!!''b\n!bnbtnusotswwb3xr\n|''a''\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [[0,[[0,[3],0,1,0],0]]]", "{|\n!''a!!\n| data-foobar=\"1gt3i3g1jbeghkt9\" |''a||''b\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [[0,[[[2],2,0,3,4],3]]]", "{|\n!1wucy9fx99y3c8fr''a\n!n5303dc1uwkzw7b9!!''b\n!3q48ji1k3h74lsor\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [2]", "w4wro8m98b6jq0k9\n{|\n!''a!!''b\n|''a||''b\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [[0,[[4,2,3,0,2],0]]]", "{|\n!4hvneujbci0be29\n!dlmqv8ltd9lfpqfr!!''b\n|''a\n|1pz8cymf9xm9529||''b\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [[0,[[1,2,0,1,[[2]]],0]]]", "{|\n! data-foobar=\"t5yzsleh3tprpb9\" |''a\n!39y1a3cg7nyrdx6r!!''b\n| data-foobar=\"e4eryq6zjlaexw29\" |''a||''ud4ocn5ppv3rf6rb''\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [[0,[1,4]]]", "{|\n!''a!!''b\n|''a||''b<!--kstn821po5cgcik9-->\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [[3,[2,4]]]", "{|<!--nqj6st564egkfbt9-->\n!''a!!''b\n|''a||''b<!--mbdymwqqr02uik9-->\n|}");
add("selser", "Parsoid only: Quote balancing context should be restricted to td/th cells on the same wikitext line\n(Requires tidy for PHP parser output to be fixed up) [[4,1]]", "{|<!--etpqkkwhhxhl4n29-->\n!''a!!''b\n|''a||''b\n|}");
add("selser", "Non-word characters don't terminate tag names (bug 17663, 40670, 52022) 5", "<blockquote|>a\n\n<b→> doesn't terminate </b→>\n\n<bä> doesn't terminate </bä>\n\n<boo> doesn't terminate </boo>\n\n<s.foo> doesn't terminate </s.foo>\n\n<sub-ID#1>\n");
add("selser", "Non-word characters don't terminate tag names + tidy 5", "<blockquote|>a\n\n<b→> doesn't terminate </b→>\n\n<bä> doesn't terminate </bä>\n\n<boo> doesn't terminate </boo>\n\n<s.foo> doesn't terminate </s.foo>\n\n<sub-ID#1>\n");
add("selser", "Empty lines between lines with block tags [0,0,0,0,4,[4],0,4,2,4,2,0,0,3,3,0,0,[4]]", "<div></div>\n\n\n0jr2knw69qode7b9\n\nak4f0xoun9bv5cdi\n\n4us29365j9f9lik9\n\n3sh6psvknz3hm2t9\n\n8z2ywhrg9wl8fr\n\nz7s9at3qyq2xogvi\n\nb\n\n<div>b</div>\n<div>h2r4miiukcoez5mi</div>");
add("selser", "Empty lines between lines with block tags [0,4,2,2,0,4,0,[2],0,[4],3,0,0,0,0,2,3,0]", "<div></div>g72sdt9b9996bt9\n\nau765cdgwcsg7gb9\n\n\n\nqhrfek8hsgkz9f6r\n<div></div>rw83ofcbk55vzpvi\n\nvky2au8c7nmnp14ib\n<div>eu25mfmjxi0sh5mi</div>\n\n<div>b</div>d\n\nvxxu49npeng66r\n\n<div>e</div>");
add("selser", "<nowiki> inside <pre> (bug 13238) [4,2,2,0,0]", "ptjux9vq9zarlik9\n\ny7rebotz1jo1dcxr\nnb7mtl9jj0jm7vi<pre>\n<nowiki></nowiki>\n</pre>\n<pre><nowiki><nowiki></nowiki>Foo<nowiki></nowiki></nowiki></pre>");
add("selser", "<nowiki> inside <pre> (bug 13238) [0,3,1,0,3]", "<pre>\n<nowiki>\n</pre><pre data-foobar=\"d4vv2qk2d3wel8fr\">\n\n<nowiki></nowiki>\n</pre>\n");
add("selser", "<nowiki> inside <pre> (bug 13238) [3,0,3,3,2]", "\np32i6amoddb9y66r<pre><nowiki><nowiki></nowiki>Foo<nowiki></nowiki></nowiki></pre>");
add("selser", "<nowiki> inside <pre> (bug 13238) [0,3,3,0,2]", "<pre>\n<nowiki>\n</pre>\nf1s3by12sbw97ldi<pre><nowiki><nowiki></nowiki>Foo<nowiki></nowiki></nowiki></pre>");
add("selser", "<nowiki> inside <pre> (bug 13238) [[3],0,[0,3],3,[4,0,1,2]]", "<pre></pre>\n<pre>\n\n<nowiki></nowiki></pre><pre>8snncrntp84ims4iFoo<nowiki></nowiki>vdl3ymz68paurf6r</nowiki></pre>");
add("selser", "<nowiki> inside <pre> (bug 13238) [4,0,0,0,2]", "lfad62yj247psyvi\n<pre>\n<nowiki></nowiki>\n</pre>\ns668bavo8x4rt3xr<pre><nowiki><nowiki></nowiki>Foo<nowiki></nowiki></nowiki></pre>");
add("selser", "<nowiki> inside <pre> (bug 13238) [0,0,[1,3],4,2]", "<pre>\n<nowiki>\n</pre>\n<pre>\n\n<nowiki></nowiki></pre>h5z9mczgkhzx5hfr\n\n4x2g6badu0udi<pre><nowiki><nowiki></nowiki>Foo<nowiki></nowiki></nowiki></pre>");
add("selser", "<nowiki> inside <pre> (bug 13238) [[3],0,[0,4],2,[3,0,0,2]]", "<pre></pre>\n<pre>\n\n<nowiki></nowiki>al0hy3rs2h11c3di</pre>h5p8fkiwu373c8fr\n<pre>Foo<nowiki></nowiki>zicqb9fw1mkotj4i</nowiki></pre>");
add("selser", "<nowiki> and <pre> preference (first one wins) [3,0,2,0,1,2]", "\nuuvq56wkejc3di\n\n</nowiki>\n</pre>\n\n<nowiki>\n<pre>\n<nowiki>\n</pre>\n</nowiki>\n</pre>\n\n00flm86bxtzhyqfr\n");
add("selser", "<nowiki> and <pre> preference (first one wins) [[4],0,3,0,0,0]", "<pre>\nhtov4vvjzewdygb9</pre>\n\n<nowiki>\n<pre>\n<nowiki>\n</pre>\n</nowiki>\n</pre>\n");
add("selser", "<nowiki> and <pre> preference (first one wins) [3,4,3,0,2,0]", "u20jle5jk0hvkj4i\n\nn067pn35sxjsv2t9\n\n<nowiki>\n<pre>\n<nowiki>\n</pre>\n</nowiki>\n</pre>\n");
add("selser", "<nowiki> and <pre> preference (first one wins) [[2],0,1,0,2,4]", "<pre>\n8ko393dqfxxvquxr<nowiki>\n</pre>\n</nowiki>\n</pre>\n\nmgac8wudaavy4x6r\n\n<nowiki>\n<pre>\n<nowiki>\n</pre>\n</nowiki>\n</pre>\n\n1js1f9r56vl5wmi\n");
add("selser", "<nowiki> and <pre> preference (first one wins) [[4],0,1,3,1,0]", "<pre>\nbv7gok2svqntgldi</pre>\n</nowiki>\n</pre>\n\n<nowiki>\n<pre>\n<nowiki>\n</pre>\n</nowiki>\n</pre>\n");
add("selser", "<nowiki> and <pre> preference (first one wins) [4,0,2,0,[0,4],4]", "tdqftxhs7bsxlxr\n\nup3ot7cx78sq0k9\n\n</nowiki>\n</pre>\n\n<nowiki>\n<pre>\n<nowiki>\n</pre>\n</nowiki>57nnl6navsmaq0k9\n\nops9m7gl3ee1att9\n");
add("selser", "<nowiki> and <pre> preference (first one wins) [0,0,[2,2],0,2,0]", "<pre>\n<nowiki>\n</pre>\nayl0rt9j2rvvlsor</nowiki>ku5wz6d4oixjemi\n</pre>\n\naoia6vijp7722o6r\n\n<nowiki>\n<pre>\n<nowiki>\n</pre>\n</nowiki>\n</pre>\n");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,4,0,0,0,0,0,3,0,0,0,4,0,0,[3]]", "{{echo| }}axyuf8omjvhxv42t9{{echo|\n }}a\n\n{{echo|\n b}}\n{{echo|a\n }}b\nrnjrx8un9rvsra4i{{echo|a\n}} ");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,4,0,0,0,0,0,4,0,0,0,0,0,0,0]", "{{echo| }}am07scp5u1omq85mi{{echo|\n }}a\n\n{{echo|\n b}}\nsjwwihyngffxbt9{{echo|a\n }}b\n\n{{echo|a\n}} b");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,3,0,0,0,0,0,4,0,0,0,0,0,0,[4]]", "{{echo| }}a{{echo|\n }}a\n\n{{echo|\n b}}\nr44i0xvr0xzs38fr{{echo|a\n }}b\n\n{{echo|a\n}} niup05a8topyzaor");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,4,0,0,0,0,0,0,0,0,0,2,0,0,[3]]", "{{echo| }}azltw944t54abrzfr{{echo|\n }}a\n\n{{echo|\n b}}\n\n{{echo|a\n }}b\npzz1c4eezymvlsor\n\n{{echo|a\n}} ");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,3,0,0,0,0,0,0,0,0,0,2,0,0,[3]]", "{{echo| }}a{{echo|\n }}a\n\n{{echo|\n b}}\n\n{{echo|a\n }}b\nlso7s6s9c8oajor\n\n{{echo|a\n}} ");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,3,0,0,0,0,0,3,0,0,0,4,0,0,0]", "{{echo| }}a{{echo|\n }}a\n\n{{echo|\n b}}\n{{echo|a\n }}b\nwe04a84hhxnzsemi{{echo|a\n}} b");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,3,0,0,0,0,0,3,0,0,0,3,0,0,0]", "{{echo| }}a{{echo|\n }}a\n\n{{echo|\n b}}\n{{echo|a\n }}b\n{{echo|a\n}} b");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,0,0,0,0,0,0,2,0,0,0,0,0,0,1]", "{{echo| }}a\n\n{{echo|\n }}a\n\n{{echo|\n b}}\ng2842z4sedlmzpvi\n\n{{echo|a\n }}b\n\n{{echo|a\n}} b");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,2,0,0,0,0,0,3,0,0,0,0,0,0,1]", "{{echo| }}akiw1kzcd7gddvx6r\n\n{{echo|\n }}a\n\n{{echo|\n b}}\n{{echo|a\n }}b\n\n{{echo|a\n}} b");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,0,0,0,0,0,0,0,0,0,0,4,0,0,0]", "{{echo| }}a\n\n{{echo|\n }}a\n\n{{echo|\n b}}\n\n{{echo|a\n }}b\nbt5yrxqcb1d78pvi{{echo|a\n}} b");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,0,0,0,4,0,0,0,0,0,0,0,0,0,[2]]", "{{echo| }}a\n\n{{echo|\n }}a\n4kifb531krdd9529{{echo|\n b}}\n\n{{echo|a\n }}b\n\n{{echo|a\n}} 7ujkiku3nn7mn29b");
add("selser", "Templates: Indent-Pre: 1f: Wrapping should be based on expanded content [0,0,0,0,0,0,0,0,0,0,0,0,0,0,[4]]", "{{echo| }}a\n\n{{echo|\n }}a\n\n{{echo|\n b}}\n\n{{echo|a\n }}b\n\n{{echo|a\n}} f2d99w4cya7zaor");
add("selser", "Templates: Handle comments in the target [0,0,0,3,0,3,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->|foo}}{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,0,0,3,0,0,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->|foo}}\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,2,0,0,0,0,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n9ncpho3wpuhoxbt9\n\n{{echo<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->|foo}}\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,4,0,3,0,0,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\nl9rw5g1g22hs38fr\n\n{{echo<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->|foo}}\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,0,0,0,0,2,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->|foo}}\n\n9v9mkbqum3brcnmi\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,4,0,0,0,0,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\neffd0wpcayca0pb9\n\n{{echo<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->|foo}}\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,0,0,2,0,3,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->\n|foo}}\n\nhwwntyagv9a1nhfr\n\n{{echo<!-- should be ignored -->|foo}}{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,3,0,0,0,2,0]", "{{echo\n<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->|foo}}\n\n07oxlbecbt4q85mi\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,0,0,2,0,0,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->\n|foo}}\n\ndt51r00wxqjmj9k9\n\n{{echo<!-- should be ignored -->|foo}}\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,3,0,3,0,4,0]", "{{echo\n<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->|foo}}\n\nv8be2ljmu606n7b9\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,4,0,0,0,3,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n1w4nz3fu3tc8r529\n\n{{echo<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->|foo}}{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,3,0,2,0,0,0]", "{{echo\n<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->\n|foo}}\n\ng3h399i2371wz5mi\n\n{{echo<!-- should be ignored -->|foo}}\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,3,0,0,0,4,0]", "{{echo\n<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->|foo}}\n\nwaq51k3tb7wuerk9\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,2,0,2,0,3,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\nxc73m35mloy74x6r\n\n{{echo<!-- should be ignored -->\n|foo}}\n\n6ur51wfou1munmi\n\n{{echo<!-- should be ignored -->|foo}}{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,3,0,2,0,4,0]", "{{echo\n<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->\n|foo}}\n\n67x59k75tpo561or\n\n{{echo<!-- should be ignored -->|foo}}\n\nwvrzv7ijo9k3ayvi\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,4,0,4,0,4,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\npmnvitmjwlzhncdi\n\n{{echo<!-- should be ignored -->\n|foo}}\n\nwe3f5jnl8pczncdi\n\n{{echo<!-- should be ignored -->|foo}}\n\nziylnllihba3v7vi\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,0,0,4,0,0,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->\n|foo}}\n\npk398lfm3w1rwwmi\n\n{{echo<!-- should be ignored -->|foo}}\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,3,0,3,0,0,0]", "{{echo\n<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->\n|foo}}{{echo<!-- should be ignored -->|foo}}\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "Templates: Handle comments in the target [0,0,0,0,0,4,0]", "{{echo\n<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->\n|foo}}\n\n{{echo<!-- should be ignored -->|foo}}\n\nhlr2vnanjhflayvi\n\n{{<!-- should be ignored -->echo|foo}}");
add("selser", "4. Indent-Pre and extension tags [2]", "z2q1uxsvdja9vn29\n a <gallery>\nFile:foobar.jpg\n</gallery>");
add("selser", "5a. White-space in indent-pre [[0,0,4]]", " a<br />\n 7tmueg6dyhqia4i");
add("selser", "5a. White-space in indent-pre [1]", " a<br />\n \n \n b");
add("selser", "5a. White-space in indent-pre [[3,0,0]]", " <br />\n \n \n b");
add("selser", "5a. White-space in indent-pre [[3,2,0]]", " ghzkfux2q7pynwmi<br />\n \n \n b");
add("selser", "5a. White-space in indent-pre [[0,2,2]]", " avnpy3yvtyhh93sor<br />\n tryc19803p4lsor\n \n b");
add("selser", "5a. White-space in indent-pre [[0,0,2]]", " a<br />\n m7led9fbke8nnrk9\n \n b");
add("selser", "5a. White-space in indent-pre [[2,0,4]]", " d3ppdqvqzdxi529a<br />\n 82567nb6q9hbmx6r");
add("selser", "5a. White-space in indent-pre [[2,0,0]]", " 9blj98gpz0py14ia<br />\n \n \n b");
add("selser", "5a. White-space in indent-pre [[0,2,0]]", " am3m3vd8oxzu84cxr<br />\n \n \n b");
add("selser", "Definition lists: self-closed tag [2]", "x14l42v2vh392j4i\n;one<br/>two : two-line fun");
add("selser", "Definition lists: self-closed tag [1]", ";one<br/>two : two-line fun");
add("selser", "Definition lists: self-closed tag [[[4,2,4,0],[2]]]", ";hfmudey4je6u5wmi18aco6b1yahy3nmi<br/>199ekjza5e7phkt9 :b3ubf9dln2x7ds4i two-line fun");
add("selser", "Definition lists: self-closed tag [[[4,0,2,0],4]]", ";6gd5x9ujq93sor<br/>osyb2ye446q7iuditwo \n: gxhzecj78bzqia4i");
add("selser", "Definition lists: self-closed tag [[[2,2,0,3],[3]]]", ";uc5f3pstdod8ia4ione9cv4uwjoqoscerk9<br/>two:");
add("selser", "Definition lists: self-closed tag [[[0,0,0,[3]],0]]", ";one<br/>two : two-line fun");
add("selser", "Definition lists: self-closed tag [[[0,0,0,1],0]]", ";one<br/>two : two-line fun");
add("selser", "Definition lists: self-closed tag [[[3,0,0,1],2]]", ";<br/>two \n: ous26d8paeqrrudi: two-line fun");
add("selser", "Definition lists: self-closed tag [[2,3]]", ": cqu8ibre3a73z0k9\n;one<br/>two ");
add("selser", "Definition lists: self-closed tag [[[0,0,2,[4]],3]]", ";one<br/>5uc0qhljlo4aq0k9two ");
add("selser", "Definition lists: self-closed tag [[1,0]]", ";one<br/>two : two-line fun");
add("selser", "Table / list interaction: indented table with lists in table contents [[[2]]]", ":go8hmflmaj935wmi {| |- | a * b |- | c * d |}");
add("selser", "Definition Lists: colons occurring in tags [[0,4,2,1,0,[[4]],0,3,3,[[3]],0,0,2,0,0,3,2,3]]", ";a\n: a771iou6wnyojemi\n: q8kanpj3qa2oi529\n;'''a:b'''\n;<i>z4oyogdq6f5ka9k9</i>\n;<div></div>\n;<div>a\n: evxz2xnf15vu0udi\n:b</div>\n: 40w6y2kk7p6wdn29\n");
add("selser", "Definition Lists: colons occurring in tags [2]", "qg79k8v4av6de7b9\n;a:b\n;'''a:b'''\n;<i>a:b</i>\n;<span>a:b</span>\n;<div>a:b</div>\n;<div>a\n:b</div>\n;{{echo|a:b}}\n;{{echo|''a:b''}}\n;;;''a:b''");
add("selser", "Definition Lists: colons occurring in tags [[3,3,2,1,0,[[2]],2,[3],4,3,0,1,2,0,2,1,0,[0,4,[4]]]]", ": c5tz9nt5eiqqia4i\n;'''a:b'''\n;<i>sbswsuhjvx8vvx6ra:b</i>\n: m6vkrqb89e4b1emi\n;\n: qfrjrlas1800be29\n;<div>a\n: z5ny7xevao22zkt9\n:b</div>\n: 0829zan0mo14te29\n;{{echo|a:b}}\n;{{echo|''a:b''}}8oxxxgapgemqjjor\n;: fye2tu1nka9k9\n");
add("selser", "Definition Lists: colons occurring in tags [[1,1,3,[3],0,[3],0,1,4,[1],0,3,3,0,4,0,0,2]]", ";a:b\n;\n;\n;<span>a:b</span>\n: h8hh4v34xh2maemi\n;<div data-foobar=\"u0847t68ar2akyb9\">a:b</div>\n:b</div>\n: sma0ums92l2z9f6r\n;{{echo|a:b}}\n: 8hiue1du4ujcq5mi\n;{{echo|''a:b''}}\n;;;''a:b''");
add("selser", "Definition Lists: colons occurring in tags [[3,[4],0,[[2]],4,0,4,[4],0,[[2]],2,[[4]],2,0,0,0,0,4]]", ":5lkbigrdwdx11yvi\n;'''cqslr7dvsnd5z5mia:b'''\n: masspab3x9don7b9\n;<i>a:b</i>\n: oa29nopebnoy9zfr\n;98d7as2k961ug14i\n;<div>1bwhvaem3l0izfra:b</div>\n: vnpj9u2knmmzehfr\n;<div>zv7k43lu5scq5mi\n: 1f68p993haor\n:b</div>\n;{{echo|a:b}}\n: hxhtxsqncdi");
add("selser", "Definition Lists: colons occurring in tags [[0,0,4,[2],3,[4],0,[[3]],4,[[3]],0,2,3,0,0,0,0,[0,0,1]]]", ";a:b\n: h3264ujrqrkq33di\n;h56kdmfdrrv34n29'''a:b'''\n;fxo6p8aww4p9zfr\n;<span></span>\n: h438k9e0o3aexw29\n;<div></div>\n: diwu40dj1dims4i\n;<div>a\n:b</div>\n;{{echo|a:b}}\n;{{echo|''a:b''}}\n;;;''a:b''");
add("selser", "Definition Lists: colons occurring in tags [1]", ";a:b\n;'''a:b'''\n;<i>a:b</i>\n;<span>a:b</span>\n;<div>a:b</div>\n;<div>a\n:b</div>\n;{{echo|a:b}}\n;{{echo|''a:b''}}\n;;;''a:b''");
add("selser", "BUG 289: \">\"-token in bracketed URL [2]", "ll0lxyd1rfgpsyvi\n\n[http://www.example.com/<hello> stuff]");
add("selser", "BUG 289: \">\"-token in bracketed URL [1]", "[http://www.example.com/<hello> stuff]");
add("selser", "BUG 289: \">\"-token in bracketed URL [[2]]", "kemi29jie4b1emi[http://www.example.com/<hello> stuff]");
add("selser", "BUG 289: literal \">\"-token in bracketed URL [1]", "[http://www.example.com/<b>html</b> stuff]");
add("selser", "BUG 289: literal \">\"-token in bracketed URL [2]", "yzdq7arbkyj2x1or\n\n[http://www.example.com/<b>html</b> stuff]");
add("selser", "BUG 289: literal \">\"-token in bracketed URL [[2]]", "qg5zzmwudapaxlxr[http://www.example.com/<b>html</b> stuff]");
add("selser", "BUG 289: literal double quote in bracketed URL [2]", "n54iktr2flygmn29\n\n[http://www.example.com/\"hello\" stuff]");
add("selser", "BUG 289: literal double quote in bracketed URL [[2]]", "pxlv6lwcjjug14i[http://www.example.com/\"hello\" stuff]");
add("selser", "BUG 289: literal double quote in bracketed URL [1]", "[http://www.example.com/\"hello\" stuff]");
add("selser", "External links: multiple legal whitespace is fine, Magnus. Don't break it please. (bug 5081) [2]", "y24x21nq2i0ms4i\n\n[http://www.example.com  test]");
add("selser", "External links: multiple legal whitespace is fine, Magnus. Don't break it please. (bug 5081) [1]", "[http://www.example.com  test]");
add("selser", "External links: multiple legal whitespace is fine, Magnus. Don't break it please. (bug 5081) [[2]]", "u4ly6ay2j8257b9[http://www.example.com  test]");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[3,0,[2],0,3,4,3,[0,[0,[1]],4],0,1]]", "\n[http://example.com 4n2162e1fd730udi'''text]'''rgd08hyitua0pb9''Something [http://example.com mixed''''', even bold''''']l55strlralri19k9''\n'''''Now [http://example.com both''''']'''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [1]", "''[http://example.com text'']\n[http://example.com '''text]'''\n''Something [http://example.com in italic'']\n''Something [http://example.com mixed''''', even bold]'''\n'''''Now [http://example.com both''''']");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [2]", "ypjgrwin4revcxr\n\n''[http://example.com text'']\n[http://example.com '''text]'''\n''Something [http://example.com in italic'']\n''Something [http://example.com mixed''''', even bold]'''\n'''''Now [http://example.com both''''']");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[[[0,1]],0,3,1,4,1,3,[0,[0,[[3]]],3],4,3]]", "''[http://example.com text''<nowiki/>'']''\n'''<nowiki/>'''7qwqa9229ey7gb9''Something [http://example.com in italic'']Something [http://example.com mixed'''''<nowiki/>''''']''counvgra3151xlxr\n");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[2,0,4,4,2,1,0,3,0,4]]", "fxsbmxalr8f9wwmi''[http://example.com text'']\ng1cxmyk709vygb9kr3b7p92rmg0t3xrc6f6w79eiwfjemi\n''Something [http://example.com in italic'']''\n\nxqwjvsy7ltvgqfr\n");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[4,0,0,0,0,4,4,4,0,[3]]]", "0zdw3pkk57hnnrk9\n[http://example.com '''text]'''\nizanpf6huff20529vfp1wv58jce1xlxry331mymvx0cc8fr\n'''<nowiki/>'''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[1,3,2,2,0,1,4,[0,3,0],0,[4]]]", "''[http://example.com text'']''9ois0yoxiebfbt9[http://example.com '''text]saoppxketkic0udi'''\n''Something [http://example.com in italic'']''o0hyqnpaq38cwhfr''Something '<nowiki/>''\n'''hyq0ggqn4hzadcxr'''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[3,0,3,3,4,[3,[4,0]],0,[0,1,3],0,[[3,[0,2]]]]]", "\nsjft3sgyl0i9t3xr''[http://example.com spz6gumbba84zpvi'']''\n''Something [http://example.com mixed''''', even bold]''\n'''''[http://example.com bothi78rcmgoegtoi529''''']'''''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[[3],0,[2],0,4,1,0,4,3,3]]", "''<nowiki/>''\n[http://example.com rgkc3a28h38cwhfr'''text]'''fuoqrsdna64dkj4i''Something [http://example.com in italic'']''\nmsb55932ah7rdx6r\n");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[3,0,3,1,0,2,4,3,3,[[0,[0,1]]]]]", "\n'''<nowiki/>'''\nz032w7z1kdo0f6r''Something [http://example.com in italic'']o88q9qaoc6ljif6r'''''Now [http://example.com both'''''''']'''''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[2,2,[2],1,0,[3,0],3,[3,[0,[[4]]],0],0,3]]", "o9nab4h230tnvcxr''[http://example.com text'']u5sfhyznivd3g14i\n[http://example.com isdro1map7qa1yvi'''text]'''<nowiki/>'''\n''[http://example.com in italic''][http://example.com mixed'''''o08ug21d18h3erk9''''']'''\n");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[[2],4,[[4]],0,4,[0,4],2,2,3,[4]]]", "''kndlu276kxz5b3xr[http://example.com text'']''66fz4jk56gtd42t9[http://example.com '''hbtqecdqt5oecdi''']'''sr9o6vidsk5u3di''Something 81gi1py5yann4s4i''i1h0s35lu287iudi\nr1c3unvdylanhfr''Something [http://example.com mixed''''', even bold]''''''cwiw4wazt6kfn7b9'''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[2,0,3,0,3,2,0,[3,2,0],2,[3]]]", "rxaa2sxf4o8yqfr''[http://example.com text'']\n'''mtebxw1xl4x11yvi''Something [http://example.com in italic'']\n''vt2hxx23uta3v7vi[http://example.com mixed''''', even bold]'''fr3tlqbb4piizfr\n'''<nowiki/>'''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[4,2,0,0,4,[2,[4,1]],0,1,2,1]]", "uypp3nxnupst6gvi5lixlomwktb4vx6r\n[http://example.com '''text]'''1euo2nqbj6mvx6r''s5ucqw1bludz33diSomething [http://example.com iqi27jd7nxoxyldi''<nowiki/>'']''\n''Something [http://example.com mixed''''', even bold]'''3rrma1jx3c70hpvi\n'''''Now [http://example.com both''''']'''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[3,2,[4],0,0,1,2,3,4,[3]]]", "8co7ywkausb81tt9\n[http://example.com 85zbd3drbz8pk3xr]'''\n''Something [http://example.com in italic'']''kce2gq57vem9ggb9\ni16rg8p39nj6ecdi'''<nowiki/>'''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[0,3,[4],2,0,[0,[0,1]],0,[3,[3,4],3],2,[[0,4]]]]", "''[http://example.com text''][http://example.com utcl2r0fq8lac3di]3qd60yxh5otakyb9'''\n''Something [http://example.com in italic''<nowiki/>'']''\n''[http://example.com dc0yjx5wecvaq0k9]''gbmw7avnratf0f6r\n'''''Now ozt1j409a2d42t9'''''");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[2,4,0,4,0,1,2,1,0,2]]", "pv9ge46otv86w29''[http://example.com text'']t24xqdq7y0la0pb9[http://example.com '''text]10amjvk8ra1nhfr\n''Something [http://example.com in italic'']''l4tfdpdshpqilik9\n''Something [http://example.com mixed''''', even bold]'''\nziz3awxqv8lu9pb9'''''Now [http://example.com both''''']");
add("selser", "Bug 2702: Mismatched <i>, <b> and <a> tags are invalid [[0,0,4,4,0,[3,4],0,[4,[4,0],0],2,3]]", "''[http://example.com text'']\nxh33ebkbpr639pb9ikqa3l7jkhrdlsor\n''h327flpc5pbsxlxr''\n''3icsd821v6de7b9[http://example.com 2cukbor10uanhfr''''', even bold]'''3cf3j98c7sfnipb9\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[0,1,1]]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm''La muerte de Casagemas'' (1901) en el sitio de [[Museo Picasso (París)|Museo Picasso]].][[Museo Picasso (París)|Museo Picasso]]<span data-foobar=\"w3fg9p5998n3tyb9\">.</span>\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [2]", "pl3umz8dotsdobt9\n\n[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm''La muerte de Casagemas'' (1901) en el sitio de [[Museo Picasso (París)|Museo Picasso]].]");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [1]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm''La muerte de Casagemas'' (1901) en el sitio de [[Museo Picasso (París)|Museo Picasso]].]\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[2,0,[2]]]", "3owjotpl28qqto6r[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm''La muerte de Casagemas'' (1901) en el sitio de [[Museo Picasso (París)|Museo Picasso]].]2hhu1hny1kvgqfr.\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[[[4],4],2,0]]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm ''epe48j1yfhcl3di''5qs8nipyh55ewmi]362rfc9jrfab57b9\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[2,[3],[3]]]", "76vwlxnsrpyqr529[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm''La muerte de Casagemas'' (1901) en el sitio de [[Museo Picasso (París)|Museo Picasso]].][[Museo Picasso (París)|<nowiki/>]]\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[0,0,4]]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm''La muerte de Casagemas'' (1901) en el sitio de [[Museo Picasso (París)|Museo Picasso]].]<nowiki/>gjnm2n9a52tn8kt9");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[[4,0],0,2]]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm m80ag44dkvxtj4i (1901) en el sitio de ]<nowiki/>iu8ii4xb76i529\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[[3,3],[4],0]]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm][[Museo Picasso (París)|d9nzrdjvb4sd1jor]]\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[[[2],0],2,0]]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm ''3wxnc8ynyul92j4iLa muerte de Casagemas'' (1901) en el sitio de ]tgyf4bef1x450zfr\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[0,[3],2]]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm''La muerte de Casagemas'' (1901) en el sitio de [[Museo Picasso (París)|Museo Picasso]].][[Museo Picasso (París)|<nowiki/>]]5mwu7vqu5pv0wwmi\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[3,[3],2]]", "[[Museo Picasso (París)|<nowiki/>]]34gxy654qfmq85mi\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[1,3,0]]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm ''La muerte de Casagemas'' (1901) en el sitio de ]\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[4,0,3]]", "s7cmk1ocalpd5cdi\n");
add("selser", "External link containing double-single-quotes with no space separating the url from text in italics [[[1,2],2,4]]", "[http://www.musee-picasso.fr/pages/page_id18528_u1l2.htm ''La muerte de Casagemas''wvn1dm0gv694fgvi (1901) en el sitio de ]bizwk64e6yfogvi3d9bhvaaeq8jv2t9");
add("selser", "mw:ExtLink linking to a interwiki URL can be round-tripped losslessly (T94723) [[[4]]]", "[[wikipedia:European_Robin|w8te4gwhsniv0a4i]]");
add("selser", "mw:ExtLink linking to a interwiki URL can be round-tripped losslessly (T94723) [[[2]]]", "[[wikipedia:European_Robin|jtvcvll5n6x0f6rEuropean Robin]]");
add("selser", "Unclosed and unmatched quotes [[[0,0,4]],2,3,3,[1],0,4,0,1,2,[[2]],3,3,3,2,0,3,4,1,2,2]", "'''''Bold italic text '''with bold deactivated0bet2nehr3gl23xr''\n\nmveau9dj2krl766r\n\n'''Bold text..'''\n\ny75pk6fh55lba9k9\n\n'''Bold tag left open\n\nivecp7jd69h8semi\n\n''939vypv7nzalwhfrItalic tag left open''\n\n4jx8l4e2s9kymn29<!-- Unmatching number of opening, closing tags: -->\n\nftnac0njf7i1wcdi\n\n''Tom'''s car is bigger than '''''<nowiki/>'''Susan'''s.\n\nwv6k36cpnikbuik9\n\nvtz1rewhs7i7ldi\n\nPlain ''italic'''s plain");
add("selser", "Unclosed and unmatched quotes [[1],0,[1],0,[3],0,[2,2],0,4,0,4,2,4,0,3,0,4,0,[[0,[4]],0,3],0,4]", "'''''Bold italic text '''with bold deactivated''' in between.'''''\n\n'''''Bold italic text ''with italic deactivated'' in between.'''''\n\ny4h85lgdrtacerk9..spanning two paragraphs (should not work).3gnmqbeuuymbo6r'''\n\n3m9bvegcf03sor\n\nskw0gib981xde7b9\n\ndjjwoysazbvgqfr\n\nqcokvvv9z09kke29\n\nvmtyprts14m9rudi\n\n''Tom'''1qr9kmif90ox0f6r'''''<nowiki/>'''Susan'''\n\n5e2ez0in4um78pvi\n");
add("selser", "Unclosed and unmatched quotes [[[3,0,[3]]],0,[1],0,2,2,3,0,[4],4,[4],0,0,3,0,4,[2,3,3,4,3,0],0,4,2,[0,3,4]]", "''with bold deactivated'''<nowiki/>'''''\n\n'''''Bold italic text ''with italic deactivated'' in between.'''''\n\nuimy0isfyrykfbt9\n\n'''Bold text..\n\nhl888wghmewxw29\n\n4yq4z49x86ywrk9\n\nomsddcwsglihehfr\n\nmumepxtpar0vbo6r\n\nNormal text.<!-- Unmatching number of opening, closing tags: -->\n\ndska41gwjbwyu8fr\n\n508yy8ogfxd8ia4i'''This year''''0o13pli3vxojq0k9s.\n\n12et9k2znm5wb3xr\n\nl97w0g61j6rvbo6r\n\nPlain iahdy1xbdbjwz5mi");
add("selser", "Unclosed and unmatched quotes [4,0,3,0,2,0,0,2,4,0,[4],2,[4],2,4,0,[0,0,2,0,0,0],4,1,0,[0,2,0]]", "p51yt1t1l2rfi529\n\nrhoigk26dmkg9zfr\n\n'''Bold text..\n\n..spanning two paragraphs (should not work).'''\n\n0d622p6w2fenrk9\n\nurr17dfxaytd42t9\n\nt29ejiu69b0jatt9\n\nimupp3pckiq9f6r\n\n92qds57sy49ozuxr\n\nueel0927jmo8yqfr\n\nngdgm7xfofg8pvi\n\n'''This year'<nowiki/>'''s election cx7g7aolgz4a38fr''should'' beat '''last year''''s.\n\n5swpjnt4bod5nrk9\n\n''Tom'''s car is bigger than '''''<nowiki/>'''Susan'''s.\n\nPlain bktidt0kwhr529''italic'''s plain");
add("selser", "Unclosed and unmatched quotes [[1],4,[2],3,3,3,1,2,2,0,2,0,2,3,4,2,[[2],3,3,0,[4],2],0,3,3,[0,4,0]]", "'''''Bold italic text '''with bold deactivated''' in between.'''''\n\npvym8fwuqk1hh0k9\n\nqxfz5g7yx7ehr529'''''Bold italic text ''with italic deactivated'' in between.'''''\n\n..spanning two paragraphs (should not work).'''\n\nimm43yv5xicw61or\n\nqf82msyi498me7b9\n\n'''Bold tag left open\n\nh20k7bi0nzdgf1or\n\n''Italic tag left open\n\n4bg7ac36siztzkt9\n\nNormal text.\n\nvo6dn3vgrv0a4i\n\newzcuf80f1l6usor\n\n'''tbfhcj88z2w97ldiThis year'''' beat '''m3gmfr9sp4cjif6r'''npe02pgi9a8rrudis.\n\nPlain lg1x7859rhdrt3xrs plain");
add("selser", "Unclosed and unmatched quotes [4,2,2,2,4,4,[0,1],0,1,2,2,0,3,0,0,0,[1,0,1,0,3,3],3,3,4,4]", "sxp631t0lu4pwrk9\n\nuiov8qw0vsegsyvi\n\ns5pdb3gqeq5pcik9\n\n'''''Bold italic text ''with italic deactivated'' in between.'''''\n\n0im0vx321sv2t9\n\nw84opzg7rvpwrk9\n\na10san19w6a8aor\n\n..spanning two paragraphs (should not work).'''<nowiki/>'''\n\n'''Bold tag left open'''\n\nzmakc4arcm78pvi\n\nskau1bd5191qncdi\n\n''Italic tag left open\n\n\n<!-- Unmatching number of opening, closing tags: -->'''This year''''s election ''should'' beat \n\nfg0el0revo5el8fr\n\n29zcwcjdje0fi529\n");
add("selser", "Unclosed and unmatched quotes [[[0,4,[2]]],4,[[3,0,1]],0,3,2,0,0,[[3]],3,3,3,0,0,0,0,3,0,[3,[4],0],0,2]", "'''''Bold italic text '''frylpuwwxz9kvs4i'''si2oklqrxelmobt9 in between.'''''\n\n4b0fwpx8i4yousor\n\n'''with italic deactivated'' in between.'''''\n\n4y74tj37ci7fogvi\n\n..spanning two paragraphs (should not work).'''\n\n'''<nowiki/>'''\n\nNormal text.\n\n<!-- Unmatching number of opening, closing tags: -->\n'''955t9gdexkbdfgvi'''s.\n\n7vsge66w9ew2ke29\n\nPlain ''italic'''s plain");
add("selser", "Unclosed and unmatched quotes [[[[4],0,0]],0,1,0,2,4,[0,1],0,2,4,4,2,0,0,0,0,[[3],3,0,0,[3],3],0,2,2,3]", "'''''g25w0ee1muat6gvi'''with bold deactivated''' in between.'''''\n\n'''''Bold italic text ''with italic deactivated'' in between.'''''\n\n978osfsmlz9tfbt9\n\n'''Bold text..\n\n6va1z48gd8wipb9\n\n..spanning two paragraphs (should not work).'''<nowiki/>'''\n\npap02f80lg8yf1or\n\n'''Bold tag left open\n\nrc9woq2unjnhfr\n\nvwn5ww762sft7qfr\n\n4tvj8y1sqzg2e29\n\nNormal text.\n\n<!-- Unmatching number of opening, closing tags: -->\n'''<nowiki/>'''''should'' beat '''<nowiki/>'''\n\ngo0uih65ed841jor\n\n''Tom'''s car is bigger than ''Susan'''s.\n\ngxolomlzomtsatt9\n");
add("selser", "Unclosed and unmatched quotes [[1],2,3,3,0,0,2,0,[[2]],0,[3],0,3,3,0,0,1,0,[3,0,4],4,3]", "'''''Bold italic text '''with bold deactivated''' in between.'''''\n\no48k8kitkr8dunmi\n\n'''Bold text..\n\njg529j0bl3c2qpvi\n\n..spanning two paragraphs (should not work).'''\n\n'''86igisuev2sjdcxrBold tag left open'''\n\n\n<!-- Unmatching number of opening, closing tags: -->'''This year''''s election ''should'' beat '''last year''''s.\n\nSusan'''9gtumj4ocnomvx6r\n\nprfakduhs9gousor\n");
add("selser", "Unclosed and unmatched quotes [2,0,[[2,2,[3]]],3,1,3,3,0,3,4,[[4]],2,4,4,2,0,3,0,1,2,[3,4,3]]", "pw5zq7ljhfy4aemi\n\n'''''Bold italic text '''with bold deactivated''' in between.'''''\n\n'''fbtby3wxdli0be29''Bold italic text ''hosaxi984a9n3ik9with italic deactivated''<nowiki/>'''''\n\n'''Bold text..\n\nc74033tc8r529\n\n''crya5qg6h10mgqfr''\n\n97y6epfwllsaif6r\n\nv4ny06vgjpvkuik9\n\npybvt95p8bzqia4i\n\nf4w0i3lwoafez5mi<!-- Unmatching number of opening, closing tags: -->\n\n''Tom'''s car is bigger than '''''<nowiki/>'''Susan'''s.\n\n35ggkj027wuerk9\n\n5akp3n5k0fk9y66r");
add("selser", "Unclosed and unmatched quotes [2,0,[1],0,[2],0,[3,0],0,0,2,3,4,[2],2,0,3,[2,3,4,0,[4],0],0,3,3,[3,1,0]]", "z4argjbmeescq5mi\n\n'''''Bold italic text '''with bold deactivated''' in between.'''''\n\n'''''Bold italic text ''with italic deactivated'' in between.'''''\n\n947x1e69qode7b9'''Bold text..\n\n'''\n\n'''Bold tag left open\n\n3ki8ayg0o64xi529\n\n79eq5ijnx56rbe29\n\ndxlh1ogra88jv2t9Normal text.\n\nxi7td8h5z9pv6lxr\n\n<!-- Unmatching number of opening, closing tags: -->23dgn6ecyq281tt9'''This year''''39sqeg7p7m0a4i beat '''oiu6lbk4gnrn3ik9'''s.\n\n''italic'''s plain");
add("selser", "Unclosed and unmatched quotes [[2],0,4,3,[2],3,3,4,[[2]],0,0,2,3,4,0,0,4,2,[[3,[4]],2,0],3,2]", "4yw4wxjunjtw3ik9'''''Bold italic text '''with bold deactivated''' in between.'''''\n\nis7cyalf54su4n29\n\nmpbxmb8jpqlg14i'''Bold text..\n\nalbr13x2jt273nmi\n\n'''6g5d8o738wave7b9Bold tag left open'''\n\n''Italic tag left open\n\nteulxe8k1ma0dx6r\n\nxou6as0vzir7ldi<!-- Unmatching number of opening, closing tags: -->\n\nujbw98y12pxecdi\n\nis2fqvz346byy14i\n\n'''''kzqmouenkvz8semi'''''9tj86gikh3j1c3di'''Susan'''s.\n\ni4wvgq117adobt9\n\nPlain ''italic'''s plain");
add("selser", "Unclosed and unmatched quotes [[[0,4,[4]]],4,[[[3],0,0]],3,4,2,[0,3],0,2,4,1,3,0,3,0,2,[3,2,[4],0,2,0],0,3,0,2]", "'''''Bold italic text '''75o98j53ggyqr529'''dy2un1421co0qkt9'''''\n\nambk3df76pfrbe29\n\n'''''<nowiki/>''with italic deactivated'' in between.'''''\n\nmlan2o9gwrx2bj4i\n\n5ad1bsnc7xrvbo6r\n\n..spanning two paragraphs (should not work).\n\n7rqyhyinmtqvkj4i\n\n'''Bold tag left open\n\n6e1728i1rre019k9\n\n''Italic tag left open''\n\nNormal text.<!-- Unmatching number of opening, closing tags: -->\n\nyrma779mh822csor\n\nzowg8vddfmxcg14is election ''bpl4hu1cvunmi'' beat mqxj0davy046xbt9'''last year''''s.\n\nsrp1nabhht7ta9k9\n\nPlain ''italic'''s plain");
add("selser", "Unclosed and unmatched quotes [[[1,0,1]],3,[4],2,2,0,0,2,0,0,3,2,0,2,0,0,[[2],0,[3],3,0,4],0,[1,0,0],0,4]", "'''''Bold italic text '''with bold deactivated''' in between.'''''\n\n44b370raypmk7qfr\n\ni211swg0nbpam7vi\n\nvavmabtdw75jyvi\n\n'''Bold text..\n\n..spanning two paragraphs (should not work).'''\n\n4p1evrnwbqd26gvi\n\n'''Bold tag left open\n\newqyg6brwjmrt3xr\n\nNormal text.\n\nah55m0efoatnjyvi\n\n<!-- Unmatching number of opening, closing tags: -->\n'''o7plzsqaknmte29This year'<nowiki/>'''s election ''<nowiki/>'''''last year'<nowiki/>'''2yo5fdbdlipy14i\n\n''Tom'''s car is bigger than '''''<nowiki/>'''Susan'''s.\n\nllfjggl4suhgds4i\n");
add("selser", "Unclosed and unmatched quotes [[3],0,[1],0,3,2,1,4,4,4,4,3,[2],0,0,0,3,0,3,2,[4,3,3]]", "\n\n'''''Bold italic text ''with italic deactivated'' in between.'''''\n\nx1xcylcyh7gphkt9\n\n..spanning two paragraphs (should not work).'''\n\nnf1j27vv64unmi\n\n8gq7zshkmb49529\n\nequpikb2dtj1nhfr\n\n9qkbw2p05e6a8aor\n\nxmkojfga7ja1c3diNormal text.\n\n<!-- Unmatching number of opening, closing tags: -->\nrmvdbh91k72xzuxr\n\n2mzfijueenq4zpvi");
add("selser", "Unclosed and unmatched quotes [3,0,[2],0,[[2]],3,[3,0],0,4,4,0,0,3,2,0,3,[[4],2,4,0,3,0],2,3,3,[3,3,0]]", "\nt6n1bkvx9wq7u8fr'''''Bold italic text ''with italic deactivated'' in between.'''''\n\n'''mdiwcalkyki6bt9Bold text..'''\n\n'''\n\n1il337h4ozu84cxr\n\nowkwkmpgu45z5mi\n\n''Italic tag left open\n\n0jlauri2d7gjsjor\n\n<!-- Unmatching number of opening, closing tags: -->'''xapa2a5a6cdw8kt9'''lc002uv6d1dzpvis election fik23fdz9d89qkt9 beat s.\n\n8ykwjs7kuwg0hpvi\n\ns plain");
add("selser", "Unclosed and unmatched quotes [2,4,3,0,2,0,1,0,[3],0,[2],0,2,0,0,2,[2,2,4,0,1,0],2,4,3,4]", "re6gnnkhd1tnjyvi\n\n'''''Bold italic text '''with bold deactivated''' in between.'''''\n\nbdwnekfnkxei2j4i\n\nva244jbhttpdgqfr\n\n'''Bold text..\n\n..spanning two paragraphs (should not work).'''\n\nlrd6syi4ygugzaor''Italic tag left open\n\nknfaulivfgca0pb9\n\nNormal text.\n\n<!-- Unmatching number of opening, closing tags: -->h8w8s0eci66tuik9\n\nu9daa8hfmgm5z5mi'''This year'<nowiki/>'''s4k3bfthkfq1tt9s election am5ar352e2ltbj4i beat '''last year''''s.\n\nrgsn8f7qx23p7gb9\n\nlhg77py8ot21emi\n\n7h6jcsa4wmzsq0k9\n");
add("selser", "Unclosed and unmatched quotes [[1],2,4,0,[4],0,[4,0],0,[[2]],3,2,0,2,0,0,2,[0,2,2,0,1,0],0,1,0,2]", "'''''Bold italic text '''with bold deactivated''' in between.'''''\n\n91y6zy5s4079zfr\n\nmkyoq2vkvt0jatt9\n\n8yeajt4jwaru23xr\n\nn2z6ghxy6lp7gb9'''<nowiki/>'''\n\n'''9c8lhwf3v6zgp66rBold tag left open'''\n\nootbfqoaxawi2j4i\n\n''Italic tag left open\n\nvv89fig83pst6gvi\n\nNormal text.\n\n<!-- Unmatching number of opening, closing tags: -->73vckpnoy6s3v7vi\n\n'''This year'<nowiki/>'''eedgwt17jt9be29s election gqta5jrflissjor''should'' beat '''last year''''s.\n\n''Tom'''s car is bigger than '''''<nowiki/>'''Susan'''s.\n\nz1mgwtgr2xjhh0k9\n\nPlain ''italic'''s plain");
add("selser", "A table with captions with non-default spaced attributes and a table row [[3,2,3,[4],4,[2,4]]]", "{|<!--90q42mbx340a4i-->\n|+style=\"color: red;\"|caption2\n|+ style=\"color: red;\" |68x5dnp2q5xw29<!--msaci0wnxchgds4i--><!--fhl1z8tl9txu5wmi-->\n|-\n| foo<!--z5tecc0c7ynwmi-->\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[0,2,4,0,3,[4,0]]]", "{|\n<!--8folgr0kquboi529-->|+style=\"color: red;\"|caption2<!--9isvnh2z6j2it3xr-->\n|+ style=\"color: red;\"| caption3<!--cegg9qdr9hjgu8fr-->\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[2,0,2,3,3,3]]", "{|<!--69d5z7pa8iio1or-->\n|+style=\"color: red;\"|caption2<!--1r97810ys18j8aor-->\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [2]", "ogl2d411a038r529\n{|\n|+style=\"color: red;\"|caption2\n|+ style=\"color: red;\"| caption3\n|-\n| foo\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[4,[3],2,0,3,[[3,4],4]]]", "{|<!--glpyv8ws43elv7vi-->\n|+ style=\"color: red;\" |<!--977mpdg7bdg6i529-->\n|+ style=\"color: red;\"| caption3\n|-\n|vnlowwkt14hadcxr<!--tw8w8jwmz4p1fw29-->\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[2,2,0,4,2,[0,4]]]", "{|<!--hq2lymey7xxkcsor-->\n<!--q20r2b6ga9xry66r-->|+style=\"color: red;\"|caption2\n<!--kyojp7sr96v18aor--><!--bky3qng4ga2a9k9-->\n|-\n| foo<!--phpg9eaca86ez5mi-->\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[0,[2],0,0,0,[[0,2],0]]]", "{|\n|+ style=\"color: red;\" |rsk37teyuq22csorcaption2\n|+ style=\"color: red;\"| caption3\n|-\n|vefem1fh6g1ll3di\n| foo\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[2,0,3,[2],0,[2,0]]]", "{|<!--8q7n7m2tbswwb3xr-->\n|+style=\"color: red;\"|caption2\n|+ style=\"color: red;\" |lcnpzckjupgphkt9 caption3\n<!--px2ept6jeswnrk9-->|-\n| foo\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [1]", "{| data-foobar=\"o9k0fan234k7qfr\"\n|+style=\"color: red;\"|caption2\n|+ style=\"color: red;\"| caption3\n|-\n| foo\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[0,[2],0,2,3,[[2,0],0]]]", "{|\n|+ style=\"color: red;\" |w96hfg740cm78pvicaption2\n<!--s66fh5bg5g1wz5mi-->|+ style=\"color: red;\"| caption3\n|-\n|i7akogjci8i4fgvi\n| foo\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[3,4,3,0,0,1]]", "{|<!--xb57b1mfbeh77gb9-->\n|+ style=\"color: red;\"| caption3\n|-\n| foo\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[0,0,0,1,4,3]]", "{|\n|+style=\"color: red;\"|caption2\n|+ style=\"color: red;\" data-foobar=\"4n9ju8e6u4ayk3xr\" | caption3<!--8vitqxcwje89f6r-->\n|}");
add("selser", "A table with captions with non-default spaced attributes and a table row [[0,0,2,[3],3,[[0,4],0]]]", "{|\n|+style=\"color: red;\"|caption2<!--4865t93rr418aor-->\n|+ style=\"color: red;\" |\n|-\n|n2z1139bdvuc8fr\n|}");
add("selser", "Table td-cell syntax variations [2]", "sbzhcg70xtq8semi\n{|\n| foo bar foo | baz\n| foo bar foo || baz\n| style='color:red;' | baz\n| style='color:red;' || baz\n|}");
add("selser", "Table td-cell syntax variations [[4,[1,4]]]", "{|<!--27awwjo3287iudi-->\n| foo bar foo | baz\n| foo bar foo || baz\n| style='color:red;' | baz\n| style='color:red;' || baz<!--jkw3iop5lpcfpqfr-->\n|}");
add("selser", "Table td-cell syntax variations [1]", "{| data-foobar=\"ripzux1o66crf6r\"\n| foo bar foo | baz\n| foo bar foo || baz\n| style='color:red;' | baz\n| style='color:red;' || baz\n|}");
add("selser", "Table td-cell syntax variations [[3,[2,0]]]", "{|<!--aerzm44cpngynwmi-->\n| foo bar foo | baz\n| foo bar foo || baz\n| style='color:red;' | baz\n| style='color:red;' || baz\n|}");
add("selser", "Table td-cell syntax variations [[4,[[2,0,2,[3],4,0,3,[3],1],2]]]", "{|<!--mz3xyunmkehwu3di-->\n|w4c4887c9phnnrk9\n| foo bar foo | baz\n|l0hmwng5zji9hpvi\n| foo bar foo ||\n|si4mhwzz7p919k9\n| style='color:red;' | baz\n||| data-foobar=\"kxxz57fxsgbq33di\" | baz<!--ekzrdkkb8xopf1or-->\n|}");
add("selser", "Table td-cell syntax variations [[0,[[4,0,0,1,0,0,0,4,4],0]]]", "{|\n|juve1nh5fs4kuik9\n| foo bar foo || data-foobar=\"v00hdvjl3int57b9\" | baz\n| style='color:red;' | baz\n|6x3dng4d2qehfr\n|eow57cf1pgmn29\n|}");
add("selser", "Table td-cell syntax variations [[0,[1,4]]]", "{|\n| foo bar foo | baz\n| foo bar foo || baz\n| style='color:red;' | baz\n| style='color:red;' || baz<!--tthr988c8d9ara4i-->\n|}");
add("selser", "Table td-cell syntax variations [[0,[[1,4,0,2,2,0,4,0,0],3]]]", "{|\n| data-foobar=\"yapr5vvoeskk2o6r\" foo bar | baz\n|n59kxzdkg0dg3nmi\n| foo bar foo \n|3uyod7tniwfjemi|| baz\n|mksz2gze2hjjor\n| style='color:red;' | baz\n|2n7mgtwagfzuxr\n| style='color:red;' || baz\n|}");
add("selser", "Table td-cell syntax variations [[0,2]]", "{|\n<!--uiyg1xnqf84u0udi-->| foo bar foo | baz\n| foo bar foo || baz\n| style='color:red;' | baz\n| style='color:red;' || baz\n|}");
add("selser", "Allow +/- in 2nd and later cells in a row, in 1st cell when td-attrs are present, or in 1st cell when there is a space between \"|\" and +/-  [[4,[[0,0,4,3],4,[2,4,[2],[3],2,[3],[2],1],3,4,0]]]", "{|<!--ey69w1huzxhl4n29-->\n|-\n|style='color:red;'|+1\n|9tw49jdk0u5o2yb9<!--kx0w31z2r3eg66r-->\n|-\n|pql3wifv5zouhaor\n|b17pm8krfbqehfr||y5j51k4ijfzme7b9 2 ||\n|agfkr8szrrb5ipb9\n|||jzz1rvd4y3bit3xr+2 || data-foobar=\"hz9jkr87n7co9a4i\" |-3<!--uomsfojpwyi4quxr-->\n|}");
add("selser", "Allow +/- in 2nd and later cells in a row, in 1st cell when td-attrs are present, or in 1st cell when there is a space between \"|\" and +/-  [1]", "{| data-foobar=\"qni1jj96d8ia4i\"\n|-\n|style='color:red;'|+1\n|style='color:blue;'|-1\n|-\n| 1 || 2 || 3\n| 1 ||+2 ||-3\n|-\n| +1\n| -1\n|}");
add("selser", "Allow +/- in 2nd and later cells in a row, in 1st cell when td-attrs are present, or in 1st cell when there is a space between \"|\" and +/-  [2]", "pedhswzbj517zaor\n{|\n|-\n|style='color:red;'|+1\n|style='color:blue;'|-1\n|-\n| 1 || 2 || 3\n| 1 ||+2 ||-3\n|-\n| +1\n| -1\n|}");
add("selser", "Allow +/- in 2nd and later cells in a row, in 1st cell when td-attrs are present, or in 1st cell when there is a space between \"|\" and +/-  [[0,1]]", "{|\n|-\n|style='color:red;'|+1\n|style='color:blue;'|-1\n|-\n| 1 || 2 || 3\n| 1 ||+2 ||-3\n|-\n| +1\n| -1\n|}");
add("selser", "Allow +/- in 2nd and later cells in a row, in 1st cell when td-attrs are present, or in 1st cell when there is a space between \"|\" and +/-  [[0,2]]", "{|\n<!--xllkdkan97eyu8fr-->|-\n|style='color:red;'|+1\n|style='color:blue;'|-1\n|-\n| 1 || 2 || 3\n| 1 ||+2 ||-3\n|-\n| +1\n| -1\n|}");
add("selser", "Allow +/- in 2nd and later cells in a row, in 1st cell when td-attrs are present, or in 1st cell when there is a space between \"|\" and +/-  [[3,[[3,1,0,[4]],3,4,2,[0,4,0,0],4]]]", "{|\n|-\n| style=\"color:red;\" data-foobar=\"cppwm0tpam7vi\" |+1\n|style='color:blue;'|a7cowbidjazia4i<!--x62n4p612rpgy14i--><!--d2uvh61vtoqolxr-->\n|-\n|8t7ghb7id0smunmi\n| -1<!--qb5bhmh2xggjsjor-->\n|}");
add("selser", "Allow +/- in 2nd and later cells in a row, in 1st cell when td-attrs are present, or in 1st cell when there is a space between \"|\" and +/-  [[0,[[3,2,0,0],0,[2,0,1,[2],0,0,0,2],0,[0,[4],0,0],0]]]", "{|\n|-\n|0bez83pg3gom9529\n|style='color:red;'|+1\n|style='color:blue;'|-1\n|-\n|sxirzpn3nq257b9\n| 1 || data-foobar=\"27xcharybvs4i\" | 2 ||lz04cejtja714i 3\n| 1 ||+2 \n|h7c5rmx7i8b0529||-3\n|-\n|kfu05heouun89f6r\n| -1\n|}");
add("selser", "Table rowspan [[3,2]]", "{| border=1<!--dw212cp9esif6r-->\n| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n| Cell 1, row 2\n| Cell 3, row 2\n|}");
add("selser", "Table rowspan [[0,1]]", "{| border=1\n| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n| Cell 1, row 2\n| Cell 3, row 2\n|}");
add("selser", "Table rowspan [[2,[[2,0,3,0,4],0,[0,0,0,3],2]]]", "{| border=1<!--hf5z89mzkeh77gb9-->\n|4j3mbmbko7gmn29\n| Cell 1, row 1\n\n|r763mckykwlba9k9\n|-\n| Cell 1, row 2\n<!--88adjxaw01ss8aor-->\n|}");
add("selser", "Table rowspan [2]", "xb37vwsdil6gk3xr\n{| border=1\n| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n| Cell 1, row 2\n| Cell 3, row 2\n|}");
add("selser", "Table rowspan [1]", "{| border=\"1\" data-foobar=\"xgpmrwgiugpbvs4i\"\n| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n| Cell 1, row 2\n| Cell 3, row 2\n|}");
add("selser", "Table rowspan [[0,[1,0,2,0]]]", "{| border=1\n| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n<!--esqo19m7kv620529-->|-\n| Cell 1, row 2\n| Cell 3, row 2\n|}");
add("selser", "Table rowspan [[2,2]]", "{| border=1<!--c9eo96nqfmjthuxr-->\n<!--mdmpc8uzbgoxn7b9-->| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n| Cell 1, row 2\n| Cell 3, row 2\n|}");
add("selser", "Table rowspan [[0,[1,0,2,2]]]", "{| border=1\n| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n<!--f24m9zom9d2kpgb9-->|-\n| Cell 1, row 2\n| Cell 3, row 2<!--houk9s548i3pu8fr-->\n|}");
add("selser", "Table rowspan [[3,[1,0,[0,2,0,4],2]]]", "{| border=1\n| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n|gsp7c59fnpadobt9\n| Cell 1, row 2\n|bwzd1d95wa7wg66r<!--68bu9hd9zl37syvi-->\n|}");
add("selser", "Table rowspan [[0,[[4,0,4,0,1],0,1,2]]]", "{| border=1\n|aspxhnaofiqf47vi\n|73fyijt65nuerk9\n| data-foobar=\"t7trqii8bukp4x6r\" | Cell 3, row 1\n|- data-foobar=\"1pkfpcn5xq6t7qfr\"\n| Cell 1, row 2\n| Cell 3, row 2<!--sebb2ix3zzzadcxr-->\n|}");
add("selser", "Table rowspan [[0,4]]", "{| border=1\n<!--1gqzmb9oym34n29-->|}");
add("selser", "Table rowspan [[4,1]]", "{| border=1<!--df20a6ug11ao47vi-->\n| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n| Cell 1, row 2\n| Cell 3, row 2\n|}");
add("selser", "Table rowspan [[0,[2,0,4,0]]]", "{| border=1\n<!--bz2zkuwgtbotj4i-->| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n<!--hynk9y1byaw6ogvi-->\n|}");
add("selser", "Table rowspan [[2,1]]", "{| border=1<!--kn5vfku6oyumobt9-->\n| Cell 1, row 1\n| rowspan=\"2\" | Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n| Cell 1, row 2\n| Cell 3, row 2\n|}");
add("selser", "Table rowspan [[3,[1,0,[0,1,0,2],4]]]", "{| border=1\n| Cell 1, row 1\n|rowspan=2| Cell 2, row 1 (and 2)\n| Cell 3, row 1\n|-\n| data-foobar=\"gzbtsmzgf46g8pvi\" | Cell 1, row 2\n|gdz7sc5bs1xg8pvi\n| Cell 3, row 2<!--kjwr2bchfhqto6r-->\n|}");
add("selser", "Nested table [[0,[1,4]]]", "{| border=1\n| &alpha;\n|\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n|table\n|}\n|the original table again<!--t5nreiu3qsxuhaor-->\n|}");
add("selser", "Nested table [[0,2]]", "{| border=1\n<!--262ep7u743gqr529-->| &alpha;\n|\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n|table\n|}\n|the original table again\n|}");
add("selser", "Nested table [2]", "y38000xvz4vg3nmi\n{| border=1\n| &alpha;\n|\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n|table\n|}\n|the original table again\n|}");
add("selser", "Nested table [[2,[4,2]]]", "{| border=1<!--0dbf76hr5a9bpgb9-->\n<!--dkjh2vfrzy9cnmi--><!--dr69h58wuje5ewmi-->\n|}");
add("selser", "Nested table [[2,3]]", "{| border=1<!--cn1vfhuotu5qxgvi-->\n|}");
add("selser", "Nested table [[4,1]]", "{| border=1<!--21kjc55zx2tbuik9-->\n| &alpha;\n|\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n|table\n|}\n|the original table again\n|}");
add("selser", "Nested table [1]", "{| border=\"1\" data-foobar=\"z21mjbodw38lg14i\"\n| &alpha;\n|\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n|table\n|}\n|the original table again\n|}");
add("selser", "Nested table [[3,2]]", "{| border=1<!--55yjgfqukkv5cdi-->\n| &alpha;\n|\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n|table\n|}\n|the original table again\n|}");
add("selser", "Nested table [[2,1]]", "{| border=1<!--35nkwvkg96ls1yvi-->\n| &alpha;\n|\n{| bgcolor=\"#ABCDEF\" border=\"2\"\n|nested\n|-\n|table\n|}\n|the original table again\n|}");
add("selser", "Nested table [[3,[3,0]]]", "{| border=1\n|}");
add("selser", "Nested table [[0,[[[4,0],0,4,2,1],3]]]", "{| border=1\n|nnqydx4felt2zkt9&alpha;\n|krzzwsokfqen4s4i\n|crl4tbkmgl9xusor\n| data-foobar=\"hezkv4q5eb9ms4i\" |the original table again\n|}");
add("selser", "Nested table [[3,[1,4]]]", "{| border=1\n| &alpha;\n|\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n|table\n|}\n|the original table again<!--xoe21j7jau62bj4i-->\n|}");
add("selser", "Nested table [[0,4]]", "{| border=1\n<!--1si3ih2ugqkqehfr-->|}");
add("selser", "Nested table [[0,[[1,2,[3,4],0,4],2]]]", "{| border=1\n| data-foobar=\"rvxj3ybmjcl680k9\" | &alpha;\n|hk2lwgso9gvz33di\n|nqxaiu7b5cngsyvi\n|ymx715n666j62yb9<!--qegrhh8kob76i529-->\n|}");
add("selser", "Nested table [[0,[1,2]]]", "{| border=1\n| &alpha;\n|\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n|table\n|}\n|the original table again<!--4p9ui8hhwjy5vcxr-->\n|}");
add("selser", "Nested table [[0,1]]", "{| border=1\n| &alpha;\n|\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n|table\n|}\n|the original table again\n|}");
add("selser", "Nested table [[0,[[2,0,[4,[0,[0,0,[0,3],2]]],0,0],4]]]", "{| border=1\n|2cpkww5viwe45cdi\n| &alpha;\n|v3oai1u8e0j2a9k9\n{| bgcolor=#ABCDEF border=2\n|nested\n|-\n<!--2mk619dun1ocrf6r-->\n|}\n|the original table again<!--0kibvfd08qudte29-->\n|}");
add("selser", "Invalid attributes in table cell (bug 1830) [1]", "{| data-foobar=\"qjn3d6di3vcuwhfr\"\n|Cell:|broken\n|}");
add("selser", "Invalid attributes in table cell (bug 1830) [[4,1]]", "{|<!--o94ty73s5301wcdi-->\n|Cell:|broken\n|}");
add("selser", "Invalid attributes in table cell (bug 1830) [2]", "ihzdqjdk01bp4x6r\n{|\n|Cell:|broken\n|}");
add("selser", "Invalid attributes in table cell (bug 1830) [[0,2]]", "{|\n<!--0d7j9j0jsmj9k9-->|Cell:|broken\n|}");
add("selser", "Invalid attributes in table cell (bug 1830) [[0,1]]", "{|\n|Cell:|broken\n|}");
add("selser", "Invalid attributes in table cell (bug 1830) [[0,[2,0]]]", "{|\n<!--j29v67hfrufmvx6r-->|Cell:|broken\n|}");
add("selser", "Invalid attributes in table cell (bug 1830) [[3,[[2],0]]]", "{|\n|otq3btd8klf2yb9\n|Cell:|broken\n|}");
add("selser", "Invalid attributes in table cell (bug 1830) [[0,[1,3]]]", "{|\n|Cell:|broken\n|}");
add("selser", "! and || in element attributes should not be parsed as <th>/<td> [[0,[0,2]]]", "{|\n| <div style=\"color: red !important;\" data-contrived=\"put this here ||\">hi</div><!--768pk9dhuiz77gb9-->\n|}");
add("selser", "! and || in element attributes should not be parsed as <th>/<td> [[2,2]]", "{|<!--6x6nmghv3o1g7gb9-->\n<!--02ex0q4ti0t6s9k9-->| <div style=\"color: red !important;\" data-contrived=\"put this here ||\">hi</div>\n|}");
add("selser", "! and || in element attributes should not be parsed as <th>/<td> [[0,[2,3]]]", "{|\n<!--2gjjc0tjnzlac3di-->| <div style=\"color: red !important;\" data-contrived=\"put this here ||\">hi</div>\n|}");
add("selser", "! and || in element attributes should not be parsed as <th>/<td> [[4,1]]", "{|<!--5o9uhp5or2hp8pvi-->\n| <div style=\"color: red !important;\" data-contrived=\"put this here ||\">hi</div>\n|}");
add("selser", "! and || in element attributes should not be parsed as <th>/<td> [[3,2]]", "{|<!--97k7uhewx6flxr-->\n| <div style=\"color: red !important;\" data-contrived=\"put this here ||\">hi</div>\n|}");
add("selser", "! and || in element attributes should not be parsed as <th>/<td> [[0,2]]", "{|\n<!--4geia2gf0fwdn29-->| <div style=\"color: red !important;\" data-contrived=\"put this here ||\">hi</div>\n|}");
add("selser", "! and || in element attributes should not be parsed as <th>/<td> [[0,[[[3],0],0]]]", "{|\n|||\">hi</div>\n|}");
add("selser", "! and || in element attributes should not be parsed as <th>/<td> [2]", "rvse1pnm4h1tt9\n{|\n| <div style=\"color: red !important;\" data-contrived=\"put this here ||\">hi</div>\n|}");
add("selser", "Build table with {{!}} [2]", "vlzvgbqpbh6qd7vi\n{{{!}} class=\"wikitable\"\n! header\n! second header\n{{!}}- style=\"color:red;\"\n{{!}} data {{!}}{{!}} style=\"color:red;\" {{!}} second data\n{{!}}}");
add("selser", "Build table with {{!}} [1]", "{{{!}} class=\"wikitable\" data-foobar=\"n7vob9kcmjp833di\"\n! header\n! second header\n{{!}}- style=\"color:red;\"\n{{!}} data {{!}}{{!}} style=\"color:red;\" {{!}} second data\n{{!}}}");
add("selser", "Build table with {{!}} [[0,2]]", "{{{!}} class=\"wikitable\"\n<!--gzqyxjo46o91kyb9-->! header\n! second header\n{{!}}- style=\"color:red;\"\n{{!}} data {{!}}{{!}} style=\"color:red;\" {{!}} second data\n{{!}}}");
add("selser", "Build table with {{!}} [[4,[4,0,2,0]]]", "{{{!}} class=\"wikitable\"<!--iq95chc97oxn7b9--><!--4skrg9xv6pbhjjor-->\n<!--qmcjyl6r854p9zfr-->{{!}}- style=\"color:red;\"\n{{!}} data {{!}}{{!}} style=\"color:red;\" {{!}} second data\n{{!}}}");
add("selser", "Build table with {{!}} [[4,2]]", "{{{!}} class=\"wikitable\"<!--wa7mbefsy7nfjemi--><!--8sf0msj7spmbo6r-->\n! header\n! second header\n{{!}}- style=\"color:red;\"\n{{!}} data {{!}}{{!}} style=\"color:red;\" {{!}} second data\n{{!}}}");
add("selser", "Build table with {{!}} [[2,2]]", "{{{!}} class=\"wikitable\"<!--hbgluiuyj95asjor-->\n<!--xss2k4vz6txd2t9-->! header\n! second header\n{{!}}- style=\"color:red;\"\n{{!}} data {{!}}{{!}} style=\"color:red;\" {{!}} second data\n{{!}}}");
add("selser", "Build table with {{!}} [[4,1]]", "{{{!}} class=\"wikitable\"<!--q4x91ifb5ku766r-->\n! header\n! second header\n{{!}}- style=\"color:red;\"\n{{!}} data {{!}}{{!}} style=\"color:red;\" {{!}} second data\n{{!}}}");
add("selser", "Build table with {{!}} [[3,1]]", "{{{!}} class=\"wikitable\"\n! header\n! second header\n{{!}}- style=\"color:red;\"\n{{!}} data {{!}}{{!}} style=\"color:red;\" {{!}} second data\n{{!}}}");
add("selser", "Build table with pipe as data [[4,[[[3],4,[2]],4,1,3,1,0,[2,[3],0],3]]]", "{| class=\"wikitable\"<!--gy83oqmogj1hsemi-->\n!\n!6ou7558lo31ve7b9\n!x3v452l2sgcfpqfr second header<!--thydh4qgecy58kt9-->\n|- style=\"color:red;\" data-foobar=\"dswqscim49xjemi\"\n| data || style=\"color:red;\" | second data\n|- data-foobar=\"fdr26qqobkj1nhfr\"\n| style=\"color:red;\" | data with | || style=\"color:red;\" | second data with |\n|-\n|2tdvd6j4qhy0t3xr\n||||| second data with |\n|}");
add("selser", "Build table with pipe as data [[4,2]]", "{| class=\"wikitable\"<!--edau2tsedygb9--><!--v3k9certcyx03sor-->\n! header\n! second header\n|- style=\"color:red;\"\n| data || style=\"color:red;\" | second data\n|-\n| style=\"color:red;\" | data with | || style=\"color:red;\" | second data with |\n|-\n|| data with | ||| second data with |\n|}");
add("selser", "Build table with pipe as data [[3,2]]", "{| class=\"wikitable\"<!--0g4x735w6hcl3di-->\n! header\n! second header\n|- style=\"color:red;\"\n| data || style=\"color:red;\" | second data\n|-\n| style=\"color:red;\" | data with | || style=\"color:red;\" | second data with |\n|-\n|| data with | ||| second data with |\n|}");
add("selser", "Build table with pipe as data [2]", "lmhnucjqwqctmx6r\n{| class=\"wikitable\"\n! header\n! second header\n|- style=\"color:red;\"\n| data || style=\"color:red;\" | second data\n|-\n| style=\"color:red;\" | data with | || style=\"color:red;\" | second data with |\n|-\n|| data with | ||| second data with |\n|}");
add("selser", "Build table with pipe as data [1]", "{| class=\"wikitable\" data-foobar=\"lalglq06kuf03sor\"\n! header\n! second header\n|- style=\"color:red;\"\n| data || style=\"color:red;\" | second data\n|-\n| style=\"color:red;\" | data with | || style=\"color:red;\" | second data with |\n|-\n|| data with | ||| second data with |\n|}");
add("selser", "Build table with pipe as data [[4,[[[4],3,2],2,[0,[3],3],0,[0,1,[2]],4,2,0]]]", "{| class=\"wikitable\"<!--9ei1365qdb98jjor-->\n!e7jk4mefbz4fs9k9\n!ovbodp15h8mpldi\n! second header<!--xhuec55czqwipb9-->\n|- style=\"color:red;\"\n|\n|-\n| style=\"color:red;\" data-foobar=\"gfcix9klmigdgqfr\" |<nowiki> data with | </nowiki>|| style=\"color:red;\" |zp74kkx3itokzkt9 second data with |<!--5r6q0h5oa2lnmi--><!--noh3n1jqz392j4i-->\n|-\n|| data with | ||| second data with |\n|}");
add("selser", "Build table with pipe as data [[0,1]]", "{| class=\"wikitable\"\n! header\n! second header\n|- style=\"color:red;\"\n| data || style=\"color:red;\" | second data\n|-\n| style=\"color:red;\" | data with | || style=\"color:red;\" | second data with |\n|-\n|| data with | ||| second data with |\n|}");
add("selser", "Build table with pipe as data [[0,[[3,0,4],0,[3,2,4],0,0,3,[3,3,4],0]]]", "{| class=\"wikitable\"\n\n|89vo0bmcsbkv5cdi\n|- style=\"color:red;\"\n|zwnhagffqiqhyqfr\n| data \n|dju7n7jhc15rk9\n|-\n| style=\"color:red;\" | data with | || style=\"color:red;\" | second data with |\n|-\n|lljma7s674vrhpvi\n|}");
add("selser", "Build table with pipe as data [[2,2]]", "{| class=\"wikitable\"<!--hw4dq390xgk3xr-->\n<!--uqj5x3w6iwndbo6r-->! header\n! second header\n|- style=\"color:red;\"\n| data || style=\"color:red;\" | second data\n|-\n| style=\"color:red;\" | data with | || style=\"color:red;\" | second data with |\n|-\n|| data with | ||| second data with |\n|}");
add("selser", "Piped link with multiple pipe characters in link text [1]", "[[Main Page||The|Main|Page|]]");
add("selser", "Piped link with multiple pipe characters in link text [2]", "i30rvug3leeqxgvi\n\n[[Main Page||The|Main|Page|]]");
add("selser", "Piped link with multiple pipe characters in link text [[2]]", "1of1ixy9fexqd7vi[[Main Page||The|Main|Page|]]");
add("selser", "2. Interaction of linktrail and template encapsulation [1]", "{{echo|Some [[Fool]]}}\n");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [3,2,[[4,2]],3,4,3,2]", "lvdwytxnetye3ik9\n\n[[Foo|luagnevfg92otj4ike5xfi2sk2zkt9''bar'']]\n\n3id2voxy1r3pu8fr\n\nd5k1quqvir1wcdi\n\n[http://wp.org   ''foo'']");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [0,3,1,0,1,0,1]", "[[Foo|  bar]]\n\n[[Foo|  ''bar'']]\n\n[http://wp.org   foo]\n\n[http://wp.org   ''foo'']");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [[[2]],0,[[2,3]],3,4,4,0]", "[[Foo|f4xtfb3f5g0hpvi  bar]]\n\n[[Foo|g3c5aopr8zdxi529  ]]\n\n3w868b74qvakbj4i\n\nztyz2eochwefjemi\n\n[http://wp.org   ''foo'']");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [[[3]],4,2,2,2,4,0]", "[[Foo|<nowiki/>]]\n\ncv4nfitz5tfvquxr\n\nw2en4007hwk4kj4i\n\n[[Foo|  ''bar'']]\n\na89qb05wvudnp14i\n\nzpzwr06qh1moyldi\n\n[http://wp.org   foo]\n\nx4uyz0y7d74g3nmi\n\n[http://wp.org   ''foo'']");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [2,4,[2],4,2,0,4]", "qcfwzucvnhqfflxr\n\n[[Foo|  bar]]\n\nbinaypqkdl5wmi\n\nueg3tzxm6450zfr[[Foo|  ''bar'']]\n\nr16ewpwvzmo647vi\n\n86vkeemswfxn7b9\n\n[http://wp.org   foo]\n\nfq54bhoylv4bcsor\n");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [3,0,1,3,0,0,[[[2]]]]", "\n[[Foo|  ''bar'']]\n\n[http://wp.org   foo]\n\n[http://wp.org ''jk3t94whyskmx6rfoo'']");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [2,4,2,0,[2],2,4]", "jabto7czzra1nhfr\n\n[[Foo|  bar]]\n\nfcjfudo38wha1yvi\n\np3c3mch7ff1aif6r\n\n[[Foo|  ''bar'']]\n\nv6wwdcn2rljzia4i[http://wp.org   foo]\n\nsrnsnslktd3d6lxr\n\nblujz39afugl23xr\n");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [3,4,2,2,2,0,4]", "q9c5unenvqtihpvi\n\nk8q51d5k1t7w4s4i\n\n[[Foo|  ''bar'']]\n\nl31jajvwag36jemi\n\np43tgo0r9n23ayvi\n\n[http://wp.org   foo]\n\nwffmswrjps0pb9\n");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [0,2,1,3,[[4]],3,0]", "[[Foo|  bar]]\n\ncpt8orwf0l26s9k9\n\n[[Foo|  ''bar'']]\n\n[http://wp.org e15bwsd59u73c8fr]\n\n[http://wp.org   ''foo'']");
add("selser", "Parsoid-centric test: Whitespace in ext- and wiki-links should be preserved [3,4,4,2,2,4,0]", "o3awmbfvt9fnu3di\n\nj0e1avrz9scvunmi\n\npvsdo8qneqe8w7b9\n\nou4krycgek8uayvi\n\n[http://wp.org   foo]\n\nu9e32ytur700ms4i\n\n[http://wp.org   ''foo'']");
add("selser", "Handling html with a div self-closing tag [0,0,4,0,1,0,1,0,3,4,3]", "<div title />\na2lmqbelulg6tj4i\n<div title=\"\" data-foobar=\"myfxsa4q14jf9a4i\" />\n<div title=\"bar\" data-foobar=\"16l4nxten48wipb9\" />\nfjaqot6n6yfogvi\n");
add("selser", "Handling html with a div self-closing tag [0,2,3,0,1,3,4,0,0,0,2]", "<div title />hsvg8qvys3q8h0k9\n\n<div title=\"\" data-foobar=\"pmcyv89r6fq7iudi\" />i3jrozlq6c4n29\n<div title=bar/>\n50f5viswvgoav2t9<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,2,0,2,0,0,1,2,4,3,1]", "<div title />hrkbg93g91mdkj4i\n<div title/>d24otck8en4s4i\n<div title/ >\n<div title=\"bar\" data-foobar=\"m3try3iqp9fi529\" />40lnev3wvt4t2o6r\n5cg171a8bz7aatt9<div title=\"bar/\" data-foobar=\"ht3kiuub2yv6lxr\">");
add("selser", "Handling html with a div self-closing tag [4,0,0,0,0,2,2,0,0,0,2]", "m2l4sqf9jovzehfr\n<div title/>\n<div title/ >wqgi12lyu5l8fr\n9qt8023po9smunmi<div title=bar />\n<div title=bar/>\n3komwccrkiysyvi<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,0,1,0,3,3,1,0,0,4,1]", "<div title />\n<div title=\"\" data-foobar=\"akdgg69qx6jvpldi\" />\n<div title=\"bar\" data-foobar=\"6n0svo7xzqudte29\" />\n<div title=bar/>4flrs91zux1dcxr<div title=\"bar/\" data-foobar=\"i2a2v7rh1bawcdi\">");
add("selser", "Handling html with a div self-closing tag [0,0,1,4,2,0,0,0,1,0,3]", "<div title />\n<div title=\"\" data-foobar=\"5h27qgatlrw9udi\" />bq5ubiyv65x3l3di\n\nf7wbxz7wtcblnmi<div title/ >\n<div title=bar />\n<div title=\"bar\" data-foobar=\"c0zta55kk1yk3xr\" />\n");
add("selser", "Handling html with a div self-closing tag [3,3,0,3,0,0,0,4,0,0,4]", "<div title/><div title/ >\n<div title=bar />nebjm3qen9l4bo6r<div title=bar/>\npp3d9ptaj68ncdi\n");
add("selser", "Handling html with a div self-closing tag [0,4,0,2,2,0,3,0,1,0,0]", "<div title />0cxt91hns1c3di<div title/>5fmhlouu0049rudi\nzfddnll4v5s1c3di<div title/ >\n\n<div title=\"bar\" data-foobar=\"voxs0rgm1hdgf1or\" />\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,2,4,0,3,2,0,0,4,0,0]", "<div title />eywpqn9mosd4e7b9\nrj74969g5jm26gvi\n\nyn204pmfqr3mzpvi\n<div title=bar />\n27sa4fad4vtmlsor\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,0,4,3,3,3,2,0,4,0,0]", "<div title />\n3a2ar4hcg8s0dx6r\n\nttluv421ma0dx6r<div title=bar />\n47mk0eu0s70evcxr\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,0,0,2,4,4,4,3,4,0,0]", "<div title />\n<div title/>3yg021t2l4841jor\nrtcytjxmokw0o1or\n\n66b89ill6r8jjor\n\nv3cnlc0zuissjor\n\n8i8ngbo80ngbvs4i\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,3,1,0,4,4,0,0,0,0,0]", "<div title /><div title=\"\" data-foobar=\"26b6vcigdn53ik9\" />\ncsd55mrpw7g8ehfr\n\nptl9msxol22ihpvi<div title=bar />\n<div title=bar/>\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,3,0,4,1,4,0,0,1,3,3]", "<div title /><div title/>0z1eukxmytaz6w29<div title=\"\" data-foobar=\"jzl0rmosd4e7b9\" />l4blqbnipmgnl8fr<div title=bar />\n<div title=\"bar\" data-foobar=\"hkios7mkkjra4i\" />");
add("selser", "Handling html with a div self-closing tag [2,4,0,0,0,0,1,4,0,2,0]", "y8e35sgnm62prpb9<div title />gdi8pd4889pv6lxr<div title/>\n<div title/ >\n<div title=\"bar\" data-foobar=\"yw0irzjxo48l4n29\" />r91jtf9r9lgfd2t9<div title=bar/>2vkbfb0puakmx6r\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,3,3,3,3,2,1,4,4,2,0]", "<div title />5vjj77i8fepwg66r\n<div title=\"bar\" data-foobar=\"lhriiksge1dobt9\" />l6hqmr0097knvcxr\n\nlt88ef091p833di\n\nvbqt2pdljfko6r\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [2,3,4,2,0,2,0,0,0,0,3]", "vqocw5cb4ax4unmi<div title />dvekdalavcygmn29\n\nl7myvzectyo2bj4i\n<div title/ >h8p91en5mk4vx6r\n<div title=bar />\n<div title=bar/>\n");
add("selser", "Handling html with a div self-closing tag [0,4,3,0,0,3,0,0,0,0,0]", "<div title />dmd8ofkx0b3dte29\n<div title/ ><div title=bar />\n<div title=bar/>\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [1,0,0,0,4,0,0,2,0,0,0]", "<div title=\"\" data-foobar=\"s9is41y68ko9lik9\" />\n<div title/>\n6ra1fmqrs0s5rk9\n<div title=bar />1csgf1pq50yq4cxr\n<div title=bar/>\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,0,4,0,0,0,0,0,0,0,0]", "<div title />\nhzdq9cp5d0zr529\n<div title/ >\n<div title=bar />\n<div title=bar/>\n<div title=bar/ >");
add("selser", "Handling html with a div self-closing tag [0,0,3,0,2,2,4,4,3,0,2]", "<div title />\n\n0ay5a9dpj8m2t9<div title/ >q5rd7rel0immfgvi\nei4ya9wclabdquxr\n\n10kcirb4x2u1h5mi\nnp5b3z79bl6jemi<div title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[0,2,2,0,0,3,0,4,0,0,0]]", "<br title />ca3n9qal18yw4s4i\nqj9uz1bwmfbw3ik9<br title/>\n<br title/ ><br title=bar />b6yshcv3dptx1or<br title=bar/>\n<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [2]", "zikmxl9l7vte29\n\n<br title />\n<br title/>\n<br title/ >\n<br title=bar />\n<br title=bar/>\n<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [1]", "<br title />\n<br title/>\n<br title/ >\n<br title=bar />\n<br title=bar/>\n<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[0,2,2,3,0,2,1,0,4,2,2]]", "<br title />dk9vt5nrbfublnmi\ncq1v4zaldnvfs9k9<br title/><br title/ >d3zvjq60vdt2o6r\n<br title=\"bar\" data-foobar=\"k0onegfucba9k9\" />\ni233ltumi0ctbj4i7r06nbekdqi4fgvi\nr6h30sbilgfd2t9<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[0,4,4,4,3,0,4,2,0,2,0]]", "<br title />2t1m81vrbufpqfrx94k8em4qntgldibqwxzp9tipjsjor\nbnjj097e97ldijilzhs8iuoj8xgvi\n<br title=bar/>qh4wp3iisjgx2yb9\n<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[0,0,2,4,0,2,3,2,0,4,0]]", "<br title />\n97qdfbkc1d8nz5mi<br title/>51ea25u22napp66r<br title/ >ao31pgxz80ti6bt9\niczt3hqwep5e9udi\n<br title=bar/>hyg2ncqmqe7gy14i<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[2,0,0,3,0,0,0,4,0,0,0]]", "0ubgji48lso1dcxr<br title />\n<br title/><br title/ >\n<br title=bar />bnkuwblgntf647vi<br title=bar/>\n<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[3,0,0,2,4,4,0,0,0,3,2]]", "\n<br title/>tak6jp65ijsmj9k9\n5dyugkaawpd86w29tsl2xmucx9k3ayvi<br title=bar />\n<br title=bar/>dqcr689mput2zkt9<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[0,4,1,4,1,0,0,0,0,3,0]]", "<br title />33x6padp4n7y14i<br title=\"\" data-foobar=\"s32ku8ygk5d0a4i\" />2r1tqohm9vxqolxr<br title=\"\" data-foobar=\"s21sk2l9fiuow29\" />\n<br title=bar />\n<br title=bar/><br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[2,2,0,2,0,0,0,0,0,0,1]]", "4mon4sx8d75vcxr<br title />cq9odu9ftnxhto6r\n<br title/>mllazr81dckxogvi\n<br title/ >\n<br title=bar />\n<br title=bar/>\n<br title=\"bar/\" data-foobar=\"azit67rektb4vx6r\">");
add("selser", "Handling html with a br self-closing tag [[0,0,0,4,2,4,1,0,3,0,0]]", "<br title />\n<br title/>xxxx2l29fkmrhpvihskx3wdt3p11nhfr<br title/ >7z6kganc7xrvbo6r<br title=\"bar\" data-foobar=\"oqi7lfhelkpujtt9\" />\n\n<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[1,0,4,0,0,4,0,2,0,0,0]]", "<br title=\"\" data-foobar=\"2imakz3vrgam7vi\" />\nky2cjkk76dc2fbt9\n<br title/ >xl4j77qpveso47vi<br title=bar />65xmmggrk28iwwmi\n<br title=bar/>\n<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[0,0,0,2,1,0,0,2,4,0,0]]", "<br title />\n<br title/>ijzdh4uerc8oajor\n<br title=\"\" data-foobar=\"i9otejvc98eka9k9\" />\n<br title=bar />puumi6qcjg3w61or\ntw74kiaxwe6a8aor\n<br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[0,0,0,4,0,0,2,0,3,0,4]]", "<br title />\n<br title/>5obz7gcvgrv0a4i<br title/ >\n1zf4ljohfm0lik9<br title=bar />\n\n766rcon9lcbzw7b9\n");
add("selser", "Handling html with a br self-closing tag [[0,3,0,2,0,4,0,2,0,3,3]]", "<br title /><br title/>irxhfbe46ofg8pvi\n<br title/ >jlxc4655va38fr<br title=bar />ok12d02ne9udi\n<br title=bar/>\n");
add("selser", "Handling html with a br self-closing tag [[1,3,0,0,4,0,2,0,0,3,0]]", "<br title=\"\" data-foobar=\"qk9iqlffataqncdi\" /><br title/>\nyut18a54lpu8fr\nv0kplvxcj8gds4i<br title=bar />\n<br title=bar/><br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[4,0,0,0,3,2,0,3,0,3,0]]", "78hnxpa0vt43g14i\n<br title/>\n3mhsjjj42k68byb9\n<br title=bar /><br title=bar/><br title=bar/ >");
add("selser", "Handling html with a br self-closing tag [[3,0,3,0,2,0,3,3,0,2,0]]", "\nap9gafnt44vaemi<br title/ >\n<br title=bar/>n091fz5rxf4unmi\n<br title=bar/ >");
add("selser", "Horizontal ruler (should it add that extra space?) [2,2,4,3,3,0,3]", "os2q7ta1r4sa714i<hr>cnbjk7147zld6lxr\nqy88lfowsy30udi<hr\n>");
add("selser", "Horizontal ruler (should it add that extra space?) [2,2,0,2,[3],0,[4]]", "mfej6cl2tvlpu8fr<hr>g7w5lx5r4xz85mi\n<hr >n8aj1jq5r9e5qaor\n<hr\n>4tlzqynij4lk57b9");
add("selser", "Horizontal ruler (should it add that extra space?) [0,4,3,4,2,0,2]", "<hr>efqnkd9nqlwel8fr\n\nxmvwrb0llpz7u8fr\n\njplm7w9i7t10dx6r\n\nfoo <hr\n>wmoqdkg19vtgwrk9\n\n<nowiki> </nowiki>bar");
add("selser", "Horizontal ruler (should it add that extra space?) [2,0,0,2,4,2,1]", "zxpf8ei52ttn8kt9<hr>\n<hr >f75t6r98vikn8kt9\n16a3ff1niy7m0a4i\n\nznvihrl0p4hiwwmi<hr\n> bar");
add("selser", "Horizontal ruler (should it add that extra space?) [1,0,0,0,2,0,4]", "<hr data-foobar=\"zbky74okstc5wmi\">\n<hr >\n1cdauyobybltbj4i\n\nfoo <hr\n>72ti2j1ve5pl23xr\n");
add("selser", "Horizontal ruler (should it add that extra space?) [2,3,0,0,[4],3,2]", "o5rwiutljxjsv2t9<hr><hr >\nd35ei25187b0ggb9\n\nl2gmcvf139bsatt9\n\n<nowiki> </nowiki>bar");
add("selser", "Horizontal ruler (should it add that extra space?) [3,3,1,0,0,0,0]", "<hr data-foobar=\"lf04si3r3323xr\">\nfoo <hr\n> bar");
add("selser", "Horizontal ruler (should it add that extra space?) [4,0,0,3,2,3,[2]]", "x425cn04w3y833di\n<hr >w1vtj40el2x4j9k9\n\nfoo \n\n1k0l0e76yfbnjyvi bar");
add("selser", "Horizontal ruler (should it add that extra space?) [1,3,0,3,0,3,[3]]", "<hr data-foobar=\"l0b3o734w50o1or\"><hr >foo \n");
add("selser", "Horizontal ruler (should it add that extra space?) [0,0,0,0,[4],0,1]", "<hr>\n<hr >\n2bhtkpyrargj5rk9<hr\n> bar");
add("selser", "Horizontal ruler (should it add that extra space?) [3,4,4,2,3,0,0]", "o6enrwkz4kl9dx6r\n\nqc1zz05ztk9sh5mi\n\npt363zha88q9qkt9\n<hr\n> bar");
add("selser", "Horizontal ruler (should it add that extra space?) [0,0,1,0,[3],0,3]", "<hr>\n<hr data-foobar=\"h3lfecmid64unmi\">\n<hr\n>");
add("selser", "Horizontal ruler (should it add that extra space?) [1,2,4,2,1,0,0]", "<hr data-foobar=\"n0w4kgj63z5jnhfr\">2tme0t8y5iwfjemi\no1nlliabwat9be29\n\n77m2ud715kfyldi\nfoo <hr\n> bar");
add("selser", "Horizontal ruler (should it add that extra space?) [0,0,0,4,0,3,0]", "<hr>\n<hr >3nksf5u6o17nwmi\n\nfoo \n\n<nowiki> </nowiki>bar\n");
add("selser", "Horizontal ruler (should it add that extra space?) [0,0,0,3,4,1,0]", "<hr>\n<hr >d13gtt9304e1m7vi<hr data-foobar=\"fbu9qf9y7h7aatt9\"> bar");
add("selser", "Mixed list [3,0,0]", "#** Level 3, but ordered");
add("selser", "Nested lists 3 (first element empty) [2]", "wdyx85jiz95xko6r\n*\n**bar");
add("selser", "Nested lists 3 (first element empty) [1]", "*\n**bar");
add("selser", "Nested lists 3 (first element empty) [[2]]", "* ipaxm1uzpiv34n29\n*\n**bar");
add("selser", "Nested lists 6 (both elements empty) [1]", "*\n**");
add("selser", "Nested lists 6 (both elements empty) [2]", "xm8c79kac1y8pvi\n*\n**");
add("selser", "Nested lists 6 (both elements empty) [[2]]", "* tmc5x74vyp7m0a4i\n*\n**");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [[4],0,[[4,4],3,2]]", "390h6pqo24y22o6r\n*o41tgyrxzloko6rkhwclpkbqgsqbyb9\n* x920d3kit2c323xr\n*b</span>");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [3,0,1]", "*a</span><span>\n*b</span>");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [[1],0,1]", "<span data-foobar=\"gmykdz3f6s2fyldi\">\n*a</span><span>\n*b</span>");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [2,4,2]", "p5zfzj30o8g833di\n\n<span>\n\nf07i3koy7pqtzkt9\n\nzkrsmqi20yynwmi\n*a</span><span>\n*b</span>");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [0,3,[[0,2],0,2]]", "<span>\n*a9ox9e692g6s3v7vi<span>\n* ksgt5bqr6cpaatt9\n*b</span>");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [1,0,1]", "<span>\n*a</span><span>\n*b</span>");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [1,0,[1,0,2]]", "<span>\n*a<span>\n* er1s7ahfhat0rudi\n*b</span>");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [2,0,[2,4,1]]", "imlwazpwj8pmygb9\n\n<span>\n* 92leny9kljpjh5mi\n*a</span><span>\n* 41bo973co1zfflxr\n*b");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [[3],2,2]", "\nas4hdzhzvomholxr\n\nledrlo4nfqci8uxr\n*a</span><span>\n*b</span>");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [[3],4,2]", "\n1fjxqzbnb7bhjjor\n\n4e4bjramiqc9pb9\n*a</span><span>\n*b</span>");
add("selser", "Unbalanced closing non-block tags don't break a list\n(php parser relies on Tidy to fix up) [[1],0,2]", "<span data-foobar=\"5ikcial165z8h0k9\">\n\nzsspri1tvvi8jjor\n*a</span><span>\n*b</span>");
add("selser", "Table with missing opening <tr> tag [[2,[[4,3],3]]]", "<table><!--x5lw2ikhl5cow29-->\n<td>v9n71rpyucvxi529</td></tr>\n</table>");
add("selser", "Table with missing opening <tr> tag [[2,[0,3]]]", "<table><!--okhghfhpithgp66r-->\n<td>foo</td>\n</tr>\n</table>");
add("selser", "Template with invalid target containing tags [2]", "ki3gc6j34165stt9\n\n{{a<b>b</b>|{{echo|foo}}|{{echo|a}}={{echo|b}}|a = b}}");
add("selser", "Template with invalid target containing tags [[3,3,3,0,4,0,2,0,0]]", "{{echo|foo}}jauo06zjihi1kyb9{{echo|a}}9h10iqritlwvobt9={{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing tags [[3,[4],2,0,0,0,3,0,0]]", "<b>5q0b9wq3qgu5l8fr</b>gs6mp3pt36vibe29|{{echo|foo}}|{{echo|a}}{{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing tags [1]", "<nowiki>{{a</nowiki><b>b</b>|{{echo|foo}}|{{echo|a}}={{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing tags [[2,[2],4,0,2,0,0,0,0]]", "<nowiki>39bd8s5z5cw0cnmi{{a</nowiki><b>7k1tfg6lot1brzfrb</b>lri8gc4zecmr6bt9{{echo|foo}}5m3n5xzvi6893sor|{{echo|a}}={{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing tags [[0,[2],2,0,0,0,3,0,0]]", "<nowiki>{{a</nowiki><b>dny163izhm9xjemib</b>ogbwlk7h7di5p14i|{{echo|foo}}|{{echo|a}}{{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing tags [[0,2,0,0,0,0,4,0,0]]", "<nowiki>{{a9doy5ksflltprpb9</nowiki><b>b</b>|{{echo|foo}}|{{echo|a}}zsy6zc95znyfzuxr{{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing tags [[2,0,0,0,4,0,0,0,0]]", "<nowiki>xu2vb4mmpkhgp66r{{a</nowiki><b>b</b>|{{echo|foo}}78hbshfbw6pw4s4i{{echo|a}}={{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing tags [[0,0,4,0,0,0,0,0,0]]", "<nowiki>{{a</nowiki><b>b</b>lvadzdcjhmcs1yvi{{echo|foo}}|{{echo|a}}={{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing tags [[4,1,0,0,4,0,3,0,0]]", "05laxsak396swcdi<b data-foobar=\"q4h81dcojfc4n29\">b</b>|{{echo|foo}}vr4d4w51gvnp14i{{echo|a}}{{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing unclosed tag [1]", "<nowiki>{{a</nowiki><b>|{{echo|foo}}|{{echo|a}}={{echo|b}}|a = b}}");
add("selser", "Template with invalid target containing unclosed tag [[0,1]]", "<nowiki>{{a</nowiki><b data-foobar=\"ah4i6emv4j6pqfr\">|{{echo|foo}}|{{echo|a}}={{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing unclosed tag [[4,2]]", "d7d6vni91sfez5mio7di35eq9ubd42t9<b>|{{echo|foo}}|{{echo|a}}={{echo|b}}|a = b}}");
add("selser", "Template with invalid target containing unclosed tag [[3,[0,0,4,0,3,0,0]]]", "<b>|{{echo|foo}}f3j5exmxvo0f6r{{echo|a}}{{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing unclosed tag [[0,[4,0,0,0,3,0,0]]]", "<nowiki>{{a</nowiki><b>n6rra5yl19i442t9{{echo|foo}}|{{echo|a}}{{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing unclosed tag [[3,[4,0,0,0,0,0,0]]]", "<b>98je9r0hl43u9pb9{{echo|foo}}|{{echo|a}}={{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing unclosed tag [2]", "n9yqgp0xjbf647vi\n\n{{a<b>|{{echo|foo}}|{{echo|a}}={{echo|b}}|a = b}}");
add("selser", "Template with invalid target containing unclosed tag [[0,[3,0,0,0,2,0,0]]]", "<nowiki>{{a</nowiki><b>{{echo|foo}}|{{echo|a}}w3curdi6jgrdx6r={{echo|b}}|a =b}}");
add("selser", "Template with invalid target containing unclosed tag [[2,2]]", "<nowiki>bbplai8we7j2x1or{{apfbr2blkhz146lxr</nowiki><b>|{{echo|foo}}|{{echo|a}}={{echo|b}}|a = b}}");
add("selser", "Template with invalid target containing wikilink [2]", "zwc4e5r9fcz93sor\n\n{{[[Main Page]]}}");
add("selser", "Template with invalid target containing wikilink [1]", "<nowiki>{{</nowiki>[[Main Page]]}}");
add("selser", "Template with invalid target containing wikilink [[3,0,0]]", "[[Main Page]]}}");
add("selser", "Template with invalid target containing wikilink [[2,0,0]]", "<nowiki>oqfrkey46zaaif6r{{</nowiki>[[Main Page]]}}");
add("selser", "Template with invalid target containing wikilink [[0,[2],0]]", "<nowiki>{{</nowiki>[[Main Page|g5dbrx85rnt57b9Main Page]]}}");
add("selser", "Template with invalid target containing wikilink [[4,2,0]]", "gb2u86grtumu0udigposn6eyae154s4i[[Main Page]]}}");
add("selser", "Template with invalid target containing wikilink [[3,[4],0]]", "[[Main Page|hah73egswvf2mx6r]]}}");
add("selser", "BUG 553: link with two variables in a piped link [1]", "{| data-foobar=\"sermfvbsbpujtt9\"\n|[[{{{1}}}|{{{2}}}]]\n|}");
add("selser", "BUG 553: link with two variables in a piped link [[0,[[[0,0,0,0,2]],2]]]", "{|\n|[[{{{1}}}|{{{2}}}<nowiki>67x19euoicw61or]]</nowiki><!--jadn53w2sr79zfr-->\n|}");
add("selser", "BUG 553: link with two variables in a piped link [[0,[0,4]]]", "{|\n|[[{{{1}}}|{{{2}}}]]<!--5luam4tixnbl0udi-->\n|}");
add("selser", "BUG 553: link with two variables in a piped link [[0,[2,2]]]", "{|\n<!--2l9bvsosq2iq9f6r-->|[[{{{1}}}|{{{2}}}]]<!--f21xzcxsl9iwl8fr-->\n|}");
add("selser", "BUG 553: link with two variables in a piped link [[0,[2,0]]]", "{|\n<!--ekt298jbktjoflxr-->|[[{{{1}}}|{{{2}}}]]\n|}");
add("selser", "BUG 553: link with two variables in a piped link [[3,1]]", "{|\n|[[{{{1}}}|{{{2}}}]]\n|}");
add("selser", "BUG 553: link with two variables in a piped link [2]", "riybxbthicfskyb9\n{|\n|[[{{{1}}}|{{{2}}}]]\n|}");
add("selser", "BUG 553: link with two variables in a piped link [[0,2]]", "{|\n<!--z79xd4wgjxphw7b9-->|[[{{{1}}}|{{{2}}}]]\n|}");
add("selser", "Abort table cell attribute parsing on wikilink [1]", "{| data-foobar=\"w6muy2if0yrjm7vi\"\n| testing [[one|two]] | three || four\n| testing one two | three || four\n| testing=\"[[one|two]]\" | three || four\n|}");
add("selser", "Abort table cell attribute parsing on wikilink [[0,1]]", "{|\n| testing [[one|two]] | three || four\n| testing one two | three || four\n| testing=\"[[one|two]]\" | three || four\n|}");
add("selser", "Abort table cell attribute parsing on wikilink [[0,[[[2,0,0],1,0,2,[2],4,[0,2,0],4],0]]]", "{|\n|7s7418n1uo7uv7vi testing [[one|two]] | three || data-foobar=\"zomk9que1edygb9\" | four\n|2mhjtgea0fcg14i\n| testing one two | three ||5naus1mqi98gp66r four\n|hz9awkyqyfrbe29\n| testing=\"6y0u0i52tf893sor[[one|two]]<nowiki>\" | three </nowiki>\n|6yr16iy9fojq0k9\n|}");
add("selser", "Abort table cell attribute parsing on wikilink [2]", "xldg5ui1w96647vi\n{|\n| testing [[one|two]] | three || four\n| testing one two | three || four\n| testing=\"[[one|two]]\" | three || four\n|}");
add("selser", "Abort table cell attribute parsing on wikilink [[4,[2,3]]]", "{|<!--2pbfrmfop0mp9zfr--><!--rv6arn1q38cwhfr-->\n| testing [[one|two]] | three || four\n| testing one two | three || four\n| testing=\"[[one|two]]\" | three || four\n|}");
add("selser", "Abort table cell attribute parsing on wikilink [[3,1]]", "{|\n| testing [[one|two]] | three || four\n| testing one two | three || four\n| testing=\"[[one|two]]\" | three || four\n|}");
add("selser", "Abort table cell attribute parsing on wikilink [[0,2]]", "{|\n<!--l7obo7dbpflmcxr-->| testing [[one|two]] | three || four\n| testing one two | three || four\n| testing=\"[[one|two]]\" | three || four\n|}");
add("selser", "Abort table cell attribute parsing on wikilink [[4,[[2,[2],4,3,2,4,[3,4,4],1],0]]]", "{|<!--w2ugfafj2x83erk9-->\n|18az3ae320dlsor\n| testing [[one|two]] | three ||icotw6yeh7x2yb9 four\n|w2ux7qtgctyb9\n|g1zrrcwd5kqn0zfr|| four\n|p8xffhgo254gqfr\n|std1xusl1ndvlsorwrsl542ys0vpwrk9|| data-foobar=\"2r11xivrxnbl0udi\" | four\n|}");
add("selser", "Template with targets containing wikilinks [4,0,1,2,1]", "p8pza9iyg3yaxlxr\n\n<nowiki>{{</nowiki>[[{{echo|foo}}]]}}\n\ndf60zk0z1v8ia4i\n\n{{{{echo|[[foo}}]]}}");
add("selser", "Template with targets containing wikilinks [[2,1,0],0,[0,0,2],0,0]", "<nowiki>h2hv5x8klgom9529{{</nowiki>[[foo]]}}\n\n<nowiki>{{</nowiki>[[{{echo|foo}}]]<nowiki>ncfzvzzr3mzpvi}}</nowiki>\n\n{{{{echo|[[foo}}]]}}");
add("selser", "Template with targets containing wikilinks [0,3,2,0,2]", "{{[[foo]]}}\n\n8rx6djpk76ojq0k9\n\n{{[[{{echo|foo}}]]}}\n\n5oa9tnlujuivn29\n\n{{{{echo|[[foo}}]]}}");
add("selser", "Template with targets containing wikilinks [4,3,1,3,4]", "tj6nwlghdk5ljtt9\n\n<nowiki>{{</nowiki>[[{{echo|foo}}]]}}\n\nz57gp6q7znuvunmi\n");
add("selser", "Template with targets containing wikilinks [[4,0,4],0,1,2,4]", "340gvnbe2k7nl8fr[[foo]]<nowiki/>s33i9adwhcd9ggb9\n\n<nowiki>{{</nowiki>[[{{echo|foo}}]]}}\n\ny20i831f0qkt9\n\nbj9cw1q9ft6b6gvi\n");
add("selser", "Template with targets containing wikilinks [[2,0,2],3,1,0,4]", "<nowiki>10ghh1t5f8ddkj4i{{</nowiki>[[foo]]<nowiki>86q8c3ty61l6usor}}</nowiki>\n\n<nowiki>{{</nowiki>[[{{echo|foo}}]]}}\n\n52q3lpdqrn7sc3di\n");
add("selser", "Template with targets containing wikilinks [[0,[3],0],0,0,2,2]", "<nowiki>{{</nowiki>[[foo|<nowiki/>]]}}\n\n{{[[{{echo|foo}}]]}}\n\n1z50cb7dcf28olxr\n\n1ituto223xxenrk9\n\n{{{{echo|[[foo}}]]}}");
add("selser", "Template with targets containing wikilinks [[0,2,0],0,2,0,0]", "<nowiki>{{htu2qmdkzjkedn29</nowiki>[[foo]]}}\n\nfejf3xvsleopqfr\n\n{{[[{{echo|foo}}]]}}\n\n{{{{echo|[[foo}}]]}}");
add("selser", "Template with targets containing wikilinks [1,4,0,2,0]", "<nowiki>{{</nowiki>[[foo]]}}\n\n1cd1vr2c1t9be29\n\n{{[[{{echo|foo}}]]}}\n\nkjsr70qifjx4unmi\n\n{{{{echo|[[foo}}]]}}");
add("selser", "Template with targets containing wikilinks [3,0,1,0,4]", "\n<nowiki>{{</nowiki>[[{{echo|foo}}]]}}\n\nnjip1d7tubz6ko6r\n");
add("selser", "Template with targets containing wikilinks [[3,4,0],0,2,0,3]", "<nowiki>25jsxi33dblc8fr}}</nowiki>\n\nxo4f2m9ziaawnrk9\n\n{{[[{{echo|foo}}]]}}\n");
add("selser", "Template with targets containing wikilinks [2,0,[4,0,3],0,0]", "jwj1clvcmw5qaor\n\n{{[[foo]]}}\n\na6sabnbx8xueg66r[[{{echo|foo}}]]\n\n{{{{echo|[[foo}}]]}}");
add("selser", "Template with targets containing wikilinks [2,3,2,0,0]", "jn3l3gn2shlac3di\n\n{{[[foo]]}}\n\neps1xdvsq62vgqfr\n\n{{[[{{echo|foo}}]]}}\n\n{{{{echo|[[foo}}]]}}");
add("selser", "2. includeonly in html attr value [[0,3,0]]", "<span id=\"<noinclude>v1</noinclude><includeonly>v2</includeonly>\">bar</span><span id=<noinclude>\"v1\"</noinclude><includeonly>\"v2\"</includeonly>>bar</span>");
add("selser", "2. includeonly in html attr value [[0,4,0]]", "<span id=\"<noinclude>v1</noinclude><includeonly>v2</includeonly>\">bar</span>3qendv6zaaif6r<span id=<noinclude>\"v1\"</noinclude><includeonly>\"v2\"</includeonly>>bar</span>");
add("selser", "2. includeonly in html attr value [2]", "u352zdrjeccsdcxr\n\n<span id=\"<noinclude>v1</noinclude><includeonly>v2</includeonly>\">bar</span>\n<span id=<noinclude>\"v1\"</noinclude><includeonly>\"v2\"</includeonly>>bar</span>");
add("selser", "2. includeonly in html attr value [[0,2,0]]", "<span id=\"<noinclude>v1</noinclude><includeonly>v2</includeonly>\">bar</span>hkp7pfjmofde7b9\n<span id=<noinclude>\"v1\"</noinclude><includeonly>\"v2\"</includeonly>>bar</span>");
add("selser", "2. includeonly in html attr value [1]", "<span id=\"<noinclude>v1</noinclude><includeonly>v2</includeonly>\">bar</span>\n<span id=<noinclude>\"v1\"</noinclude><includeonly>\"v2\"</includeonly>>bar</span>");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,3]]", "{{echo|}}{| width=\"100%\"\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,[0,2]]]", "{{echo|}}{| width = '100%'\n|foo<!--7w2da44bn7idaemi-->\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,1]", "{{echo|}}{| width=\"100%\" data-foobar=\"t98xv1gnmkhp8pvi\"\n|foo\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,[[[2]],3]]]", "{{echo|}}{| width = '100%'\n|5l8xeq1crrafw29foo\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[4,[4,2]]]", "{{echo|}}{| width = '100%'<!--913di70icp85xw29--><!--8ypcl8eh8xx8yqfr--><!--l2z1wp6p0xwxko6r-->\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[4,[2,0]]]", "{{echo|}}{| width = '100%'<!--8h981ha9l6myrpb9--><!--dnzxupmh4eptlnmi-->\n|foo\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[4,[3,0]]]", "{{echo|}}{| width = '100%'<!--4w5gtskk09ou5wmi-->\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,2]", "{{echo|}}nbv262u96o3cjtt9\n{| width = '100%'\n|foo\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,1]]", "{{echo|}}{| width = '100%'\n|foo\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,[[3],0]]]", "{{echo|}}{| width = '100%'\n\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,[1,4]]]", "{{echo|}}{| width = '100%'\n|foo<!--ls9rf79zvd8fflxr-->\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,[[3],3]]]", "{{echo|}}{| width = '100%'\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,[2,0]]]", "{{echo|}}{| width = '100%'\n<!--gqnq56unxcu9pb9-->|foo\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,[[[3]],3]]]", "{{echo|}}{| width = '100%'\n|\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,[4,0]]]", "{{echo|}}{| width = '100%'\n<!--u3at1qt3epfd2t9-->\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[3,[1,0]]]", "{{echo|}}{| width = '100%'\n|foo\n|}");
add("selser", "1. Table tag in SOL posn. should get reparsed correctly with valid TSR [0,[0,[[1],4]]]", "{{echo|}}{| width = '100%'\n| data-foobar=\"pnyys77mkaxrms4i\" |foo<!--kok37wstwgbvs4i-->\n|}");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,4,3,3,0,0,3,1]", "\n00y7omltvljfko6r\n\n<table data-foobar=\"jmfnmukwsfko6r\">[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,[3],0,0,3,0,4,2]", "<table></table>\n<!--Two categories (Bug 50330)-->\naa9zlufnr5nlv7vi\n\nq2pyl7rcb4e4gqfr<table>[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [4,1,3,2,2,2,0,2]", "ixen0t4bgr8xs9k9<table data-foobar=\"srvdo6x0y0bb7qfr\"><tr><td>foo</td></tr></table>uzdg6q9o13xcrf6r<!--Two categories (Bug 50330)-->4qtzlqvafwyaatt9\nxof76nvw8xmkj4i\n\nmjznl60h5moenrk9<table>[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,4,2,4,2,1,0,1]", "\nfvxtgp3ng3c8fr\n\nndpvbu6qrq2awcdi\n\nxvl7qedcdte29\n\nut1kj4t41ud6lxr\n[[Category:bar1]]<table data-foobar=\"bl3hi9ypv5d34n29\">[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [3,[[3]],3,2,0,4,0,4]", "<table></table>ix0vd82hs81fko6r<!--Two categories (Bug 50330)-->\nk15lw873lct2zkt9\n\n3jhgi813c6av2t9\n");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [1,3,0,4,0,0,0,[[[[3]]]]]", "[[Category:foo1]]\n6jn116sfnaozjjor\n<table><tr><td></td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [3,2,3,2,2,0,0,[[[[2]]]]]", "isfe9nts88woecdi<table>[[Category:foo1]]<tr><td>foo</td></tr></table>qvw89yxvkoab57b9<!--Two categories (Bug 50330)-->u9lqrotjvqb0529\n<table><tr><td>gsvn66t5or5p14ifoo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [1,2,0,0,4,0,0,1]", "[[Category:foo1]]\n19pn73ihhorms4i<table>[[Category:foo1]]<tr><td>foo</td></tr></table>\n<!--Two categories (Bug 50330)-->uqp2nnbb6ueg66r\n<table data-foobar=\"dzahg5avpeyu8fr\">[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,1,4,0,0,0,1,[1]]", "<table data-foobar=\"0zy0k38eyyv0wwmi\">[[Category:foo1]]<tr><td>foo</td></tr></table>13pnkfecgawwb3xr<!--Two categories (Bug 50330)-->\n[[Category:bar2]]<table><tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [4,3,0,2,2,0,0,[2]]", "m9y118hycf6iggb9\n\nxvms1aht5ut0529<!--Two categories (Bug 50330)-->\n\nj909rng3dfopf1or\n<table><!--ndktasffvlcba9k9-->[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [2,3,4,2,3,0,0,0]", "pus64uq6ej4z33di\n\ng560va5z5cw0cnmi\n\nyykoaqbw7kbro1or<!--Two categories (Bug 50330)-->\n<table>[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [4,1,0,2,0,0,3,2]", "jeue60f2n8eel8fr<table data-foobar=\"uib4z52061hmpldi\"><tr><td>foo</td></tr></table>\numehhf7e7cbfyldi<!--Two categories (Bug 50330)-->\n\n0v6iqx906hv3g14i<table>[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,3,2,4,3,3,0,4]", "\nhdu8b5un73rw9udi\n\naxxk36cxrg0newmi\n\nl6db7w99encm1jor\n");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,2,4,4,4,4,2,0]", "\n3p6ds2cdy5geqaor<table>[[Category:foo1]]<tr><td>foo</td></tr></table>nf31cc8xo4leg66r\n\nirxbftzactprpb9\n\ndd21qg54ruw0cnmi\n\nv7gjnsdqspnqxgvi\n\nzg2izvkgtlu15rk9\n<table>[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,3,2,0,2,4,0,2]", "\n5hat330odnmw8kt9\n<!--Two categories (Bug 50330)-->\n6ssl3a5gpeqaor\n\novgd20ux77722o6r\n\nkjuzhgsj82blz0k9<table>[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [2,3,2,2,0,0,0,[[4]]]", "pr6u7tvu4zccjtt9\n\nbzwx5yz7n0y0hpvi\n\nsqg8knvzd26gvi<!--Two categories (Bug 50330)-->\n<table><!--igfmiz8r7rykfbt9--></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,1,4,0,0,0,1,[2]]", "<table data-foobar=\"16hnpb0od17l23xr\">[[Category:foo1]]<tr><td>foo</td></tr></table>p0tte61pcmh7iudi<!--Two categories (Bug 50330)-->\n[[Category:bar2]]<table><!--8rm0h9nhoqkc5wmi-->[[Category:bar1]][[Category:bar2]]<tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,[2],0,2,2,0,0,[1]]", "<table><!--c0u2c9uer91cerk9-->[[Category:foo1]]<tr><td>foo</td></tr></table>\n8hyzimw3d00vbo6r<!--Two categories (Bug 50330)-->\n\n12c9zldofglj714i\n<table><tr><td>foo</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,[[3]],2,0,0,4,0,[[[4]]]]", "<table></table>frdce0reto2h85mi\n<!--Two categories (Bug 50330)-->\n3lz5b6rsfydjkyb9\n<table><tr><td>6xqvzsggdh392j4i</td></tr></table>");
add("selser", "Templates: HTML Tables: 5. Proper fostering of categories from inside [0,4,4,0,0,3,2,[3]]", "\n4izrbq79n79442t9\n\nnmwv8fylt48fflxr<!--Two categories (Bug 50330)-->\n\nzjdiwp9jubejc3di\n<table></table>");
add("selser", "Image with multiple widths -- use last [2]", "tyg28ph5bf5el8fr\n\n[[File:Foobar.jpg|200px|300px|caption]]");
add("selser", "Image with multiple widths -- use last [1]", "[[File:Foobar.jpg|200px|300px|caption]]");
add("selser", "Image with width attribute at different positions [0,2,[0,1],3,0]", "[[File:Foobar.jpg|200px|right|Caption]]xmu7d955jxmndn29\n[[File:Foobar.jpg|right|200px|Caption]]\n[[File:Foobar.jpg|right|Caption|200px]]");
add("selser", "Image with 'frame' first. [0,4,[0,1],3,0]", "[[File:Foobar.jpg|frame|caption]]7sa4l88rpsowp14i[[File:Foobar.jpg|frame|frameless|caption]]\n[[File:Foobar.jpg|frame|thumb|caption]]");
add("selser", "Render invalid page names as plain text (bug 51090) [0,0,1]", "[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n[[foo~~~bar]]\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\n[[{{echo|./../foo}}|bar]]\n[[{{echo|foo/.}}|bar]]\n[[{{echo|foo/..}}|bar]]\n[[{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}]]\n[[{{echo|foo././bar}}]]\n[[{{echo|foo{bar}}]]\n[[{{echo|foo}bar}}]]\n[[{{echo|foo[bar}}]]\n[[{{echo|foo]bar}}]]\n[[{{echo|foo<bar}}]]");
add("selser", "Render invalid page names as plain text (bug 51090) [2,2,[3,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0]]", "pwgl4v8r9af6flxr\n\n[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n[[foo~~~bar]]\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\nhtc0s57znl9v0a4i\n\n{{echo|./../foo}}{{echo|foo/.}}|bar]]\n[[{{echo|foo/..}}<nowiki>|bar]]</nowiki>\n[[{{echo|foo~~~~bar}}<nowiki>]]</nowiki>\n[[{{echo|foo>bar}}<nowiki>]]</nowiki>\n[[{{echo|foo././bar}}<nowiki>]]</nowiki>\n[[{{echo|foo{bar}}<nowiki>]]</nowiki>\n[[{{echo|foo}bar}}<nowiki>]]</nowiki>\n[[{{echo|foo[bar}}{{echo|foo]bar}}<nowiki>]]</nowiki>\n[[{{echo|foo<bar}}<nowiki>]]</nowiki>");
add("selser", "Render invalid page names as plain text (bug 51090) [0,3,2]", "[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n[[foo~~~bar]]\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\ngkfu6gduolqmpldi\n\n[[{{echo|./../foo}}|bar]]\n[[{{echo|foo/.}}|bar]]\n[[{{echo|foo/..}}|bar]]\n[[{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}]]\n[[{{echo|foo././bar}}]]\n[[{{echo|foo{bar}}]]\n[[{{echo|foo}bar}}]]\n[[{{echo|foo[bar}}]]\n[[{{echo|foo]bar}}]]\n[[{{echo|foo<bar}}]]");
add("selser", "Render invalid page names as plain text (bug 51090) [[2],0,[4,0,2,0,0,0,2,0,0,0,0,0,0,0,4,0,0,0,0,0,4,0,3]]", "8sctlarbskfswcdi[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n<nowiki>[[foo~~~bar]]</nowiki>\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\nfxzu21euibpgb9{{echo|./../foo}}k3i4gi7d5yst6gvi|bar]]\n[[{{echo|foo/.}}|bar]]\n[[{{echo|foo/..}}<nowiki>7zyih9glwodmquxr|bar]]</nowiki>\n[[{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}]]\n[[{{echo|foo././bar}}]]\n[[{{echo|foo{bar}}3e27dqprn1k2zkt9{{echo|foo}bar}}]]\n[[{{echo|foo[bar}}]]\n[[{{echo|foo]bar}}xof8d4gk7hw7b9{{echo|foo<bar}}\n");
add("selser", "Render invalid page names as plain text (bug 51090) [0,0,4]", "[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n[[foo~~~bar]]\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\n5cifaj4uowyaatt9\n");
add("selser", "Render invalid page names as plain text (bug 51090) [[3],0,2]", "\n\nf5t0h4865mrysyvi\n\n[[{{echo|./../foo}}|bar]]\n[[{{echo|foo/.}}|bar]]\n[[{{echo|foo/..}}|bar]]\n[[{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}]]\n[[{{echo|foo././bar}}]]\n[[{{echo|foo{bar}}]]\n[[{{echo|foo}bar}}]]\n[[{{echo|foo[bar}}]]\n[[{{echo|foo]bar}}]]\n[[{{echo|foo<bar}}]]");
add("selser", "Render invalid page names as plain text (bug 51090) [0,0,2]", "[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n[[foo~~~bar]]\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\nff48sg2pipqwu3di\n\n[[{{echo|./../foo}}|bar]]\n[[{{echo|foo/.}}|bar]]\n[[{{echo|foo/..}}|bar]]\n[[{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}]]\n[[{{echo|foo././bar}}]]\n[[{{echo|foo{bar}}]]\n[[{{echo|foo}bar}}]]\n[[{{echo|foo[bar}}]]\n[[{{echo|foo]bar}}]]\n[[{{echo|foo<bar}}]]");
add("selser", "Render invalid page names as plain text (bug 51090) [[4],3,[0,0,2,0,0,0,0,0,0,0,2,0,0,0,0,0,4,0,0,0,0,0,2]]", "a8exokpi7bricnmi\n\n[[{{echo|./../foo}}<nowiki>yjmnkmy2satt9|bar]]</nowiki>\n[[{{echo|foo/.}}|bar]]\n[[{{echo|foo/..}}|bar]]\n[[{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}<nowiki>naobmwo11fnipb9]]</nowiki>\n[[{{echo|foo././bar}}]]\n[[{{echo|foo{bar}}]]\n[[{{echo|foo}bar}}rksixalimh392j4i{{echo|foo[bar}}]]\n[[{{echo|foo]bar}}]]\n[[{{echo|foo<bar}}<nowiki>xmch4v09b9m2huxr]]</nowiki>");
add("selser", "Render invalid page names as plain text (bug 51090) [0,0,[2,0,3,0,3,0,0,0,0,0,0,0,4,0,2,0,3,0,0,0,0,0,0]]", "[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n[[foo~~~bar]]\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\nfyvix8boaud6lxr[[{{echo|./../foo}}{{echo|foo/.}}{{echo|foo/..}}|bar]]\n[[{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}]]\n[[{{echo|foo././bar}}1uu7nk0ev1q3erk9{{echo|foo{bar}}<nowiki>4xb2zu4vmlipy14i]]</nowiki>\n[[{{echo|foo}bar}}{{echo|foo[bar}}]]\n[[{{echo|foo]bar}}]]\n[[{{echo|foo<bar}}]]");
add("selser", "Render invalid page names as plain text (bug 51090) [1,0,1]", "[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n<nowiki>[[foo~~~bar]]</nowiki>\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\n[[{{echo|./../foo}}|bar]]\n[[{{echo|foo/.}}|bar]]\n[[{{echo|foo/..}}|bar]]\n[[{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}]]\n[[{{echo|foo././bar}}]]\n[[{{echo|foo{bar}}]]\n[[{{echo|foo}bar}}]]\n[[{{echo|foo[bar}}]]\n[[{{echo|foo]bar}}]]\n[[{{echo|foo<bar}}]]");
add("selser", "Render invalid page names as plain text (bug 51090) [4,0,[4,0,0,0,2,0,2,0,0,0,4,0,4,0,2,0,2,0,4,0,0,0,0]]", "vv8tb99g6m20rudi\n\nthyzb5llxhx8byb9{{echo|./../foo}}|bar]]\n[[{{echo|foo/.}}<nowiki>170xfo9mazsyk3xr|bar]]</nowiki>\n[[{{echo|foo/..}}<nowiki>82a3urjl4mpfogvi|bar]]</nowiki>\n[[{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}9no7cugeonf561or{{echo|foo././bar}}5jj2topgnr3vj9k9{{echo|foo{bar}}<nowiki>m5uekj6dh5154s4i]]</nowiki>\n[[{{echo|foo}bar}}<nowiki>zsh2d3o595tawcdi]]</nowiki>\n[[{{echo|foo[bar}}6ogkffdf3qyta9k9{{echo|foo]bar}}]]\n[[{{echo|foo<bar}}]]");
add("selser", "Render invalid page names as plain text (bug 51090) [2,4,3]", "x280lbt0x9smunmi\n\n[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n[[foo~~~bar]]\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\n9zekc2ruir0h33di\n");
add("selser", "Render invalid page names as plain text (bug 51090) [2,0,3]", "uy7lbslcu8mvaemi\n\n[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n[[foo~~~bar]]\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n");
add("selser", "Render invalid page names as plain text (bug 51090) [2,0,[2,0,0,0,4,0,4,0,0,0,4,0,0,0,0,0,0,0,0,0,3,0,2]]", "ixtw0uq17iqtcsor\n\n[[./../foo|bar]]\n[[foo�|bar]]\n[[foo/.|bar]]\n[[foo/..|bar]]\n[[foo~~~bar]]\n[[foo>bar]]\n[[foo[bar]]\n[[.]]\n[[..]]\n[[foo././bar]]\n\ncjgyt6cnj124kj4i[[{{echo|./../foo}}|bar]]\n[[{{echo|foo/.}}4i3f1qev8b5u3di{{echo|foo/..}}t26yvjmagszl4n29{{echo|foo~~~~bar}}]]\n[[{{echo|foo>bar}}3vx6jfw5gbvs4i{{echo|foo././bar}}]]\n[[{{echo|foo{bar}}]]\n[[{{echo|foo}bar}}]]\n[[{{echo|foo[bar}}]]\n[[{{echo|foo]bar}}{{echo|foo<bar}}<nowiki>3vz7g6pd5lzhncdi]]</nowiki>");
add("selser", "Section headings with TOC [3,4,0,0,3,2,[3],3,0,4,3,3,0]", "px8b3ng5n4lpu8fr\n\n=== Subheadline 1 ===\np64mngpetwfm9529\n\n======<nowiki/>======\n\n== Headline 2 ==\nzvfwz386e7xbhuxr\n\n===Another headline===");
add("selser", "Handling of sections up to level 6 and beyond [1,2,1,2,1,0,[3],2,2,4,[2],4,0,0,1,0,0,3,1]", "= Level 1 Heading=\n7e043zzvvtzf47vi\n\n== Level 2 Heading==\n0pp0pcwrmkakyb9\n\n=== Level 3 Heading===\n====<nowiki/>====\n253vnq49otg9zfr\nmncpvxste96vquxr\n\n===== Level 5 Heading=====\n91qmbb1e2vlpu8fr\n\n======ohqkkrlkoqi79zfr Level 6 Heading======\n6hv8gbhdqngn9udi\n\n======= Level 7 Heading=======\n======<nowiki>== Level 8 Heading==</nowiki>======\n========= Level 9 Heading=========\n======<nowiki>==== Level 10 Heading====</nowiki>======");
add("selser", "Handling of sections up to level 6 and beyond [1,0,1,0,0,3,2,3,0,0,4,0,[4],0,1,0,0,4,0]", "= Level 1 Heading=\n== Level 2 Heading==\n=== Level 3 Heading===\n6fs6ykhv45nrk9\n\n==== Level 4 Heading====\n===== Level 5 Heading=====\njkvm1xjd1mw2vs4i\n\n======lrcthal0ujwnrk9======\n======<nowiki>== Level 8 Heading==</nowiki>======\n========= Level 9 Heading=========\n6uicqh73ey5bfbt9\n\n========== Level 10 Heading==========");
add("selser", "Handling of sections up to level 6 and beyond [1,0,1,4,3,2,3,4,0,0,0,0,0,0,[2],4,0,0,0]", "= Level 1 Heading=\n== Level 2 Heading==\n7fxsbs0ri50442t9\n\nvxty72ecymuw61or\njkw5wfqz4rj54s4i\n\n===== Level 5 Heading=====\n====== Level 6 Heading======\n======= Level 7 Heading=======\n======2ij10fqu45sqyqfr== Level 8 Heading========\nlglib2aveqj8aor\n\n========= Level 9 Heading=========\n========== Level 10 Heading==========");
add("selser", "Handling of sections up to level 6 and beyond [2,2,[4],3,[3],3,[2],3,0,2,3,0,[4],3,1,2,3,0,2]", "uujzhww35m4h1tt9\n\n= Level 1 Heading=\ng3pfm1sv4ewxw29\n\n==qqcvrts9jcyp66r==\n===<nowiki/>===\n====2d2xpp3585i885mi Level 4 Heading====\n===== Level 5 Heading=====\nb5xppeg19r0h33di\n\n======lmauxgcn4u2z9f6r======\n======<nowiki>== Level 8 Heading==</nowiki>======\ny5j5j02sc2nvcxr\n\nsmdwx127s9f9lik9\n\n========== Level 10 Heading==========");
add("selser", "Handling of sections up to level 6 and beyond [1,0,[4],0,4,0,0,0,0,2,0,0,0,3,2,3,3,0,3]", "= Level 1 Heading=\n==257whdvp60vk7qfr==\n8ctghzq3sqj2lnmi\n\n==== Level 4 Heading====\n===== Level 5 Heading=====\n0qnzy7sqr64oyldi\n\n====== Level 6 Heading======\n======= Level 7 Heading=======\n140t1u931jnbqpvi\n\n======== Level 8 Heading========\n");
add("selser", "Handling of sections up to level 6 and beyond [[3],0,4,4,[4],0,4,0,[2],2,1,0,0,2,2,2,[3],0,3]", "=<nowiki/>=\namb6kmkk4xvo0f6r\n\ntnpagw3ww154s4i\n\n===zafnpgazotl9dx6r===\ndmkvt9fm17xvfgvi\n\n=====d8qphiqtdlipy14i Level 5 Heading=====\n3fzlf6871b9h33di\n\n====== Level 6 Heading======\n======= Level 7 Heading=======\ns5uns2hl9cuqsemi\nsro32io5c3j714i\n\n======== Level 8 Heading========\nv1uy462lkbysc3di\n\n======<nowiki/>======\n");
add("selser", "Handling of sections up to level 6 and beyond [[4],4,2,0,0,3,2,4,[2],3,[3],0,[4],0,0,4,[2],4,3]", "=5xig4duxuijjdcxr=\nxi940ttg6owjc3di\n\nnsbmloj6iyynwmi\n\n== Level 2 Heading==\n=== Level 3 Heading===\ns2e0l8vojorpmn29\n\n==== Level 4 Heading====\ns4nunzajll9s5rk9\n\n=====xqq41rwqf1q69a4i Level 5 Heading=====\n======<nowiki/>======\n======ji3ewfid6kvb1emi======\n======== Level 8 Heading========\nba1ki76de2i96bt9\n\n======alx7j2n9e1mxi529=== Level 9 Heading=========\n6am7i00imcth85mi\n");
add("selser", "Handling of sections up to level 6 and beyond [4,0,[3],0,3,3,[2],2,4,0,4,4,3,4,0,0,2,2,2]", "juqe2j1drucsdcxr\n\n==<nowiki/>==\n====vdm88gzm0er35wmi Level 4 Heading====\n1koun0ht187u8fr\na6n0beetb5yd5cdi\n\n2ic6yzwgqfklc8fr\n\nkbum5p83he2hjjor\n\nuu16p407plo6flxr\n\n======== Level 8 Heading========\nd3nou2efkqog8pvi\n\n========= Level 9 Heading=========\navbve75qry919k9\n8opw9o1qr2xd2t9\n\n========== Level 10 Heading==========");
add("selser", "Handling of sections up to level 6 and beyond [1,3,1,0,0,0,4,0,0,3,[3],0,3,4,2,0,0,4,[4]]", "= Level 1 Heading=\n== Level 2 Heading==\n=== Level 3 Heading===\nk7p2m2d9unaeb3xr\n\n===== Level 5 Heading=====\n======<nowiki/>======\nncttwl8dqx2mx6r\n\nz1b86umv7owxko6r\n\n======== Level 8 Heading========\n========= Level 9 Heading=========\n4p8d554k064oyldi\n\n======acgh0oiy5fiozuxr======");
add("selser", "Handling of sections up to level 6 and beyond [3,4,0,0,[3],0,2,2,0,3,1,0,2,2,[2],3,4,3,0]", "qwghp8a222tvs4i\n\n== Level 2 Heading==\n===<nowiki/>===\no6bh5pr15gvte29\n\n==== Level 4 Heading====\nucmug7jja4079zfr\n\n===== Level 5 Heading=====\n====== Level 6 Heading======\n0v8fi7n5klnmi\n\n======= Level 7 Heading=======\nqcilv966e8a4te29\n\n======65477y2p2aoiggb9== Level 8 Heading========\ng3i85dt8wfusor\n\n========== Level 10 Heading==========");
add("selser", "Handling of sections up to level 6 and beyond [0,0,4,0,1,2,[3],0,2,0,[4],3,[3],2,[4],0,2,2,[2]]", "= Level 1 Heading=\nb5aj5set52i96bt9\n\n=== Level 3 Heading===\nb9750g8tjnd5z5mi\n\n====<nowiki/>====\nomfmmn9e38lg14i\n\n===== Level 5 Heading=====\n======9td68c7cilunxw29======\n======<nowiki/>======\n8wi1wgmo7wah5mi\n\n======v3wyqid8bqnqm2t9======\nyqvikk10tjf6flxr\n\n========= Level 9 Heading=========\negw7u9tdpqw4gqfr\n\n======6xjs5xur737ynwmi==== Level 10 Heading==========");
add("selser", "Handling of sections up to level 6 and beyond [3,0,3,0,4,4,2,0,1,4,0,3,[3],0,4,4,[4],0,2]", "\nocc9d3bm1n2hjjor\n\ni6vjyoypjo3i8uxr\n\nbygl3zmbmt3dte29\n\n==== Level 4 Heading====\n===== Level 5 Heading=====\nmztd25q7x1cnb3xr\n\n====== Level 6 Heading======\n======<nowiki/>======\nqysvicutlbit3xr\n\n213rie7m2n0qw7b9\n\n======d2kre63k85154s4i======\nx76zsbc53e42huxr\n\n========== Level 10 Heading==========");
add("selser", "Handling of sections up to level 6 and beyond [[2],0,3,0,[4],4,0,3,0,2,0,0,1,0,0,2,[4],3,0]", "=h5j8dqaqxhl4n29 Level 1 Heading=\n\n===gc0795sy30udi===\no9rlj7nwfai9hpvi\n\n==== Level 4 Heading====\n===== Level 5 Heading=====\n8mnm89glb1wf80k9\n\n====== Level 6 Heading======\n======<nowiki>= Level 7 Heading=</nowiki>======\n======== Level 8 Heading========\niy63mn21ahj5g66r\n\n======ojzn8txamb98jjor======\n========== Level 10 Heading==========");
add("selser", "Handling of sections up to level 6 and beyond [[3],0,2,0,[3],0,2,0,3,3,2,0,2,3,0,0,3,3,3]", "=<nowiki/>=\n77y86082ym3u9pb9\n\n== Level 2 Heading==\n===<nowiki/>===\njt55j8pgneak0529\n\n==== Level 4 Heading====\nq1182whvcflgnwmi\n\n====== Level 6 Heading======\nfz2hfc0laqbyb9\n\n======= Level 7 Heading=======\n======== Level 8 Heading========\n");
add("selser", "Handling of sections up to level 6 and beyond [0,0,1,3,1,3,4,2,[2],3,3,4,1,0,0,2,0,4,1]", "= Level 1 Heading=\n== Level 2 Heading==\n=== Level 3 Heading===\n9vzolj02qqepzaor\n\nb09ymjngm4730udi\n\n=====56wtakel8yyzaor Level 5 Heading=====\nyiggx30v5j4z33di\n\n======<nowiki>= Level 7 Heading=</nowiki>======\n======== Level 8 Heading========\n068cf3hs8nuvunmi\n\n========= Level 9 Heading=========\nqpbi9sagcpbq33di\n\n======<nowiki>==== Level 10 Heading====</nowiki>======");
add("selser", "Handling of sections up to level 6 and beyond [0,0,4,0,4,0,0,0,4,0,0,2,[3],4,0,0,[3],0,3]", "= Level 1 Heading=\nhu2xawss5ze61or\n\n7euacpk0x86ywrk9\n\n==== Level 4 Heading====\n66btsq84yh0vn29\n\n====== Level 6 Heading======\n4ctl6u9fv9lfpqfr\n\n======<nowiki/>======\n9vstzsttpthdunmi\n\n======== Level 8 Heading========\n======<nowiki/>======\n");
add("selser", "Header with special characters (bug 25462) [1,2,2,0,3,4,0,4,[2],3,0,0,1,0,[3],0,0,2,4,0,1]", "The tooltips shall not show entities to the user (ie. be double escaped)\n\n8z7x1wcux3v26gvi\n\ns1o423l9ajg7gb9\n\n== text > text ==\n2whgc18x6v3d6lxr\n\n== text < text ==\nt5l87q61pf0z4cxr\n\n92ysy522qy28d7visection 2\n\n== text & text ==\nsection 3\n\n==<nowiki/>==\nsection 4\n\nozk2j78opgajdcxr\n\nw7mpykjqlaowp14i\n\nsection 5");
add("selser", "Header with space, plus and underscore as entity [0,2,2,0,0,0,0,0,[4],0,4,4,1,0,[2,0,2,0,0],3,[3],2,4,4,1,0,3,0,3,4,[2,0,3,0,[3],0,2,0,[2],2,3]]", "Id should not contain + for spaces\n\n1s8n9ebujmoyldi\n\nx2dm134ehi2akyb9\n\n== Space between Text ==\nsection 1\n\n== Space-Entity&#32;between&#32;Text ==\nctsg93fg7nfjemi\n\nfii5im4snhyyzaor\n\ntr1uqz2py5koi529\n\nsection 3\n\n==mdub6jo1drcqh0k9 Plus-Entitycp7nt180xjxuhaorbetweenText ==\n\n93x8kyc14qpycik9\n\nmy6t4zb9wnq4zpvi\n\nfsqir1dx869a4i\n\nsection 5\n\ncnlyy146abofajor\n\nxv9ysrtv3ni885mi[[#Space between Text]]\n\n[[#Plus+between+Text|<nowiki/>]]\n8xc1shdmq3pfzuxr[[#Plus-Entity&#43;between&#43;Text]]\n[[#Underscore_between_Text|3v175tm601nstt9#Underscore_between_Text]]1y56jaqn4d6ajor\n");
add("selser", "Header with space, plus and underscore as entity [0,0,0,0,[4],4,4,0,[3],4,2,0,2,2,[0,0,0,0,4],3,[4],3,0,3,2,0,3,0,0,3,[3,0,0,0,[3],4,2,0,4,0,0]]", "Id should not contain + for spaces\n\n== Space between Text ==\n8xyfc0i8t2h2gldi\n\nzb4aaqq1s96q1tt9\n\n15bmoldrhl2i6bt9\n\ncfupe02lilhumcxr\n\n6a9prcw3fzcfecdi\n\n== Plus+between+Text ==\n2gbrll83w49m5cdi\n\nsection 3\n\nc17wpd542d1xxbt9\n\n== Plus-Entity&#43;between&#43;8yfotmkftysc3di==\ndrq2cqynku0rizfr\n\n== Underscore_between_Text ==\ngp6czug4zgfx0f6r\n\nsection 5\n\nsection 6\n\n[[#Space-Entity&#32;between&#32;Text]]\n[[#Plus+between+Text|<nowiki/>]]<nowiki/>agpzebxg8xvtpgb9fopm0ncoqgf7ds4i[[#Plus-Entity&#43;between&#43;Text]]\nh7rvv79vf6qadcxr\n[[#Underscore-Entity&#95;between&#95;Text]]");
add("selser", "Single-line or multiline-comments can follow headings [2,4,3,1,0,4,[2],3]", "u9j9ywtzcjbawcdi\n\n==foo==\ndrrd423rrk1vpldi\n\n==bar==<!--c1-->\nz66d0aderf9lik9\n\n==nxo7we9vvk70t3xrbaz==<!--\nc2\nc3-->");
add("selser", "div with single-quoted attribute [2]", "qu686umowmw8kt9<div id='rock'>HTML rocks</div>");
add("selser", "div with single-quoted attribute [[4]]", "<div id='rock'>i9n8e3v5czxb6gvi</div>");
add("selser", "div with single-quoted attribute [[2]]", "<div id='rock'>jmoatuyo3qsemiHTML rocks</div>");
add("selser", "div with unquoted attribute [2]", "pmr3ap5nlf7833di<div id=rock>HTML rocks</div>");
add("selser", "div with unquoted attribute [[4]]", "<div id=rock>3u6l54c5g919k9</div>");
add("selser", "div with unquoted attribute [[2]]", "<div id=rock>dchtatkig10885miHTML rocks</div>");
add("selser", "div with illegal double attributes [2]", "ux9aplu6dksdobt9<div id=\"a\" id=\"b\">HTML rocks</div>");
add("selser", "div with illegal double attributes [[4]]", "<div id=\"a\" id=\"b\">fz25c3miv6v6xbt9</div>");
add("selser", "div with illegal double attributes [[2]]", "<div id=\"a\" id=\"b\">unt59inh2b95p14iHTML rocks</div>");
add("selser", "HTML multiple attributes correction [2]", "w1pqe1dx8ko9lik9<p class=\"error\" class=\"awesome\">Awesome!</p>");
add("selser", "HTML multiple attributes correction [[4]]", "<p class=\"error\" class=\"awesome\">mx2dt2hekoojq0k9</p>");
add("selser", "HTML multiple attributes correction [[2]]", "<p class=\"error\" class=\"awesome\">ngsrrvn0y5app66rAwesome!</p>");
add("selser", "Table multiple attributes correction [2]", "youym9yoyb8adcxr\n{|\n!+ class=\"error\" class=\"awesome\"| status\n|}");
add("selser", "Table multiple attributes correction [1]", "{| data-foobar=\"z3k0ztwllao72e29\"\n!+ class=\"error\" class=\"awesome\"| status\n|}");
add("selser", "Table multiple attributes correction [[4,[[[2]],0]]]", "{|<!--7o9jsnzarwq7u8fr-->\n!+ class=\"error\" class=\"awesome\"|ic6dfteyj3zhncdi status\n|}");
add("selser", "Table multiple attributes correction [[0,2]]", "{|\n<!--659x00mqf8b8olxr-->!+ class=\"error\" class=\"awesome\"| status\n|}");
add("selser", "Table multiple attributes correction [[0,[1,3]]]", "{|\n!+ class=\"error\" class=\"awesome\"| status\n|}");
add("selser", "Table multiple attributes correction [[3,1]]", "{|\n!+ class=\"error\" class=\"awesome\"| status\n|}");
add("selser", "Table multiple attributes correction [[4,1]]", "{|<!--hp0nnumivla6ecdi-->\n!+ class=\"error\" class=\"awesome\"| status\n|}");
add("selser", "Table multiple attributes correction [[3,2]]", "{|<!--42sj7fkd0anpzaor-->\n!+ class=\"error\" class=\"awesome\"| status\n|}");
add("selser", "Table multiple attributes correction [[0,[2,0]]]", "{|\n<!--k6lgk37x5g0hpvi-->!+ class=\"error\" class=\"awesome\"| status\n|}");
add("selser", "DIV IN UPPERCASE [2]", "qcqx475zv4c2fbt9<DIV ID=\"x\">HTML ROCKS</DIV>");
add("selser", "DIV IN UPPERCASE [[2]]", "<DIV ID=\"x\">0lhea1vi5vfs9k9HTML ROCKS</DIV>");
add("selser", "DIV IN UPPERCASE [[4]]", "<DIV ID=\"x\">ae3oduwc950tqpvi</DIV>");
add("selser", "Media link with nasty text 5", "[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>\n");
add("selser", "Media link with nasty text [[[3]],[2],0]", "[[Media:Foobar.jpg|<nowiki/>]]<div style=display:none>bz3y7tm45658w7b9[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]</div>\n");
add("selser", "Media link with nasty text [2,2,1]", "plljquqi07ap2e29\n\n[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]\n\nbn7r3inxy74x6r<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>\n");
add("selser", "Media link with nasty text [[[2]],[4],0]", "[[Media:Foobar.jpg|5mz4xg0i1hkkpgb9Safe Link]]<div style=display:none>13z0hw6wmt18xgvi</div>\n");
add("selser", "Media link with nasty text [[[4]],2,0]", "[[Media:Foobar.jpg|bgsu9313fgu2qpvi]]\n\ndx2sgczb8a6y9zfr<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>\n");
add("selser", "Media link with nasty text [0,2,0]", "[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]\n\n58bje6tosbvjkyb9<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>\n");
add("selser", "Media link with nasty text [0,[1],2]", "[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]<div style=display:none>[[Media:Foobar.jpg|\" onmouseover=\"alert(document.cookie)\" onfoo=\"]]</div>8jhjz28qyfkwqaor\n");
add("selser", "Media link with nasty text [4,0,0]", "ztlm95j7w05jc3di<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>\n");
add("selser", "Media link with nasty text [1,0,3]", "[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>");
add("selser", "Media link with nasty text [[[3]],[[2]],1]", "[[Media:Foobar.jpg|<nowiki/>]]<div style=display:none>[[Media:Foobar.jpg|4l6szv69ugix80k9\" onmouseover=\"alert(document.cookie)\" onfoo=\"]]</div>\n");
add("selser", "Media link with nasty text [[2],[3],0]", "3buefjw641n8w7b9[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]<div style=\"display:none\"></div>\n");
add("selser", "Media link with nasty text [3,0,0]", "<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>\n");
add("selser", "Media link with nasty text [2,1,1]", "q6qorphnrdb49529\n\n[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]<div style=\"display:none\" data-foobar=\"boskkwf1mpbep14i\">[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]</div>\n");
add("selser", "Media link with nasty text [1,4,0]", "[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]\n\n69bbicqzxqb2zkt9\n");
add("selser", "Media link with nasty text [[[4]],[[4]],0]", "[[Media:Foobar.jpg|5ty11kutwpl23xr]]<div style=display:none>[[Media:Foobar.jpg|i4tzw9exo8byb9]]</div>\n");
add("selser", "Media link with nasty text [0,4,0]", "[[Media:Foobar.jpg|Safe Link<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>]]\n\n58e72dp25x4aq0k9\n");
add("selser", "Media link with nasty text [[3],2,3]", "\nbua27u64k0sk0529<div style=display:none>\" onmouseover=\"alert(document.cookie)\" onfoo=\"</div>");
add("selser", "Empty attribute crash test single-quotes (bug 2067) [1]", "<font color=''>foo</font>");
add("selser", "Empty attribute crash test single-quotes (bug 2067) [[[2]]]", "<font color=''>zd72gzn6ggjsjorfoo</font>");
add("selser", "Empty attribute crash test single-quotes (bug 2067) [2]", "5kxneyilny2gwrk9\n\n<font color=''>foo</font>");
add("selser", "Empty attribute crash test single-quotes (bug 2067) [[[4]]]", "<font color=''>or63pvpg3ooxyldi</font>");
add("selser", "Empty attribute crash test single-quotes (bug 2067) [[2]]", "3338p71nnksrwwmi<font color=''>foo</font>");
add("selser", "Attribute test: unquoted but illegal value (hash) [[2]]", "auncq77bb1olayvi<font color=#x>foo</font>");
add("selser", "Attribute test: unquoted but illegal value (hash) [1]", "<font color=#x>foo</font>");
add("selser", "Attribute test: unquoted but illegal value (hash) [[[2]]]", "<font color=#x>8b035xwg9khjjorfoo</font>");
add("selser", "Attribute test: unquoted but illegal value (hash) [2]", "fj79gsc42q82rzfr\n\n<font color=#x>foo</font>");
add("selser", "Attribute test: unquoted but illegal value (hash) [[[4]]]", "<font color=#x>svhskrccb8nwb3xr</font>");
add("selser", "Bug 2095: link with pipe and three closing brackets, version 2 [1]", "[[Main Page|[http://example.com/]]]");
add("selser", "Bug 2095: link with pipe and three closing brackets, version 2 [2]", "mfl7xqc4xioa8aor\n\n[[Main Page|[http://example.com/]]]");
add("selser", "Bug 2095: link with pipe and three closing brackets, version 2 [[2]]", "h4wq9ivlle1xlxr[[Main Page|[http://example.com/]]]");
add("selser", "Opera -o-link CSS [[2]]", "<div\ntitle=\"&#100;&#97;&#116;&#97;&#58;&#116;&#101;&#120;&#116;&#47;&#104;&#116;&#109;&#108;&#44;&#60;&#105;&#109;&#103;&#32;&#115;&#114;&#99;&#61;&#49;&#32;&#111;&#110;&#101;&#114;&#114;&#111;&#114;&#61;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;&#62;\"\nstyle=\"-o-link:attr(title);-o-link-source:current\">e1v85xt7j899hpviX</div>");
add("selser", "Opera -o-link CSS [2]", "s1oe4611wh035wmi<div\ntitle=\"&#100;&#97;&#116;&#97;&#58;&#116;&#101;&#120;&#116;&#47;&#104;&#116;&#109;&#108;&#44;&#60;&#105;&#109;&#103;&#32;&#115;&#114;&#99;&#61;&#49;&#32;&#111;&#110;&#101;&#114;&#114;&#111;&#114;&#61;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;&#62;\"\nstyle=\"-o-link:attr(title);-o-link-source:current\">X</div>");
add("selser", "Opera -o-link CSS [[4]]", "<div\ntitle=\"&#100;&#97;&#116;&#97;&#58;&#116;&#101;&#120;&#116;&#47;&#104;&#116;&#109;&#108;&#44;&#60;&#105;&#109;&#103;&#32;&#115;&#114;&#99;&#61;&#49;&#32;&#111;&#110;&#101;&#114;&#114;&#111;&#114;&#61;&#97;&#108;&#101;&#114;&#116;&#40;&#49;&#41;&#62;\"\nstyle=\"-o-link:attr(title);-o-link-source:current\">bsf73uag1j9ssjor</div>");
add("selser", "Table attribute legitimate extension [[0,1]]", "{|\n!+ style=\"<nowiki>color:blue</nowiki>\"| status\n|}");
add("selser", "Table attribute legitimate extension [[0,[1,4]]]", "{|\n!+ style=\"<nowiki>color:blue</nowiki>\"| status<!--96xa8rclnmblc8fr-->\n|}");
add("selser", "Table attribute legitimate extension [2]", "ttlfw8y9so9wwmi\n{|\n!+ style=\"<nowiki>color:blue</nowiki>\"| status\n|}");
add("selser", "Table attribute legitimate extension [[3,2]]", "{|<!--aj1x9jx74cjif6r-->\n!+ style=\"<nowiki>color:blue</nowiki>\"| status\n|}");
add("selser", "Table attribute legitimate extension [1]", "{| data-foobar=\"ub4bg317e10v0a4i\"\n!+ style=\"<nowiki>color:blue</nowiki>\"| status\n|}");
add("selser", "Table attribute legitimate extension [[0,[[[2]],2]]]", "{|\n!+ style=\"<nowiki>color:blue</nowiki>\"|ry3aus6udfbw3ik9 status<!--0toetfo9gecrqkt9-->\n|}");
add("selser", "Table attribute safety [[4,1]]", "{|<!--12z3y8xniki96bt9-->\n!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"| status\n|}");
add("selser", "Table attribute safety [[4,[0,2]]]", "{|<!--7gxbdcr5xko6r-->\n!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"| status<!--iq35z1foh53zncdi-->\n|}");
add("selser", "Table attribute safety [[3,2]]", "{|<!--1bcrn3xejw7e3ik9-->\n!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"| status\n|}");
add("selser", "Table attribute safety [1]", "{| data-foobar=\"na1gz9i5gxlgnwmi\"\n!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"| status\n|}");
add("selser", "Table attribute safety [2]", "zwfo2kxs5fa5g66r\n{|\n!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"| status\n|}");
add("selser", "Table attribute safety [[0,2]]", "{|\n<!--8o73uov10ad1jor-->!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"| status\n|}");
add("selser", "Table attribute safety [[0,[[[2]],0]]]", "{|\n!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"|bmw4i6d4sxidlsor status\n|}");
add("selser", "Table attribute safety [[0,[2,0]]]", "{|\n<!--hopuq8owdrv8to6r-->!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"| status\n|}");
add("selser", "Table attribute safety [[0,[0,3]]]", "{|\n!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"| status\n|}");
add("selser", "Table attribute safety [[0,[1,2]]]", "{|\n!+ style=\"<nowiki>border-width:expression(0+alert(document.cookie))</nowiki>\"| status<!--skyjeiq2kwr0be29-->\n|}");
add("selser", "Parser hook: nested tags [0,2]", "<tag><tag></tag>i7d8tqounpcik9\n</tag>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[0,1,4]]", "<div itemscope>\n\t<nowiki><meta itemprop=\"hello\" content=\"world\"></nowiki>\n\t<nowiki><meta http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><link itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n\n9lxnoixxq085b3xr</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[2,0,2]]", "<div itemscope>1tq4nuxaexcu9pb9\n\t<meta itemprop=\"hello\" content=\"world\">\n\t<meta http-equiv=\"refresh\" content=\"5\">\n\t<meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\">\n\t<link itemprop=\"hello\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\">\n\nkcbq6pis8m2t9\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [2]", "rcydl379jopkqpvi<div itemscope>\n\t<meta itemprop=\"hello\" content=\"world\">\n\t<meta http-equiv=\"refresh\" content=\"5\">\n\t<meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\">\n\t<link itemprop=\"hello\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\">\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[0,[2],2]]", "<div itemscope>\n\t047cgm8enksrwwmi<nowiki><meta itemprop=\"hello\" content=\"world\"></nowiki>\n\t<nowiki><meta http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><link itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n\n4pny61gu2tx7ds4i\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[4,1,0]]", "<div itemscope>spu0tptv3lwka9k9\n<nowiki><meta itemprop=\"hello\" content=\"world\"></nowiki>\n\t<nowiki><meta http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><link itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[4,[3],0]]", "<div itemscope>99wejgddgaybke29\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[0,0,4]]", "<div itemscope>\n\t<meta itemprop=\"hello\" content=\"world\">\n\t<meta http-equiv=\"refresh\" content=\"5\">\n\t<meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\">\n\t<link itemprop=\"hello\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\">\n\new3jgq2guzhncdi</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[2,1,0]]", "<div itemscope>px2m4ecth1qyqfr\n\t<nowiki><meta itemprop=\"hello\" content=\"world\"></nowiki>\n\t<nowiki><meta http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><link itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[0,1,0]]", "<div itemscope>\n\t<nowiki><meta itemprop=\"hello\" content=\"world\"></nowiki>\n\t<nowiki><meta http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><link itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[0,[2],0]]", "<div itemscope>\n\tx3hbyea8xovtpgb9<nowiki><meta itemprop=\"hello\" content=\"world\"></nowiki>\n\t<nowiki><meta http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\"></nowiki>\n\t<nowiki><link itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" href=\"{{SERVER}}\"></nowiki>\n\t<nowiki><link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\"></nowiki>\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [1]", "<div itemscope=\"\" data-foobar=\"q8adwgvp6owjc3di\">\n\t<meta itemprop=\"hello\" content=\"world\">\n\t<meta http-equiv=\"refresh\" content=\"5\">\n\t<meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\">\n\t<link itemprop=\"hello\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\">\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[2,2,0]]", "<div itemscope>tphlnpjbn019k9\n\tzfr328x4l016pqfr\n<meta itemprop=\"hello\" content=\"world\">\n\t<meta http-equiv=\"refresh\" content=\"5\">\n\t<meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\">\n\t<link itemprop=\"hello\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\">\n</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[3,0,4]]", "<div itemscope>\n<meta itemprop=\"hello\" content=\"world\">\n\t<meta http-equiv=\"refresh\" content=\"5\">\n\t<meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\">\n\t<link itemprop=\"hello\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\">\naqpwsr7leatyy14i</div>");
add("selser", "Sanitizer: Validating that <meta> and <link> work, but only for Microdata [[0,2,0]]", "<div itemscope>\n\tq21hg5f5s2kxzuxr\n<meta itemprop=\"hello\" content=\"world\">\n\t<meta http-equiv=\"refresh\" content=\"5\">\n\t<meta itemprop=\"hello\" http-equiv=\"refresh\" content=\"5\">\n\t<link itemprop=\"hello\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" href=\"{{SERVER}}\">\n\t<link rel=\"stylesheet\" itemprop=\"hello\" href=\"{{SERVER}}\">\n</div>");
add("selser", "HTML bullet list, closed tags (bug 5497) [[0,0,4,[2],3]]", "<ul>\n<li>One</li><li>ab23ovep569io1or</li><li>02xr3ap2i2euq5miTwo</li>\n</ul>");
add("selser", "HTML nested bullet list, closed tags (bug 5497) [[3,3,4,[0,1,4],3]]", "<ul><li>wabcsvv43khb0529</li><li>Two:\n<ul data-foobar=\"eza5cfmfpbucv7vi\">\n<li>Sub-one</li>\n<li>Sub-two</li>\n</ul>veusxfr3k57b9</li>\n</ul>");
add("selser", "HTML nested bullet list, open tags (bug 5497) [[4,[3],2,[0,4],3]]", "<ul><li>x7e4pzqkzu2fbt9</li><li><li>zz9wcy7ovlipy14i</li>\n<li>Two:\nz6aoj185m56ogvi\n\n</ul>");
add("selser", "HTML nested ordered list, closed tags (bug 5497) [[2,1,4,[0,4,3],3]]", "<ol><li>xkvf7lec17wg66r</li>\n<li data-foobar=\"lsd14sl7dm927qfr\">One</li><li>czwfizqug7vz33di</li><li>Two:\nu30q3qpwbmswz5mi\n</li>\n</ol>");
add("selser", "Fuzz testing: Parser13 [2]", "whfwe630sy8pvi\n{| \n| http://a|");
add("selser", "Fuzz testing: Parser13 [[0,[[1]]]]", "{| \n| data-foobar=\"bz304nhr12359udi\" http: / a ||}");
add("selser", "Fuzz testing: Parser13 [1]", "{| data-foobar=\"k83lm0w7lheyiudi\" \n| http://a||}");
add("selser", "Fuzz testing: Parser13 [[2,2]]", "{|<!--ot0k5hk2dibe29--> \n<!--ddndi7e9wtlkrzfr-->| http://a||}");
add("selser", "Fuzz testing: Parser13 [[4,2]]", "{|<!--5r0vu1d4d02akyb9--><!--kgfqc1jnmjyh9f6r-->\n| http://a||}");
add("selser", "Fuzz testing: Parser13 [[0,1]]", "{| \n| http://a||}");
add("selser", "Fuzz testing: Parser13 [[0,2]]", "{| \n<!--aox6m05qx79icnmi-->| http://a||}");
add("selser", "Fuzz testing: Parser13 [[0,[1]]]", "{| \n| http://a||}");
add("selser", "Fuzz testing: Parser13 [[2,[[1]]]]", "{|<!--k7dytmk4x4fpf1or--> \n| data-foobar=\"6eljtbwlg39dx6r\" http: / a ||}");
add("selser", "Fuzz testing: Parser13 [[4,[1]]]", "{|<!--bc5lt7d97qcwhfr-->\n| http://a||}");
add("selser", "Fuzz testing: Parser13 [[4,0]]", "{|<!--bdcj5y141zcl3di-->\n| http://a||}");
add("selser", "Fuzz testing: Parser13 [[2,0]]", "{|<!--fk6xcjz25vc84cxr--> \n| http://a||}");
add("selser", "Fuzz testing: Parser16 [2]", "s2rd5a1yeoim5cdi\n{|\n!https://||||||");
add("selser", "Fuzz testing: Parser16 [[0,[[0,2,0,0]]]]", "{|\n!https://\n!3vnog20h7550o1or|||||||}");
add("selser", "Fuzz testing: Parser16 [[0,[[3,4,0,0]]]]", "{|\n!mn06fxy5uvbfn7b9|||||}");
add("selser", "Fuzz testing: Parser16 [[3,2]]", "{|<!--4qmpsasspil4bo6r-->\n!https://|||||||}");
add("selser", "Fuzz testing: Parser16 [[0,1]]", "{|\n!https://|||||||}");
add("selser", "Fuzz testing: Parser16 [[3,[2]]]", "{|<!--fqa9lrr74yflmcxr-->\n!https://|||||||}");
add("selser", "Fuzz testing: Parser16 [[0,[[1,1,1,0]]]]", "{|\n! data-foobar=\"zu74dq5r4l5wmi\" |https://|| data-foobar=\"at9q2rxpkvivbo6r\" ||| data-foobar=\"knfvnx3swhppsyvi\" ||||}");
add("selser", "Fuzz testing: Parser16 [[0,[[0,2,4,2]]]]", "{|\n!https://\n!yojby2s147usdcxr||\n!v7e4oycgqkqehfr\n!k6xurl8iqpz257b9|||}");
add("selser", "Fuzz testing: Parser16 [1]", "{| data-foobar=\"rwdbutcm2hbprpb9\"\n!https://|||||||}");
add("selser", "Fuzz testing: Parser16 [[2,[1]]]", "{|<!--qd4b7r8tzb79cnmi-->\n!https://|||||||}");
add("selser", "Fuzz testing: Parser21 [[2,2]]", "{|<!--fqbthlkw80cf2yb9-->\n<!--5e3ophtbp1jg7gb9-->! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser21 [1]", "{| data-foobar=\"kaeydswgfnxnipb9\"\n! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser21 [[4,[2]]]", "{|<!--kky0a6mymhwfusor--><!--we67bat81qlx47vi-->\n! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser21 [[3,[1]]]", "{|\n! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser21 [[0,[[[0,2,0],0,0]]]]", "{|\n! 6ro52eq6kkzf47vi<nowiki/>irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser21 [[2,[[3,0,0]]]]", "{|<!--91khydnxj2it3xr-->\n\n||}");
add("selser", "Fuzz testing: Parser21 [[0,[[[4,[4],0],0,0]]]]", "{|\n!1z6izy471osf9a4i[irc://{{ftp://a 35m7cjzb2mrhpvi]\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser21 [2]", "k8ttddjg2wxez5mi\n{|\n! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n|");
add("selser", "Fuzz testing: Parser21 [[2,[2]]]", "{|<!--10dd0n612botj4i-->\n<!--9woo9t4yzpmygb9-->! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser21 [[0,[2]]]", "{|\n<!--s2ilax302x6o5hfr-->! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser21 [[0,[[[2,1,2],4,1]]]]", "{|\n!7wl5fvufhdaq0k9 irc://{{ftp://a<nowiki/>bhnjk55ovtvuz0k9\" onmouseover=\"alert('hello world');\"\n!7wmp05ki8ophw7b9\n| data-foobar=\"1y26x0gu7tbotj4i\" ||}");
add("selser", "Fuzz testing: Parser21 [[3,[[2,0,0]]]]", "{|\n|bsnckhcoibai3sor\n! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser21 [[3,1]]", "{|\n! irc://{{ftp://a\" onmouseover=\"alert('hello world');\"\n||}");
add("selser", "Fuzz testing: Parser22 [[4],0,0]", "c1ceikq8lljqyqfr\n\n{|");
add("selser", "Fuzz testing: Parser22 [1,2,2]", "http://===r:::https://b\n\n7qw282utupi4quxr\n\nvrc74r6wmw8kt9\n{|");
add("selser", "Fuzz testing: Parser22 [1,3,0]", "http://===r:::https://b\n{|");
add("selser", "Fuzz testing: Parser22 [[1],0,0]", "http://===r:::https://b\n\n{|");
add("selser", "Fuzz testing: Parser22 [[[3]],0,0]", "[http://===r:::https://b]\n\n{|");
add("selser", "Fuzz testing: Parser22 [2,0,0]", "on5h3k2vm927qfr\n\nhttp://===r:::https://b\n\n{|");
add("selser", "Fuzz testing: Parser22 [3,2,2]", "lbrxp9m2enlv7vi\n\nmgpod3a4a9aa714i\n{|");
add("selser", "Fuzz testing: Parser22 [[4],0,2]", "1l587lsuf8aj1yvi\n\n4rx1j0v8ag7gb9\n{|");
add("selser", "Fuzz testing: Parser22 [[2],0,0]", "dif45ehb6ex0qkt9<nowiki/>http://===r:::https://b\n\n{|");
add("selser", "Fuzz testing: Parser22 [[1],4,2]", "http://===r:::https://b\n\nptlivvbl2mg3nmi\n\noxiqusjba1wqm2t9\n{|");
add("selser", "Fuzz testing: Parser22 [3,0,0]", "\n{|");
add("selser", "Fuzz testing: Parser22 [1,0,2]", "http://===r:::https://b\n\n3ql477um4peyu8fr\n{|");
add("selser", "Fuzz testing: Parser24 [0,0,1]", "{| data-foobar=\"g6r38jevgd37hkt9\"\n\n||}");
add("selser", "Fuzz testing: Parser24 [0,4,3]", "\n\naosym28xh3ibpgb9\n");
add("selser", "Fuzz testing: Parser24 [1,3,1]", "<nowiki>{{{|</nowiki>\n<u class=\"|\" {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}}>\n<br style=\"onmouseover='alert(document.cookie);' \" />\n{| data-foobar=\"6fgt6dvgb9j7zaor\"\n\n||}");
add("selser", "Fuzz testing: Parser24 [[4,0],0,[0,3]]", "11sr1z4igrvpwrk9<u class=\"|\" {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}}>\n<br style=\"onmouseover='alert(document.cookie);' \" />{|\n\n|}");
add("selser", "Fuzz testing: Parser24 [3,2,4]", "u39lbr4wb5ptlnmi\n\n\n\nng2zinxre265hfr\n");
add("selser", "Fuzz testing: Parser24 [0,3,[2,3]]", "\n{|<!--aruqvd6sv8bvgqfr-->\n\n|}");
add("selser", "Fuzz testing: Parser24 [4,4,[2,1]]", "u2mgcfdhu9d7k3xr\n\nt2gfu2pam7vi\n{|<!--wl9sr7uggvjf9a4i-->\n\n||}");
add("selser", "Fuzz testing: Parser24 [[3,0],0,[2,3]]", "<u class=\"|\" {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}}>\n<br style=\"onmouseover='alert(document.cookie);' \" />{|<!--gvuyg42a70y3c8fr-->\n\n|}");
add("selser", "Fuzz testing: Parser24 [2,4,[0,2]]", "zp55fn0uhjrio1or\n\n\n\nbywvnpoau9za1yvi\n{|\n\n<!--zezekrjhlor2uik9-->||}");
add("selser", "Fuzz testing: Parser24 [0,0,[2,0]]", "{|<!--78ok5mnhx8icz0k9-->\n\n||}");
add("selser", "Fuzz testing: Parser24 [[2,0],0,[3,[3]]]", "<nowiki>9c088ry7flmcxr{{{|</nowiki>\n<u class=\"|\" {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}}>\n<br style=\"onmouseover='alert(document.cookie);' \" />{|\n|}");
add("selser", "Fuzz testing: Parser24 [1,2,[0,[3]]]", "<nowiki>{{{|</nowiki>\n<u class=\"|\" {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}}>\n<br style=\"onmouseover='alert(document.cookie);' \" />\n\n2ee2y1k6jblkrzfr\n\n{|\n\n|}");
add("selser", "Fuzz testing: Parser24 [3,0,1]", "MOVE YOUR MOUSE CURSOR OVER THIS TEXT\n{| data-foobar=\"vpeg0ehvafijatt9\"\n\n||}");
add("selser", "Fuzz testing: Parser24 [4,4,[3,[2]]]", "vtpmggos1rxm9529\n\ntg1e2avwggbymn29\n{|<!--yi16pa7w3cv7vi-->\n||}");
add("selser", "Fuzz testing: Parser24 [[2,0],1,2]", "<nowiki>948zfqhejm8l4n29{{{|</nowiki>\n<u class=\"|\" {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}}>\n<br style=\"onmouseover='alert(document.cookie);' \" />\n\nMOVE YOUR MOUSE CURSOR OVER THIS TEXT\n\nwvwpzfhipqqfflxr\n{|\n{{{|\n<u CLASS=\n| {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}} >\n<br style=\"onmouseover='alert(document.cookie);' \" />\n\nMOVE YOUR MOUSE CURSOR OVER THIS TEXT\n|");
add("selser", "Fuzz testing: Parser24 [[2,0],2,[4,[2]]]", "<nowiki>hndosskzwiiwl8fr{{{|</nowiki>\n<u class=\"|\" {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}}>\n<br style=\"onmouseover='alert(document.cookie);' \" />\n\nsk3rl6utosgojemi\n\n{|<!--jzny1t7i47mygb9--><!--8oeybhmbp7lanhfr-->\n||}");
add("selser", "Fuzz testing: Parser24 [1,1,2]", "<nowiki>{{{|</nowiki>\n<u class=\"|\" {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}}>\n<br style=\"onmouseover='alert(document.cookie);' \" />\n\nMOVE YOUR MOUSE CURSOR OVER THIS TEXT\n\nwo1ljwyi3jlzbyb9\n{|\n{{{|\n<u CLASS=\n| {{{{SSSll!!!!!!!VVVV)]]][[Special:*xxxxxxx--><noinclude>}}}} >\n<br style=\"onmouseover='alert(document.cookie);' \" />\n\nMOVE YOUR MOUSE CURSOR OVER THIS TEXT\n|");
add("selser", "Inline wiki vs wiki block nesting [2,0,1]", "y31p21pdfplgcik9\n\n'''Bold paragraph\n\nNew wiki paragraph");
add("selser", "Inline wiki vs wiki block nesting [1,3,[3]]", "'''Bold paragraph\n");
add("selser", "Inline wiki vs wiki block nesting [0,0,4]", "'''Bold paragraph\n\n1vaanv1vlmtb7qfr\n");
add("selser", "Inline wiki vs wiki block nesting [0,3,[4]]", "'''Bold paragraph\n\n9vm0nhnt86mt2o6r");
add("selser", "Inline wiki vs wiki block nesting [[2],4,2]", "gak5ppv6gqc6usor'''Bold paragraph\n\ny928724y2vi5p14i\n\nlh30qxid5s1c3di\n\nNew wiki paragraph");
add("selser", "Inline wiki vs wiki block nesting [0,0,2]", "'''Bold paragraph\n\na0b7wmk2l10s5rk9\n\nNew wiki paragraph");
add("selser", "Mixing markup for italics and bold [1]", "'<nowiki/>''bold''''''bold''bolditalics'''''");
add("selser", "Mixing markup for italics and bold [2]", "sype68ertrsbgldi\n\n'''bold''''''bold''bolditalics'''''");
add("selser", "Mixing markup for italics and bold [[0,0,[4,[4]]]]", "'<nowiki/>''bold''''''ofte4w4zkeh77gb9''xbrpnwqlrllerk9'''''");
add("selser", "Mixing markup for italics and bold [[0,2,1]]", "'7hmry58pm8to6r''bold''''''bold''bolditalics'''''");
add("selser", "Illegal character references (T106578) [[[3],[3,0],2,[2],1,4,1,2,4,3,3,0,[4],[3,0,3,0],0,[3],1,2,4,4]]", ";:&#00;\n: eh2icmhaxdr0ms4i\n;uqve4m940lvdkj4i FF: &#xC;\n: axspjaiuszfflxr\n; CR\n: et6j90ps5aaqyqfr: &#xD;\n: 8aah3mpfno1j1yvi\n;20ww9wi9f05xko6r:&#x7F;&#x9F;\n;: &#xD83D;&#xDCA9;\n: gohh9cigsgjk0529\n: yc6i3xzpr50tqpvi\n: 168hvjmka04o0f6r");
add("selser", "Illegal character references (T106578) [[4,0,0,[4],[2,0],3,[4],0,0,0,0,3,[3],[4,0,0,0],2,4,0,4,2,2]]", ": 4pg2nevo279cnmi: &#00;\n;dxfqxf01rekoi529:ztd8molicdhadcxr &#xC;\n;wlukc0cndoublnmi: &#xD;\n; Control (low): &#8;\n;:erbzo9178k027qfr&#x7F; &#x9F;\n: 49leo05lk6mkj4i\n: 7wx1vdr0os7fd2t9: &#xD83D;&#xDCA9;\n: jnuizl4v9s76tj4i\n: bl0icsbw2sxlxr\n; This is an okay astral character\n: qwmprmtukiq9f6r: &#x1F4A9;");
add("selser", "Illegal character references (T106578) [2]", "vf7pd37dz2dquxr\n; Null: &#00;\n; FF: &#xC;\n; CR: &#xD;\n; Control (low): &#8;\n; Control (high): &#x7F; &#x9F;\n; Surrogate: &#xD83D;&#xDCA9;\n; This is an okay astral character: &#x1F4A9;");
add("selser", "Illegal character references (T106578) [[[4],0,2,3,0,3,0,0,4,2,3,3,0,1,0,0,[4,0,0],4,0,[4,0]]]", ";ki2y7lbj0pugzaor: &#00;\n: whiwizc08xfg8pvi: &#xC;\n; CR: &#xD;\n: oxrzun7lhtdibe29\n: h24afge9i074aemi\n; Control (low)\n; Control (high): &#x7F; &#x9F;\n; Surrogate:ettkd6jmyfs10pb9&#xD83D;&#xDCA9;\n: keuf1ts1y92otj4i\n; This is an okay astral character:s5hsxdmwv6j38fr&#x1F4A9;");
add("selser", "Illegal character references (T106578) [1]", "; Null: &#00;\n; FF: &#xC;\n; CR: &#xD;\n; Control (low): &#8;\n; Control (high): &#x7F; &#x9F;\n; Surrogate: &#xD83D;&#xDCA9;\n; This is an okay astral character: &#x1F4A9;");
add("selser", "Illegal character references (T106578) [[3,2,0,2,[4,0],0,0,0,0,0,3,0,[4],[0,0,4,0],0,[2],4,0,0,0]]", ": u5vwcy0j6qg2e29: &#00;\n: p9a57ap9zyyzaor\n; FF:wjnckgkar860qkt9&#xC;\n; CR: &#xD;\n; Control (low)\n;5myazuveszbvgqfr: &#x7F;573ocw4dmb73nmi&#x9F;\n;w6mwa1rcleeqxgvi Surrogate\n: l24l65jpn4i5p14i\n; This is an okay astral character: &#x1F4A9;");
add("selser", "Illegal character references (T106578) [[0,0,2,4,1,2,[3],0,2,4,[3,0],0,[4],[4,0,3,0],4,[2],2,0,[4],1]]", "; Null: &#00;\n: 3ab3bonbkmfe0zfr\n: 99du3i9inwvr6bt9: &#xC;\n: pzx5yp63uhctmx6r\n;: &#xD;\n: azy56mdc8dyxecdi\n: 80ps2m246s603sor:&#8;\n;3ly1p5adoomkj4i:pkq8glqmfkyv6lxr&#x7F;&#x9F;\n: ei515x4atmb49529\n;x59796120h5xw29 Surrogate\n: lvy96v3olh0py14i: &#xD83D;&#xDCA9;\n;bb6lntpzr8me7b9: &#x1F4A9;");
add("selser", "Illegal character references (T106578) [[4,0,4,1,0,0,2,0,2,4,3,0,0,2,3,0,0,0,4,[4,0]]]", ": h13sy5yortd6xbt9: &#00;\n: yx2a0yvb9q5v1jor\n; FF: &#xC;\n: vo96hki38vy22o6r\n; CR: &#xD;\n: b42u05rrxpmvlsor\n: kr9xfl64a0dx6r\n; Control (high)\n: 75hojzjf9rqtcsor: &#x7F; &#x9F;\n; Surrogate: &#xD83D;&#xDCA9;\n: mbh8hsmaeswnrk9:ld3mddnlg6gpsyvi&#x1F4A9;");
add("selser", "Illegal character references (T106578) [[1,0,0,2,[4,0],0,0,2,0,2,2,0,2,4,0,3,[2,0,0],2,2,3]]", "; Null: &#00;\n: wjv85ity8kw3ik9\n; FF:t0wgde3jzwp3z0k9&#xC;\n; CR\n: 3ndxxwbs6qg2e29: &#xD;\n: 1lkqfuvhd32i6bt9\n; Control (low)\n: eeavyurhiuex9a4i: &#8;\n: gilnw0h204pfogvi\n; Control (high)\n: xhje4pcgmyzj8aor:5ix003l58rxjemi &#xD83D;&#xDCA9;\n: 2sbnezeb93k57b9\n: rdmka6d0pyqr529\n; This is an okay astral character");
add("selser", "Illegal character references (T106578) [[3,3,4,2,[3,0],0,3,2,2,0,1,0,0,2,0,0,2,0,1,3]]", ": raewhcui99cqh0k9\n: ejpivaf27u6av2t9\n; FF:&#xC;\n: 6c3qzhgnawtgldi: &#xD;\n: ixbuhech1qsbrzfr\n; Control (low): &#8;\n; Control (high)\n: mk8de6y7kjf6flxr: &#x7F; &#x9F;\n; Surrogate\n: xglagbmtyma8xgvi: &#xD83D;&#xDCA9;\n; This is an okay astral character");
add("selser", "Illegal character references (T106578) [[2,0,3,3,[4,0],3,2,[2,0],0,2,[2,0],0,2,[2,0,3,0],0,[2],0,0,[3],0]]", ": 2p3xm2g6vb73nmi\n; Null: &#00;:120oei58fnfusor&#xC;\n: ttrk3ah2vl6m9529\n; CR:hr9r43lw5va38fr &#xD;\n: b6c1nojw0074aemi\n; Control (low):iy6o5agtesy30udi &#8;\n: h2wiauy82ajj1yvi\n; Control (high):gux535tra7ix80k9 &#x7F;&#x9F;\n;svxwgnovvvxwdn29 Surrogate: &#xD83D;&#xDCA9;\n;: &#x1F4A9;");
add("selser", "Illegal character references (T106578) [[0,4,2,4,0,3,2,0,4,2,[3,0],0,4,[2,0,0,0],0,2,2,4,0,4]]", "; Null\n: 9fwhioeeke0442t9\n: j9rvy22kl04quxr\n: b9r3w66fxy8k6gvi: &#xC;\n: y1yftc25vffg8pvi\n; CR: &#xD;\n: 2qqnhtc01zjpds4i\n: h4mtw9i1zzq1714i\n; Control (low):&#8;\n: pbxoidwcwzlac3di:xdk2vbc7v3rf6r &#x7F; &#x9F;\n: ltyipg2p1w9izfr\n; Surrogate\n: 53dgbaz96yeyu8fr: &#xD83D;&#xDCA9;\n: w4u00ww32t7kqpvi\n; This is an okay astral character\n: ybr70brqekzw7b9");
add("selser", "Illegal character references (T106578) [[[2],0,0,[4],[2,0],0,[2],0,0,1,4,0,[3],0,0,2,4,4,0,3]]", ";zu5495hxxql1sjor Null: &#00;\n;5cbqazxlqwbl0udi:pof7ppk4wzmpldi &#xC;\n;xtwdv922j0xusor CR: &#xD;\n; Control (low)\n: 7mds6rq9nzwoecdi\n;: &#x7F; &#x9F;\n: 9k3u42yb3sl6usor\n; Surrogate\n: qb704xdxe3aqbyb9\n: phjue90joss2lnmi\n; This is an okay astral character");
add("selser", "Illegal character references (T106578) [[1,3,0,1,4,3,2,0,0,2,[4,0],0,[2],2,4,1,3,0,2,1]]", "; Null\n; FF\n: xf4ed4b6sfywrk9\n: 7lsfy0qpn1nn4s4i\n; CR: &#xD;\n: uh0ehwxo7xjbrzfr\n; Control (low):qws1kllvtusj1yvi&#8;\n;0bvupxnunsq93sor Control (high)\n: 6d547p71l1ve7b9: &#x7F; &#x9F;\n: swbefkspflsrlik9\n; Surrogate\n: ulaiulmr6q88h0k9\n; This is an okay astral character: &#x1F4A9;");
add("selser", "Image with page parameter [2]", "t1gktsrwi7iizfr\n\n[[File:LoremIpsum.djvu|page=2]]");
add("selser", "Image with page parameter [1]", "[[File:LoremIpsum.djvu|page=2]]");
add("selser", "Don't fall for the self-closing div [[4]]", "<div>f7k96jvehbnmte29</div/>");
add("selser", "Don't fall for the self-closing div [2]", "03k36yoyy20jatt9<div>hello world</div/>");
add("selser", "Don't fall for the self-closing div [[2]]", "<div>3554xqvubx83erk9hello world</div/>");
add("selser", "Parsing of overlapping (improperly nested) inline html tags [2]", "y9cin9njblr6n7b9\n\n<span><s>x</span></s>");
add("selser", "Don't break table handling if language converter markup is in the cell. [2]", "ixer2na9oirudi\n{|\n|-\n| -{R|B}-\n|}");
add("selser", "Don't break table handling if language converter markup is in the cell. [[3,[1,4]]]", "{|\n|- data-foobar=\"lxrh34k2mmoq1tt9\"\n| -{R|B}-<!--czk30pw9nitl0udi-->\n|}");
add("selser", "Don't break table handling if language converter markup is in the cell. [[3,[2,3]]]", "{|<!--kvgh4eibaoiggb9-->\n|-\n| -{R|B}-\n|}");
add("selser", "Don't break table handling if language converter markup is in the cell. [[4,2]]", "{|<!--g1hlzg5fl3hrrudi--><!--x4cqrou87inyu8fr-->\n|-\n| -{R|B}-\n|}");
add("selser", "Don't break table handling if language converter markup is in the cell. [1]", "{| data-foobar=\"ihw5lexd32uzncdi\"\n|-\n| -{R|B}-\n|}");
add("selser", "Don't break table handling if language converter markup is in the cell. [[4,[[4,0],0]]]", "{|<!--nuhfaguqghc9pb9-->\n|-\n|9qyto9ifqjsxxbt9\n| -{R|B}-\n|}");
add("selser", "Don't break table handling if language converter markup is in the cell. [[0,2]]", "{|\n<!--11c9cgnqpuys0pb9-->|-\n| -{R|B}-\n|}");
add("selser", "Don't break table handling if language converter markup is in the cell. [[3,1]]", "{|\n|-\n| -{R|B}-\n|}");
add("selser", "Don't break table handling if language converter markup is in the cell. [[3,[1,3]]]", "{|\n|- data-foobar=\"62vnpmgm6rzlg14i\"\n| -{R|B}-\n|}");
add("selser", "Don't break table handling if language converter markup is in the cell. [[0,1]]", "{|\n|-\n| -{R|B}-\n|}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[[[3]]],0]]", "**{{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[1,0]]", "******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[2,0]]", "* wzen8urjy55qaor\n******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [1]", "******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[[[[1]]]],0]]", "******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[[[4]]],0]]", "**1cf14jtvh392j4i{{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [2]", "vc74xk9rv4qb0529\n******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[[[[[[1]]]]]],0]]", "******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[2],0]]", "*vkl4nqq6z9kvs4i\n******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[1],0]]", "******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[[1]],0]]", "******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[[[[3]]]],0]]", "**{{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[[2]],0]]", "** y0slrsmmchjxxbt9\n******* Foo {{bullet}}");
add("selser", "Bug 529: Uncovered bullet leaving empty list, normally removed by tidy [[[[[[[4]]]]],0]]", "***u5i7s9pdlw8w7b9{{bullet}}");
add("selser", "HHP2.1: Heuristics for headings in preprocessor parenthetical structures [0,2,4]", "{{foo|\n\n2l1t9h2tgp41v2t9\n\npiz397o23x7s0pb9\n");
add("selser", "HHP2.1: Heuristics for headings in preprocessor parenthetical structures [0,4,2]", "{{foo|\n\ndb6sww3y8vxcg14i\n\ndagfwhcu6jl15rk9\n\n=heading=");
add("selser", "HHP2.1: Heuristics for headings in preprocessor parenthetical structures [0,4,[4]]", "{{foo|\n\n0a2q6c6bfi1i3sor\n\n=gqmq0sr1mjz6w29=");
add("selser", "HHP2.2: Heuristics for headings in preprocessor parenthetical structures [0,4,3]", "{{foo|\n\nhwsy55rncbpxecdi\n");
add("selser", "HHP2.2: Heuristics for headings in preprocessor parenthetical structures [0,4,2]", "{{foo|\n\n9q382r4ehmvaemi\n\n4o8sjnsym8to6r\n\n==heading==");
add("selser", "HHP2.2: Heuristics for headings in preprocessor parenthetical structures [0,3,[4]]", "{{foo|\n==7s3wx1l0g4x6r==");
add("selser", "HHP2.2: Heuristics for headings in preprocessor parenthetical structures [0,0,3]", "{{foo|\n");
add("selser", "HHP2.2: Heuristics for headings in preprocessor parenthetical structures [0,0,[4]]", "{{foo|\n==935b3adg8a7nwmi==");
add("selser", "Bug 19052 U+3000 IDEOGRAPHIC SPACE should terminate bracketed external links [2]", "l0v2g46g9ipgy14i\n\n[http://www.example.org/　ideograms]");
add("selser", "Bug 19052 U+3000 IDEOGRAPHIC SPACE should terminate bracketed external links [1]", "[http://www.example.org/　ideograms]");
add("selser", "Bug 19052 U+3000 IDEOGRAPHIC SPACE should terminate bracketed external links [[2]]", "ersk3465d2rtqpvi[http://www.example.org/　ideograms]");
add("selser", "Ignore pipe between table row attributes [1]", "{| data-foobar=\"ze7tc8bvfxls1yvi\"\n| quux\n|- id=foo | style='color: red'\n| bar\n|}");
add("selser", "Ignore pipe between table row attributes [[0,1]]", "{|\n| quux\n|- id=foo | style='color: red'\n| bar\n|}");
add("selser", "Ignore pipe between table row attributes [2]", "j703hesqpiv34n29\n{|\n| quux\n|- id=foo | style='color: red'\n| bar\n|}");
add("selser", "Ignore pipe between table row attributes [[2,2]]", "{|<!--gysjycu8q2maemi-->\n<!--rdn05ipccn7jsjor-->| quux\n|- id=foo | style='color: red'\n| bar\n|}");
add("selser", "Ignore pipe between table row attributes [[4,2]]", "{|<!--zrj0ish0maolayvi--><!--1o8f2hvwotgzm2t9-->\n| quux\n|- id=foo | style='color: red'\n| bar\n|}");
add("selser", "Ignore pipe between table row attributes [[3,2]]", "{|<!--x3a9rrvp5j98uxr-->\n| quux\n|- id=foo | style='color: red'\n| bar\n|}");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [[[3]],[0,3],2,3,2]", "'''<nowiki/>'''[[File:Foobar.jpg|thumb]]gpuywo0dphmy4x6r\n\nbar'''\n\nv7rqnkkwp08gp66r<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [3,[0,3],2,0,0]", "[[File:Foobar.jpg|thumb]]mgvf4y6f1qj2lnmi\n\nbar'''\n\n<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [2,[0,[[4]]],1,4,4]", "nbm7dqil1qrm5cdi\n\n'''foo[[File:Foobar.jpg|thumb|'''e5p5chd4qz146lxr''']]bar'''\n\ni26h6on3jway8pvi\n\n73on9iauy9v5z5mi\n");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [[3],[0,[[3]]],[2],0,2]", "[[File:Foobar.jpg|thumb|'''<nowiki/>''']]gii0n1i5lylm1jorbar'''\n\nbsrfvgwb36iozuxr<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [1,[0,[[2]]],[[3]],0,0]", "'''foo[[File:Foobar.jpg|thumb|'''5j4eft7x8tr19k9caption''']]'''<nowiki/>'''\n\n<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [4,0,3,0,0]", "zunzpvcxzt5oecdi[[File:Foobar.jpg|thumb|caption]]\n\n<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [4,[0,[2]],0,4,0]", "y2iogodcz9gm0a4i[[File:Foobar.jpg|thumb|rnu2k32wjpmbo6r'''caption''']]bar'''\n\noajbawfj10chxgvi<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [[4],[0,1],2,3,0]", "eq34aibst8ykqpvi[[File:Foobar.jpg|thumb|'''caption''']]utd8leraqm3ivn29\n\nbar'''<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [0,[0,[4]],2,3,0]", "'''foo[[File:Foobar.jpg|thumb|8yxxa441j74on7b9]]0mjirqofaohqto6r\n\nbar'''<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [3,[0,2],1,0,0]", "[[File:Foobar.jpg|thumb|'''caption''']]bar'''\n\n<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [0,[0,[[4]]],0,2,0]", "'''foo[[File:Foobar.jpg|thumb|'''a7yqhlnuuc70hpvi''']]bar'''\n\neloa4ddm1l40a4i\n\n<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [[2],[0,[[2]]],[[4]],0,0]", "c3ni0z76g9sbgldi'''foo[[File:Foobar.jpg|thumb|'''2uhn3ww6jr307ldicaption''']]'''sa6ptugggq0ssjor'''\n\n<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [[3],0,[1],0,4]", "[[File:Foobar.jpg|thumb|caption]]'''bar'''\n\nily87fh4z6nipb9\n");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [4,[0,1],2,0,0]", "ns2t3vre6xjn61or[[File:Foobar.jpg|thumb|'''caption''']]ett722e3n2162yb9\n\nbar'''\n\n<small>[[Image:Foobar.jpg|right|300px]]</small>");
add("selser", "2. Bad treebuilder fixup of formatting elt is cleaned up [1,[0,[2]],[1],0,3]", "'''foo[[File:Foobar.jpg|thumb|3nwdrc96evrvygb9'''caption''']]'''bar'''\n");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [1,[0,1],3]", "<small>'''foo[[File:Foobar.jpg|thumb|'''caption''']]");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [2,[0,3],4]", "y7ifnana9uxflxr\n\n<small>'''foo[[File:Foobar.jpg|thumb]]b8n70rbw1s3ba9k9\n");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [[[[3]]],[0,2],1]", "<small>'''<nowiki/>'''[[File:Foobar.jpg|thumb|'''caption''']]bar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [[[1]],[0,[[1]]],[1]]", "<small>'''foo'''[[File:Foobar.jpg|thumb|'''caption''']]bar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [[1],[0,3],2]", "<small data-foobar=\"6cmythl25d0a4i\">'''foo[[File:Foobar.jpg|thumb]]wlvr06p7zsuac3di\n\nbar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [4,[0,[[4]]],1]", "l1vzbhl9r9q9f6r[[File:Foobar.jpg|thumb|rcx45uustadu0udi]]bar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [[3],[0,[1]],[2]]", "[[File:Foobar.jpg|thumb|'''caption''']]gvarzgdmio7ds4ibar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [[2],[0,2],3]", "0dt9txv5y36jemi<small>'''foo[[File:Foobar.jpg|thumb|'''caption''']]");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [[[4]],[0,[4]],1]", "<small>7mvgdo98qudte29[[File:Foobar.jpg|thumb|ae80xjnhgjtyy14i]]bar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [0,[0,[[1]]],[1]]", "<small>'''foo[[File:Foobar.jpg|thumb|'''caption''']]bar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [1,[0,[[[4]]]],[2]]", "<small>'''foo[[File:Foobar.jpg|thumb|'''7f42ei3n64j9k9''']]cy93kncbnxbf0f6rbar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [2,[0,3],1]", "lk10twjjb9nhr529\n\n<small>'''foo[[File:Foobar.jpg|thumb]]bar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [4,[0,1],[1]]", "qnc5k91hk6agu8fr[[File:Foobar.jpg|thumb|'''caption''']]bar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [2,[0,2],4]", "t31d20n6samoyldi\n\n<small>'''foo[[File:Foobar.jpg|thumb|'''caption''']]mucbll5qzvdeu3di\n");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [1,0,[1]]", "<small>'''foo[[File:Foobar.jpg|thumb|caption]]bar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [2,[0,4],[[1]]]", "r30jvtw1s3ba9k9\n\n<small>'''foo[[File:Foobar.jpg|thumb]]'''bar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [[[1]],[0,[1]],2]", "<small>'''foo'''[[File:Foobar.jpg|thumb|'''caption''']]7k0xv746ovgw4s4i\n\nbar'''</small>");
add("selser", "3. Bad treebuilder fixup of formatting elt is cleaned up [0,[0,3],[[4]]]", "<small>'''foo[[File:Foobar.jpg|thumb]]bfx11kvlu8t9y66r</small>");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [0,0,2]", "'''<small>[[Image:Foobar.jpg|right|300px]]b7civohdrxwxko6r\n\n</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [1,0,0]", "'''<small>[[Image:Foobar.jpg|right|300px]]</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [[2],0,1]", "g5j2ywg7l7g5jyvi'''<small>[[Image:Foobar.jpg|right|300px]]\n");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [4,0,0]", "yckv1qax2jd1jor[[Image:Foobar.jpg|right|300px]]</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [4,0,2]", "r4hc1e2xazizr529[[Image:Foobar.jpg|right|300px]]5mf57280ay808uxr\n\n</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [[2],0,0]", "gyx988lzriy0hpvi'''<small>[[Image:Foobar.jpg|right|300px]]</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [[3],0,0]", "[[Image:Foobar.jpg|right|300px]]</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [2,0,0]", "t0ihbuoi3a6ecdi\n\n'''<small>[[Image:Foobar.jpg|right|300px]]</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [3,0,0]", "[[Image:Foobar.jpg|right|300px]]</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [[[4]],0,2]", "'''g6ltmvk6me4gqfr'''[[Image:Foobar.jpg|right|300px]]v39vdlwzbocg14i\n\n</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [1,0,1]", "'''<small>[[Image:Foobar.jpg|right|300px]]\n");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [2,0,2]", "ql0r6fepyg9442t9\n\n'''<small>[[Image:Foobar.jpg|right|300px]]bc2941fkvsnpzaor\n\n</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [0,0,3]", "'''<small>[[Image:Foobar.jpg|right|300px]]");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [[1],0,0]", "'''<small>'''[[Image:Foobar.jpg|right|300px]]</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [0,0,1]", "'''<small>[[Image:Foobar.jpg|right|300px]]\n");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [[[3]],0,0]", "'''<nowiki/>'''[[Image:Foobar.jpg|right|300px]]</small>'''");
add("selser", "4. Bad treebuilder fixup of formatting elt is cleaned up: formatting tags around captionless images are ignored [[1],0,2]", "'''<small>'''[[Image:Foobar.jpg|right|300px]]4dd0pkgy6f450zfr\n\n</small>'''");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[0,0,2,0,3,0],0,0]", "A <ref name=\"x\">foo</ref>4e761xuztftlz0k9\nB <ref name=\" x \" /><ref name= x  />\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[0,0,4,0,2,0],0,0]", "A <ref name=\"x\">foo</ref>3w7ovsl9a3fk1emi<ref name=\" x \" />0ge9uw9zjpk6s9k9\nC <ref name= x  />\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[0,0,3,0,0,0],3,0]", "A <ref name=\"x\">foo</ref><ref name=\" x \" />\nC <ref name= x  /><references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[4,0,3,0,3,0],0,0]", "9bipqi2pwdi2uik9<ref name=\"x\">foo</ref><ref name=\" x \" /><ref name= x  />\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [2,0,0]", "ygeccjbn41fez5mi\n\nA <ref name=\"x\">foo</ref>\nB <ref name=\" x \" />\nC <ref name= x  />\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[3,0,4,0,0,0],4,0]", "<ref name=\"x\">foo</ref>2mkm6z95yrx561or<ref name=\" x \" />\nC <ref name= x  />\n\nbrxr5q2im99c0udi<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [1,2,0]", "A <ref name=\"x\">foo</ref>\nB <ref name=\" x \" />\nC <ref name= x  />\n\n6y8eehlkc3lbx1or\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [0,4,0]", "A <ref name=\"x\">foo</ref>\nB <ref name=\" x \" />\nC <ref name= x  />\n\naakjv0zefcgqr529<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[4,0,2,0,0,0],0,0]", "bsstrf4asth5b3xr<ref name=\"x\">foo</ref>ykhvrcwh9cc8fr\nB <ref name=\" x \" />\nC <ref name= x  />\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[3,0,3,0,0,0],0,0]", "<ref name=\"x\">foo</ref><ref name=\" x \" />\nC <ref name= x  />\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[0,0,4,0,3,0],4,0]", "A <ref name=\"x\">foo</ref>h81b8wtpyjznz5mi<ref name=\" x \" /><ref name= x  />\n\n7srb7c5gx28olxr<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[4,0,0,0,3,0],2,0]", "9b0gpvrxsxetgldi<ref name=\"x\">foo</ref>\nB <ref name=\" x \" /><ref name= x  />\n\nkha2wn0z9qr7wrk9\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[3,0,3,0,0,0],2,0]", "<ref name=\"x\">foo</ref><ref name=\" x \" />\nC <ref name= x  />\n\n1i7un9k3kza4te29\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [1,0,0]", "A <ref name=\"x\">foo</ref>\nB <ref name=\" x \" />\nC <ref name= x  />\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[3,0,0,0,0,0],3,0]", "<ref name=\"x\">foo</ref>\nB <ref name=\" x \" />\nC <ref name= x  /><references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[3,0,4,0,2,0],0,0]", "<ref name=\"x\">foo</ref>waf2vtqqnxjyk3xr<ref name=\" x \" />dyfyyn5o3sqvvx6r\nC <ref name= x  />\n<references />");
add("selser", "Ref: 3. spaces in ref-names should be ignored [[0,0,0,0,4,0],0,0]", "A <ref name=\"x\">foo</ref>\nB <ref name=\" x \" />gzf0q2rm80hehfr<ref name= x  />\n<references />");
add("selser", "Ref: 5. body should accept generic wikitext [0,2,0]", "A <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\ndwm4quuvdsjg7gb9\n\n<references />");
add("selser", "Ref: 5. body should accept generic wikitext [[2,0],0,0]", "64pys175oa90be29A <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\n<references />");
add("selser", "Ref: 5. body should accept generic wikitext [[2,0],4,0]", "4jyox5aerj05dn29A <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\ne8ivhnmx87uy2e29<references />");
add("selser", "Ref: 5. body should accept generic wikitext [2,3,0]", "qoeqwnbmi3qjv2t9\n\nA <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref><references />");
add("selser", "Ref: 5. body should accept generic wikitext [1,0,0]", "A <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\n<references />");
add("selser", "Ref: 5. body should accept generic wikitext [1,2,0]", "A <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\n6gjpondmwn67ds4i\n\n<references />");
add("selser", "Ref: 5. body should accept generic wikitext [0,3,0]", "A <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref><references />");
add("selser", "Ref: 5. body should accept generic wikitext [2,0,0]", "38rn8yqn23hdj9k9\n\nA <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\n<references />");
add("selser", "Ref: 5. body should accept generic wikitext [[4,0],0,0]", "779fr59c6rey7gb9<ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\n<references />");
add("selser", "Ref: 5. body should accept generic wikitext [[3,0],0,0]", "<ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\n<references />");
add("selser", "Ref: 5. body should accept generic wikitext [0,4,0]", "A <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\nwcpd1emtigtu766r<references />");
add("selser", "Ref: 5. body should accept generic wikitext [[3,0],3,0]", "<ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref><references />");
add("selser", "Ref: 5. body should accept generic wikitext [1,4,0]", "A <ref>\n This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}\n</ref>\n\nopb6dbabhj0grpb9<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [[3,0],2,0]", "<ref>\n foo\n bar\n baz\n</ref>\n\nc9yzes7c4y3hxgvi\n\n<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [[3,0],0,0]", "<ref>\n foo\n bar\n baz\n</ref>\n\n<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [[4,0],0,0]", "d39shok49xw7y14i<ref>\n foo\n bar\n baz\n</ref>\n\n<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [[2,0],3,0]", "csno6hudm6kihpviA <ref>\n foo\n bar\n baz\n</ref><references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [1,0,0]", "A <ref>\n foo\n bar\n baz\n</ref>\n\n<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [1,4,0]", "A <ref>\n foo\n bar\n baz\n</ref>\n\n2covjp6eq4ghw7b9<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [2,2,0]", "toqw7sfzxluwhfr\n\nA <ref>\n foo\n bar\n baz\n</ref>\n\naxhh0g58eel8fr\n\n<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [0,4,0]", "A <ref>\n foo\n bar\n baz\n</ref>\n\n76w3qizpu7jpp66r<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [[4,0],2,0]", "eq3p1jsy2j8257b9<ref>\n foo\n bar\n baz\n</ref>\n\ncf0j98xgr3f5stt9\n\n<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [0,3,0]", "A <ref>\n foo\n bar\n baz\n</ref><references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [[2,0],2,0]", "34ay886hc1ve7b9A <ref>\n foo\n bar\n baz\n</ref>\n\n4vfupz59fgw7mn29\n\n<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [2,3,0]", "vbah6nejqryynwmi\n\nA <ref>\n foo\n bar\n baz\n</ref><references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [1,2,0]", "A <ref>\n foo\n bar\n baz\n</ref>\n\n2k397n91ucakmx6r\n\n<references />");
add("selser", "Ref: 6. indent-pres should not be output in ref-body [[2,0],0,0]", "auk5t95qxlohto6rA <ref>\n foo\n bar\n baz\n</ref>\n\n<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [2,4,0]", "izih4ttja0mgqfr\n\nA <ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\neh3q28gvbmxwdn29<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [1,0,0]", "A <ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\n<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [2,0,0]", "n1ye9use3rn0o1or\n\nA <ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\n<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [[4,0],3,0]", "0begyf0zmdo39pb9<ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref><references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [0,4,0]", "A <ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\nm971mm3izn83q5mi<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [2,3,0]", "4i848j6u4m67p66r\n\nA <ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref><references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [1,4,0]", "A <ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\ng3njijxqqqto6r<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [0,2,0]", "A <ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\n6r812mhuxe6ogvi\n\n<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [[4,0],0,0]", "huu8lpo8ozn3tyb9<ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\n<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [[3,0],0,0]", "<ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\n<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [1,3,0]", "A <ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref><references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [[2,0],4,0]", "34x1kftp6cg14iA <ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\ngoqdfok6qfvzehfr<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [[4,0],4,0]", "tewmryhpf1bxogvi<ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref>\n\n287sw295wn17zaor<references />");
add("selser", "Ref: 7. No p-wrapping in ref-body [[3,0],3,0]", "<ref>\nfoo\n\nbar\n\n\nbaz\n\n\n\nbooz\n</ref><references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[3,0,0],0,0]", "<ref> foo {{echo|</ref> B C}}\n\n<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [0,2,0]", "A <ref> foo {{echo|</ref> B C}}\n\nbugprygirpe3ik9\n\n<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[0,0,2],2,0]", "A <ref> foo {{echo|</ref><nowiki>5nkeu8bfbog06bt9 B C}}</nowiki>\n\n5378fuaj7nwmi\n\n<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [1,4,0]", "A <ref> foo {{echo|</ref> B C}}\n\nfc744f1ddc5zh0k9<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [0,3,0]", "A <ref> foo {{echo|</ref> B C}}<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[2,0,0],0,0]", "0xr2nac5pztwqaorA <ref> foo {{echo|</ref> B C}}\n\n<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[2,0,4],0,0]", "8xs9gemyg9nc23xrA <ref> foo {{echo|</ref>klhu6j5nxparwwmi\n\n<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [0,4,0]", "A <ref> foo {{echo|</ref> B C}}\n\nvdm4ccld6aq3erk9<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[4,0,3],4,0]", "7na9u57xsprb2o6r<ref> foo {{echo|</ref>\n\ngp86hqynhmovquxr<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [1,0,0]", "A <ref> foo {{echo|</ref> B C}}\n\n<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[3,0,0],2,0]", "<ref> foo {{echo|</ref> B C}}\n\nfhyq1oah4n9daemi\n\n<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[4,0,2],3,0]", "839ue3zrnclbx1or<ref> foo {{echo|</ref><nowiki>5k7094p8ve4gqfr B C}}</nowiki><references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [2,0,0]", "ny3t8o4lcg39dx6r\n\nA <ref> foo {{echo|</ref> B C}}\n\n<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[2,0,0],2,0]", "3zedmyrzf9don7b9A <ref> foo {{echo|</ref> B C}}\n\nxzksp1lwlubu766r\n\n<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[0,0,4],4,0]", "A <ref> foo {{echo|</ref>yv1uetyp3ynqxgvi\n\nbep2v1t3tyugzaor<references />");
add("selser", "Ref: 8. transclusion wikitext has lower precedence [[4,0,2],4,0]", "5967hka94mrkke29<ref> foo {{echo|</ref><nowiki>4xuj8pifdagrdx6r B C}}</nowiki>\n\ns0j38kel7db1emi<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [2,3,0]", "lxg9r6yz398xs9k9\n\nA <ref> foo <!--</ref> B C<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[4,0,0],4,0]", "ecjktuor793eg66r<ref> foo <!--</ref> B C\n\n8lwxeybnzep9o1or<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[0,0,4],3,0]", "A <ref> foo <!--</ref>5f3nac1cbffde7b9<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[2,0,0],2,0]", "3sn4sc1vqm7snhfrA <ref> foo <!--</ref> B C\n\nj5o46pvlyk6s9k9\n<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [1,0,0]", "A <ref> foo <!--</ref> B C\n<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[2,0,0],0,0]", "fxia64zp12d42t9A <ref> foo <!--</ref> B C\n<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[4,0,4],2,0]", "aei2lcuxrhmbcsor<ref> foo <!--</ref>k5nyzytzaku1h5mi\n\nqu8eu2zt56s10pb9\n<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[3,0,4],0,0]", "<ref> foo <!--</ref>55o1bbjyxmvx6r\n<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [1,2,0]", "A <ref> foo <!--</ref> B C\n\nrlw7cay5yyom9529\n<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[2,0,0],4,0]", "ysaumnz4fngkfbt9A <ref> foo <!--</ref> B C\n\nucdijondgarwwmi<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[4,0,0],3,0]", "wmhvz6tz5y8vkj4i<ref> foo <!--</ref> B C<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [2,0,0]", "lzt3civaqy77rpb9\n\nA <ref> foo <!--</ref> B C\n<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[0,0,2],0,0]", "A <ref> foo <!--</ref>55lkdsrn1f9zr529 B C\n<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[3,0,3],4,0]", "<ref> foo <!--</ref>\n\nxa1yt1f2tgnidx6r<references />");
add("selser", "Ref: 9. unclosed comments should not leak out of ref-body [[0,0,4],2,0]", "A <ref> foo <!--</ref>wim2nyc23kxogvi\n\nrbgc74z9xnhzolxr\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [1,3,0]", "A <ref> <b> foo </ref> B C<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [1,2,0]", "A <ref> <b> foo </ref> B C\n\n8ti6tkep9xnoecdi\n\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [2,0,0]", "kzo8v6bg4gta9k9\n\nA <ref> <b> foo </ref> B C\n\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [[3,0,2],0,0]", "<ref> <b> foo </ref>enf22pahtanstt9 B C\n\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [2,3,0]", "ma3w6h5kt4q85mi\n\nA <ref> <b> foo </ref> B C<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [[2,0,0],0,0]", "b50jt91ydnobhuxrA <ref> <b> foo </ref> B C\n\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [[4,0,2],0,0]", "56flbe81qh44e7b9<ref> <b> foo </ref>0eubdxha4ldqjjor B C\n\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [[0,0,2],0,0]", "A <ref> <b> foo </ref>2v2ffbsrhae2ke29 B C\n\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [[3,0,4],0,0]", "<ref> <b> foo </ref>7pj1lrw5fsnstt9\n\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [[4,0,0],0,0]", "fud0zu1kw6d2t9<ref> <b> foo </ref> B C\n\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [0,3,0]", "A <ref> <b> foo </ref> B C<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [[2,0,0],2,0]", "3i2udpyjqgehr529A <ref> <b> foo </ref> B C\n\n04ufs7jtgivsra4i\n\n<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [0,4,0]", "A <ref> <b> foo </ref> B C\n\nexksatqzwpgsc3di<references />");
add("selser", "Ref: 10. Unclosed HTML tags should not leak out of ref-body [[0,0,4],3,0]", "A <ref> <b> foo </ref>3ds74snl9wly2e29<references />");
add("selser", "Ref: 12. ref-tags act as trailing newline migration barrier [4,[2],3,2,4,[4],3,0]", "m5deo7xhmiaoflxr\n\nqhnq99nstl8oajora\n\nf16ctvb87p919k9\n\nb<!--the newline at the end of this line stays inside the p tag--> <ref />\n<ref />\n\ni5sgdy5g0bb7qfr\n\nlppjadx2v8q41jor\n<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [[2,0,4,0],0,0]", "0dpatm9gsbqk6gvi1 <ref name=\"a & b\">foo</ref>k0yidhh5u2b21emi<ref name=\"a &amp; b\" />\n\n<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [2,0,0]", "zmmmjlha7xim5cdi\n\n1 <ref name=\"a & b\">foo</ref> 2 <ref name=\"a &amp; b\" />\n\n<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [1,0,0]", "1 <ref name=\"a & b\">foo</ref> 2 <ref name=\"a &amp; b\" />\n\n<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [[3,0,2,0],0,0]", "<ref name=\"a & b\">foo</ref>4xwpzmnvwlqy3nmi 2 <ref name=\"a &amp; b\" />\n\n<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [[4,0,0,0],3,0]", "7i0zzbh4nhdm42t9<ref name=\"a & b\">foo</ref> 2 <ref name=\"a &amp; b\" /><references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [[2,0,0,0],0,0]", "hjhp2d26mvqs38fr1 <ref name=\"a & b\">foo</ref> 2 <ref name=\"a &amp; b\" />\n\n<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [[4,0,4,0],3,0]", "zd9k828z9kiysyvi<ref name=\"a & b\">foo</ref>q33pirp3a9yhkt9<ref name=\"a &amp; b\" /><references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [1,4,0]", "1 <ref name=\"a & b\">foo</ref> 2 <ref name=\"a &amp; b\" />\n\n8k7rhm4hx2a3v7vi<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [[0,0,2,0],4,0]", "1 <ref name=\"a & b\">foo</ref>23hldhtd8azfflxr 2 <ref name=\"a &amp; b\" />\n\nemqs1xn2p292uik9<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [2,2,0]", "xggq2fn27fxq1tt9\n\n1 <ref name=\"a & b\">foo</ref> 2 <ref name=\"a &amp; b\" />\n\na8895s490fnu3di\n\n<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [[0,0,2,0],2,0]", "1 <ref name=\"a & b\">foo</ref>68etayk44yhqia4i 2 <ref name=\"a &amp; b\" />\n\njzslhat3ryrjm7vi\n\n<references />");
add("selser", "Ref: 19. ref-tags with identical name encodings should get identical indexes [[2,0,0,0],4,0]", "uon9m0ns960f6r1 <ref name=\"a & b\">foo</ref> 2 <ref name=\"a &amp; b\" />\n\njhjx2ypla5v4e7b9<references />");
add("selser", "References: 9. Generate missing references list at the end [0,4,0,3,0]", "A <ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>\n\nb7ysmcsq3gd86w29");
add("selser", "References: 9. Generate missing references list at the end [4,4,0,4,0]", "lvnt8vr7angq4cxr\n\nwue4r5n3y3a3jtt9rhjjeyvdl0qtcsor");
add("selser", "References: 9. Generate missing references list at the end [[2,0,2,0],0,0,3,0]", "7xhpxcasifwdn29A <ref>foo</ref>562x1ybv3p3w61or\nB <ref group=\"inexistent\">bar</ref>\n");
add("selser", "References: 9. Generate missing references list at the end [3,0,0,2,0]", "\ntkairlq0upfa8aor\n");
add("selser", "References: 9. Generate missing references list at the end [[0,0,2,0],2,0,0,0]", "A <ref>foo</ref>djzbwa2njauivn29\nB <ref group=\"inexistent\">bar</ref>\n\nxfjjewhbw1k2zkt9\n");
add("selser", "References: 9. Generate missing references list at the end [4,2,0,3,0]", "q1p2la2weglul3di\n\nwd4bqvoes653766r\n");
add("selser", "References: 9. Generate missing references list at the end [0,3,0,0,0]", "A <ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>");
add("selser", "References: 9. Generate missing references list at the end [[0,0,4,0],0,0,4,0]", "A <ref>foo</ref>gpnrlcm305a2x1or<ref group=\"inexistent\">bar</ref>\nctwao900ott3ayvi");
add("selser", "References: 9. Generate missing references list at the end [[0,0,4,0],0,0,3,0]", "A <ref>foo</ref>0byd6o7cb9jxlxr<ref group=\"inexistent\">bar</ref>\n");
add("selser", "References: 9. Generate missing references list at the end [[3,0,0,0],3,0,0,0]", "<ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>");
add("selser", "References: 9. Generate missing references list at the end [3,3,0,0,0]", "");
add("selser", "References: 9. Generate missing references list at the end [[4,0,4,0],2,0,4,0]", "hrabkskjen7mn29<ref>foo</ref>jrecig5npts2a9k9<ref group=\"inexistent\">bar</ref>\n\nwci03bzp3f9cz0k9\nyhh3izw25u9s5rk9");
add("selser", "References: 9. Generate missing references list at the end [4,3,0,2,0]", "tjzrngic8rhvkj4ixv4c3yomv5yfzuxr\n");
add("selser", "References: 9. Generate missing references list at the end [2,3,0,0,0]", "p5fvot19vi996bt9\n\nA <ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>");
add("selser", "References: 9. Generate missing references list at the end [[4,0,0,0],3,0,0,0]", "dseofkxrc6w7y14i<ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>");
add("selser", "References: 9. Generate missing references list at the end [[4,0,0,0],0,0,2,0]", "sjp70faz66flxr<ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>\nzltmz19843uzbyb9\n");
add("selser", "References: 9. Generate missing references list at the end [1,3,0,0,0]", "A <ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>");
add("selser", "References: 9. Generate missing references list at the end [0,0,0,4,0]", "A <ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>gzp6lrkdgkx4j9k9");
add("selser", "References: 9. Generate missing references list at the end [[4,0,0,0],3,0,3,0]", "a021rh5a9i442t9<ref>foo</ref>\nB <ref group=\"inexistent\">bar</ref>");
add("selser", "References: 9. Generate missing references list at the end [3,0,0,0,0]", "\n");
add("selser", "Entities in ref name [0,2,0]", "<ref name=\"test &amp; me\">hi</ref>\n\n72oie2a08o69wwmi\n<references />");
add("selser", "Entities in ref name [1,0,0]", "<ref name=\"test &amp; me\">hi</ref>\n<references />");
add("selser", "Entities in ref name [2,0,0]", "znce1z6h58sn61or\n\n<ref name=\"test &amp; me\">hi</ref>\n<references />");
add("selser", "Entities in ref name [2,4,0]", "70va6oxusf50cnmi\n\n<ref name=\"test &amp; me\">hi</ref>\n\n5gl7pqxbevm6xbt9<references />");
add("selser", "Entities in ref name [0,3,0]", "<ref name=\"test &amp; me\">hi</ref><references />");
add("selser", "Entities in ref name [1,2,0]", "<ref name=\"test &amp; me\">hi</ref>\n\numckb0hhr64oyldi\n<references />");
add("selser", "Entities in ref name [2,2,0]", "z44h5udalp6qolxr\n\n<ref name=\"test &amp; me\">hi</ref>\n\naq2zpjm7twc23xr\n<references />");
add("selser", "Entities in ref name [0,4,0]", "<ref name=\"test &amp; me\">hi</ref>\n\n5nvlkjfbc7iafw29<references />");
add("selser", "Entities in ref name [2,3,0]", "uoi5udkn099vygb9\n\n<ref name=\"test &amp; me\">hi</ref><references />");
add("selser", "Entities in ref name [1,3,0]", "<ref name=\"test &amp; me\">hi</ref><references />");
add("selser", "Entities in ref name [1,4,0]", "<ref name=\"test &amp; me\">hi</ref>\n\np6wq2v8daq0k9<references />");
add("selser", "Trailing newlines in a deep dom-subtree that ends a wikitext line should be migrated out [2,4,2]", "oxcq39cyuk07wrk9\n{|\n|<small>foo\nbar\n|}\nbtnbac04guj46lxr\n\ni10ii39io6hqto6r\n{|\n|<small>foo<small>\n|}");
add("selser", "Trailing newlines in a deep dom-subtree that ends a wikitext line should be migrated out [[0,[[1],4]],3,[0,[[[[4,0]]],0]]]", "{|\n| data-foobar=\"6esm1j2nehup7gb9\" |<small>foo\nbar<!--t9z6766d6n06yldi-->\n|}\n{|\n|<small>4j0561nruz19vn29<small>\n|}");
add("selser", "Trailing newlines in a deep dom-subtree that ends a wikitext line should be migrated out [2,0,3]", "zx1dph1o9tpam7vi\n{|\n|<small>foo\nbar\n|}\n");
add("selser", "Trailing newlines in a deep dom-subtree that ends a wikitext line should be migrated out [2,0,[2,[2,0]]]", "i90l9omchljl9pb9\n{|\n|<small>foo\nbar\n|}\n\n{|<!--aly77j0vv46de7b9-->\n<!--14v0774pz99hpvi-->|<small>foo<small>\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [1]", "{| data-foobar=\"jgkmcix8xedsra4i\"\n|-\n|\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [2]", "r7gp18ucnccsdcxr\n{|\n|-\n|\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[0,[[2,0,0,0],0]]]", "{|\n|-\n|1a4bk95i0u9885mi\n|\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[0,[[0,4,0,0],3]]]", "{|\n|-\n|jnrkr7jn4o14te29\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[0,[1,4]]]", "{|\n|- data-foobar=\"0532xsqruk32fbt9\"\n|\n|{{echo|style='color:red'}}|foo<!--tn18t2s8bb6b6gvi-->\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[0,2]]", "{|\n<!--anfn90dygsvbcsor-->|-\n|\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[4,2]]", "{|<!--3z7wqf2lpjdlhaor--><!--c7w2sjrg7jozjjor-->\n|-\n|\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[4,[2,0]]]", "{|<!--2bvfx9ybokmrhpvi--><!--gyubsw35fbeasjor-->\n|-\n|\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[0,1]]", "{|\n|-\n|\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[3,[[0,2,0,0],0]]]", "{|\n|-\n|t1833l938cq2rzfr\n|\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[3,[[4,0,0,0],4]]]", "{|\n|-\n|9vflhnc8lefgk3xr\n|\n|{{echo|style='color:red'}}|foo<!--w612epsbwkf8yqfr-->\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[4,[[0,0,4,0],0]]]", "{|<!--rjnlnc8a6rvbo6r-->\n|-\n|\n|gmtx9nekb777rpb9\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Empty TD followed by TD with tpl-generated attribute [[4,1]]", "{|<!--sedhsf2n5lhoxbt9-->\n|-\n|\n|{{echo|style='color:red'}}|foo\n|}");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[[0,2],2,0,1,2]]", "<span> aq2vwpb6wpqr529<s>x</span>hse4dnwv1jor </s>\n''' ''x'''4i8mmhfpdj84zpvi ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [1]", "<span> <s>x</span> </s>\n''' ''x''' ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[0,1,2,[0,2],0]]", "<span> <s>x</span> </s>l1n5yssmn9q3q5mi\n''' 8n4q6nzuib68byb9''x''' ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[3,[4],4,0,3]]", "gxqrla3gf9vhd7vi</s>3komtxorsccmobt9''' ''x'''\n");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [2]", "w13s9iorezt49529\n\n<span> <s>x</span> </s>\n''' ''x''' ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[1,4,2,2,3]]", "<span data-foobar=\"geissfhlrgsexw29\"> <s>x</span>ekui1pysh7kz9f6rtz3yg13acmlhaor\n0dzjx04e0eyx2yb9''' ''x'''\n");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[[2,[4]],3,0,[0,4],0]]", "<span>ai65b12c016pqfr <s>k8xyu6adyimjkyb9</span>\n''' 70t7ju15bjll3di''' ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[[3,1],4,3,2,1]]", "<span><s data-foobar=\"yujoodxazklf2yb9\">x</span>g5x4jefy4tmlsorj9qqbu42v12lnmi''' ''x'''<nowiki/>'' ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[[0,2],[3],0,3,0]]", "<span> fv4h62f72no8ncdi<s>x</span></s>\n ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[3,2,0,[3,2],4]]", "ulumx746u2vp9zfr </s>\n'''h2vjgubjh4wvcxr''x'''v1lll28j1b7c766r");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[3,0,4,3,0]]", " </s>x6kyvk2giu73c8fr ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[1,3,0,2,1]]", "<span data-foobar=\"y8ap084xozqnz5mi\"> <s>x</span>\no3kjpkzbf9od2t9''' ''x'''<nowiki/>'' ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[3,4,4,0,2]]", "zspuuqxabmtmlsorhu9yn80lmnm6lxr''' ''x'''f278nrkbehwu3di ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[[0,3],[3],0,3,0]]", "<span> </span></s>\n ''");
add("selser", "Improperly nested inline or quotes tags with whitespace in between [[[2,1],[3],3,[0,3],0]]", "<span>i9p8te7ufdmquxr <s data-foobar=\"xoximjgruc95dn29\">x</span></s>''' ''' ''");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [0,4,[2,[[4],2]]]", "\n\neyvglbq1wiykfbt9<table><!--yjj7q4l8vy22o6r-->\n<tr><td>c2kzihajh6oxyldi</td><!--u6dd8p15d8guv7vi-->\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [1,3,[2,[[4],3]]]", "<nowiki> </nowiki><nowiki>||</nowiki> <nowiki>||</nowiki><table><!--07pdt8u7nxvcmcxr-->\n<tr><td>w6cuullrqw0wl8fr</td>\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [3,4,1]", "o7gd264t7kdwjyvi<table data-foobar=\"lv0fkoe23hdj9k9\">\n<tr> || ||\n<td> a\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [3,2,2]", "r7yvmnw0lwstt9\njvym2daxe28adcxr<table>\n<tr> || ||\n<td> a\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [3,2,1]", "mk36x4nnqo7p66r\n<table data-foobar=\"j76ebe3ig8u59udi\">\n<tr> || ||\n<td> a\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [0,3,[2,2]]", "<table><!--20ybuhlylvnjc3di-->\n<!--ia2m4awxfye97ldi--><tr> || ||\n<td> a\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [0,3,[4,4]]", "<table><!--7u0an54r0gdgqfr--><!--2brxlofgz5cj714i--></table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [2,3,3]", "swmghyjbym3u9pb9\n\n\n");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [0,4,4]", "\n\n6ouscimmanvobt9\n\nyr9z5asll86hto6r\n");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [[4],2,2]", "g0k0ox4y9rs8m2t9\n\nzfw5uw1rihn0zfr\nojh26njo5gq4cxr<table>\n<tr> || ||\n<td> a\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [2,0,[3,[[4],0]]]", "l6hjltfxsxy1fw29\n\n\n<table><tr><td>hfey4impislfecdi</td>\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [0,3,4]", "\n\n9k078dwzmb6e0zfr\n");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [[3],0,2]", "\n79u7w8mk0qyc766r<table>\n<tr> || ||\n<td> a\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [0,0,2]", "\n17g7ad7yjq1zia4i<table>\n<tr> || ||\n<td> a\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [1,0,1]", "<nowiki> </nowiki><nowiki>||</nowiki> <nowiki>||</nowiki>\n<table data-foobar=\"734xmyt3rp5jyvi\">\n<tr> || ||\n<td> a\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [2,0,[0,3]]", "z8xg0t8oxy8k6gvi\n\n\n<table></table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [2,2,[2,[3,2]]]", "4p9b5ylwp6gpsyvi\n\n\n\n52u735k3ah96n7b9\n<table><!--u4n4phdgngffxbt9-->\n<!--ox538fcmtef2bj4i-->\n</table>");
add("selser", "2. Ensure fostered text content is wrapped in element nodes (traps regressions around fostered marker on the element getting lost) [3,4,[2,0]]", "r04d5cr392cpu8fr<table><!--nkka2k3hiqode7b9-->\n<tr> || ||\n<td> a\n</table>");
add("selser", "T73074: More fostering fun [0,4]", "\n8xi9hgxdx5ok1emi\n");
add("selser", "T73074: More fostering fun [0,1]", "<table data-foobar=\"9sq3bcyui04zehfr\"><td></td>{{echo|<tr>}}<!--c-->[[Category:Two]]");
add("selser", "T73074: More fostering fun [2,[[[3],0]]]", "j4gkis0zroa8aor\n<table>{{echo|<tr>}}<!--c-->[[Category:Two]]");
add("selser", "T73074: More fostering fun [2,[4]]", "3v10b21nu2nvcxr\n<table><!--45ayb1i0qka10pb9-->");
add("selser", "T73074: More fostering fun [2,4]", "iy2p94dkaprb2o6r\n\ncnnjybjnxl7eqaor\n");
add("selser", "T73074: More fostering fun [1,[2]]", "[[Category:Two]]<table><!--4ang6i0oklin3ik9--><td></td>{{echo|<tr>}}<!--c-->[[Category:Two]]");
add("selser", "T73074: More fostering fun [0,[1]]", "<table><td></td>{{echo|<tr>}}<!--c-->[[Category:Two]]");
add("selser", "T73074: More fostering fun [0,2]", "\ngoyr0zfihnk7f1or<table><td></td>{{echo|<tr>}}<!--c-->[[Category:Two]]");
add("selser", "T73074: More fostering fun [0,3]", "");
add("selser", "T73074: More fostering fun [2,1]", "wny4wilqszg58kt9\n<table data-foobar=\"blcc0mg10bfhia4i\"><td></td>{{echo|<tr>}}<!--c-->[[Category:Two]]");
add("selser", "T73074: More fostering fun [0,[[[4],0]]]", "<table>\n|hrqe0srvnrvn29{{echo|<tr>}}<!--c-->[[Category:Two]]");
add("selser", "T73074: More fostering fun [0,[[[3],0]]]", "<table>{{echo|<tr>}}<!--c-->[[Category:Two]]");
add("selser", "Image: upright option is ignored on inline and frame images (parsoid) [1]", "[[File:Foobar.jpg|500x500px|upright=0.5|caption]]");
add("selser", "Image: upright option is ignored on inline and frame images (parsoid) [2]", "kywu2qkfz9eh4cxr\n\n[[File:Foobar.jpg|500x500px|upright=0.5|caption]]");
add("selser", "Normalizations should be restricted to edited content [0,4,0,3,0]", "a\n\n2hqj9fdsvwpnwmi\n\n= =\nb");
add("selser", "Normalizations should be restricted to edited content [0,4,0,0,[4]]", "a\n\nc50ybn4dfwjc3di\n\n= =\n3d91t9d9mzs0dx6r");
add("selser", "Normalizations should be restricted to edited content [[4],0,2,2,4]", "1scvc1jtfl8tzkt9\n\n1ng8kb6hoqdxi529\n\n= =\nnazszs59x4t8d7vi\nt4vhgvt7gdqp8pvi\n");
add("selser", "Normalizations should be restricted to edited content [0,0,2,0,[3]]", "a\n\nhf1ptsqscz8e61or\n\n= =\n");
add("selser", "Normalizations should be restricted to edited content [0,0,0,0,[2]]", "a\n= =\ngavtydem1ujl9pb9b");
add("selser", "Normalizations should be restricted to edited content [1,2,0,0,0]", "a\n\n8uc2mhvuqc7kfbt9\n\n= =\nb");
add("selser", "Normalizations should be restricted to edited content [1,2,2,3,0]", "a\n\n8bevm5ajbpo561or\n\nqjal98t96jgrdx6r\n\n= =\nb");
add("selser", "4a. Table cells without escapable prefixes after edits manual", "{|\n| id=\"x\" | -\n|}");

// ### DO NOT REMOVE THIS LINE ### (end of automatically-generated section)


if (typeof module === 'object') {
	module.exports.testBlackList = testBlackList;
}
