Skip to content

Instantly share code, notes, and snippets.

@shamansir
Created November 2, 2013 03:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save shamansir/7275004 to your computer and use it in GitHub Desktop.
Save shamansir/7275004 to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
module.exports = (function(){
/*
* Generated by PEG.js 0.7.0.
*
* http://pegjs.majda.cz/
*/
function quote(s) {
/*
* ECMA-262, 5th ed., 7.8.4: All characters may appear literally in a
* string literal except for the closing quote character, backslash,
* carriage return, line separator, paragraph separator, and line feed.
* Any character may appear in the form of an escape sequence.
*
* For portability, we also escape escape all control and non-ASCII
* characters. Note that "\0" and "\v" escape sequences are not used
* because JSHint does not like the first and IE the second.
*/
return '"' + s
.replace(/\\/g, '\\\\') // backslash
.replace(/"/g, '\\"') // closing quote character
.replace(/\x08/g, '\\b') // backspace
.replace(/\t/g, '\\t') // horizontal tab
.replace(/\n/g, '\\n') // line feed
.replace(/\f/g, '\\f') // form feed
.replace(/\r/g, '\\r') // carriage return
.replace(/[\x00-\x07\x0B\x0E-\x1F\x80-\uFFFF]/g, escape)
+ '"';
}
var result = {
/*
* Parses the input with a generated parser. If the parsing is successfull,
* returns a value explicitly or implicitly specified by the grammar from
* which the parser was generated (see |PEG.buildParser|). If the parsing is
* unsuccessful, throws |PEG.parser.SyntaxError| describing the error.
*/
parse: function(input, startRule) {
var parseFunctions = {
"start": parse_start,
"Doc": parse_Doc,
"LocMarker": parse_LocMarker,
"BlockElm": parse_BlockElm,
"Block": parse_Block,
"Para": parse_Para,
"Plain": parse_Plain,
"AtxInline": parse_AtxInline,
"AtxStart": parse_AtxStart,
"AtxHeading": parse_AtxHeading,
"SetextHeading": parse_SetextHeading,
"SetextBottom1": parse_SetextBottom1,
"SetextBottom2": parse_SetextBottom2,
"SetextHeading1": parse_SetextHeading1,
"SetextHeading2": parse_SetextHeading2,
"Heading": parse_Heading,
"BlockQuote": parse_BlockQuote,
"OneLinersBlockquote": parse_OneLinersBlockquote,
"BlockBasedBlockquote": parse_BlockBasedBlockquote,
"VerbatimChunk": parse_VerbatimChunk,
"Verbatim": parse_Verbatim,
"HorizontalRule": parse_HorizontalRule,
"Bullet": parse_Bullet,
"Enumerator": parse_Enumerator,
"BulletList": parse_BulletList,
"OrderedList": parse_OrderedList,
"BulletListItems": parse_BulletListItems,
"OrderedListItems": parse_OrderedListItems,
"AnyBulletListItem": parse_AnyBulletListItem,
"AnyOrderedListItem": parse_AnyOrderedListItem,
"BulletListInlinedItem": parse_BulletListInlinedItem,
"OrderedListInlinedItem": parse_OrderedListInlinedItem,
"BulletListItem": parse_BulletListItem,
"OrderedListItem": parse_OrderedListItem,
"HtmlBlockOpenAddress": parse_HtmlBlockOpenAddress,
"HtmlBlockCloseAddress": parse_HtmlBlockCloseAddress,
"HtmlBlockAddress": parse_HtmlBlockAddress,
"HtmlBlockOpenBlockquote": parse_HtmlBlockOpenBlockquote,
"HtmlBlockCloseBlockquote": parse_HtmlBlockCloseBlockquote,
"HtmlBlockBlockquote": parse_HtmlBlockBlockquote,
"HtmlBlockOpenCenter": parse_HtmlBlockOpenCenter,
"HtmlBlockCloseCenter": parse_HtmlBlockCloseCenter,
"HtmlBlockCenter": parse_HtmlBlockCenter,
"HtmlBlockOpenDir": parse_HtmlBlockOpenDir,
"HtmlBlockCloseDir": parse_HtmlBlockCloseDir,
"HtmlBlockDir": parse_HtmlBlockDir,
"HtmlBlockOpenDiv": parse_HtmlBlockOpenDiv,
"HtmlBlockCloseDiv": parse_HtmlBlockCloseDiv,
"HtmlBlockDiv": parse_HtmlBlockDiv,
"HtmlBlockOpenDl": parse_HtmlBlockOpenDl,
"HtmlBlockCloseDl": parse_HtmlBlockCloseDl,
"HtmlBlockDl": parse_HtmlBlockDl,
"HtmlBlockOpenFieldset": parse_HtmlBlockOpenFieldset,
"HtmlBlockCloseFieldset": parse_HtmlBlockCloseFieldset,
"HtmlBlockFieldset": parse_HtmlBlockFieldset,
"HtmlBlockOpenForm": parse_HtmlBlockOpenForm,
"HtmlBlockCloseForm": parse_HtmlBlockCloseForm,
"HtmlBlockForm": parse_HtmlBlockForm,
"HtmlBlockOpenH1": parse_HtmlBlockOpenH1,
"HtmlBlockCloseH1": parse_HtmlBlockCloseH1,
"HtmlBlockH1": parse_HtmlBlockH1,
"HtmlBlockOpenH2": parse_HtmlBlockOpenH2,
"HtmlBlockCloseH2": parse_HtmlBlockCloseH2,
"HtmlBlockH2": parse_HtmlBlockH2,
"HtmlBlockOpenH3": parse_HtmlBlockOpenH3,
"HtmlBlockCloseH3": parse_HtmlBlockCloseH3,
"HtmlBlockH3": parse_HtmlBlockH3,
"HtmlBlockOpenH4": parse_HtmlBlockOpenH4,
"HtmlBlockCloseH4": parse_HtmlBlockCloseH4,
"HtmlBlockH4": parse_HtmlBlockH4,
"HtmlBlockOpenH5": parse_HtmlBlockOpenH5,
"HtmlBlockCloseH5": parse_HtmlBlockCloseH5,
"HtmlBlockH5": parse_HtmlBlockH5,
"HtmlBlockOpenH6": parse_HtmlBlockOpenH6,
"HtmlBlockCloseH6": parse_HtmlBlockCloseH6,
"HtmlBlockH6": parse_HtmlBlockH6,
"HtmlBlockOpenMenu": parse_HtmlBlockOpenMenu,
"HtmlBlockCloseMenu": parse_HtmlBlockCloseMenu,
"HtmlBlockMenu": parse_HtmlBlockMenu,
"HtmlBlockOpenNoframes": parse_HtmlBlockOpenNoframes,
"HtmlBlockCloseNoframes": parse_HtmlBlockCloseNoframes,
"HtmlBlockNoframes": parse_HtmlBlockNoframes,
"HtmlBlockOpenNoscript": parse_HtmlBlockOpenNoscript,
"HtmlBlockCloseNoscript": parse_HtmlBlockCloseNoscript,
"HtmlBlockNoscript": parse_HtmlBlockNoscript,
"HtmlBlockOpenOl": parse_HtmlBlockOpenOl,
"HtmlBlockCloseOl": parse_HtmlBlockCloseOl,
"HtmlBlockOl": parse_HtmlBlockOl,
"HtmlBlockOpenP": parse_HtmlBlockOpenP,
"HtmlBlockCloseP": parse_HtmlBlockCloseP,
"HtmlBlockP": parse_HtmlBlockP,
"HtmlBlockOpenPre": parse_HtmlBlockOpenPre,
"HtmlBlockClosePre": parse_HtmlBlockClosePre,
"HtmlBlockPre": parse_HtmlBlockPre,
"HtmlBlockOpenTable": parse_HtmlBlockOpenTable,
"HtmlBlockCloseTable": parse_HtmlBlockCloseTable,
"HtmlBlockTable": parse_HtmlBlockTable,
"HtmlBlockOpenUl": parse_HtmlBlockOpenUl,
"HtmlBlockCloseUl": parse_HtmlBlockCloseUl,
"HtmlBlockUl": parse_HtmlBlockUl,
"HtmlBlockOpenDd": parse_HtmlBlockOpenDd,
"HtmlBlockCloseDd": parse_HtmlBlockCloseDd,
"HtmlBlockDd": parse_HtmlBlockDd,
"HtmlBlockOpenDt": parse_HtmlBlockOpenDt,
"HtmlBlockCloseDt": parse_HtmlBlockCloseDt,
"HtmlBlockDt": parse_HtmlBlockDt,
"HtmlBlockOpenFrameset": parse_HtmlBlockOpenFrameset,
"HtmlBlockCloseFrameset": parse_HtmlBlockCloseFrameset,
"HtmlBlockFrameset": parse_HtmlBlockFrameset,
"HtmlBlockOpenLi": parse_HtmlBlockOpenLi,
"HtmlBlockCloseLi": parse_HtmlBlockCloseLi,
"HtmlBlockLi": parse_HtmlBlockLi,
"HtmlBlockOpenTbody": parse_HtmlBlockOpenTbody,
"HtmlBlockCloseTbody": parse_HtmlBlockCloseTbody,
"HtmlBlockTbody": parse_HtmlBlockTbody,
"HtmlBlockOpenTd": parse_HtmlBlockOpenTd,
"HtmlBlockCloseTd": parse_HtmlBlockCloseTd,
"HtmlBlockTd": parse_HtmlBlockTd,
"HtmlBlockOpenTfoot": parse_HtmlBlockOpenTfoot,
"HtmlBlockCloseTfoot": parse_HtmlBlockCloseTfoot,
"HtmlBlockTfoot": parse_HtmlBlockTfoot,
"HtmlBlockOpenTh": parse_HtmlBlockOpenTh,
"HtmlBlockCloseTh": parse_HtmlBlockCloseTh,
"HtmlBlockTh": parse_HtmlBlockTh,
"HtmlBlockOpenThead": parse_HtmlBlockOpenThead,
"HtmlBlockCloseThead": parse_HtmlBlockCloseThead,
"HtmlBlockThead": parse_HtmlBlockThead,
"HtmlBlockOpenTr": parse_HtmlBlockOpenTr,
"HtmlBlockCloseTr": parse_HtmlBlockCloseTr,
"HtmlBlockTr": parse_HtmlBlockTr,
"HtmlBlockOpenScript": parse_HtmlBlockOpenScript,
"HtmlBlockCloseScript": parse_HtmlBlockCloseScript,
"HtmlBlockScript": parse_HtmlBlockScript,
"HtmlBlockInTags": parse_HtmlBlockInTags,
"HtmlBlock": parse_HtmlBlock,
"HtmlBlockSelfClosing": parse_HtmlBlockSelfClosing,
"HtmlBlockType": parse_HtmlBlockType,
"StyleOpen": parse_StyleOpen,
"StyleClose": parse_StyleClose,
"InStyleTags": parse_InStyleTags,
"StyleBlock": parse_StyleBlock,
"Inlines": parse_Inlines,
"ListInlines": parse_ListInlines,
"LineWithMarkup": parse_LineWithMarkup,
"Markup": parse_Markup,
"Inline": parse_Inline,
"Space": parse_Space,
"Str": parse_Str,
"EscapedChar": parse_EscapedChar,
"Entity": parse_Entity,
"Endline": parse_Endline,
"NormalEndline": parse_NormalEndline,
"TerminalEndline": parse_TerminalEndline,
"LineBreak": parse_LineBreak,
"UlOrStarLine": parse_UlOrStarLine,
"StarLine": parse_StarLine,
"UlLine": parse_UlLine,
"Emph": parse_Emph,
"OneStarOpen": parse_OneStarOpen,
"OneStarClose": parse_OneStarClose,
"EmphStar": parse_EmphStar,
"OneUlOpen": parse_OneUlOpen,
"OneUlClose": parse_OneUlClose,
"EmphUl": parse_EmphUl,
"Strong": parse_Strong,
"TwoStarOpen": parse_TwoStarOpen,
"TwoStarClose": parse_TwoStarClose,
"StrongStar": parse_StrongStar,
"TwoUlOpen": parse_TwoUlOpen,
"TwoUlClose": parse_TwoUlClose,
"StrongUl": parse_StrongUl,
"Image": parse_Image,
"Link": parse_Link,
"ReferenceLink": parse_ReferenceLink,
"ReferenceLinkDouble": parse_ReferenceLinkDouble,
"ReferenceLinkSingle": parse_ReferenceLinkSingle,
"ExplicitLink": parse_ExplicitLink,
"Source": parse_Source,
"SourceContents": parse_SourceContents,
"Title": parse_Title,
"TitleSingle": parse_TitleSingle,
"TitleDouble": parse_TitleDouble,
"AutoLink": parse_AutoLink,
"AutoLinkUrl": parse_AutoLinkUrl,
"AutoLinkEmail": parse_AutoLinkEmail,
"Reference": parse_Reference,
"Label": parse_Label,
"RefSrc": parse_RefSrc,
"RefTitle": parse_RefTitle,
"EmptyTitle": parse_EmptyTitle,
"RefTitleSingle": parse_RefTitleSingle,
"RefTitleDouble": parse_RefTitleDouble,
"RefTitleParens": parse_RefTitleParens,
"References": parse_References,
"Ticks1": parse_Ticks1,
"Ticks2": parse_Ticks2,
"Ticks3": parse_Ticks3,
"Ticks4": parse_Ticks4,
"Ticks5": parse_Ticks5,
"Code": parse_Code,
"RawHtml": parse_RawHtml,
"BlankLine": parse_BlankLine,
"Quoted": parse_Quoted,
"HtmlAttribute": parse_HtmlAttribute,
"HtmlComment": parse_HtmlComment,
"HtmlTag": parse_HtmlTag,
"Eof": parse_Eof,
"Spacechar": parse_Spacechar,
"Nonspacechar": parse_Nonspacechar,
"Newline": parse_Newline,
"Sp": parse_Sp,
"Spnl": parse_Spnl,
"SpecialChar": parse_SpecialChar,
"NormalChar": parse_NormalChar,
"Alphanumeric": parse_Alphanumeric,
"AlphanumericAscii": parse_AlphanumericAscii,
"HexEntity": parse_HexEntity,
"DecEntity": parse_DecEntity,
"CharEntity": parse_CharEntity,
"NonindentSpace": parse_NonindentSpace,
"Indent": parse_Indent,
"Indents": parse_Indents,
"AnyIndent": parse_AnyIndent,
"IndentedLine": parse_IndentedLine,
"OptionallyIndentedLine": parse_OptionallyIndentedLine,
"Line": parse_Line,
"RawLine": parse_RawLine,
"SkipBlock": parse_SkipBlock,
"ExtendedSpecialChar": parse_ExtendedSpecialChar,
"NoteReference": parse_NoteReference,
"RawNoteReference": parse_RawNoteReference,
"Note": parse_Note,
"InlineNote": parse_InlineNote,
"RawNoteBlock": parse_RawNoteBlock
};
if (startRule !== undefined) {
if (parseFunctions[startRule] === undefined) {
throw new Error("Invalid rule name: " + quote(startRule) + ".");
}
} else {
startRule = "start";
}
var pos = 0;
var reportFailures = 0;
var rightmostFailuresPos = 0;
var rightmostFailuresExpected = [];
function padLeft(input, padding, length) {
var result = input;
var padLength = length - input.length;
for (var i = 0; i < padLength; i++) {
result = padding + result;
}
return result;
}
function escape(ch) {
var charCode = ch.charCodeAt(0);
var escapeChar;
var length;
if (charCode <= 0xFF) {
escapeChar = 'x';
length = 2;
} else {
escapeChar = 'u';
length = 4;
}
return '\\' + escapeChar + padLeft(charCode.toString(16).toUpperCase(), '0', length);
}
function matchFailed(failure) {
if (pos < rightmostFailuresPos) {
return;
}
if (pos > rightmostFailuresPos) {
rightmostFailuresPos = pos;
rightmostFailuresExpected = [];
}
rightmostFailuresExpected.push(failure);
}
function parse_start() {
var result0;
var pos0;
pos0 = pos;
result0 = parse_Doc();
if (result0 !== null) {
result0 = (function(offset) { d.end();
var cur = d.get_state();
d.work_with(w); // enable previous state
return cur; })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Doc() {
var result0, result1;
result0 = [];
result1 = parse_Block();
while (result1 !== null) {
result0.push(result1);
result1 = parse_Block();
}
return result0;
}
function parse_LocMarker() {
var result0;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
if (input.length > pos) {
result0 = input.charAt(pos);
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
reportFailures--;
if (result0 !== null) {
result0 = "";
pos = pos1;
} else {
result0 = null;
}
if (result0 !== null) {
result0 = (function(offset) { return _chunk.pos; })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_BlockElm() {
var result0;
var pos0;
pos0 = pos;
result0 = parse_BlockQuote();
if (result0 === null) {
result0 = parse_Note();
if (result0 === null) {
result0 = parse_Reference();
if (result0 === null) {
result0 = parse_HorizontalRule();
if (result0 === null) {
result0 = parse_Heading();
if (result0 === null) {
result0 = parse_OrderedList();
if (result0 === null) {
result0 = parse_BulletList();
if (result0 === null) {
result0 = parse_HtmlBlock();
if (result0 === null) {
result0 = parse_StyleBlock();
if (result0 === null) {
result0 = parse_Para();
if (result0 === null) {
result0 = parse_Plain();
}
}
}
}
}
}
}
}
}
}
if (result0 !== null) {
result0 = (function(offset, b) { // all block-elms return their numeric types
return b; })(pos0, result0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Block() {
var result0, result1, result2, result3;
var pos0;
pos0 = pos;
result0 = [];
result1 = parse_BlankLine();
while (result1 !== null) {
result0.push(result1);
result1 = parse_BlankLine();
}
if (result0 !== null) {
result1 = parse_Verbatim();
if (result1 === null) {
result1 = parse_BlockElm();
}
if (result1 !== null) {
result2 = [];
result3 = parse_BlankLine();
while (result3 !== null) {
result2.push(result3);
result3 = parse_BlankLine();
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Para() {
var result0, result1, result2, result3;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
result0 = parse_NonindentSpace();
if (result0 !== null) {
result1 = parse_Inlines();
if (result1 !== null) {
result3 = parse_BlankLine();
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
result3 = parse_BlankLine();
}
} else {
result2 = null;
}
if (result2 === null) {
result2 = parse_Eof();
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt) { d.add(d.elem_ct(t.pmd_PARA,_chunk,txt));
return t.pmd_PARA; })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Plain() {
var result0;
var pos0;
pos0 = pos;
result0 = parse_Inlines();
if (result0 !== null) {
result0 = (function(offset) { return -1; })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_AtxInline() {
var result0, result1, result2, result3, result4;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_Newline();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
pos1 = pos;
reportFailures++;
pos2 = pos;
result1 = parse_Sp();
result1 = result1 !== null ? result1 : "";
if (result1 !== null) {
result2 = [];
if (input.charCodeAt(pos) === 35) {
result3 = "#";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"#\"");
}
}
while (result3 !== null) {
result2.push(result3);
if (input.charCodeAt(pos) === 35) {
result3 = "#";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"#\"");
}
}
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Newline();
if (result4 !== null) {
result1 = [result1, result2, result3, result4];
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
result2 = parse_Inline();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_AtxStart() {
var result0;
var pos0;
pos0 = pos;
if (input.substr(pos, 6) === "######") {
result0 = "######";
pos += 6;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"######\"");
}
}
if (result0 === null) {
if (input.substr(pos, 5) === "#####") {
result0 = "#####";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"#####\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "####") {
result0 = "####";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"####\"");
}
}
if (result0 === null) {
if (input.substr(pos, 3) === "###") {
result0 = "###";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"###\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "##") {
result0 = "##";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"##\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 35) {
result0 = "#";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"#\"");
}
}
}
}
}
}
}
if (result0 !== null) {
result0 = (function(offset, hashes) { return (t.pmd_H1 + (hashes.length - 1)) })(pos0, result0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_AtxHeading() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
result0 = parse_AtxStart();
if (result0 !== null) {
result1 = parse_Sp();
result1 = result1 !== null ? result1 : "";
if (result1 !== null) {
pos2 = pos;
result3 = parse_AtxInline();
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
result3 = parse_AtxInline();
}
} else {
result2 = null;
}
if (result2 !== null) {
result2 = (function(offset) { return _chunk.match })(pos2);
}
if (result2 === null) {
pos = pos2;
}
if (result2 !== null) {
pos2 = pos;
result3 = parse_Sp();
result3 = result3 !== null ? result3 : "";
if (result3 !== null) {
result4 = [];
if (input.charCodeAt(pos) === 35) {
result5 = "#";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"#\"");
}
}
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 35) {
result5 = "#";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"#\"");
}
}
}
if (result4 !== null) {
result5 = parse_Sp();
if (result5 !== null) {
result3 = [result3, result4, result5];
} else {
result3 = null;
pos = pos2;
}
} else {
result3 = null;
pos = pos2;
}
} else {
result3 = null;
pos = pos2;
}
result3 = result3 !== null ? result3 : "";
if (result3 !== null) {
result4 = parse_Newline();
if (result4 !== null) {
result0 = [result0, result1, result2, result3, result4];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, hx, txt) { d.add(d.elem_ct(hx,_chunk,txt)); return hx; })(pos0, result0[0], result0[2]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_SetextHeading() {
var result0;
result0 = parse_SetextHeading1();
if (result0 === null) {
result0 = parse_SetextHeading2();
}
return result0;
}
function parse_SetextBottom1() {
var result0, result1, result2;
var pos0;
pos0 = pos;
if (input.substr(pos, 3) === "===") {
result0 = "===";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"===\"");
}
}
if (result0 !== null) {
result1 = [];
if (input.charCodeAt(pos) === 61) {
result2 = "=";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"=\"");
}
}
while (result2 !== null) {
result1.push(result2);
if (input.charCodeAt(pos) === 61) {
result2 = "=";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"=\"");
}
}
}
if (result1 !== null) {
result2 = parse_Newline();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_SetextBottom2() {
var result0, result1, result2;
var pos0;
pos0 = pos;
if (input.substr(pos, 3) === "---") {
result0 = "---";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"---\"");
}
}
if (result0 !== null) {
result1 = [];
if (input.charCodeAt(pos) === 45) {
result2 = "-";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
while (result2 !== null) {
result1.push(result2);
if (input.charCodeAt(pos) === 45) {
result2 = "-";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
}
if (result1 !== null) {
result2 = parse_Newline();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_SetextHeading1() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
pos3 = pos;
result0 = parse_RawLine();
if (result0 !== null) {
result1 = parse_SetextBottom1();
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos3;
}
} else {
result0 = null;
pos = pos3;
}
reportFailures--;
if (result0 !== null) {
result0 = "";
pos = pos2;
} else {
result0 = null;
}
if (result0 !== null) {
result1 = parse_LocMarker();
if (result1 !== null) {
pos2 = pos;
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Endline();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Inline();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Endline();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Inline();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
} else {
result2 = null;
}
if (result2 !== null) {
result2 = (function(offset) { return _chunk.match })(pos2);
}
if (result2 === null) {
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Sp();
result3 = result3 !== null ? result3 : "";
if (result3 !== null) {
result4 = parse_Newline();
if (result4 !== null) {
result5 = parse_SetextBottom1();
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, s, txt) { d.add(d.elem_pet(t.pmd_H1,s,_chunk.end,txt));
return t.pmd_H1; })(pos0, result0[1], result0[2]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_SetextHeading2() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
pos3 = pos;
result0 = parse_RawLine();
if (result0 !== null) {
result1 = parse_SetextBottom2();
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos3;
}
} else {
result0 = null;
pos = pos3;
}
reportFailures--;
if (result0 !== null) {
result0 = "";
pos = pos2;
} else {
result0 = null;
}
if (result0 !== null) {
result1 = parse_LocMarker();
if (result1 !== null) {
pos2 = pos;
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Endline();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Inline();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Endline();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Inline();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
} else {
result2 = null;
}
if (result2 !== null) {
result2 = (function(offset) { return _chunk.match })(pos2);
}
if (result2 === null) {
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Sp();
result3 = result3 !== null ? result3 : "";
if (result3 !== null) {
result4 = parse_Newline();
if (result4 !== null) {
result5 = parse_SetextBottom2();
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, s, txt) { d.add(d.elem_pet(t.pmd_H2,s,_chunk.end,txt));
return t.pmd_H2; })(pos0, result0[1], result0[2]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Heading() {
var result0;
var pos0;
result0 = parse_SetextHeading();
if (result0 === null) {
pos0 = pos;
result0 = parse_AtxHeading();
if (result0 !== null) {
result0 = (function(offset) { return t.pmd_H1; })(pos0);
}
if (result0 === null) {
pos = pos0;
}
}
return result0;
}
function parse_BlockQuote() {
var result0;
var pos0;
result0 = parse_OneLinersBlockquote();
if (result0 === null) {
pos0 = pos;
result0 = parse_BlockBasedBlockquote();
if (result0 !== null) {
result0 = (function(offset) { return t.pmd_BLOCKQUOTE; })(pos0);
}
if (result0 === null) {
pos = pos0;
}
}
return result0;
}
function parse_OneLinersBlockquote() {
var result0, result1, result2, result3, result4, result5, result6, result7;
var pos0, pos1, pos2, pos3, pos4, pos5;
pos0 = pos;
pos1 = pos;
pos2 = pos;
pos3 = pos;
pos4 = pos;
pos5 = pos;
if (input.charCodeAt(pos) === 62) {
result2 = ">";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result2 !== null) {
result1 = [];
while (result2 !== null) {
result1.push(result2);
if (input.charCodeAt(pos) === 62) {
result2 = ">";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
}
} else {
result1 = null;
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos5);
}
if (result1 === null) {
pos = pos5;
}
if (result1 !== null) {
if (input.charCodeAt(pos) === 32) {
result2 = " ";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\" \"");
}
}
result2 = result2 !== null ? result2 : "";
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos4;
}
} else {
result1 = null;
pos = pos4;
}
if (result1 !== null) {
result1 = (function(offset, l) { return l.length })(pos3, result1[0]);
}
if (result1 === null) {
pos = pos3;
}
if (result1 !== null) {
result2 = parse_LocMarker();
if (result2 !== null) {
pos3 = pos;
result3 = parse_Line();
if (result3 !== null) {
result3 = (function(offset) { return _chunk.match })(pos3);
}
if (result3 === null) {
pos = pos3;
}
if (result3 !== null) {
result4 = [];
pos3 = pos;
pos4 = pos;
pos5 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
pos5 = pos;
reportFailures++;
result6 = parse_BlankLine();
reportFailures--;
if (result6 === null) {
result6 = "";
} else {
result6 = null;
pos = pos5;
}
if (result6 !== null) {
result7 = parse_Line();
if (result7 !== null) {
result5 = [result5, result6, result7];
} else {
result5 = null;
pos = pos4;
}
} else {
result5 = null;
pos = pos4;
}
} else {
result5 = null;
pos = pos4;
}
if (result5 !== null) {
result5 = (function(offset) { return _chunk.match })(pos3);
}
if (result5 === null) {
pos = pos3;
}
while (result5 !== null) {
result4.push(result5);
pos3 = pos;
pos4 = pos;
pos5 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
pos5 = pos;
reportFailures++;
result6 = parse_BlankLine();
reportFailures--;
if (result6 === null) {
result6 = "";
} else {
result6 = null;
pos = pos5;
}
if (result6 !== null) {
result7 = parse_Line();
if (result7 !== null) {
result5 = [result5, result6, result7];
} else {
result5 = null;
pos = pos4;
}
} else {
result5 = null;
pos = pos4;
}
} else {
result5 = null;
pos = pos4;
}
if (result5 !== null) {
result5 = (function(offset) { return _chunk.match })(pos3);
}
if (result5 === null) {
pos = pos3;
}
}
if (result4 !== null) {
pos3 = pos;
result5 = parse_BlankLine();
if (result5 !== null) {
pos4 = pos;
reportFailures++;
result6 = parse_Indent();
reportFailures--;
if (result6 === null) {
result6 = "";
} else {
result6 = null;
pos = pos4;
}
if (result6 !== null) {
result5 = [result5, result6];
} else {
result5 = null;
pos = pos3;
}
} else {
result5 = null;
pos = pos3;
}
if (result5 === null) {
pos3 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos3;
}
}
if (result5 !== null) {
result1 = [result1, result2, result3, result4, result5];
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result1 = (function(offset, w, s, start, next) { return { 'text': start+next.join(''), 'start': s,
'level': w } })(pos1, result1[0], result1[1], result1[2], result1[3]);
}
if (result1 === null) {
pos = pos1;
}
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
pos1 = pos;
pos2 = pos;
pos3 = pos;
pos4 = pos;
pos5 = pos;
if (input.charCodeAt(pos) === 62) {
result2 = ">";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result2 !== null) {
result1 = [];
while (result2 !== null) {
result1.push(result2);
if (input.charCodeAt(pos) === 62) {
result2 = ">";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
}
} else {
result1 = null;
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos5);
}
if (result1 === null) {
pos = pos5;
}
if (result1 !== null) {
if (input.charCodeAt(pos) === 32) {
result2 = " ";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\" \"");
}
}
result2 = result2 !== null ? result2 : "";
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos4;
}
} else {
result1 = null;
pos = pos4;
}
if (result1 !== null) {
result1 = (function(offset, l) { return l.length })(pos3, result1[0]);
}
if (result1 === null) {
pos = pos3;
}
if (result1 !== null) {
result2 = parse_LocMarker();
if (result2 !== null) {
pos3 = pos;
result3 = parse_Line();
if (result3 !== null) {
result3 = (function(offset) { return _chunk.match })(pos3);
}
if (result3 === null) {
pos = pos3;
}
if (result3 !== null) {
result4 = [];
pos3 = pos;
pos4 = pos;
pos5 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
pos5 = pos;
reportFailures++;
result6 = parse_BlankLine();
reportFailures--;
if (result6 === null) {
result6 = "";
} else {
result6 = null;
pos = pos5;
}
if (result6 !== null) {
result7 = parse_Line();
if (result7 !== null) {
result5 = [result5, result6, result7];
} else {
result5 = null;
pos = pos4;
}
} else {
result5 = null;
pos = pos4;
}
} else {
result5 = null;
pos = pos4;
}
if (result5 !== null) {
result5 = (function(offset) { return _chunk.match })(pos3);
}
if (result5 === null) {
pos = pos3;
}
while (result5 !== null) {
result4.push(result5);
pos3 = pos;
pos4 = pos;
pos5 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
pos5 = pos;
reportFailures++;
result6 = parse_BlankLine();
reportFailures--;
if (result6 === null) {
result6 = "";
} else {
result6 = null;
pos = pos5;
}
if (result6 !== null) {
result7 = parse_Line();
if (result7 !== null) {
result5 = [result5, result6, result7];
} else {
result5 = null;
pos = pos4;
}
} else {
result5 = null;
pos = pos4;
}
} else {
result5 = null;
pos = pos4;
}
if (result5 !== null) {
result5 = (function(offset) { return _chunk.match })(pos3);
}
if (result5 === null) {
pos = pos3;
}
}
if (result4 !== null) {
pos3 = pos;
result5 = parse_BlankLine();
if (result5 !== null) {
pos4 = pos;
reportFailures++;
result6 = parse_Indent();
reportFailures--;
if (result6 === null) {
result6 = "";
} else {
result6 = null;
pos = pos4;
}
if (result6 !== null) {
result5 = [result5, result6];
} else {
result5 = null;
pos = pos3;
}
} else {
result5 = null;
pos = pos3;
}
if (result5 === null) {
pos3 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos3;
}
}
if (result5 !== null) {
result1 = [result1, result2, result3, result4, result5];
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result1 = (function(offset, w, s, start, next) { return { 'text': start+next.join(''), 'start': s,
'level': w } })(pos1, result1[0], result1[1], result1[2], result1[3]);
}
if (result1 === null) {
pos = pos1;
}
}
} else {
result0 = null;
}
if (result0 !== null) {
result0 = (function(offset, lines) { d.add(d.elem_ct(t.pmd_BQRAW,_chunk,lines.text),lines);
return lines; })(pos0, result0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_BlockBasedBlockquote() {
var result0, result1, result2, result3, result4, result5, result6, result7, result8, result9, result10, result11, result12;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
result0 = parse_Space();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result1 = parse_LocMarker();
if (result1 !== null) {
pos2 = pos;
pos3 = pos;
pos4 = pos;
if (input.charCodeAt(pos) === 62) {
result3 = ">";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
if (input.charCodeAt(pos) === 62) {
result3 = ">";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
}
} else {
result2 = null;
}
if (result2 !== null) {
result2 = (function(offset) { return _chunk.match })(pos4);
}
if (result2 === null) {
pos = pos4;
}
if (result2 !== null) {
if (input.charCodeAt(pos) === 32) {
result4 = " ";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\" \"");
}
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
if (input.charCodeAt(pos) === 32) {
result4 = " ";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\" \"");
}
}
}
} else {
result3 = null;
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
if (result2 !== null) {
result2 = (function(offset, l) { return l.length })(pos2, result2[0]);
}
if (result2 === null) {
pos = pos2;
}
if (result2 !== null) {
result3 = parse_LocMarker();
if (result3 !== null) {
result4 = (function(offset, s, w, o) { d.deep = d.deep + 1; })(pos, result1, result2, result3) ? null : "";
if (result4 !== null) {
pos2 = pos;
result5 = [];
result6 = parse_BlankLine();
while (result6 !== null) {
result5.push(result6);
result6 = parse_BlankLine();
}
if (result5 !== null) {
result6 = parse_AnyIndent();
if (result6 !== null) {
result7 = (function(offset, s, w, o, bl, ind) { return (bl.length == 0) || (ind === d.deep); })(pos, result1, result2, result3, result5, result6) ? "" : null;
if (result7 !== null) {
result5 = [result5, result6, result7];
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
if (result5 !== null) {
pos2 = pos;
result6 = parse_BlockElm();
if (result6 !== null) {
result6 = (function(offset) { return _chunk.match; })(pos2);
}
if (result6 === null) {
pos = pos2;
}
if (result6 !== null) {
result7 = [];
result8 = parse_BlankLine();
while (result8 !== null) {
result7.push(result8);
result8 = parse_BlankLine();
}
if (result7 !== null) {
result8 = [];
pos2 = pos;
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result9 = ">";
pos++;
} else {
result9 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result9 === null) {
result9 = "";
} else {
result9 = null;
pos = pos4;
}
if (result9 !== null) {
result10 = parse_Verbatim();
if (result10 === null) {
pos4 = pos;
result10 = parse_Indents();
if (result10 !== null) {
result11 = (function(offset, ind) { return (ind === d.deep); })(pos, result10) ? "" : null;
if (result11 !== null) {
result12 = parse_BlockElm();
if (result12 !== null) {
result10 = [result10, result11, result12];
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
}
if (result10 !== null) {
result11 = [];
result12 = parse_BlankLine();
while (result12 !== null) {
result11.push(result12);
result12 = parse_BlankLine();
}
if (result11 !== null) {
result9 = [result9, result10, result11];
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
if (result9 !== null) {
result9 = (function(offset) { return _chunk.match; })(pos2);
}
if (result9 === null) {
pos = pos2;
}
while (result9 !== null) {
result8.push(result9);
pos2 = pos;
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result9 = ">";
pos++;
} else {
result9 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result9 === null) {
result9 = "";
} else {
result9 = null;
pos = pos4;
}
if (result9 !== null) {
result10 = parse_Verbatim();
if (result10 === null) {
pos4 = pos;
result10 = parse_Indents();
if (result10 !== null) {
result11 = (function(offset, ind) { return (ind === d.deep); })(pos, result10) ? "" : null;
if (result11 !== null) {
result12 = parse_BlockElm();
if (result12 !== null) {
result10 = [result10, result11, result12];
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
}
if (result10 !== null) {
result11 = [];
result12 = parse_BlankLine();
while (result12 !== null) {
result11.push(result12);
result12 = parse_BlankLine();
}
if (result11 !== null) {
result9 = [result9, result10, result11];
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
if (result9 !== null) {
result9 = (function(offset) { return _chunk.match; })(pos2);
}
if (result9 === null) {
pos = pos2;
}
}
if (result8 !== null) {
result9 = (function(offset, s, w, o, bl, ind, start, next) { d.deep = d.deep - 1; })(pos, result1, result2, result3, result5[0], result5[1], result6, result8) ? null : "";
if (result9 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6, result7, result8, result9];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, s, w, o, bl, ind, start, next) { var data = { 'text': start+next.join(''), 'start': s, 'level': w };
d.add(d.elem_ct(t.pmd_BLOCKQUOTE,_chunk,data.text),data);
})(pos0, result0[1], result0[2], result0[3], result0[5][0], result0[5][1], result0[6], result0[8]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_VerbatimChunk() {
var result0, result1, result2, result3, result4;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result1 = parse_BlankLine();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
result2 = parse_Indents();
if (result2 !== null) {
result3 = (function(offset, ind) { return (ind > d.deep); })(pos, result2) ? "" : null;
if (result3 !== null) {
result4 = parse_Line();
if (result4 !== null) {
result1 = [result1, result2, result3, result4];
} else {
result1 = null;
pos = pos0;
}
} else {
result1 = null;
pos = pos0;
}
} else {
result1 = null;
pos = pos0;
}
} else {
result1 = null;
pos = pos0;
}
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
pos0 = pos;
pos1 = pos;
reportFailures++;
result1 = parse_BlankLine();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
result2 = parse_Indents();
if (result2 !== null) {
result3 = (function(offset, ind) { return (ind > d.deep); })(pos, result2) ? "" : null;
if (result3 !== null) {
result4 = parse_Line();
if (result4 !== null) {
result1 = [result1, result2, result3, result4];
} else {
result1 = null;
pos = pos0;
}
} else {
result1 = null;
pos = pos0;
}
} else {
result1 = null;
pos = pos0;
}
} else {
result1 = null;
pos = pos0;
}
}
} else {
result0 = null;
}
return result0;
}
function parse_Verbatim() {
var result0, result1, result2, result3;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
result1 = parse_VerbatimChunk();
if (result1 !== null) {
result2 = [];
result3 = parse_BlankLine();
while (result3 !== null) {
result2.push(result3);
result3 = parse_BlankLine();
}
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
pos1 = pos;
result1 = parse_VerbatimChunk();
if (result1 !== null) {
result2 = [];
result3 = parse_BlankLine();
while (result3 !== null) {
result2.push(result3);
result3 = parse_BlankLine();
}
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
}
} else {
result0 = null;
}
if (result0 !== null) {
result0 = (function(offset) { d.add(d.elem_c(t.pmd_VERBATIM,_chunk));
return t.pmd_VERBATIM; })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HorizontalRule() {
var result0, result1, result2, result3, result4, result5, result6, result7, result8, result9;
var pos0, pos1, pos2, pos3;
pos0 = pos;
pos1 = pos;
result0 = parse_NonindentSpace();
if (result0 !== null) {
result1 = parse_LocMarker();
if (result1 !== null) {
pos2 = pos;
if (input.charCodeAt(pos) === 42) {
result2 = "*";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
if (input.charCodeAt(pos) === 42) {
result4 = "*";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result4 !== null) {
result5 = parse_Sp();
if (result5 !== null) {
if (input.charCodeAt(pos) === 42) {
result6 = "*";
pos++;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result6 !== null) {
result7 = [];
pos3 = pos;
result8 = parse_Sp();
if (result8 !== null) {
if (input.charCodeAt(pos) === 42) {
result9 = "*";
pos++;
} else {
result9 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result9 !== null) {
result8 = [result8, result9];
} else {
result8 = null;
pos = pos3;
}
} else {
result8 = null;
pos = pos3;
}
while (result8 !== null) {
result7.push(result8);
pos3 = pos;
result8 = parse_Sp();
if (result8 !== null) {
if (input.charCodeAt(pos) === 42) {
result9 = "*";
pos++;
} else {
result9 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result9 !== null) {
result8 = [result8, result9];
} else {
result8 = null;
pos = pos3;
}
} else {
result8 = null;
pos = pos3;
}
}
if (result7 !== null) {
result2 = [result2, result3, result4, result5, result6, result7];
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
if (result2 === null) {
pos2 = pos;
if (input.charCodeAt(pos) === 45) {
result2 = "-";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
if (input.charCodeAt(pos) === 45) {
result4 = "-";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
if (result4 !== null) {
result5 = parse_Sp();
if (result5 !== null) {
if (input.charCodeAt(pos) === 45) {
result6 = "-";
pos++;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
if (result6 !== null) {
result7 = [];
pos3 = pos;
result8 = parse_Sp();
if (result8 !== null) {
if (input.charCodeAt(pos) === 45) {
result9 = "-";
pos++;
} else {
result9 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
if (result9 !== null) {
result8 = [result8, result9];
} else {
result8 = null;
pos = pos3;
}
} else {
result8 = null;
pos = pos3;
}
while (result8 !== null) {
result7.push(result8);
pos3 = pos;
result8 = parse_Sp();
if (result8 !== null) {
if (input.charCodeAt(pos) === 45) {
result9 = "-";
pos++;
} else {
result9 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
if (result9 !== null) {
result8 = [result8, result9];
} else {
result8 = null;
pos = pos3;
}
} else {
result8 = null;
pos = pos3;
}
}
if (result7 !== null) {
result2 = [result2, result3, result4, result5, result6, result7];
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
if (result2 === null) {
pos2 = pos;
if (input.charCodeAt(pos) === 95) {
result2 = "_";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
if (input.charCodeAt(pos) === 95) {
result4 = "_";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result4 !== null) {
result5 = parse_Sp();
if (result5 !== null) {
if (input.charCodeAt(pos) === 95) {
result6 = "_";
pos++;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result6 !== null) {
result7 = [];
pos3 = pos;
result8 = parse_Sp();
if (result8 !== null) {
if (input.charCodeAt(pos) === 95) {
result9 = "_";
pos++;
} else {
result9 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result9 !== null) {
result8 = [result8, result9];
} else {
result8 = null;
pos = pos3;
}
} else {
result8 = null;
pos = pos3;
}
while (result8 !== null) {
result7.push(result8);
pos3 = pos;
result8 = parse_Sp();
if (result8 !== null) {
if (input.charCodeAt(pos) === 95) {
result9 = "_";
pos++;
} else {
result9 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result9 !== null) {
result8 = [result8, result9];
} else {
result8 = null;
pos = pos3;
}
} else {
result8 = null;
pos = pos3;
}
}
if (result7 !== null) {
result2 = [result2, result3, result4, result5, result6, result7];
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
}
}
if (result2 !== null) {
result3 = parse_LocMarker();
if (result3 !== null) {
result4 = parse_Sp();
if (result4 !== null) {
result5 = parse_Newline();
if (result5 !== null) {
result7 = parse_BlankLine();
if (result7 !== null) {
result6 = [];
while (result7 !== null) {
result6.push(result7);
result7 = parse_BlankLine();
}
} else {
result6 = null;
}
if (result6 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, s1, s2) { d.add(d.elem_pe(t.pmd_HRULE,s1,s2));
return t.pmd_HRULE; })(pos0, result0[1], result0[3]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Bullet() {
var result0, result1, result2, result3;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_HorizontalRule();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
if (input.charCodeAt(pos) === 43) {
result1 = "+";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"+\"");
}
}
if (result1 === null) {
if (input.charCodeAt(pos) === 42) {
result1 = "*";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result1 === null) {
if (input.charCodeAt(pos) === 45) {
result1 = "-";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
}
}
if (result1 !== null) {
result3 = parse_Spacechar();
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
result3 = parse_Spacechar();
}
} else {
result2 = null;
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Enumerator() {
var result0, result1, result2, result3;
var pos0;
pos0 = pos;
if (/^[0-9]/.test(input.charAt(pos))) {
result1 = input.charAt(pos);
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("[0-9]");
}
}
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
if (/^[0-9]/.test(input.charAt(pos))) {
result1 = input.charAt(pos);
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("[0-9]");
}
}
}
} else {
result0 = null;
}
if (result0 !== null) {
if (input.charCodeAt(pos) === 46) {
result1 = ".";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\".\"");
}
}
if (result1 !== null) {
result3 = parse_Spacechar();
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
result3 = parse_Spacechar();
}
} else {
result2 = null;
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_BulletList() {
var result0, result1;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
result0 = parse_Bullet();
reportFailures--;
if (result0 !== null) {
result0 = "";
pos = pos2;
} else {
result0 = null;
}
if (result0 !== null) {
result1 = parse_BulletListItems();
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, data) { d.add(d.elem_ct(t.pmd_LIST_BULLET,_chunk,_chunk.match),data);
return t.pmd_LIST_BULLET; })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_OrderedList() {
var result0, result1;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
result0 = parse_Enumerator();
reportFailures--;
if (result0 !== null) {
result0 = "";
pos = pos2;
} else {
result0 = null;
}
if (result0 !== null) {
result1 = parse_OrderedListItems();
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, data) { d.add(d.elem_ct(t.pmd_LIST_ENUMERATOR,_chunk,_chunk.match),data);
return t.pmd_LIST_ENUMERATOR; })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_BulletListItems() {
var result0, result1, result2, result3, result4;
var pos0, pos1, pos2, pos3;
pos0 = pos;
pos1 = pos;
pos2 = pos;
result0 = parse_AnyBulletListItem();
if (result0 !== null) {
result1 = [];
pos3 = pos;
result2 = parse_AnyIndent();
if (result2 !== null) {
result3 = (function(offset, ind) { return (ind === d.deep); })(pos, result2) ? "" : null;
if (result3 !== null) {
result4 = parse_AnyBulletListItem();
if (result4 !== null) {
result2 = [result2, result3, result4];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
while (result2 !== null) {
result1.push(result2);
pos3 = pos;
result2 = parse_AnyIndent();
if (result2 !== null) {
result3 = (function(offset, ind) { return (ind === d.deep); })(pos, result2) ? "" : null;
if (result3 !== null) {
result4 = parse_AnyBulletListItem();
if (result4 !== null) {
result2 = [result2, result3, result4];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
if (result1 !== null) {
result2 = [];
result3 = parse_BlankLine();
while (result3 !== null) {
result2.push(result3);
result3 = parse_BlankLine();
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result0 = (function(offset) { return _chunk.match; })(pos1);
}
if (result0 === null) {
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, data) { return data; })(pos0, result0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_OrderedListItems() {
var result0, result1, result2, result3, result4;
var pos0, pos1, pos2, pos3;
pos0 = pos;
pos1 = pos;
pos2 = pos;
result0 = parse_AnyOrderedListItem();
if (result0 !== null) {
result1 = [];
pos3 = pos;
result2 = parse_AnyIndent();
if (result2 !== null) {
result3 = (function(offset, ind) { return (ind === d.deep); })(pos, result2) ? "" : null;
if (result3 !== null) {
result4 = parse_AnyOrderedListItem();
if (result4 !== null) {
result2 = [result2, result3, result4];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
while (result2 !== null) {
result1.push(result2);
pos3 = pos;
result2 = parse_AnyIndent();
if (result2 !== null) {
result3 = (function(offset, ind) { return (ind === d.deep); })(pos, result2) ? "" : null;
if (result3 !== null) {
result4 = parse_AnyOrderedListItem();
if (result4 !== null) {
result2 = [result2, result3, result4];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
if (result1 !== null) {
result2 = [];
result3 = parse_BlankLine();
while (result3 !== null) {
result2.push(result3);
result3 = parse_BlankLine();
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result0 = (function(offset) { return _chunk.match; })(pos1);
}
if (result0 === null) {
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, data) { return data; })(pos0, result0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_AnyBulletListItem() {
var result0;
result0 = parse_BulletListInlinedItem();
if (result0 === null) {
result0 = parse_BulletListItem();
}
return result0;
}
function parse_AnyOrderedListItem() {
var result0;
result0 = parse_OrderedListInlinedItem();
if (result0 === null) {
result0 = parse_OrderedListItem();
}
return result0;
}
function parse_BulletListInlinedItem() {
var result0, result1, result2, result3, result4, result5, result6;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
result0 = parse_Space();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result1 = parse_LocMarker();
if (result1 !== null) {
result2 = parse_Bullet();
if (result2 !== null) {
result3 = parse_LocMarker();
if (result3 !== null) {
pos2 = pos;
result4 = [];
result5 = parse_BlankLine();
while (result5 !== null) {
result4.push(result5);
result5 = parse_BlankLine();
}
if (result4 !== null) {
result5 = parse_AnyIndent();
if (result5 !== null) {
result6 = (function(offset, s, o, bl, ind) { return (bl.length == 0) || (ind === d.deep); })(pos, result1, result3, result4, result5) ? "" : null;
if (result6 !== null) {
result4 = [result4, result5, result6];
} else {
result4 = null;
pos = pos2;
}
} else {
result4 = null;
pos = pos2;
}
} else {
result4 = null;
pos = pos2;
}
if (result4 !== null) {
pos2 = pos;
result5 = parse_ListInlines();
if (result5 !== null) {
result5 = (function(offset) { return _chunk.match; })(pos2);
}
if (result5 === null) {
pos = pos2;
}
if (result5 !== null) {
pos2 = pos;
reportFailures++;
result6 = parse_BlankLine();
reportFailures--;
if (result6 === null) {
result6 = "";
} else {
result6 = null;
pos = pos2;
}
if (result6 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, s, o, bl, ind, i) { d.add(d.elem_c(t.pmd_LIST_BULLET_ITEM,_chunk));
return [s,o,i]; })(pos0, result0[1], result0[3], result0[4][0], result0[4][1], result0[5]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_OrderedListInlinedItem() {
var result0, result1, result2, result3, result4, result5, result6;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
result0 = parse_Space();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result1 = parse_LocMarker();
if (result1 !== null) {
result2 = parse_Enumerator();
if (result2 !== null) {
result3 = parse_LocMarker();
if (result3 !== null) {
pos2 = pos;
result4 = [];
result5 = parse_BlankLine();
while (result5 !== null) {
result4.push(result5);
result5 = parse_BlankLine();
}
if (result4 !== null) {
result5 = parse_AnyIndent();
if (result5 !== null) {
result6 = (function(offset, s, o, bl, ind) { return (bl.length == 0) || (ind === d.deep); })(pos, result1, result3, result4, result5) ? "" : null;
if (result6 !== null) {
result4 = [result4, result5, result6];
} else {
result4 = null;
pos = pos2;
}
} else {
result4 = null;
pos = pos2;
}
} else {
result4 = null;
pos = pos2;
}
if (result4 !== null) {
pos2 = pos;
result5 = parse_ListInlines();
if (result5 !== null) {
result5 = (function(offset) { return _chunk.match; })(pos2);
}
if (result5 === null) {
pos = pos2;
}
if (result5 !== null) {
pos2 = pos;
reportFailures++;
result6 = parse_BlankLine();
reportFailures--;
if (result6 === null) {
result6 = "";
} else {
result6 = null;
pos = pos2;
}
if (result6 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, s, o, bl, ind, i) { d.add(d.elem_c(t.pmd_LIST_ENUM_ITEM,_chunk));
return [s,o,i]; })(pos0, result0[1], result0[3], result0[4][0], result0[4][1], result0[5]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_BulletListItem() {
var result0, result1, result2, result3, result4, result5, result6, result7, result8, result9, result10, result11, result12;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
result0 = parse_Space();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result1 = parse_LocMarker();
if (result1 !== null) {
result2 = parse_Bullet();
if (result2 !== null) {
result3 = parse_LocMarker();
if (result3 !== null) {
result4 = (function(offset, s, o) { d.deep = d.deep + 1; })(pos, result1, result3) ? null : "";
if (result4 !== null) {
pos2 = pos;
result5 = [];
result6 = parse_BlankLine();
while (result6 !== null) {
result5.push(result6);
result6 = parse_BlankLine();
}
if (result5 !== null) {
result6 = parse_AnyIndent();
if (result6 !== null) {
result7 = (function(offset, s, o, bl, ind) { return (bl.length == 0) || (ind === d.deep); })(pos, result1, result3, result5, result6) ? "" : null;
if (result7 !== null) {
result5 = [result5, result6, result7];
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
if (result5 !== null) {
pos2 = pos;
result6 = parse_BlockElm();
if (result6 !== null) {
result6 = (function(offset) { return _chunk.match; })(pos2);
}
if (result6 === null) {
pos = pos2;
}
if (result6 !== null) {
result7 = [];
result8 = parse_BlankLine();
while (result8 !== null) {
result7.push(result8);
result8 = parse_BlankLine();
}
if (result7 !== null) {
result8 = [];
pos2 = pos;
pos3 = pos;
pos4 = pos;
reportFailures++;
result9 = parse_Bullet();
if (result9 === null) {
result9 = parse_Enumerator();
}
reportFailures--;
if (result9 === null) {
result9 = "";
} else {
result9 = null;
pos = pos4;
}
if (result9 !== null) {
result10 = parse_Verbatim();
if (result10 === null) {
pos4 = pos;
result10 = parse_Indents();
if (result10 !== null) {
result11 = (function(offset, ind) { return (ind === d.deep); })(pos, result10) ? "" : null;
if (result11 !== null) {
result12 = parse_BlockElm();
if (result12 !== null) {
result10 = [result10, result11, result12];
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
}
if (result10 !== null) {
result11 = [];
result12 = parse_BlankLine();
while (result12 !== null) {
result11.push(result12);
result12 = parse_BlankLine();
}
if (result11 !== null) {
result9 = [result9, result10, result11];
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
if (result9 !== null) {
result9 = (function(offset) { return _chunk.match; })(pos2);
}
if (result9 === null) {
pos = pos2;
}
while (result9 !== null) {
result8.push(result9);
pos2 = pos;
pos3 = pos;
pos4 = pos;
reportFailures++;
result9 = parse_Bullet();
if (result9 === null) {
result9 = parse_Enumerator();
}
reportFailures--;
if (result9 === null) {
result9 = "";
} else {
result9 = null;
pos = pos4;
}
if (result9 !== null) {
result10 = parse_Verbatim();
if (result10 === null) {
pos4 = pos;
result10 = parse_Indents();
if (result10 !== null) {
result11 = (function(offset, ind) { return (ind === d.deep); })(pos, result10) ? "" : null;
if (result11 !== null) {
result12 = parse_BlockElm();
if (result12 !== null) {
result10 = [result10, result11, result12];
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
}
if (result10 !== null) {
result11 = [];
result12 = parse_BlankLine();
while (result12 !== null) {
result11.push(result12);
result12 = parse_BlankLine();
}
if (result11 !== null) {
result9 = [result9, result10, result11];
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
if (result9 !== null) {
result9 = (function(offset) { return _chunk.match; })(pos2);
}
if (result9 === null) {
pos = pos2;
}
}
if (result8 !== null) {
result9 = (function(offset, s, o, bl, ind, start, next) { d.deep = d.deep - 1; })(pos, result1, result3, result5[0], result5[1], result6, result8) ? null : "";
if (result9 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6, result7, result8, result9];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, s, o, bl, ind, start, next) { d.add(d.elem_c(t.pmd_LIST_BULLET_ITEM,_chunk));
return [s,(o-s),start+next.join(''),
_chunk.match.substring(o-s)]; })(pos0, result0[1], result0[3], result0[5][0], result0[5][1], result0[6], result0[8]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_OrderedListItem() {
var result0, result1, result2, result3, result4, result5, result6, result7, result8, result9, result10, result11, result12;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
result0 = parse_Space();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result1 = parse_LocMarker();
if (result1 !== null) {
result2 = parse_Enumerator();
if (result2 !== null) {
result3 = parse_LocMarker();
if (result3 !== null) {
result4 = (function(offset, s, o) { d.deep = d.deep + 1; })(pos, result1, result3) ? null : "";
if (result4 !== null) {
pos2 = pos;
result5 = [];
result6 = parse_BlankLine();
while (result6 !== null) {
result5.push(result6);
result6 = parse_BlankLine();
}
if (result5 !== null) {
result6 = parse_AnyIndent();
if (result6 !== null) {
result7 = (function(offset, s, o, bl, ind) { return (bl.length == 0) || (ind === d.deep); })(pos, result1, result3, result5, result6) ? "" : null;
if (result7 !== null) {
result5 = [result5, result6, result7];
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
if (result5 !== null) {
pos2 = pos;
result6 = parse_BlockElm();
if (result6 !== null) {
result6 = (function(offset) { return _chunk.match; })(pos2);
}
if (result6 === null) {
pos = pos2;
}
if (result6 !== null) {
result7 = [];
result8 = parse_BlankLine();
while (result8 !== null) {
result7.push(result8);
result8 = parse_BlankLine();
}
if (result7 !== null) {
result8 = [];
pos2 = pos;
pos3 = pos;
pos4 = pos;
reportFailures++;
result9 = parse_Bullet();
if (result9 === null) {
result9 = parse_Enumerator();
}
reportFailures--;
if (result9 === null) {
result9 = "";
} else {
result9 = null;
pos = pos4;
}
if (result9 !== null) {
result10 = parse_Verbatim();
if (result10 === null) {
pos4 = pos;
result10 = parse_Indents();
if (result10 !== null) {
result11 = (function(offset, ind) { return (ind === d.deep); })(pos, result10) ? "" : null;
if (result11 !== null) {
result12 = parse_BlockElm();
if (result12 !== null) {
result10 = [result10, result11, result12];
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
}
if (result10 !== null) {
result11 = [];
result12 = parse_BlankLine();
while (result12 !== null) {
result11.push(result12);
result12 = parse_BlankLine();
}
if (result11 !== null) {
result9 = [result9, result10, result11];
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
if (result9 !== null) {
result9 = (function(offset) { return _chunk.match; })(pos2);
}
if (result9 === null) {
pos = pos2;
}
while (result9 !== null) {
result8.push(result9);
pos2 = pos;
pos3 = pos;
pos4 = pos;
reportFailures++;
result9 = parse_Bullet();
if (result9 === null) {
result9 = parse_Enumerator();
}
reportFailures--;
if (result9 === null) {
result9 = "";
} else {
result9 = null;
pos = pos4;
}
if (result9 !== null) {
result10 = parse_Verbatim();
if (result10 === null) {
pos4 = pos;
result10 = parse_Indents();
if (result10 !== null) {
result11 = (function(offset, ind) { return (ind === d.deep); })(pos, result10) ? "" : null;
if (result11 !== null) {
result12 = parse_BlockElm();
if (result12 !== null) {
result10 = [result10, result11, result12];
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
} else {
result10 = null;
pos = pos4;
}
}
if (result10 !== null) {
result11 = [];
result12 = parse_BlankLine();
while (result12 !== null) {
result11.push(result12);
result12 = parse_BlankLine();
}
if (result11 !== null) {
result9 = [result9, result10, result11];
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
} else {
result9 = null;
pos = pos3;
}
if (result9 !== null) {
result9 = (function(offset) { return _chunk.match; })(pos2);
}
if (result9 === null) {
pos = pos2;
}
}
if (result8 !== null) {
result9 = (function(offset, s, o, bl, ind, start, next) { d.deep = d.deep - 1; })(pos, result1, result3, result5[0], result5[1], result6, result8) ? null : "";
if (result9 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6, result7, result8, result9];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, s, o, bl, ind, start, next) { d.add(d.elem_c(t.pmd_LIST_ENUM_ITEM,_chunk));
return [s,(o-s),start+next.join(''),
_chunk.match.substring(o-s)]; })(pos0, result0[1], result0[3], result0[5][0], result0[5][1], result0[6], result0[8]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenAddress() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 7) === "address") {
result2 = "address";
pos += 7;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"address\"");
}
}
if (result2 === null) {
if (input.substr(pos, 7) === "ADDRESS") {
result2 = "ADDRESS";
pos += 7;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"ADDRESS\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseAddress() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 7) === "address") {
result3 = "address";
pos += 7;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"address\"");
}
}
if (result3 === null) {
if (input.substr(pos, 7) === "ADDRESS") {
result3 = "ADDRESS";
pos += 7;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"ADDRESS\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockAddress() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenAddress();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockAddress();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseAddress();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockAddress();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseAddress();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseAddress();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenBlockquote() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 10) === "blockquote") {
result2 = "blockquote";
pos += 10;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"blockquote\"");
}
}
if (result2 === null) {
if (input.substr(pos, 10) === "BLOCKQUOTE") {
result2 = "BLOCKQUOTE";
pos += 10;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"BLOCKQUOTE\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseBlockquote() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 10) === "blockquote") {
result3 = "blockquote";
pos += 10;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"blockquote\"");
}
}
if (result3 === null) {
if (input.substr(pos, 10) === "BLOCKQUOTE") {
result3 = "BLOCKQUOTE";
pos += 10;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"BLOCKQUOTE\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockBlockquote() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenBlockquote();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockBlockquote();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseBlockquote();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockBlockquote();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseBlockquote();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseBlockquote();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenCenter() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 6) === "center") {
result2 = "center";
pos += 6;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"center\"");
}
}
if (result2 === null) {
if (input.substr(pos, 6) === "CENTER") {
result2 = "CENTER";
pos += 6;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"CENTER\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseCenter() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 6) === "center") {
result3 = "center";
pos += 6;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"center\"");
}
}
if (result3 === null) {
if (input.substr(pos, 6) === "CENTER") {
result3 = "CENTER";
pos += 6;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"CENTER\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCenter() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenCenter();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockCenter();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseCenter();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockCenter();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseCenter();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseCenter();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenDir() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 3) === "dir") {
result2 = "dir";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"dir\"");
}
}
if (result2 === null) {
if (input.substr(pos, 3) === "DIR") {
result2 = "DIR";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"DIR\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseDir() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 3) === "dir") {
result3 = "dir";
pos += 3;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"dir\"");
}
}
if (result3 === null) {
if (input.substr(pos, 3) === "DIR") {
result3 = "DIR";
pos += 3;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"DIR\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockDir() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenDir();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockDir();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDir();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockDir();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDir();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseDir();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenDiv() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 3) === "div") {
result2 = "div";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"div\"");
}
}
if (result2 === null) {
if (input.substr(pos, 3) === "DIV") {
result2 = "DIV";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"DIV\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseDiv() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 3) === "div") {
result3 = "div";
pos += 3;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"div\"");
}
}
if (result3 === null) {
if (input.substr(pos, 3) === "DIV") {
result3 = "DIV";
pos += 3;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"DIV\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockDiv() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenDiv();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockDiv();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDiv();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockDiv();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDiv();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseDiv();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenDl() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "dl") {
result2 = "dl";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"dl\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "DL") {
result2 = "DL";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"DL\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseDl() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "dl") {
result3 = "dl";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"dl\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "DL") {
result3 = "DL";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"DL\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockDl() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenDl();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockDl();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDl();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockDl();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDl();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseDl();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenFieldset() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 8) === "fieldset") {
result2 = "fieldset";
pos += 8;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"fieldset\"");
}
}
if (result2 === null) {
if (input.substr(pos, 8) === "FIELDSET") {
result2 = "FIELDSET";
pos += 8;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"FIELDSET\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseFieldset() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 8) === "fieldset") {
result3 = "fieldset";
pos += 8;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"fieldset\"");
}
}
if (result3 === null) {
if (input.substr(pos, 8) === "FIELDSET") {
result3 = "FIELDSET";
pos += 8;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"FIELDSET\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockFieldset() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenFieldset();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockFieldset();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseFieldset();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockFieldset();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseFieldset();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseFieldset();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenForm() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 4) === "form") {
result2 = "form";
pos += 4;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"form\"");
}
}
if (result2 === null) {
if (input.substr(pos, 4) === "FORM") {
result2 = "FORM";
pos += 4;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"FORM\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseForm() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 4) === "form") {
result3 = "form";
pos += 4;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"form\"");
}
}
if (result3 === null) {
if (input.substr(pos, 4) === "FORM") {
result3 = "FORM";
pos += 4;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"FORM\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockForm() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenForm();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockForm();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseForm();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockForm();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseForm();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseForm();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenH1() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "h1") {
result2 = "h1";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"h1\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "H1") {
result2 = "H1";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"H1\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseH1() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "h1") {
result3 = "h1";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"h1\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "H1") {
result3 = "H1";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"H1\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockH1() {
var result0, result1, result2, result3;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
result0 = parse_HtmlBlockOpenH1();
if (result0 !== null) {
pos2 = pos;
result1 = [];
result2 = parse_HtmlBlockH1();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH1();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockH1();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH1();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseH1();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt) { d.add(d.elem_ct(t.pmd_H1,_chunk,txt)) })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenH2() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "h2") {
result2 = "h2";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"h2\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "H2") {
result2 = "H2";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"H2\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseH2() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "h2") {
result3 = "h2";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"h2\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "H2") {
result3 = "H2";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"H2\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockH2() {
var result0, result1, result2, result3;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
result0 = parse_HtmlBlockOpenH2();
if (result0 !== null) {
pos2 = pos;
result1 = [];
result2 = parse_HtmlBlockH2();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH2();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockH2();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH2();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseH2();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt) { d.add(d.elem_ct(t.pmd_H2,_chunk,txt)) })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenH3() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "h3") {
result2 = "h3";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"h3\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "H3") {
result2 = "H3";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"H3\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseH3() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "h3") {
result3 = "h3";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"h3\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "H3") {
result3 = "H3";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"H3\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockH3() {
var result0, result1, result2, result3;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
result0 = parse_HtmlBlockOpenH3();
if (result0 !== null) {
pos2 = pos;
result1 = [];
result2 = parse_HtmlBlockH3();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH3();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockH3();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH3();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseH3();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt) { d.add(d.elem_ct(t.pmd_H3,_chunk,txt)) })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenH4() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "h4") {
result2 = "h4";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"h4\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "H4") {
result2 = "H4";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"H4\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseH4() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "h4") {
result3 = "h4";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"h4\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "H4") {
result3 = "H4";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"H4\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockH4() {
var result0, result1, result2, result3;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
result0 = parse_HtmlBlockOpenH4();
if (result0 !== null) {
pos2 = pos;
result1 = [];
result2 = parse_HtmlBlockH4();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH4();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockH4();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH4();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseH4();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt) { d.add(d.elem_ct(t.pmd_H4,_chunk,txt)) })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenH5() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "h5") {
result2 = "h5";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"h5\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "H5") {
result2 = "H5";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"H5\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseH5() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "h5") {
result3 = "h5";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"h5\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "H5") {
result3 = "H5";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"H5\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockH5() {
var result0, result1, result2, result3;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
result0 = parse_HtmlBlockOpenH5();
if (result0 !== null) {
pos2 = pos;
result1 = [];
result2 = parse_HtmlBlockH5();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH5();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockH5();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH5();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseH5();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt) { d.add(d.elem_ct(t.pmd_H5,_chunk,txt)) })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenH6() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "h6") {
result2 = "h6";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"h6\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "H6") {
result2 = "H6";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"H6\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseH6() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "h6") {
result3 = "h6";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"h6\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "H6") {
result3 = "H6";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"H6\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockH6() {
var result0, result1, result2, result3;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
result0 = parse_HtmlBlockOpenH6();
if (result0 !== null) {
pos2 = pos;
result1 = [];
result2 = parse_HtmlBlockH6();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH6();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockH6();
if (result2 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseH6();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseH6();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt) { d.add(d.elem_ct(t.pmd_H6,_chunk,txt)) })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenMenu() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 4) === "menu") {
result2 = "menu";
pos += 4;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"menu\"");
}
}
if (result2 === null) {
if (input.substr(pos, 4) === "MENU") {
result2 = "MENU";
pos += 4;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"MENU\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseMenu() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 4) === "menu") {
result3 = "menu";
pos += 4;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"menu\"");
}
}
if (result3 === null) {
if (input.substr(pos, 4) === "MENU") {
result3 = "MENU";
pos += 4;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"MENU\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockMenu() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenMenu();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockMenu();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseMenu();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockMenu();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseMenu();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseMenu();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenNoframes() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 8) === "noframes") {
result2 = "noframes";
pos += 8;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"noframes\"");
}
}
if (result2 === null) {
if (input.substr(pos, 8) === "NOFRAMES") {
result2 = "NOFRAMES";
pos += 8;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"NOFRAMES\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseNoframes() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 8) === "noframes") {
result3 = "noframes";
pos += 8;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"noframes\"");
}
}
if (result3 === null) {
if (input.substr(pos, 8) === "NOFRAMES") {
result3 = "NOFRAMES";
pos += 8;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"NOFRAMES\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockNoframes() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenNoframes();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockNoframes();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseNoframes();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockNoframes();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseNoframes();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseNoframes();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenNoscript() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 8) === "noscript") {
result2 = "noscript";
pos += 8;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"noscript\"");
}
}
if (result2 === null) {
if (input.substr(pos, 8) === "NOSCRIPT") {
result2 = "NOSCRIPT";
pos += 8;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"NOSCRIPT\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseNoscript() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 8) === "noscript") {
result3 = "noscript";
pos += 8;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"noscript\"");
}
}
if (result3 === null) {
if (input.substr(pos, 8) === "NOSCRIPT") {
result3 = "NOSCRIPT";
pos += 8;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"NOSCRIPT\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockNoscript() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenNoscript();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockNoscript();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseNoscript();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockNoscript();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseNoscript();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseNoscript();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenOl() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "ol") {
result2 = "ol";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"ol\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "OL") {
result2 = "OL";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"OL\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseOl() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "ol") {
result3 = "ol";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"ol\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "OL") {
result3 = "OL";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"OL\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOl() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenOl();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockOl();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseOl();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockOl();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseOl();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseOl();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenP() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 112) {
result2 = "p";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"p\"");
}
}
if (result2 === null) {
if (input.charCodeAt(pos) === 80) {
result2 = "P";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"P\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseP() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.charCodeAt(pos) === 112) {
result3 = "p";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"p\"");
}
}
if (result3 === null) {
if (input.charCodeAt(pos) === 80) {
result3 = "P";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"P\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockP() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenP();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockP();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseP();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockP();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseP();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseP();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenPre() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 3) === "pre") {
result2 = "pre";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"pre\"");
}
}
if (result2 === null) {
if (input.substr(pos, 3) === "PRE") {
result2 = "PRE";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"PRE\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockClosePre() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 3) === "pre") {
result3 = "pre";
pos += 3;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"pre\"");
}
}
if (result3 === null) {
if (input.substr(pos, 3) === "PRE") {
result3 = "PRE";
pos += 3;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"PRE\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockPre() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenPre();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockPre();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockClosePre();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockPre();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockClosePre();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockClosePre();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenTable() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 5) === "table") {
result2 = "table";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"table\"");
}
}
if (result2 === null) {
if (input.substr(pos, 5) === "TABLE") {
result2 = "TABLE";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"TABLE\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseTable() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 5) === "table") {
result3 = "table";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"table\"");
}
}
if (result3 === null) {
if (input.substr(pos, 5) === "TABLE") {
result3 = "TABLE";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"TABLE\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockTable() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenTable();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockTable();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTable();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockTable();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTable();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseTable();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenUl() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "ul") {
result2 = "ul";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"ul\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "UL") {
result2 = "UL";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"UL\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseUl() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "ul") {
result3 = "ul";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"ul\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "UL") {
result3 = "UL";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"UL\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockUl() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenUl();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockUl();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseUl();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockUl();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseUl();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseUl();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenDd() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "dd") {
result2 = "dd";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"dd\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "DD") {
result2 = "DD";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"DD\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseDd() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "dd") {
result3 = "dd";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"dd\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "DD") {
result3 = "DD";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"DD\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockDd() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenDd();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockDd();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDd();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockDd();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDd();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseDd();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenDt() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "dt") {
result2 = "dt";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"dt\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "DT") {
result2 = "DT";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"DT\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseDt() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "dt") {
result3 = "dt";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"dt\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "DT") {
result3 = "DT";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"DT\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockDt() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenDt();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockDt();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDt();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockDt();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseDt();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseDt();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenFrameset() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 8) === "frameset") {
result2 = "frameset";
pos += 8;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"frameset\"");
}
}
if (result2 === null) {
if (input.substr(pos, 8) === "FRAMESET") {
result2 = "FRAMESET";
pos += 8;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"FRAMESET\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseFrameset() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 8) === "frameset") {
result3 = "frameset";
pos += 8;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"frameset\"");
}
}
if (result3 === null) {
if (input.substr(pos, 8) === "FRAMESET") {
result3 = "FRAMESET";
pos += 8;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"FRAMESET\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockFrameset() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenFrameset();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockFrameset();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseFrameset();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockFrameset();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseFrameset();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseFrameset();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenLi() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "li") {
result2 = "li";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"li\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "LI") {
result2 = "LI";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"LI\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseLi() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "li") {
result3 = "li";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"li\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "LI") {
result3 = "LI";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"LI\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockLi() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenLi();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockLi();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseLi();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockLi();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseLi();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseLi();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenTbody() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 5) === "tbody") {
result2 = "tbody";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"tbody\"");
}
}
if (result2 === null) {
if (input.substr(pos, 5) === "TBODY") {
result2 = "TBODY";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"TBODY\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseTbody() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 5) === "tbody") {
result3 = "tbody";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"tbody\"");
}
}
if (result3 === null) {
if (input.substr(pos, 5) === "TBODY") {
result3 = "TBODY";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"TBODY\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockTbody() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenTbody();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockTbody();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTbody();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockTbody();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTbody();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseTbody();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenTd() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "td") {
result2 = "td";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"td\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "TD") {
result2 = "TD";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"TD\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseTd() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "td") {
result3 = "td";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"td\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "TD") {
result3 = "TD";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"TD\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockTd() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenTd();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockTd();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTd();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockTd();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTd();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseTd();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenTfoot() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 5) === "tfoot") {
result2 = "tfoot";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"tfoot\"");
}
}
if (result2 === null) {
if (input.substr(pos, 5) === "TFOOT") {
result2 = "TFOOT";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"TFOOT\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseTfoot() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 5) === "tfoot") {
result3 = "tfoot";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"tfoot\"");
}
}
if (result3 === null) {
if (input.substr(pos, 5) === "TFOOT") {
result3 = "TFOOT";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"TFOOT\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockTfoot() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenTfoot();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockTfoot();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTfoot();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockTfoot();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTfoot();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseTfoot();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenTh() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "th") {
result2 = "th";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"th\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "TH") {
result2 = "TH";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"TH\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseTh() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "th") {
result3 = "th";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"th\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "TH") {
result3 = "TH";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"TH\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockTh() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenTh();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockTh();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTh();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockTh();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTh();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseTh();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenThead() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 5) === "thead") {
result2 = "thead";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"thead\"");
}
}
if (result2 === null) {
if (input.substr(pos, 5) === "THEAD") {
result2 = "THEAD";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"THEAD\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseThead() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 5) === "thead") {
result3 = "thead";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"thead\"");
}
}
if (result3 === null) {
if (input.substr(pos, 5) === "THEAD") {
result3 = "THEAD";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"THEAD\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockThead() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenThead();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockThead();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseThead();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockThead();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseThead();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseThead();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenTr() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "tr") {
result2 = "tr";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"tr\"");
}
}
if (result2 === null) {
if (input.substr(pos, 2) === "TR") {
result2 = "TR";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"TR\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseTr() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 2) === "tr") {
result3 = "tr";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"tr\"");
}
}
if (result3 === null) {
if (input.substr(pos, 2) === "TR") {
result3 = "TR";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"TR\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockTr() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenTr();
if (result0 !== null) {
result1 = [];
result2 = parse_HtmlBlockTr();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTr();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_HtmlBlockTr();
if (result2 === null) {
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseTr();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseTr();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockOpenScript() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 6) === "script") {
result2 = "script";
pos += 6;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"script\"");
}
}
if (result2 === null) {
if (input.substr(pos, 6) === "SCRIPT") {
result2 = "SCRIPT";
pos += 6;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"SCRIPT\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockCloseScript() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 6) === "script") {
result3 = "script";
pos += 6;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"script\"");
}
}
if (result3 === null) {
if (input.substr(pos, 6) === "SCRIPT") {
result3 = "SCRIPT";
pos += 6;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"SCRIPT\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockScript() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_HtmlBlockOpenScript();
if (result0 !== null) {
result1 = [];
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseScript();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_HtmlBlockCloseScript();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
if (result1 !== null) {
result2 = parse_HtmlBlockCloseScript();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockInTags() {
var result0;
result0 = parse_HtmlBlockAddress();
if (result0 === null) {
result0 = parse_HtmlBlockBlockquote();
if (result0 === null) {
result0 = parse_HtmlBlockCenter();
if (result0 === null) {
result0 = parse_HtmlBlockDir();
if (result0 === null) {
result0 = parse_HtmlBlockDiv();
if (result0 === null) {
result0 = parse_HtmlBlockDl();
if (result0 === null) {
result0 = parse_HtmlBlockFieldset();
if (result0 === null) {
result0 = parse_HtmlBlockForm();
if (result0 === null) {
result0 = parse_HtmlBlockH1();
if (result0 === null) {
result0 = parse_HtmlBlockH2();
if (result0 === null) {
result0 = parse_HtmlBlockH3();
if (result0 === null) {
result0 = parse_HtmlBlockH4();
if (result0 === null) {
result0 = parse_HtmlBlockH5();
if (result0 === null) {
result0 = parse_HtmlBlockH6();
if (result0 === null) {
result0 = parse_HtmlBlockMenu();
if (result0 === null) {
result0 = parse_HtmlBlockNoframes();
if (result0 === null) {
result0 = parse_HtmlBlockNoscript();
if (result0 === null) {
result0 = parse_HtmlBlockOl();
if (result0 === null) {
result0 = parse_HtmlBlockP();
if (result0 === null) {
result0 = parse_HtmlBlockPre();
if (result0 === null) {
result0 = parse_HtmlBlockTable();
if (result0 === null) {
result0 = parse_HtmlBlockUl();
if (result0 === null) {
result0 = parse_HtmlBlockDd();
if (result0 === null) {
result0 = parse_HtmlBlockDt();
if (result0 === null) {
result0 = parse_HtmlBlockFrameset();
if (result0 === null) {
result0 = parse_HtmlBlockLi();
if (result0 === null) {
result0 = parse_HtmlBlockTbody();
if (result0 === null) {
result0 = parse_HtmlBlockTd();
if (result0 === null) {
result0 = parse_HtmlBlockTfoot();
if (result0 === null) {
result0 = parse_HtmlBlockTh();
if (result0 === null) {
result0 = parse_HtmlBlockThead();
if (result0 === null) {
result0 = parse_HtmlBlockTr();
if (result0 === null) {
result0 = parse_HtmlBlockScript();
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
return result0;
}
function parse_HtmlBlock() {
var result0, result1, result2;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
pos2 = pos;
result0 = parse_HtmlBlockInTags();
if (result0 === null) {
result0 = parse_HtmlComment();
if (result0 === null) {
result0 = parse_HtmlBlockSelfClosing();
}
}
if (result0 !== null) {
result0 = (function(offset) { return _chunk.match })(pos2);
}
if (result0 === null) {
pos = pos2;
}
if (result0 !== null) {
result2 = parse_BlankLine();
if (result2 !== null) {
result1 = [];
while (result2 !== null) {
result1.push(result2);
result2 = parse_BlankLine();
}
} else {
result1 = null;
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, html) { d.add(d.elem_ct(t.pmd_HTML,_chunk,html));
return t.pmd_HTML; })(pos0, result0[0]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HtmlBlockSelfClosing() {
var result0, result1, result2, result3, result4, result5, result6, result7;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
result2 = parse_HtmlBlockType();
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 47) {
result5 = "/";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result5 !== null) {
result6 = parse_Spnl();
if (result6 !== null) {
if (input.charCodeAt(pos) === 62) {
result7 = ">";
pos++;
} else {
result7 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result7 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6, result7];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlBlockType() {
var result0;
if (input.substr(pos, 7) === "address") {
result0 = "address";
pos += 7;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"address\"");
}
}
if (result0 === null) {
if (input.substr(pos, 10) === "blockquote") {
result0 = "blockquote";
pos += 10;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"blockquote\"");
}
}
if (result0 === null) {
if (input.substr(pos, 6) === "center") {
result0 = "center";
pos += 6;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"center\"");
}
}
if (result0 === null) {
if (input.substr(pos, 3) === "dir") {
result0 = "dir";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"dir\"");
}
}
if (result0 === null) {
if (input.substr(pos, 3) === "div") {
result0 = "div";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"div\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "dl") {
result0 = "dl";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"dl\"");
}
}
if (result0 === null) {
if (input.substr(pos, 8) === "fieldset") {
result0 = "fieldset";
pos += 8;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"fieldset\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "form") {
result0 = "form";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"form\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "h1") {
result0 = "h1";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"h1\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "h2") {
result0 = "h2";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"h2\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "h3") {
result0 = "h3";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"h3\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "h4") {
result0 = "h4";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"h4\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "h5") {
result0 = "h5";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"h5\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "h6") {
result0 = "h6";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"h6\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "hr") {
result0 = "hr";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"hr\"");
}
}
if (result0 === null) {
if (input.substr(pos, 7) === "isindex") {
result0 = "isindex";
pos += 7;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"isindex\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "menu") {
result0 = "menu";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"menu\"");
}
}
if (result0 === null) {
if (input.substr(pos, 8) === "noframes") {
result0 = "noframes";
pos += 8;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"noframes\"");
}
}
if (result0 === null) {
if (input.substr(pos, 8) === "noscript") {
result0 = "noscript";
pos += 8;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"noscript\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "ol") {
result0 = "ol";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"ol\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 112) {
result0 = "p";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"p\"");
}
}
if (result0 === null) {
if (input.substr(pos, 3) === "pre") {
result0 = "pre";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"pre\"");
}
}
if (result0 === null) {
if (input.substr(pos, 5) === "table") {
result0 = "table";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"table\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "ul") {
result0 = "ul";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"ul\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "dd") {
result0 = "dd";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"dd\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "dt") {
result0 = "dt";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"dt\"");
}
}
if (result0 === null) {
if (input.substr(pos, 8) === "frameset") {
result0 = "frameset";
pos += 8;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"frameset\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "li") {
result0 = "li";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"li\"");
}
}
if (result0 === null) {
if (input.substr(pos, 5) === "tbody") {
result0 = "tbody";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"tbody\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "td") {
result0 = "td";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"td\"");
}
}
if (result0 === null) {
if (input.substr(pos, 5) === "tfoot") {
result0 = "tfoot";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"tfoot\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "th") {
result0 = "th";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"th\"");
}
}
if (result0 === null) {
if (input.substr(pos, 5) === "thead") {
result0 = "thead";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"thead\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "tr") {
result0 = "tr";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"tr\"");
}
}
if (result0 === null) {
if (input.substr(pos, 6) === "script") {
result0 = "script";
pos += 6;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"script\"");
}
}
if (result0 === null) {
if (input.substr(pos, 7) === "ADDRESS") {
result0 = "ADDRESS";
pos += 7;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"ADDRESS\"");
}
}
if (result0 === null) {
if (input.substr(pos, 10) === "BLOCKQUOTE") {
result0 = "BLOCKQUOTE";
pos += 10;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"BLOCKQUOTE\"");
}
}
if (result0 === null) {
if (input.substr(pos, 6) === "CENTER") {
result0 = "CENTER";
pos += 6;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"CENTER\"");
}
}
if (result0 === null) {
if (input.substr(pos, 3) === "DIR") {
result0 = "DIR";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"DIR\"");
}
}
if (result0 === null) {
if (input.substr(pos, 3) === "DIV") {
result0 = "DIV";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"DIV\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "DL") {
result0 = "DL";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"DL\"");
}
}
if (result0 === null) {
if (input.substr(pos, 8) === "FIELDSET") {
result0 = "FIELDSET";
pos += 8;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"FIELDSET\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "FORM") {
result0 = "FORM";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"FORM\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "H1") {
result0 = "H1";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"H1\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "H2") {
result0 = "H2";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"H2\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "H3") {
result0 = "H3";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"H3\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "H4") {
result0 = "H4";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"H4\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "H5") {
result0 = "H5";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"H5\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "H6") {
result0 = "H6";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"H6\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "HR") {
result0 = "HR";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"HR\"");
}
}
if (result0 === null) {
if (input.substr(pos, 7) === "ISINDEX") {
result0 = "ISINDEX";
pos += 7;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"ISINDEX\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "MENU") {
result0 = "MENU";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"MENU\"");
}
}
if (result0 === null) {
if (input.substr(pos, 8) === "NOFRAMES") {
result0 = "NOFRAMES";
pos += 8;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"NOFRAMES\"");
}
}
if (result0 === null) {
if (input.substr(pos, 8) === "NOSCRIPT") {
result0 = "NOSCRIPT";
pos += 8;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"NOSCRIPT\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "OL") {
result0 = "OL";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"OL\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 80) {
result0 = "P";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"P\"");
}
}
if (result0 === null) {
if (input.substr(pos, 3) === "PRE") {
result0 = "PRE";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"PRE\"");
}
}
if (result0 === null) {
if (input.substr(pos, 5) === "TABLE") {
result0 = "TABLE";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"TABLE\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "UL") {
result0 = "UL";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"UL\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "DD") {
result0 = "DD";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"DD\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "DT") {
result0 = "DT";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"DT\"");
}
}
if (result0 === null) {
if (input.substr(pos, 8) === "FRAMESET") {
result0 = "FRAMESET";
pos += 8;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"FRAMESET\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "LI") {
result0 = "LI";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"LI\"");
}
}
if (result0 === null) {
if (input.substr(pos, 5) === "TBODY") {
result0 = "TBODY";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"TBODY\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "TD") {
result0 = "TD";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"TD\"");
}
}
if (result0 === null) {
if (input.substr(pos, 5) === "TFOOT") {
result0 = "TFOOT";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"TFOOT\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "TH") {
result0 = "TH";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"TH\"");
}
}
if (result0 === null) {
if (input.substr(pos, 5) === "THEAD") {
result0 = "THEAD";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"THEAD\"");
}
}
if (result0 === null) {
if (input.substr(pos, 2) === "TR") {
result0 = "TR";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"TR\"");
}
}
if (result0 === null) {
if (input.substr(pos, 6) === "SCRIPT") {
result0 = "SCRIPT";
pos += 6;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"SCRIPT\"");
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
return result0;
}
function parse_StyleOpen() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 5) === "style") {
result2 = "style";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"style\"");
}
}
if (result2 === null) {
if (input.substr(pos, 5) === "STYLE") {
result2 = "STYLE";
pos += 5;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"STYLE\"");
}
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = [];
result5 = parse_HtmlAttribute();
while (result5 !== null) {
result4.push(result5);
result5 = parse_HtmlAttribute();
}
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_StyleClose() {
var result0, result1, result2, result3, result4, result5;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
if (result2 !== null) {
if (input.substr(pos, 5) === "style") {
result3 = "style";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"style\"");
}
}
if (result3 === null) {
if (input.substr(pos, 5) === "STYLE") {
result3 = "STYLE";
pos += 5;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"STYLE\"");
}
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_InStyleTags() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_StyleOpen();
if (result0 !== null) {
result1 = [];
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_StyleClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_StyleClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
if (result1 !== null) {
result2 = parse_StyleClose();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_StyleBlock() {
var result0, result1, result2;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
result0 = parse_InStyleTags();
if (result0 !== null) {
result1 = [];
result2 = parse_BlankLine();
while (result2 !== null) {
result1.push(result2);
result2 = parse_BlankLine();
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset) { return t.pmd_HTML; })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Inlines() {
var result0, result1, result2;
var pos0, pos1, pos2, pos3;
pos0 = pos;
pos1 = pos;
pos2 = pos;
pos3 = pos;
reportFailures++;
result1 = parse_Endline();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos3;
}
if (result1 !== null) {
result2 = parse_Inline();
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
if (result1 === null) {
pos2 = pos;
result1 = parse_Endline();
if (result1 !== null) {
pos3 = pos;
reportFailures++;
result2 = parse_Inline();
reportFailures--;
if (result2 !== null) {
result2 = "";
pos = pos3;
} else {
result2 = null;
}
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
}
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
pos2 = pos;
pos3 = pos;
reportFailures++;
result1 = parse_Endline();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos3;
}
if (result1 !== null) {
result2 = parse_Inline();
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
if (result1 === null) {
pos2 = pos;
result1 = parse_Endline();
if (result1 !== null) {
pos3 = pos;
reportFailures++;
result2 = parse_Inline();
reportFailures--;
if (result2 !== null) {
result2 = "";
pos = pos3;
} else {
result2 = null;
}
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
}
}
} else {
result0 = null;
}
if (result0 !== null) {
result1 = parse_Endline();
result1 = result1 !== null ? result1 : "";
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset) { return _chunk.match })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_ListInlines() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
pos2 = pos;
reportFailures++;
result1 = parse_BlankLine();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result2 = parse_Sp();
if (result2 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result3 = ">";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result3 === null) {
result3 = parse_Bullet();
if (result3 === null) {
result3 = parse_Enumerator();
}
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos2;
}
if (result3 !== null) {
result4 = parse_LineWithMarkup();
if (result4 !== null) {
result5 = parse_Newline();
if (result5 !== null) {
result1 = [result1, result2, result3, result4, result5];
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
pos1 = pos;
pos2 = pos;
reportFailures++;
result1 = parse_BlankLine();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result2 = parse_Sp();
if (result2 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result3 = ">";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result3 === null) {
result3 = parse_Bullet();
if (result3 === null) {
result3 = parse_Enumerator();
}
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos2;
}
if (result3 !== null) {
result4 = parse_LineWithMarkup();
if (result4 !== null) {
result5 = parse_Newline();
if (result5 !== null) {
result1 = [result1, result2, result3, result4, result5];
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
}
} else {
result0 = null;
}
if (result0 !== null) {
result0 = (function(offset) { return _chunk.match })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_LineWithMarkup() {
var result0, result1;
result1 = parse_Str();
if (result1 === null) {
result1 = parse_UlOrStarLine();
if (result1 === null) {
result1 = parse_Space();
if (result1 === null) {
result1 = parse_Markup();
}
}
}
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
result1 = parse_Str();
if (result1 === null) {
result1 = parse_UlOrStarLine();
if (result1 === null) {
result1 = parse_Space();
if (result1 === null) {
result1 = parse_Markup();
}
}
}
}
} else {
result0 = null;
}
return result0;
}
function parse_Markup() {
var result0;
result0 = parse_Strong();
if (result0 === null) {
result0 = parse_Emph();
if (result0 === null) {
result0 = parse_Image();
if (result0 === null) {
result0 = parse_Link();
if (result0 === null) {
result0 = parse_NoteReference();
if (result0 === null) {
result0 = parse_InlineNote();
if (result0 === null) {
result0 = parse_Code();
if (result0 === null) {
result0 = parse_RawHtml();
if (result0 === null) {
result0 = parse_Entity();
if (result0 === null) {
result0 = parse_EscapedChar();
if (result0 === null) {
result0 = parse_SpecialChar();
}
}
}
}
}
}
}
}
}
}
return result0;
}
function parse_Inline() {
var result0;
result0 = parse_Str();
if (result0 === null) {
result0 = parse_Endline();
if (result0 === null) {
result0 = parse_UlOrStarLine();
if (result0 === null) {
result0 = parse_Space();
if (result0 === null) {
result0 = parse_Markup();
}
}
}
}
return result0;
}
function parse_Space() {
var result0, result1;
result1 = parse_Spacechar();
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
result1 = parse_Spacechar();
}
} else {
result0 = null;
}
return result0;
}
function parse_Str() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_NormalChar();
if (result0 !== null) {
result1 = [];
result2 = parse_NormalChar();
if (result2 === null) {
pos1 = pos;
if (input.charCodeAt(pos) === 95) {
result3 = "_";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
if (input.charCodeAt(pos) === 95) {
result3 = "_";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
}
} else {
result2 = null;
}
if (result2 !== null) {
pos2 = pos;
reportFailures++;
result3 = parse_Alphanumeric();
reportFailures--;
if (result3 !== null) {
result3 = "";
pos = pos2;
} else {
result3 = null;
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
while (result2 !== null) {
result1.push(result2);
result2 = parse_NormalChar();
if (result2 === null) {
pos1 = pos;
if (input.charCodeAt(pos) === 95) {
result3 = "_";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
if (input.charCodeAt(pos) === 95) {
result3 = "_";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
}
} else {
result2 = null;
}
if (result2 !== null) {
pos2 = pos;
reportFailures++;
result3 = parse_Alphanumeric();
reportFailures--;
if (result3 !== null) {
result3 = "";
pos = pos2;
} else {
result3 = null;
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_EscapedChar() {
var result0, result1, result2;
var pos0, pos1;
pos0 = pos;
if (input.charCodeAt(pos) === 92) {
result0 = "\\";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\\"");
}
}
if (result0 !== null) {
pos1 = pos;
reportFailures++;
result1 = parse_Newline();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
if (/^[\-\\`|*_{}[\]()#+.!><]/.test(input.charAt(pos))) {
result2 = input.charAt(pos);
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("[\\-\\\\`|*_{}[\\]()#+.!><]");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Entity() {
var result0;
var pos0;
pos0 = pos;
result0 = parse_HexEntity();
if (result0 === null) {
result0 = parse_DecEntity();
if (result0 === null) {
result0 = parse_CharEntity();
}
}
if (result0 !== null) {
result0 = (function(offset) { d.add(d.elem_c(t.pmd_HTML_ENTITY,_chunk)) })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Endline() {
var result0;
result0 = parse_LineBreak();
if (result0 === null) {
result0 = parse_TerminalEndline();
if (result0 === null) {
result0 = parse_NormalEndline();
}
}
return result0;
}
function parse_NormalEndline() {
var result0, result1, result2, result3, result4, result5, result6, result7, result8;
var pos0, pos1, pos2, pos3;
pos0 = pos;
result0 = parse_Sp();
if (result0 !== null) {
result1 = parse_Newline();
if (result1 !== null) {
pos1 = pos;
reportFailures++;
result2 = parse_BlankLine();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos1;
}
if (result2 !== null) {
pos1 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result3 = ">";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos1;
}
if (result3 !== null) {
pos1 = pos;
reportFailures++;
result4 = parse_AtxStart();
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos1;
}
if (result4 !== null) {
pos1 = pos;
reportFailures++;
pos2 = pos;
result5 = parse_Line();
if (result5 !== null) {
pos3 = pos;
if (input.substr(pos, 3) === "===") {
result6 = "===";
pos += 3;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("\"===\"");
}
}
if (result6 !== null) {
result7 = [];
if (input.charCodeAt(pos) === 61) {
result8 = "=";
pos++;
} else {
result8 = null;
if (reportFailures === 0) {
matchFailed("\"=\"");
}
}
while (result8 !== null) {
result7.push(result8);
if (input.charCodeAt(pos) === 61) {
result8 = "=";
pos++;
} else {
result8 = null;
if (reportFailures === 0) {
matchFailed("\"=\"");
}
}
}
if (result7 !== null) {
result6 = [result6, result7];
} else {
result6 = null;
pos = pos3;
}
} else {
result6 = null;
pos = pos3;
}
if (result6 === null) {
pos3 = pos;
if (input.substr(pos, 3) === "---") {
result6 = "---";
pos += 3;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("\"---\"");
}
}
if (result6 !== null) {
result7 = [];
if (input.charCodeAt(pos) === 45) {
result8 = "-";
pos++;
} else {
result8 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
while (result8 !== null) {
result7.push(result8);
if (input.charCodeAt(pos) === 45) {
result8 = "-";
pos++;
} else {
result8 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
}
if (result7 !== null) {
result6 = [result6, result7];
} else {
result6 = null;
pos = pos3;
}
} else {
result6 = null;
pos = pos3;
}
}
if (result6 !== null) {
result7 = parse_Newline();
if (result7 !== null) {
result5 = [result5, result6, result7];
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos1;
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_TerminalEndline() {
var result0, result1, result2;
var pos0;
pos0 = pos;
result0 = parse_Sp();
if (result0 !== null) {
result1 = parse_Newline();
if (result1 !== null) {
result2 = parse_Eof();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_LineBreak() {
var result0, result1;
var pos0;
pos0 = pos;
if (input.substr(pos, 2) === " ") {
result0 = " ";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\" \"");
}
}
if (result0 !== null) {
result1 = parse_NormalEndline();
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_UlOrStarLine() {
var result0;
result0 = parse_UlLine();
if (result0 === null) {
result0 = parse_StarLine();
}
return result0;
}
function parse_StarLine() {
var result0, result1, result2;
var pos0, pos1;
pos0 = pos;
if (input.substr(pos, 4) === "****") {
result0 = "****";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"****\"");
}
}
if (result0 !== null) {
result1 = [];
if (input.charCodeAt(pos) === 42) {
result2 = "*";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
while (result2 !== null) {
result1.push(result2);
if (input.charCodeAt(pos) === 42) {
result2 = "*";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
if (result0 === null) {
pos0 = pos;
result0 = parse_Spacechar();
if (result0 !== null) {
if (input.charCodeAt(pos) === 42) {
result2 = "*";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result2 !== null) {
result1 = [];
while (result2 !== null) {
result1.push(result2);
if (input.charCodeAt(pos) === 42) {
result2 = "*";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
}
} else {
result1 = null;
}
if (result1 !== null) {
pos1 = pos;
reportFailures++;
result2 = parse_Spacechar();
reportFailures--;
if (result2 !== null) {
result2 = "";
pos = pos1;
} else {
result2 = null;
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
}
return result0;
}
function parse_UlLine() {
var result0, result1, result2;
var pos0, pos1;
pos0 = pos;
if (input.substr(pos, 4) === "____") {
result0 = "____";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"____\"");
}
}
if (result0 !== null) {
result1 = [];
if (input.charCodeAt(pos) === 95) {
result2 = "_";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
while (result2 !== null) {
result1.push(result2);
if (input.charCodeAt(pos) === 95) {
result2 = "_";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
if (result0 === null) {
pos0 = pos;
result0 = parse_Spacechar();
if (result0 !== null) {
if (input.charCodeAt(pos) === 95) {
result2 = "_";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result2 !== null) {
result1 = [];
while (result2 !== null) {
result1.push(result2);
if (input.charCodeAt(pos) === 95) {
result2 = "_";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
}
} else {
result1 = null;
}
if (result1 !== null) {
pos1 = pos;
reportFailures++;
result2 = parse_Spacechar();
reportFailures--;
if (result2 !== null) {
result2 = "";
pos = pos1;
} else {
result2 = null;
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
}
return result0;
}
function parse_Emph() {
var result0;
var pos0;
pos0 = pos;
result0 = parse_EmphStar();
if (result0 === null) {
result0 = parse_EmphUl();
}
if (result0 !== null) {
result0 = (function(offset) { d.add(d.elem_cn(t.pmd_EMPH,_chunk,1)) })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_OneStarOpen() {
var result0, result1, result2, result3;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_StarLine();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
if (input.charCodeAt(pos) === 42) {
result1 = "*";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result1 !== null) {
pos1 = pos;
reportFailures++;
result2 = parse_Spacechar();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos1;
}
if (result2 !== null) {
pos1 = pos;
reportFailures++;
result3 = parse_Newline();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos1;
}
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_OneStarClose() {
var result0, result1, result2, result3, result4;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_Spacechar();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
pos1 = pos;
reportFailures++;
result1 = parse_Newline();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
result2 = parse_Inline();
if (result2 !== null) {
pos1 = pos;
reportFailures++;
result3 = parse_StrongStar();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos1;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 42) {
result4 = "*";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result4 !== null) {
result0 = [result0, result1, result2, result3, result4];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_EmphStar() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_OneStarOpen();
if (result0 !== null) {
result1 = [];
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_OneStarClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Inline();
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_OneStarClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Inline();
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
if (result1 !== null) {
result2 = parse_OneStarClose();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_OneUlOpen() {
var result0, result1, result2, result3;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_UlLine();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
if (input.charCodeAt(pos) === 95) {
result1 = "_";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result1 !== null) {
pos1 = pos;
reportFailures++;
result2 = parse_Spacechar();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos1;
}
if (result2 !== null) {
pos1 = pos;
reportFailures++;
result3 = parse_Newline();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos1;
}
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_OneUlClose() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_Spacechar();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
pos1 = pos;
reportFailures++;
result1 = parse_Newline();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
result2 = parse_Inline();
if (result2 !== null) {
pos1 = pos;
reportFailures++;
result3 = parse_StrongUl();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos1;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 95) {
result4 = "_";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result4 !== null) {
pos1 = pos;
reportFailures++;
result5 = parse_Alphanumeric();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos1;
}
if (result5 !== null) {
result0 = [result0, result1, result2, result3, result4, result5];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_EmphUl() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_OneUlOpen();
if (result0 !== null) {
result1 = [];
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_OneUlClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Inline();
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_OneUlClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Inline();
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
if (result1 !== null) {
result2 = parse_OneUlClose();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Strong() {
var result0;
var pos0;
pos0 = pos;
result0 = parse_StrongStar();
if (result0 === null) {
result0 = parse_StrongUl();
}
if (result0 !== null) {
result0 = (function(offset) { d.add(d.elem_cn(t.pmd_STRONG,_chunk,2)) })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_TwoStarOpen() {
var result0, result1, result2, result3;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_StarLine();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
if (input.substr(pos, 2) === "**") {
result1 = "**";
pos += 2;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"**\"");
}
}
if (result1 !== null) {
pos1 = pos;
reportFailures++;
result2 = parse_Spacechar();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos1;
}
if (result2 !== null) {
pos1 = pos;
reportFailures++;
result3 = parse_Newline();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos1;
}
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_TwoStarClose() {
var result0, result1, result2, result3;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_Spacechar();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
pos1 = pos;
reportFailures++;
result1 = parse_Newline();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
result2 = parse_Inline();
if (result2 !== null) {
if (input.substr(pos, 2) === "**") {
result3 = "**";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"**\"");
}
}
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_StrongStar() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_TwoStarOpen();
if (result0 !== null) {
result1 = [];
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_TwoStarClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Inline();
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_TwoStarClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Inline();
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
if (result1 !== null) {
result2 = parse_TwoStarClose();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_TwoUlOpen() {
var result0, result1, result2, result3;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_UlLine();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
if (input.substr(pos, 2) === "__") {
result1 = "__";
pos += 2;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"__\"");
}
}
if (result1 !== null) {
pos1 = pos;
reportFailures++;
result2 = parse_Spacechar();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos1;
}
if (result2 !== null) {
pos1 = pos;
reportFailures++;
result3 = parse_Newline();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos1;
}
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_TwoUlClose() {
var result0, result1, result2, result3, result4;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_Spacechar();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
pos1 = pos;
reportFailures++;
result1 = parse_Newline();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
result2 = parse_Inline();
if (result2 !== null) {
if (input.substr(pos, 2) === "__") {
result3 = "__";
pos += 2;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"__\"");
}
}
if (result3 !== null) {
pos1 = pos;
reportFailures++;
result4 = parse_Alphanumeric();
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos1;
}
if (result4 !== null) {
result0 = [result0, result1, result2, result3, result4];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_StrongUl() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
result0 = parse_TwoUlOpen();
if (result0 !== null) {
result1 = [];
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_TwoUlClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Inline();
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
result2 = parse_TwoUlClose();
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Inline();
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
if (result1 !== null) {
result2 = parse_TwoUlClose();
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Image() {
var result0, result1;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
if (input.charCodeAt(pos) === 33) {
result0 = "!";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"!\"");
}
}
if (result0 !== null) {
result1 = parse_ExplicitLink();
if (result1 === null) {
result1 = parse_ReferenceLink();
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, lnk) { d.add(d.elem_cz(t.pmd_IMAGE,_chunk),lnk); })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Link() {
var result0;
result0 = parse_ExplicitLink();
if (result0 === null) {
result0 = parse_ReferenceLink();
if (result0 === null) {
result0 = parse_AutoLink();
}
}
return result0;
}
function parse_ReferenceLink() {
var result0;
result0 = parse_ReferenceLinkDouble();
if (result0 === null) {
result0 = parse_ReferenceLinkSingle();
}
return result0;
}
function parse_ReferenceLinkDouble() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
result0 = parse_Label();
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
pos2 = pos;
reportFailures++;
if (input.substr(pos, 2) === "[]") {
result2 = "[]";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"[]\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
result3 = parse_Label();
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt, lbl) {
var lnk_elem = d.elem_ct(t.pmd_LINK,_chunk,txt);
d.wait_ref( lbl, function (ref) {
d.add( lnk_elem,
{ 'label': lbl,
'text': txt,
'title': (ref ? ref.data.title : null),
'source': (ref ? ref.data.source : null) });
});
return lnk_elem;
})(pos0, result0[0], result0[3]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_ReferenceLinkSingle() {
var result0, result1, result2;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
result0 = parse_Label();
if (result0 !== null) {
pos2 = pos;
result1 = parse_Spnl();
if (result1 !== null) {
if (input.substr(pos, 2) === "[]") {
result2 = "[]";
pos += 2;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"[]\"");
}
}
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos2;
}
} else {
result1 = null;
pos = pos2;
}
result1 = result1 !== null ? result1 : "";
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt) {
var lnk_elem = d.elem_ct(t.pmd_LINK,_chunk,txt);
d.wait_ref( txt, function (ref) {
d.add( lnk_elem,
{ 'label': txt,
'text': txt,
'title': (ref ? ref.data.title : null),
'source': (ref ? ref.data.source : null) });
});
return lnk_elem;
})(pos0, result0[0]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_ExplicitLink() {
var result0, result1, result2, result3, result4, result5, result6, result7, result8;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
result0 = parse_Label();
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 40) {
result2 = "(";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"(\"");
}
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Source();
if (result4 !== null) {
result5 = parse_Spnl();
if (result5 !== null) {
result6 = parse_Title();
if (result6 !== null) {
result7 = parse_Sp();
if (result7 !== null) {
if (input.charCodeAt(pos) === 41) {
result8 = ")";
pos++;
} else {
result8 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result8 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6, result7, result8];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt, src, ttl) {
var lnk_elem = d.elem_ct(t.pmd_LINK,_chunk,txt);
d.add( lnk_elem, { 'label': null,
'text': txt,
'title': ttl,
'source': src });
return lnk_elem;
})(pos0, result0[0], result0[4], result0[6]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Source() {
var result0, result1, result2;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_SourceContents();
if (result1 !== null) {
if (input.charCodeAt(pos) === 62) {
result2 = ">";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
if (result0 === null) {
pos0 = pos;
result0 = parse_SourceContents();
if (result0 !== null) {
result0 = (function(offset, txt) { return txt })(pos0, result0);
}
if (result0 === null) {
pos = pos0;
}
}
return result0;
}
function parse_SourceContents() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1, pos2;
pos0 = pos;
result0 = [];
pos1 = pos;
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 40) {
result2 = "(";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"(\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 41) {
result3 = ")";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos2;
}
if (result3 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result4 = ">";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos2;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result2 = [result2, result3, result4, result5];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
if (result2 !== null) {
result1 = [];
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 40) {
result2 = "(";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"(\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 41) {
result3 = ")";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos2;
}
if (result3 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result4 = ">";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos2;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result2 = [result2, result3, result4, result5];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
} else {
result1 = null;
}
if (result1 === null) {
pos1 = pos;
if (input.charCodeAt(pos) === 40) {
result1 = "(";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"(\"");
}
}
if (result1 !== null) {
result2 = parse_SourceContents();
if (result2 !== null) {
if (input.charCodeAt(pos) === 41) {
result3 = ")";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result3 !== null) {
result1 = [result1, result2, result3];
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
}
while (result1 !== null) {
result0.push(result1);
pos1 = pos;
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 40) {
result2 = "(";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"(\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 41) {
result3 = ")";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos2;
}
if (result3 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result4 = ">";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos2;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result2 = [result2, result3, result4, result5];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
if (result2 !== null) {
result1 = [];
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 40) {
result2 = "(";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"(\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 41) {
result3 = ")";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos2;
}
if (result3 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result4 = ">";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos2;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result2 = [result2, result3, result4, result5];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
} else {
result1 = null;
}
if (result1 === null) {
pos1 = pos;
if (input.charCodeAt(pos) === 40) {
result1 = "(";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"(\"");
}
}
if (result1 !== null) {
result2 = parse_SourceContents();
if (result2 !== null) {
if (input.charCodeAt(pos) === 41) {
result3 = ")";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result3 !== null) {
result1 = [result1, result2, result3];
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
}
}
if (result0 !== null) {
result0 = (function(offset) { return _chunk.match })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Title() {
var result0;
var pos0, pos1;
pos0 = pos;
result0 = parse_TitleSingle();
if (result0 === null) {
result0 = parse_TitleDouble();
if (result0 === null) {
pos1 = pos;
result0 = "";
if (result0 !== null) {
result0 = (function(offset) { return '' })(pos1);
}
if (result0 === null) {
pos = pos1;
}
}
}
if (result0 !== null) {
result0 = (function(offset, title) { return title })(pos0, result0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_TitleSingle() {
var result0, result1, result2, result3, result4;
var pos0, pos1, pos2, pos3, pos4, pos5;
pos0 = pos;
pos1 = pos;
if (input.charCodeAt(pos) === 39) {
result0 = "'";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result0 !== null) {
pos2 = pos;
result1 = [];
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 39) {
result2 = "'";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
if (input.charCodeAt(pos) === 41) {
result4 = ")";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result4 === null) {
result4 = parse_Newline();
}
if (result4 !== null) {
result2 = [result2, result3, result4];
} else {
result2 = null;
pos = pos5;
}
} else {
result2 = null;
pos = pos5;
}
} else {
result2 = null;
pos = pos5;
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
while (result2 !== null) {
result1.push(result2);
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 39) {
result2 = "'";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
if (input.charCodeAt(pos) === 41) {
result4 = ")";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result4 === null) {
result4 = parse_Newline();
}
if (result4 !== null) {
result2 = [result2, result3, result4];
} else {
result2 = null;
pos = pos5;
}
} else {
result2 = null;
pos = pos5;
}
} else {
result2 = null;
pos = pos5;
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
if (input.charCodeAt(pos) === 39) {
result2 = "'";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, title) { return title })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_TitleDouble() {
var result0, result1, result2, result3, result4;
var pos0, pos1, pos2, pos3, pos4, pos5;
pos0 = pos;
pos1 = pos;
if (input.charCodeAt(pos) === 34) {
result0 = "\"";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result0 !== null) {
pos2 = pos;
result1 = [];
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 34) {
result2 = "\"";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
if (input.charCodeAt(pos) === 41) {
result4 = ")";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result4 === null) {
result4 = parse_Newline();
}
if (result4 !== null) {
result2 = [result2, result3, result4];
} else {
result2 = null;
pos = pos5;
}
} else {
result2 = null;
pos = pos5;
}
} else {
result2 = null;
pos = pos5;
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
while (result2 !== null) {
result1.push(result2);
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 34) {
result2 = "\"";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
if (input.charCodeAt(pos) === 41) {
result4 = ")";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result4 === null) {
result4 = parse_Newline();
}
if (result4 !== null) {
result2 = [result2, result3, result4];
} else {
result2 = null;
pos = pos5;
}
} else {
result2 = null;
pos = pos5;
}
} else {
result2 = null;
pos = pos5;
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos4;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos3;
}
} else {
result2 = null;
pos = pos3;
}
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
if (input.charCodeAt(pos) === 34) {
result2 = "\"";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, title) { return title })(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_AutoLink() {
var result0;
result0 = parse_AutoLinkUrl();
if (result0 === null) {
result0 = parse_AutoLinkEmail();
}
return result0;
}
function parse_AutoLinkUrl() {
var result0, result1, result2, result3, result4, result5, result6;
var pos0, pos1, pos2, pos3, pos4, pos5;
pos0 = pos;
pos1 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
pos2 = pos;
pos3 = pos;
if (/^[A-Za-z]/.test(input.charAt(pos))) {
result2 = input.charAt(pos);
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("[A-Za-z]");
}
}
if (result2 !== null) {
result1 = [];
while (result2 !== null) {
result1.push(result2);
if (/^[A-Za-z]/.test(input.charAt(pos))) {
result2 = input.charAt(pos);
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("[A-Za-z]");
}
}
}
} else {
result1 = null;
}
if (result1 !== null) {
if (input.substr(pos, 3) === "://") {
result2 = "://";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"://\"");
}
}
if (result2 !== null) {
pos4 = pos;
pos5 = pos;
reportFailures++;
result4 = parse_Newline();
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos5;
}
if (result4 !== null) {
pos5 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
if (input.length > pos) {
result6 = input.charAt(pos);
pos++;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result6 !== null) {
result4 = [result4, result5, result6];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos4 = pos;
pos5 = pos;
reportFailures++;
result4 = parse_Newline();
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos5;
}
if (result4 !== null) {
pos5 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
if (input.length > pos) {
result6 = input.charAt(pos);
pos++;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result6 !== null) {
result4 = [result4, result5, result6];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
} else {
result3 = null;
}
if (result3 !== null) {
result1 = [result1, result2, result3];
} else {
result1 = null;
pos = pos3;
}
} else {
result1 = null;
pos = pos3;
}
} else {
result1 = null;
pos = pos3;
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
if (input.charCodeAt(pos) === 62) {
result2 = ">";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, src) {
d.add(d.elem_ct(t.pmd_AUTO_LINK_URL,_chunk,src));
return { 'src': src }
})(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_AutoLinkEmail() {
var result0, result1, result2, result3, result4, result5, result6;
var pos0, pos1, pos2, pos3, pos4, pos5;
pos0 = pos;
pos1 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
pos2 = pos;
pos3 = pos;
if (/^[\-A-Za-z0-9+_.]/.test(input.charAt(pos))) {
result2 = input.charAt(pos);
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("[\\-A-Za-z0-9+_.]");
}
}
if (result2 !== null) {
result1 = [];
while (result2 !== null) {
result1.push(result2);
if (/^[\-A-Za-z0-9+_.]/.test(input.charAt(pos))) {
result2 = input.charAt(pos);
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("[\\-A-Za-z0-9+_.]");
}
}
}
} else {
result1 = null;
}
if (result1 !== null) {
if (input.charCodeAt(pos) === 64) {
result2 = "@";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"@\"");
}
}
if (result2 !== null) {
pos4 = pos;
pos5 = pos;
reportFailures++;
result4 = parse_Newline();
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos5;
}
if (result4 !== null) {
pos5 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
if (input.length > pos) {
result6 = input.charAt(pos);
pos++;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result6 !== null) {
result4 = [result4, result5, result6];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos4 = pos;
pos5 = pos;
reportFailures++;
result4 = parse_Newline();
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos5;
}
if (result4 !== null) {
pos5 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
if (input.length > pos) {
result6 = input.charAt(pos);
pos++;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result6 !== null) {
result4 = [result4, result5, result6];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
} else {
result3 = null;
}
if (result3 !== null) {
result1 = [result1, result2, result3];
} else {
result1 = null;
pos = pos3;
}
} else {
result1 = null;
pos = pos3;
}
} else {
result1 = null;
pos = pos3;
}
if (result1 !== null) {
result1 = (function(offset) { return _chunk.match })(pos2);
}
if (result1 === null) {
pos = pos2;
}
if (result1 !== null) {
if (input.charCodeAt(pos) === 62) {
result2 = ">";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, src) {
d.add(d.elem_cz(t.pmd_AUTO_LINK_URL,_chunk,src));
return { 'src': src }
})(pos0, result0[1]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Reference() {
var result0, result1, result2, result3, result4, result5, result6, result7, result8;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
result0 = parse_NonindentSpace();
if (result0 !== null) {
pos2 = pos;
reportFailures++;
if (input.substr(pos, 2) === "[]") {
result1 = "[]";
pos += 2;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"[]\"");
}
}
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result2 = parse_Label();
if (result2 !== null) {
if (input.charCodeAt(pos) === 58) {
result3 = ":";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\":\"");
}
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
result5 = parse_RefSrc();
if (result5 !== null) {
result6 = parse_RefTitle();
if (result6 !== null) {
result8 = parse_BlankLine();
if (result8 !== null) {
result7 = [];
while (result8 !== null) {
result7.push(result8);
result8 = parse_BlankLine();
}
} else {
result7 = null;
}
if (result7 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6, result7];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, lbl, src, ttl) {
var el = d.elem_cz(t.pmd_REFERENCE,_chunk);
d.add(el,{ 'label': lbl, 'source': src, 'title': ttl });
d.save_ref(lbl,el);
return t.pmd_REFERENCE;
})(pos0, result0[2], result0[5], result0[6]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Label() {
var result0, result1, result2, result3, result4;
var pos0, pos1, pos2, pos3, pos4;
pos0 = pos;
pos1 = pos;
if (input.charCodeAt(pos) === 91) {
result0 = "[";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"[\"");
}
}
if (result0 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 94) {
result1 = "^";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"^\"");
}
}
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
pos2 = pos;
result2 = [];
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 93) {
result3 = "]";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"]\"");
}
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Inline();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 93) {
result3 = "]";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"]\"");
}
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Inline();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
if (result2 !== null) {
result2 = (function(offset) { return _chunk.match })(pos2);
}
if (result2 === null) {
pos = pos2;
}
if (result2 !== null) {
if (input.charCodeAt(pos) === 93) {
result3 = "]";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"]\"");
}
}
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, txt) { return txt })(pos0, result0[2]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_RefSrc() {
var result0, result1;
var pos0;
pos0 = pos;
result1 = parse_Nonspacechar();
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
result1 = parse_Nonspacechar();
}
} else {
result0 = null;
}
if (result0 !== null) {
result0 = (function(offset) { return _chunk.match })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_RefTitle() {
var result0;
result0 = parse_RefTitleSingle();
if (result0 === null) {
result0 = parse_RefTitleDouble();
if (result0 === null) {
result0 = parse_RefTitleParens();
if (result0 === null) {
result0 = parse_EmptyTitle();
}
}
}
return result0;
}
function parse_EmptyTitle() {
var result0;
var pos0;
pos0 = pos;
result0 = "";
if (result0 !== null) {
result0 = (function(offset) { return '' })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_RefTitleSingle() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1, pos2, pos3, pos4, pos5;
pos0 = pos;
pos1 = pos;
result0 = parse_Spnl();
if (result0 !== null) {
if (input.charCodeAt(pos) === 39) {
result1 = "'";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result1 !== null) {
pos2 = pos;
result2 = [];
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 39) {
result3 = "'";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result3 !== null) {
result4 = parse_Sp();
if (result4 !== null) {
result5 = parse_Newline();
if (result5 !== null) {
result3 = [result3, result4, result5];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
if (result3 === null) {
result3 = parse_Newline();
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.length > pos) {
result4 = input.charAt(pos);
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 39) {
result3 = "'";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result3 !== null) {
result4 = parse_Sp();
if (result4 !== null) {
result5 = parse_Newline();
if (result5 !== null) {
result3 = [result3, result4, result5];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
if (result3 === null) {
result3 = parse_Newline();
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.length > pos) {
result4 = input.charAt(pos);
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
if (result2 !== null) {
result2 = (function(offset) { return _chunk.match })(pos2);
}
if (result2 === null) {
pos = pos2;
}
if (result2 !== null) {
if (input.charCodeAt(pos) === 39) {
result3 = "'";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, title) { return title })(pos0, result0[2]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_RefTitleDouble() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1, pos2, pos3, pos4, pos5;
pos0 = pos;
pos1 = pos;
result0 = parse_Spnl();
if (result0 !== null) {
if (input.charCodeAt(pos) === 34) {
result1 = "\"";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result1 !== null) {
pos2 = pos;
result2 = [];
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 34) {
result3 = "\"";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result3 !== null) {
result4 = parse_Sp();
if (result4 !== null) {
result5 = parse_Newline();
if (result5 !== null) {
result3 = [result3, result4, result5];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
if (result3 === null) {
result3 = parse_Newline();
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.length > pos) {
result4 = input.charAt(pos);
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 34) {
result3 = "\"";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result3 !== null) {
result4 = parse_Sp();
if (result4 !== null) {
result5 = parse_Newline();
if (result5 !== null) {
result3 = [result3, result4, result5];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
if (result3 === null) {
result3 = parse_Newline();
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.length > pos) {
result4 = input.charAt(pos);
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
if (result2 !== null) {
result2 = (function(offset) { return _chunk.match })(pos2);
}
if (result2 === null) {
pos = pos2;
}
if (result2 !== null) {
if (input.charCodeAt(pos) === 34) {
result3 = "\"";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, title) { return title })(pos0, result0[2]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_RefTitleParens() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1, pos2, pos3, pos4, pos5;
pos0 = pos;
pos1 = pos;
result0 = parse_Spnl();
if (result0 !== null) {
if (input.charCodeAt(pos) === 40) {
result1 = "(";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"(\"");
}
}
if (result1 !== null) {
pos2 = pos;
result2 = [];
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 41) {
result3 = ")";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result3 !== null) {
result4 = parse_Sp();
if (result4 !== null) {
result5 = parse_Newline();
if (result5 !== null) {
result3 = [result3, result4, result5];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
if (result3 === null) {
result3 = parse_Newline();
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.length > pos) {
result4 = input.charAt(pos);
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
if (input.charCodeAt(pos) === 41) {
result3 = ")";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result3 !== null) {
result4 = parse_Sp();
if (result4 !== null) {
result5 = parse_Newline();
if (result5 !== null) {
result3 = [result3, result4, result5];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
if (result3 === null) {
result3 = parse_Newline();
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.length > pos) {
result4 = input.charAt(pos);
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
if (result2 !== null) {
result2 = (function(offset) { return _chunk.match })(pos2);
}
if (result2 === null) {
pos = pos2;
}
if (result2 !== null) {
if (input.charCodeAt(pos) === 41) {
result3 = ")";
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset, title) { return title })(pos0, result0[2]);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_References() {
var result0, result1;
result0 = [];
result1 = parse_Reference();
if (result1 === null) {
result1 = parse_SkipBlock();
}
while (result1 !== null) {
result0.push(result1);
result1 = parse_Reference();
if (result1 === null) {
result1 = parse_SkipBlock();
}
}
return result0;
}
function parse_Ticks1() {
var result0, result1;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
if (input.charCodeAt(pos) === 96) {
result0 = "`";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result0 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result1 = "`";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset) { return 1 })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Ticks2() {
var result0, result1;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
if (input.substr(pos, 2) === "``") {
result0 = "``";
pos += 2;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"``\"");
}
}
if (result0 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result1 = "`";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset) { return 2 })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Ticks3() {
var result0, result1;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
if (input.substr(pos, 3) === "```") {
result0 = "```";
pos += 3;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"```\"");
}
}
if (result0 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result1 = "`";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset) { return 3 })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Ticks4() {
var result0, result1;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
if (input.substr(pos, 4) === "````") {
result0 = "````";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"````\"");
}
}
if (result0 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result1 = "`";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset) { return 4 })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Ticks5() {
var result0, result1;
var pos0, pos1, pos2;
pos0 = pos;
pos1 = pos;
if (input.substr(pos, 5) === "`````") {
result0 = "`````";
pos += 5;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"`````\"");
}
}
if (result0 !== null) {
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result1 = "`";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos2;
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset) { return 5 })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_Code() {
var result0, result1, result2, result3, result4, result5;
var pos0, pos1, pos2, pos3, pos4, pos5;
pos0 = pos;
pos1 = pos;
pos2 = pos;
result0 = parse_Ticks1();
if (result0 !== null) {
result1 = parse_Sp();
if (result1 !== null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks1();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks1();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks1();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks1();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
}
} else {
result2 = null;
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks1();
if (result4 !== null) {
result0 = [result0, result1, result2, result3, result4];
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result0 = (function(offset, s) { return s })(pos1, result0[0]);
}
if (result0 === null) {
pos = pos1;
}
if (result0 === null) {
pos1 = pos;
pos2 = pos;
result0 = parse_Ticks2();
if (result0 !== null) {
result1 = parse_Sp();
if (result1 !== null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks2();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks2();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks2();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks2();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
}
} else {
result2 = null;
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks2();
if (result4 !== null) {
result0 = [result0, result1, result2, result3, result4];
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result0 = (function(offset, s) { return s })(pos1, result0[0]);
}
if (result0 === null) {
pos = pos1;
}
if (result0 === null) {
pos1 = pos;
pos2 = pos;
result0 = parse_Ticks3();
if (result0 !== null) {
result1 = parse_Sp();
if (result1 !== null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks3();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks3();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks3();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks3();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
}
} else {
result2 = null;
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks3();
if (result4 !== null) {
result0 = [result0, result1, result2, result3, result4];
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result0 = (function(offset, s) { return s })(pos1, result0[0]);
}
if (result0 === null) {
pos = pos1;
}
if (result0 === null) {
pos1 = pos;
pos2 = pos;
result0 = parse_Ticks4();
if (result0 !== null) {
result1 = parse_Sp();
if (result1 !== null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks4();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks4();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks4();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks4();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
}
} else {
result2 = null;
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks4();
if (result4 !== null) {
result0 = [result0, result1, result2, result3, result4];
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result0 = (function(offset, s) { return s })(pos1, result0[0]);
}
if (result0 === null) {
pos = pos1;
}
if (result0 === null) {
pos1 = pos;
pos2 = pos;
result0 = parse_Ticks5();
if (result0 !== null) {
result1 = parse_Sp();
if (result1 !== null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks5();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks5();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
if (result3 !== null) {
result2 = [];
while (result3 !== null) {
result2.push(result3);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
pos3 = pos;
pos4 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 96) {
result4 = "`";
pos++;
} else {
result4 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
reportFailures--;
if (result4 === null) {
result4 = "";
} else {
result4 = null;
pos = pos4;
}
if (result4 !== null) {
result5 = parse_Nonspacechar();
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos3;
}
} else {
result4 = null;
pos = pos3;
}
}
} else {
result3 = null;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
result3 = parse_Ticks5();
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
if (input.charCodeAt(pos) === 96) {
result5 = "`";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
}
} else {
result4 = null;
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
if (result3 === null) {
pos3 = pos;
pos4 = pos;
reportFailures++;
pos5 = pos;
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks5();
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos5;
}
} else {
result3 = null;
pos = pos5;
}
reportFailures--;
if (result3 === null) {
result3 = "";
} else {
result3 = null;
pos = pos4;
}
if (result3 !== null) {
result4 = parse_Spacechar();
if (result4 === null) {
pos4 = pos;
result4 = parse_Newline();
if (result4 !== null) {
pos5 = pos;
reportFailures++;
result5 = parse_BlankLine();
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos5;
}
if (result5 !== null) {
result4 = [result4, result5];
} else {
result4 = null;
pos = pos4;
}
} else {
result4 = null;
pos = pos4;
}
}
if (result4 !== null) {
result3 = [result3, result4];
} else {
result3 = null;
pos = pos3;
}
} else {
result3 = null;
pos = pos3;
}
}
}
}
} else {
result2 = null;
}
if (result2 !== null) {
result3 = parse_Sp();
if (result3 !== null) {
result4 = parse_Ticks5();
if (result4 !== null) {
result0 = [result0, result1, result2, result3, result4];
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
} else {
result0 = null;
pos = pos2;
}
if (result0 !== null) {
result0 = (function(offset, s) { return s })(pos1, result0[0]);
}
if (result0 === null) {
pos = pos1;
}
}
}
}
}
if (result0 !== null) {
result0 = (function(offset, cnt) { d.add(d.elem_cn(t.pmd_CODE,_chunk,cnt)); })(pos0, result0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_RawHtml() {
var result0;
result0 = parse_HtmlComment();
if (result0 === null) {
result0 = parse_HtmlBlockScript();
if (result0 === null) {
result0 = parse_HtmlTag();
}
}
return result0;
}
function parse_BlankLine() {
var result0, result1;
var pos0;
pos0 = pos;
result0 = parse_Sp();
if (result0 !== null) {
result1 = parse_Newline();
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Quoted() {
var result0, result1, result2, result3;
var pos0, pos1, pos2;
pos0 = pos;
if (input.charCodeAt(pos) === 34) {
result0 = "\"";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result0 !== null) {
result1 = [];
pos1 = pos;
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 34) {
result2 = "\"";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 34) {
result2 = "\"";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
if (result1 !== null) {
if (input.charCodeAt(pos) === 34) {
result2 = "\"";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
if (result0 === null) {
pos0 = pos;
if (input.charCodeAt(pos) === 39) {
result0 = "'";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result0 !== null) {
result1 = [];
pos1 = pos;
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 39) {
result2 = "'";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
while (result2 !== null) {
result1.push(result2);
pos1 = pos;
pos2 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 39) {
result2 = "'";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos2;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
}
if (result1 !== null) {
if (input.charCodeAt(pos) === 39) {
result2 = "'";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
}
return result0;
}
function parse_HtmlAttribute() {
var result0, result1, result2, result3, result4, result5, result6;
var pos0, pos1, pos2, pos3;
pos0 = pos;
result1 = parse_AlphanumericAscii();
if (result1 === null) {
if (input.charCodeAt(pos) === 45) {
result1 = "-";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
}
if (result1 !== null) {
result0 = [];
while (result1 !== null) {
result0.push(result1);
result1 = parse_AlphanumericAscii();
if (result1 === null) {
if (input.charCodeAt(pos) === 45) {
result1 = "-";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"-\"");
}
}
}
}
} else {
result0 = null;
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
pos1 = pos;
if (input.charCodeAt(pos) === 61) {
result2 = "=";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"=\"");
}
}
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result4 = parse_Quoted();
if (result4 === null) {
pos2 = pos;
pos3 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos3;
}
if (result5 !== null) {
result6 = parse_Nonspacechar();
if (result6 !== null) {
result5 = [result5, result6];
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
if (result5 !== null) {
result4 = [];
while (result5 !== null) {
result4.push(result5);
pos2 = pos;
pos3 = pos;
reportFailures++;
if (input.charCodeAt(pos) === 62) {
result5 = ">";
pos++;
} else {
result5 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
reportFailures--;
if (result5 === null) {
result5 = "";
} else {
result5 = null;
pos = pos3;
}
if (result5 !== null) {
result6 = parse_Nonspacechar();
if (result6 !== null) {
result5 = [result5, result6];
} else {
result5 = null;
pos = pos2;
}
} else {
result5 = null;
pos = pos2;
}
}
} else {
result4 = null;
}
}
if (result4 !== null) {
result2 = [result2, result3, result4];
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
} else {
result2 = null;
pos = pos1;
}
result2 = result2 !== null ? result2 : "";
if (result2 !== null) {
result3 = parse_Spnl();
if (result3 !== null) {
result0 = [result0, result1, result2, result3];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_HtmlComment() {
var result0, result1, result2, result3;
var pos0, pos1, pos2, pos3;
pos0 = pos;
pos1 = pos;
if (input.substr(pos, 4) === "<!--") {
result0 = "<!--";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<!--\"");
}
}
if (result0 !== null) {
result1 = [];
pos2 = pos;
pos3 = pos;
reportFailures++;
if (input.substr(pos, 3) === "-->") {
result2 = "-->";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"-->\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos3;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
while (result2 !== null) {
result1.push(result2);
pos2 = pos;
pos3 = pos;
reportFailures++;
if (input.substr(pos, 3) === "-->") {
result2 = "-->";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"-->\"");
}
}
reportFailures--;
if (result2 === null) {
result2 = "";
} else {
result2 = null;
pos = pos3;
}
if (result2 !== null) {
if (input.length > pos) {
result3 = input.charAt(pos);
pos++;
} else {
result3 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result3 !== null) {
result2 = [result2, result3];
} else {
result2 = null;
pos = pos2;
}
} else {
result2 = null;
pos = pos2;
}
}
if (result1 !== null) {
if (input.substr(pos, 3) === "-->") {
result2 = "-->";
pos += 3;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"-->\"");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
result0 = (function(offset) { d.add(d.elem_cz(t.pmd_COMMENT,_chunk)) })(pos0);
}
if (result0 === null) {
pos = pos0;
}
return result0;
}
function parse_HtmlTag() {
var result0, result1, result2, result3, result4, result5, result6, result7, result8;
var pos0;
pos0 = pos;
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 !== null) {
result1 = parse_Spnl();
if (result1 !== null) {
if (input.charCodeAt(pos) === 47) {
result2 = "/";
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
result2 = result2 !== null ? result2 : "";
if (result2 !== null) {
result4 = parse_AlphanumericAscii();
if (result4 !== null) {
result3 = [];
while (result4 !== null) {
result3.push(result4);
result4 = parse_AlphanumericAscii();
}
} else {
result3 = null;
}
if (result3 !== null) {
result4 = parse_Spnl();
if (result4 !== null) {
result5 = [];
result6 = parse_HtmlAttribute();
while (result6 !== null) {
result5.push(result6);
result6 = parse_HtmlAttribute();
}
if (result5 !== null) {
if (input.charCodeAt(pos) === 47) {
result6 = "/";
pos++;
} else {
result6 = null;
if (reportFailures === 0) {
matchFailed("\"/\"");
}
}
result6 = result6 !== null ? result6 : "";
if (result6 !== null) {
result7 = parse_Spnl();
if (result7 !== null) {
if (input.charCodeAt(pos) === 62) {
result8 = ">";
pos++;
} else {
result8 = null;
if (reportFailures === 0) {
matchFailed("\">\"");
}
}
if (result8 !== null) {
result0 = [result0, result1, result2, result3, result4, result5, result6, result7, result8];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Eof() {
var result0;
var pos0;
pos0 = pos;
reportFailures++;
if (input.length > pos) {
result0 = input.charAt(pos);
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Spacechar() {
var result0;
if (input.charCodeAt(pos) === 32) {
result0 = " ";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\" \"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 9) {
result0 = "\t";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\t\"");
}
}
}
return result0;
}
function parse_Nonspacechar() {
var result0, result1, result2;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_Spacechar();
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
pos1 = pos;
reportFailures++;
result1 = parse_Newline();
reportFailures--;
if (result1 === null) {
result1 = "";
} else {
result1 = null;
pos = pos1;
}
if (result1 !== null) {
if (input.length > pos) {
result2 = input.charAt(pos);
pos++;
} else {
result2 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result2 !== null) {
result0 = [result0, result1, result2];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Newline() {
var result0, result1;
var pos0;
if (input.charCodeAt(pos) === 10) {
result0 = "\n";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\n\"");
}
}
if (result0 === null) {
pos0 = pos;
if (input.charCodeAt(pos) === 13) {
result0 = "\r";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\r\"");
}
}
if (result0 !== null) {
if (input.charCodeAt(pos) === 10) {
result1 = "\n";
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("\"\\n\"");
}
}
result1 = result1 !== null ? result1 : "";
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
}
return result0;
}
function parse_Sp() {
var result0, result1;
result0 = [];
result1 = parse_Spacechar();
while (result1 !== null) {
result0.push(result1);
result1 = parse_Spacechar();
}
return result0;
}
function parse_Spnl() {
var result0, result1, result2;
var pos0, pos1;
pos0 = pos;
result0 = parse_Sp();
if (result0 !== null) {
pos1 = pos;
result1 = parse_Newline();
if (result1 !== null) {
result2 = parse_Sp();
if (result2 !== null) {
result1 = [result1, result2];
} else {
result1 = null;
pos = pos1;
}
} else {
result1 = null;
pos = pos1;
}
result1 = result1 !== null ? result1 : "";
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_SpecialChar() {
var result0;
if (input.charCodeAt(pos) === 42) {
result0 = "*";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"*\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 95) {
result0 = "_";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"_\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 96) {
result0 = "`";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"`\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 38) {
result0 = "&";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"&\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 91) {
result0 = "[";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"[\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 93) {
result0 = "]";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"]\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 40) {
result0 = "(";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"(\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 41) {
result0 = ")";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\")\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 60) {
result0 = "<";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"<\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 33) {
result0 = "!";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"!\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 35) {
result0 = "#";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"#\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 92) {
result0 = "\\";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 39) {
result0 = "'";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"'\"");
}
}
if (result0 === null) {
if (input.charCodeAt(pos) === 34) {
result0 = "\"";
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\"\"");
}
}
if (result0 === null) {
result0 = parse_ExtendedSpecialChar();
}
}
}
}
}
}
}
}
}
}
}
}
}
}
return result0;
}
function parse_NormalChar() {
var result0, result1;
var pos0, pos1;
pos0 = pos;
pos1 = pos;
reportFailures++;
result0 = parse_SpecialChar();
if (result0 === null) {
result0 = parse_Spacechar();
if (result0 === null) {
result0 = parse_Newline();
}
}
reportFailures--;
if (result0 === null) {
result0 = "";
} else {
result0 = null;
pos = pos1;
}
if (result0 !== null) {
if (input.length > pos) {
result1 = input.charAt(pos);
pos++;
} else {
result1 = null;
if (reportFailures === 0) {
matchFailed("any character");
}
}
if (result1 !== null) {
result0 = [result0, result1];
} else {
result0 = null;
pos = pos0;
}
} else {
result0 = null;
pos = pos0;
}
return result0;
}
function parse_Alphanumeric() {
var result0;
if (/^[0-9A-Za-z]/.test(input.charAt(pos))) {
result0 = input.charAt(pos);
pos++;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("[0-9A-Za-z]");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\200") {
result0 = "\\200";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\200\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\201") {
result0 = "\\201";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\201\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\202") {
result0 = "\\202";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\202\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\203") {
result0 = "\\203";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\203\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\204") {
result0 = "\\204";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\204\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\205") {
result0 = "\\205";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\205\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\206") {
result0 = "\\206";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\206\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\207") {
result0 = "\\207";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\207\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\210") {
result0 = "\\210";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\210\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\211") {
result0 = "\\211";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\211\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\212") {
result0 = "\\212";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\212\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\213") {
result0 = "\\213";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\213\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\214") {
result0 = "\\214";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\214\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\215") {
result0 = "\\215";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\215\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\216") {
result0 = "\\216";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\216\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\217") {
result0 = "\\217";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\217\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\220") {
result0 = "\\220";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\220\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\221") {
result0 = "\\221";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\221\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\222") {
result0 = "\\222";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\222\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\223") {
result0 = "\\223";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\223\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\224") {
result0 = "\\224";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\224\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\225") {
result0 = "\\225";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\225\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\226") {
result0 = "\\226";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\226\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\227") {
result0 = "\\227";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\227\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\230") {
result0 = "\\230";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\230\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\231") {
result0 = "\\231";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\231\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\232") {
result0 = "\\232";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\232\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\233") {
result0 = "\\233";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\233\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\234") {
result0 = "\\234";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\234\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\235") {
result0 = "\\235";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\235\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\236") {
result0 = "\\236";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\236\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\237") {
result0 = "\\237";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\237\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\240") {
result0 = "\\240";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\240\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\241") {
result0 = "\\241";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\241\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\242") {
result0 = "\\242";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\242\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\243") {
result0 = "\\243";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\243\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\244") {
result0 = "\\244";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\244\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\245") {
result0 = "\\245";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\245\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\246") {
result0 = "\\246";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\246\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\247") {
result0 = "\\247";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\247\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\250") {
result0 = "\\250";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\250\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\251") {
result0 = "\\251";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\251\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\252") {
result0 = "\\252";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\252\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\253") {
result0 = "\\253";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\253\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\254") {
result0 = "\\254";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\254\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\255") {
result0 = "\\255";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\255\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\256") {
result0 = "\\256";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\256\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\257") {
result0 = "\\257";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\257\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\260") {
result0 = "\\260";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\260\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\261") {
result0 = "\\261";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\261\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\262") {
result0 = "\\262";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\262\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\263") {
result0 = "\\263";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\263\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\264") {
result0 = "\\264";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\264\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\265") {
result0 = "\\265";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\265\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\266") {
result0 = "\\266";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\266\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\267") {
result0 = "\\267";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\267\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\270") {
result0 = "\\270";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\270\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\271") {
result0 = "\\271";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\271\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\272") {
result0 = "\\272";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\272\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\273") {
result0 = "\\273";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\273\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\274") {
result0 = "\\274";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\274\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\275") {
result0 = "\\275";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\275\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\276") {
result0 = "\\276";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\276\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\277") {
result0 = "\\277";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\277\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\300") {
result0 = "\\300";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\300\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\301") {
result0 = "\\301";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\301\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\302") {
result0 = "\\302";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\302\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\303") {
result0 = "\\303";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\303\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\304") {
result0 = "\\304";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\304\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\305") {
result0 = "\\305";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\305\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\306") {
result0 = "\\306";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\306\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\307") {
result0 = "\\307";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\307\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\310") {
result0 = "\\310";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\310\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\311") {
result0 = "\\311";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\311\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\312") {
result0 = "\\312";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\312\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\313") {
result0 = "\\313";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\313\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\314") {
result0 = "\\314";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\314\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\315") {
result0 = "\\315";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\315\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\316") {
result0 = "\\316";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\316\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\317") {
result0 = "\\317";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\317\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\320") {
result0 = "\\320";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\320\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\321") {
result0 = "\\321";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\321\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\322") {
result0 = "\\322";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\322\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\323") {
result0 = "\\323";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\323\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\324") {
result0 = "\\324";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\324\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\325") {
result0 = "\\325";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\325\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\326") {
result0 = "\\326";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\326\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\327") {
result0 = "\\327";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\327\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\330") {
result0 = "\\330";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\330\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\331") {
result0 = "\\331";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\331\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\332") {
result0 = "\\332";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\332\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\333") {
result0 = "\\333";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\333\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\334") {
result0 = "\\334";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\334\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\335") {
result0 = "\\335";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\335\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\336") {
result0 = "\\336";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\336\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\337") {
result0 = "\\337";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\337\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\340") {
result0 = "\\340";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\340\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\341") {
result0 = "\\341";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\341\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\342") {
result0 = "\\342";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\342\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\343") {
result0 = "\\343";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\343\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\344") {
result0 = "\\344";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\344\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\345") {
result0 = "\\345";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\345\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\346") {
result0 = "\\346";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\346\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\347") {
result0 = "\\347";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\347\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\350") {
result0 = "\\350";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\350\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\351") {
result0 = "\\351";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\351\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\352") {
result0 = "\\352";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\352\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\353") {
result0 = "\\353";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\353\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\354") {
result0 = "\\354";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\354\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\355") {
result0 = "\\355";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\355\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\356") {
result0 = "\\356";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\356\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\357") {
result0 = "\\357";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\357\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\360") {
result0 = "\\360";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\360\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\361") {
result0 = "\\361";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\361\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\362") {
result0 = "\\362";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\362\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\363") {
result0 = "\\363";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\363\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\364") {
result0 = "\\364";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\364\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\365") {
result0 = "\\365";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\365\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\366") {
result0 = "\\366";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\366\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\367") {
result0 = "\\367";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\367\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\370") {
result0 = "\\370";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\370\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\371") {
result0 = "\\371";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\371\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\372") {
result0 = "\\372";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\372\"");
}
}
if (result0 === null) {
if (input.substr(pos, 4) === "\\373") {
result0 = "\\373";
pos += 4;
} else {
result0 = null;
if (reportFailures === 0) {
matchFailed("\"\\\\373\"");
}
}
if (result0 === null) {
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment