{"version":3,"file":"dep-CCSnTAeo-BYi4TUxi.mjs","sources":["../node_modules/vite/dist/node/chunks/dep-CCSnTAeo.js"],"sourcesContent":["//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/unicode.js\nconst UNDEFINED_CODE_POINTS = new Set([\n\t65534,\n\t65535,\n\t131070,\n\t131071,\n\t196606,\n\t196607,\n\t262142,\n\t262143,\n\t327678,\n\t327679,\n\t393214,\n\t393215,\n\t458750,\n\t458751,\n\t524286,\n\t524287,\n\t589822,\n\t589823,\n\t655358,\n\t655359,\n\t720894,\n\t720895,\n\t786430,\n\t786431,\n\t851966,\n\t851967,\n\t917502,\n\t917503,\n\t983038,\n\t983039,\n\t1048574,\n\t1048575,\n\t1114110,\n\t1114111\n]);\nconst REPLACEMENT_CHARACTER = \"�\";\nvar CODE_POINTS;\n(function(CODE_POINTS$1) {\n\tCODE_POINTS$1[CODE_POINTS$1[\"EOF\"] = -1] = \"EOF\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"NULL\"] = 0] = \"NULL\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"TABULATION\"] = 9] = \"TABULATION\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"CARRIAGE_RETURN\"] = 13] = \"CARRIAGE_RETURN\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"LINE_FEED\"] = 10] = \"LINE_FEED\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"FORM_FEED\"] = 12] = \"FORM_FEED\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"SPACE\"] = 32] = \"SPACE\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"EXCLAMATION_MARK\"] = 33] = \"EXCLAMATION_MARK\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"QUOTATION_MARK\"] = 34] = \"QUOTATION_MARK\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"AMPERSAND\"] = 38] = \"AMPERSAND\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"APOSTROPHE\"] = 39] = \"APOSTROPHE\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"HYPHEN_MINUS\"] = 45] = \"HYPHEN_MINUS\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"SOLIDUS\"] = 47] = \"SOLIDUS\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"DIGIT_0\"] = 48] = \"DIGIT_0\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"DIGIT_9\"] = 57] = \"DIGIT_9\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"SEMICOLON\"] = 59] = \"SEMICOLON\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"LESS_THAN_SIGN\"] = 60] = \"LESS_THAN_SIGN\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"EQUALS_SIGN\"] = 61] = \"EQUALS_SIGN\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"GREATER_THAN_SIGN\"] = 62] = \"GREATER_THAN_SIGN\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"QUESTION_MARK\"] = 63] = \"QUESTION_MARK\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"LATIN_CAPITAL_A\"] = 65] = \"LATIN_CAPITAL_A\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"LATIN_CAPITAL_Z\"] = 90] = \"LATIN_CAPITAL_Z\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"RIGHT_SQUARE_BRACKET\"] = 93] = \"RIGHT_SQUARE_BRACKET\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"GRAVE_ACCENT\"] = 96] = \"GRAVE_ACCENT\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"LATIN_SMALL_A\"] = 97] = \"LATIN_SMALL_A\";\n\tCODE_POINTS$1[CODE_POINTS$1[\"LATIN_SMALL_Z\"] = 122] = \"LATIN_SMALL_Z\";\n})(CODE_POINTS || (CODE_POINTS = {}));\nconst SEQUENCES = {\n\tDASH_DASH: \"--\",\n\tCDATA_START: \"[CDATA[\",\n\tDOCTYPE: \"doctype\",\n\tSCRIPT: \"script\",\n\tPUBLIC: \"public\",\n\tSYSTEM: \"system\"\n};\nfunction isSurrogate(cp) {\n\treturn cp >= 55296 && cp <= 57343;\n}\nfunction isSurrogatePair(cp) {\n\treturn cp >= 56320 && cp <= 57343;\n}\nfunction getSurrogatePairCodePoint(cp1, cp2) {\n\treturn (cp1 - 55296) * 1024 + 9216 + cp2;\n}\nfunction isControlCodePoint(cp) {\n\treturn cp !== 32 && cp !== 10 && cp !== 13 && cp !== 9 && cp !== 12 && cp >= 1 && cp <= 31 || cp >= 127 && cp <= 159;\n}\nfunction isUndefinedCodePoint(cp) {\n\treturn cp >= 64976 && cp <= 65007 || UNDEFINED_CODE_POINTS.has(cp);\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/error-codes.js\nvar ERR;\n(function(ERR$1) {\n\tERR$1[\"controlCharacterInInputStream\"] = \"control-character-in-input-stream\";\n\tERR$1[\"noncharacterInInputStream\"] = \"noncharacter-in-input-stream\";\n\tERR$1[\"surrogateInInputStream\"] = \"surrogate-in-input-stream\";\n\tERR$1[\"nonVoidHtmlElementStartTagWithTrailingSolidus\"] = \"non-void-html-element-start-tag-with-trailing-solidus\";\n\tERR$1[\"endTagWithAttributes\"] = \"end-tag-with-attributes\";\n\tERR$1[\"endTagWithTrailingSolidus\"] = \"end-tag-with-trailing-solidus\";\n\tERR$1[\"unexpectedSolidusInTag\"] = \"unexpected-solidus-in-tag\";\n\tERR$1[\"unexpectedNullCharacter\"] = \"unexpected-null-character\";\n\tERR$1[\"unexpectedQuestionMarkInsteadOfTagName\"] = \"unexpected-question-mark-instead-of-tag-name\";\n\tERR$1[\"invalidFirstCharacterOfTagName\"] = \"invalid-first-character-of-tag-name\";\n\tERR$1[\"unexpectedEqualsSignBeforeAttributeName\"] = \"unexpected-equals-sign-before-attribute-name\";\n\tERR$1[\"missingEndTagName\"] = \"missing-end-tag-name\";\n\tERR$1[\"unexpectedCharacterInAttributeName\"] = \"unexpected-character-in-attribute-name\";\n\tERR$1[\"unknownNamedCharacterReference\"] = \"unknown-named-character-reference\";\n\tERR$1[\"missingSemicolonAfterCharacterReference\"] = \"missing-semicolon-after-character-reference\";\n\tERR$1[\"unexpectedCharacterAfterDoctypeSystemIdentifier\"] = \"unexpected-character-after-doctype-system-identifier\";\n\tERR$1[\"unexpectedCharacterInUnquotedAttributeValue\"] = \"unexpected-character-in-unquoted-attribute-value\";\n\tERR$1[\"eofBeforeTagName\"] = \"eof-before-tag-name\";\n\tERR$1[\"eofInTag\"] = \"eof-in-tag\";\n\tERR$1[\"missingAttributeValue\"] = \"missing-attribute-value\";\n\tERR$1[\"missingWhitespaceBetweenAttributes\"] = \"missing-whitespace-between-attributes\";\n\tERR$1[\"missingWhitespaceAfterDoctypePublicKeyword\"] = \"missing-whitespace-after-doctype-public-keyword\";\n\tERR$1[\"missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers\"] = \"missing-whitespace-between-doctype-public-and-system-identifiers\";\n\tERR$1[\"missingWhitespaceAfterDoctypeSystemKeyword\"] = \"missing-whitespace-after-doctype-system-keyword\";\n\tERR$1[\"missingQuoteBeforeDoctypePublicIdentifier\"] = \"missing-quote-before-doctype-public-identifier\";\n\tERR$1[\"missingQuoteBeforeDoctypeSystemIdentifier\"] = \"missing-quote-before-doctype-system-identifier\";\n\tERR$1[\"missingDoctypePublicIdentifier\"] = \"missing-doctype-public-identifier\";\n\tERR$1[\"missingDoctypeSystemIdentifier\"] = \"missing-doctype-system-identifier\";\n\tERR$1[\"abruptDoctypePublicIdentifier\"] = \"abrupt-doctype-public-identifier\";\n\tERR$1[\"abruptDoctypeSystemIdentifier\"] = \"abrupt-doctype-system-identifier\";\n\tERR$1[\"cdataInHtmlContent\"] = \"cdata-in-html-content\";\n\tERR$1[\"incorrectlyOpenedComment\"] = \"incorrectly-opened-comment\";\n\tERR$1[\"eofInScriptHtmlCommentLikeText\"] = \"eof-in-script-html-comment-like-text\";\n\tERR$1[\"eofInDoctype\"] = \"eof-in-doctype\";\n\tERR$1[\"nestedComment\"] = \"nested-comment\";\n\tERR$1[\"abruptClosingOfEmptyComment\"] = \"abrupt-closing-of-empty-comment\";\n\tERR$1[\"eofInComment\"] = \"eof-in-comment\";\n\tERR$1[\"incorrectlyClosedComment\"] = \"incorrectly-closed-comment\";\n\tERR$1[\"eofInCdata\"] = \"eof-in-cdata\";\n\tERR$1[\"absenceOfDigitsInNumericCharacterReference\"] = \"absence-of-digits-in-numeric-character-reference\";\n\tERR$1[\"nullCharacterReference\"] = \"null-character-reference\";\n\tERR$1[\"surrogateCharacterReference\"] = \"surrogate-character-reference\";\n\tERR$1[\"characterReferenceOutsideUnicodeRange\"] = \"character-reference-outside-unicode-range\";\n\tERR$1[\"controlCharacterReference\"] = \"control-character-reference\";\n\tERR$1[\"noncharacterCharacterReference\"] = \"noncharacter-character-reference\";\n\tERR$1[\"missingWhitespaceBeforeDoctypeName\"] = \"missing-whitespace-before-doctype-name\";\n\tERR$1[\"missingDoctypeName\"] = \"missing-doctype-name\";\n\tERR$1[\"invalidCharacterSequenceAfterDoctypeName\"] = \"invalid-character-sequence-after-doctype-name\";\n\tERR$1[\"duplicateAttribute\"] = \"duplicate-attribute\";\n\tERR$1[\"nonConformingDoctype\"] = \"non-conforming-doctype\";\n\tERR$1[\"missingDoctype\"] = \"missing-doctype\";\n\tERR$1[\"misplacedDoctype\"] = \"misplaced-doctype\";\n\tERR$1[\"endTagWithoutMatchingOpenElement\"] = \"end-tag-without-matching-open-element\";\n\tERR$1[\"closingOfElementWithOpenChildElements\"] = \"closing-of-element-with-open-child-elements\";\n\tERR$1[\"disallowedContentInNoscriptInHead\"] = \"disallowed-content-in-noscript-in-head\";\n\tERR$1[\"openElementsLeftAfterEof\"] = \"open-elements-left-after-eof\";\n\tERR$1[\"abandonedHeadElementChild\"] = \"abandoned-head-element-child\";\n\tERR$1[\"misplacedStartTagForHeadElement\"] = \"misplaced-start-tag-for-head-element\";\n\tERR$1[\"nestedNoscriptInHead\"] = \"nested-noscript-in-head\";\n\tERR$1[\"eofInElementThatCanContainOnlyText\"] = \"eof-in-element-that-can-contain-only-text\";\n})(ERR || (ERR = {}));\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/preprocessor.js\nconst DEFAULT_BUFFER_WATERLINE = 65536;\nvar Preprocessor = class {\n\tconstructor(handler) {\n\t\tthis.handler = handler;\n\t\tthis.html = \"\";\n\t\tthis.pos = -1;\n\t\tthis.lastGapPos = -2;\n\t\tthis.gapStack = [];\n\t\tthis.skipNextNewLine = false;\n\t\tthis.lastChunkWritten = false;\n\t\tthis.endOfChunkHit = false;\n\t\tthis.bufferWaterline = DEFAULT_BUFFER_WATERLINE;\n\t\tthis.isEol = false;\n\t\tthis.lineStartPos = 0;\n\t\tthis.droppedBufferSize = 0;\n\t\tthis.line = 1;\n\t\tthis.lastErrOffset = -1;\n\t}\n\t/** The column on the current line. If we just saw a gap (eg. a surrogate pair), return the index before. */\n\tget col() {\n\t\treturn this.pos - this.lineStartPos + Number(this.lastGapPos !== this.pos);\n\t}\n\tget offset() {\n\t\treturn this.droppedBufferSize + this.pos;\n\t}\n\tgetError(code, cpOffset) {\n\t\tconst { line, col, offset } = this;\n\t\tconst startCol = col + cpOffset;\n\t\tconst startOffset = offset + cpOffset;\n\t\treturn {\n\t\t\tcode,\n\t\t\tstartLine: line,\n\t\t\tendLine: line,\n\t\t\tstartCol,\n\t\t\tendCol: startCol,\n\t\t\tstartOffset,\n\t\t\tendOffset: startOffset\n\t\t};\n\t}\n\t_err(code) {\n\t\tif (this.handler.onParseError && this.lastErrOffset !== this.offset) {\n\t\t\tthis.lastErrOffset = this.offset;\n\t\t\tthis.handler.onParseError(this.getError(code, 0));\n\t\t}\n\t}\n\t_addGap() {\n\t\tthis.gapStack.push(this.lastGapPos);\n\t\tthis.lastGapPos = this.pos;\n\t}\n\t_processSurrogate(cp) {\n\t\tif (this.pos !== this.html.length - 1) {\n\t\t\tconst nextCp = this.html.charCodeAt(this.pos + 1);\n\t\t\tif (isSurrogatePair(nextCp)) {\n\t\t\t\tthis.pos++;\n\t\t\t\tthis._addGap();\n\t\t\t\treturn getSurrogatePairCodePoint(cp, nextCp);\n\t\t\t}\n\t\t} else if (!this.lastChunkWritten) {\n\t\t\tthis.endOfChunkHit = true;\n\t\t\treturn CODE_POINTS.EOF;\n\t\t}\n\t\tthis._err(ERR.surrogateInInputStream);\n\t\treturn cp;\n\t}\n\twillDropParsedChunk() {\n\t\treturn this.pos > this.bufferWaterline;\n\t}\n\tdropParsedChunk() {\n\t\tif (this.willDropParsedChunk()) {\n\t\t\tthis.html = this.html.substring(this.pos);\n\t\t\tthis.lineStartPos -= this.pos;\n\t\t\tthis.droppedBufferSize += this.pos;\n\t\t\tthis.pos = 0;\n\t\t\tthis.lastGapPos = -2;\n\t\t\tthis.gapStack.length = 0;\n\t\t}\n\t}\n\twrite(chunk, isLastChunk) {\n\t\tif (this.html.length > 0) this.html += chunk;\n\t\telse this.html = chunk;\n\t\tthis.endOfChunkHit = false;\n\t\tthis.lastChunkWritten = isLastChunk;\n\t}\n\tinsertHtmlAtCurrentPos(chunk) {\n\t\tthis.html = this.html.substring(0, this.pos + 1) + chunk + this.html.substring(this.pos + 1);\n\t\tthis.endOfChunkHit = false;\n\t}\n\tstartsWith(pattern, caseSensitive) {\n\t\tif (this.pos + pattern.length > this.html.length) {\n\t\t\tthis.endOfChunkHit = !this.lastChunkWritten;\n\t\t\treturn false;\n\t\t}\n\t\tif (caseSensitive) return this.html.startsWith(pattern, this.pos);\n\t\tfor (let i = 0; i < pattern.length; i++) if ((this.html.charCodeAt(this.pos + i) | 32) !== pattern.charCodeAt(i)) return false;\n\t\treturn true;\n\t}\n\tpeek(offset) {\n\t\tconst pos = this.pos + offset;\n\t\tif (pos >= this.html.length) {\n\t\t\tthis.endOfChunkHit = !this.lastChunkWritten;\n\t\t\treturn CODE_POINTS.EOF;\n\t\t}\n\t\tconst code = this.html.charCodeAt(pos);\n\t\treturn code === CODE_POINTS.CARRIAGE_RETURN ? CODE_POINTS.LINE_FEED : code;\n\t}\n\tadvance() {\n\t\tthis.pos++;\n\t\tif (this.isEol) {\n\t\t\tthis.isEol = false;\n\t\t\tthis.line++;\n\t\t\tthis.lineStartPos = this.pos;\n\t\t}\n\t\tif (this.pos >= this.html.length) {\n\t\t\tthis.endOfChunkHit = !this.lastChunkWritten;\n\t\t\treturn CODE_POINTS.EOF;\n\t\t}\n\t\tlet cp = this.html.charCodeAt(this.pos);\n\t\tif (cp === CODE_POINTS.CARRIAGE_RETURN) {\n\t\t\tthis.isEol = true;\n\t\t\tthis.skipNextNewLine = true;\n\t\t\treturn CODE_POINTS.LINE_FEED;\n\t\t}\n\t\tif (cp === CODE_POINTS.LINE_FEED) {\n\t\t\tthis.isEol = true;\n\t\t\tif (this.skipNextNewLine) {\n\t\t\t\tthis.line--;\n\t\t\t\tthis.skipNextNewLine = false;\n\t\t\t\tthis._addGap();\n\t\t\t\treturn this.advance();\n\t\t\t}\n\t\t}\n\t\tthis.skipNextNewLine = false;\n\t\tif (isSurrogate(cp)) cp = this._processSurrogate(cp);\n\t\tif (!(this.handler.onParseError === null || cp > 31 && cp < 127 || cp === CODE_POINTS.LINE_FEED || cp === CODE_POINTS.CARRIAGE_RETURN || cp > 159 && cp < 64976)) this._checkForProblematicCharacters(cp);\n\t\treturn cp;\n\t}\n\t_checkForProblematicCharacters(cp) {\n\t\tif (isControlCodePoint(cp)) this._err(ERR.controlCharacterInInputStream);\n\t\telse if (isUndefinedCodePoint(cp)) this._err(ERR.noncharacterInInputStream);\n\t}\n\tretreat(count) {\n\t\tthis.pos -= count;\n\t\twhile (this.pos < this.lastGapPos) {\n\t\t\tthis.lastGapPos = this.gapStack.pop();\n\t\t\tthis.pos--;\n\t\t}\n\t\tthis.isEol = false;\n\t}\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/token.js\nvar TokenType;\n(function(TokenType$1) {\n\tTokenType$1[TokenType$1[\"CHARACTER\"] = 0] = \"CHARACTER\";\n\tTokenType$1[TokenType$1[\"NULL_CHARACTER\"] = 1] = \"NULL_CHARACTER\";\n\tTokenType$1[TokenType$1[\"WHITESPACE_CHARACTER\"] = 2] = \"WHITESPACE_CHARACTER\";\n\tTokenType$1[TokenType$1[\"START_TAG\"] = 3] = \"START_TAG\";\n\tTokenType$1[TokenType$1[\"END_TAG\"] = 4] = \"END_TAG\";\n\tTokenType$1[TokenType$1[\"COMMENT\"] = 5] = \"COMMENT\";\n\tTokenType$1[TokenType$1[\"DOCTYPE\"] = 6] = \"DOCTYPE\";\n\tTokenType$1[TokenType$1[\"EOF\"] = 7] = \"EOF\";\n\tTokenType$1[TokenType$1[\"HIBERNATION\"] = 8] = \"HIBERNATION\";\n})(TokenType || (TokenType = {}));\nfunction getTokenAttr(token, attrName) {\n\tfor (let i = token.attrs.length - 1; i >= 0; i--) if (token.attrs[i].name === attrName) return token.attrs[i].value;\n\treturn null;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/entities@6.0.0/node_modules/entities/dist/esm/generated/decode-data-html.js\nconst htmlDecodeTree = /* @__PURE__ */ new Uint16Array(/* @__PURE__ */ \"ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\\0\\0\\0\\0\\0\\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\\\bfms¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTǇǋǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\\0\\0\\0͔͂\\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\\0\\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\\0\\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\\0ц\\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\\0\\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\\0\\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\\0ֿ\\0\\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\\0ࣃbleBracket;柦nǔࣈ\\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻\\\"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\\0စbleBracket;柧nǔည\\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\\0\\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉ǲኀ\\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\\0ጬጱ\\0\\0\\0\\0\\0ጸጽ፷ᎅ\\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻ǲᕔ\\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\\0ᖰᖶᖿ\\0\\0\\0\\0ᗆᗛᗫᙟ᙭\\0ᚕ᚛ᚲᚹ\\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\\0\\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\\0\\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\\0ᠳƲᠯ\\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\\0᧨ᨑᨕᨲ\\0ᨷᩐ\\0\\0᪴\\0\\0᫁\\0\\0ᬡᬮ᭍᭒\\0᯽\\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\\0\\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\\0\\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\\0\\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\\0\\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\\0\\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\\0\\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤĳạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\\0\\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\\0ᾞ\\0ᾡᾧ\\0\\0ῆῌ\\0ΐ\\0ῦῪ \\0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ﬃɩᾹ\\0\\0᾽g;耀ﬀig;耀ﬄ;쀀𝔣lig;耀ﬁlig;쀀fjƀaltῙ῜ῡt;晭ig;耀ﬂns;斱of;䆒ǰ΅\\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒α‚‰‸⁅⁈\\0⁐β•‥‧‪‬\\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\\0‶;慔;慖ʴ‾⁁\\0\\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\\0⊪\\0⊸⋅⋎\\0⋕⋳\\0\\0⋸⌢⍧⍢⍿\\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\\0⒪\\0⒱\\0\\0\\0\\0\\0⒵Ⓔ\\0ⓆⓈⓍ\\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସǳ⧟\\0⧣p肻\\xA0ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\\0\\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0ⴭ\\0ⴸⵈⵠⵥ⵲ⶄᬇ\\0\\0ⶍⶫ\\0ⷈⷎ\\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗǈⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\\0\\0⵼\\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\\0⹽\\0⺀⺝\\0⺢⺹\\0\\0⻋ຜ\\0⼓\\0\\0⼫⾼\\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\\0\\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\\0㍺㎤\\0\\0㏬㏰\\0㐨㑈㑚㒭㒱㓊㓱\\0㘖\\0\\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\\0\\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\\0㙾㛂\\0\\0\\0\\0\\0㛛㜃\\0㜉㝬\\0\\0\\0㞇ɲ㙖\\0\\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼ǲ㚋\\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\\0\\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\\0\\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\\0㪋\\0㪐㪛\\0\\0㪝㪨㪫㪯\\0\\0㫃㫎\\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌\".split(\"\").map((c) => c.charCodeAt(0)));\n\n//#endregion\n//#region ../../node_modules/.pnpm/entities@6.0.0/node_modules/entities/dist/esm/decode-codepoint.js\nvar _a;\nconst decodeMap = new Map([\n\t[0, 65533],\n\t[128, 8364],\n\t[130, 8218],\n\t[131, 402],\n\t[132, 8222],\n\t[133, 8230],\n\t[134, 8224],\n\t[135, 8225],\n\t[136, 710],\n\t[137, 8240],\n\t[138, 352],\n\t[139, 8249],\n\t[140, 338],\n\t[142, 381],\n\t[145, 8216],\n\t[146, 8217],\n\t[147, 8220],\n\t[148, 8221],\n\t[149, 8226],\n\t[150, 8211],\n\t[151, 8212],\n\t[152, 732],\n\t[153, 8482],\n\t[154, 353],\n\t[155, 8250],\n\t[156, 339],\n\t[158, 382],\n\t[159, 376]\n]);\n/**\n* Polyfill for `String.fromCodePoint`. It is used to create a string from a Unicode code point.\n*/\nconst fromCodePoint = (_a = String.fromCodePoint) !== null && _a !== void 0 ? _a : function(codePoint) {\n\tlet output = \"\";\n\tif (codePoint > 65535) {\n\t\tcodePoint -= 65536;\n\t\toutput += String.fromCharCode(codePoint >>> 10 & 1023 | 55296);\n\t\tcodePoint = 56320 | codePoint & 1023;\n\t}\n\toutput += String.fromCharCode(codePoint);\n\treturn output;\n};\n/**\n* Replace the given code point with a replacement character if it is a\n* surrogate or is outside the valid range. Otherwise return the code\n* point unchanged.\n*/\nfunction replaceCodePoint(codePoint) {\n\tvar _a$1;\n\tif (codePoint >= 55296 && codePoint <= 57343 || codePoint > 1114111) return 65533;\n\treturn (_a$1 = decodeMap.get(codePoint)) !== null && _a$1 !== void 0 ? _a$1 : codePoint;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/entities@6.0.0/node_modules/entities/dist/esm/decode.js\nvar CharCodes;\n(function(CharCodes$1) {\n\tCharCodes$1[CharCodes$1[\"NUM\"] = 35] = \"NUM\";\n\tCharCodes$1[CharCodes$1[\"SEMI\"] = 59] = \"SEMI\";\n\tCharCodes$1[CharCodes$1[\"EQUALS\"] = 61] = \"EQUALS\";\n\tCharCodes$1[CharCodes$1[\"ZERO\"] = 48] = \"ZERO\";\n\tCharCodes$1[CharCodes$1[\"NINE\"] = 57] = \"NINE\";\n\tCharCodes$1[CharCodes$1[\"LOWER_A\"] = 97] = \"LOWER_A\";\n\tCharCodes$1[CharCodes$1[\"LOWER_F\"] = 102] = \"LOWER_F\";\n\tCharCodes$1[CharCodes$1[\"LOWER_X\"] = 120] = \"LOWER_X\";\n\tCharCodes$1[CharCodes$1[\"LOWER_Z\"] = 122] = \"LOWER_Z\";\n\tCharCodes$1[CharCodes$1[\"UPPER_A\"] = 65] = \"UPPER_A\";\n\tCharCodes$1[CharCodes$1[\"UPPER_F\"] = 70] = \"UPPER_F\";\n\tCharCodes$1[CharCodes$1[\"UPPER_Z\"] = 90] = \"UPPER_Z\";\n})(CharCodes || (CharCodes = {}));\n/** Bit that needs to be set to convert an upper case ASCII character to lower case */\nconst TO_LOWER_BIT = 32;\nvar BinTrieFlags;\n(function(BinTrieFlags$1) {\n\tBinTrieFlags$1[BinTrieFlags$1[\"VALUE_LENGTH\"] = 49152] = \"VALUE_LENGTH\";\n\tBinTrieFlags$1[BinTrieFlags$1[\"BRANCH_LENGTH\"] = 16256] = \"BRANCH_LENGTH\";\n\tBinTrieFlags$1[BinTrieFlags$1[\"JUMP_TABLE\"] = 127] = \"JUMP_TABLE\";\n})(BinTrieFlags || (BinTrieFlags = {}));\nfunction isNumber(code) {\n\treturn code >= CharCodes.ZERO && code <= CharCodes.NINE;\n}\nfunction isHexadecimalCharacter(code) {\n\treturn code >= CharCodes.UPPER_A && code <= CharCodes.UPPER_F || code >= CharCodes.LOWER_A && code <= CharCodes.LOWER_F;\n}\nfunction isAsciiAlphaNumeric$1(code) {\n\treturn code >= CharCodes.UPPER_A && code <= CharCodes.UPPER_Z || code >= CharCodes.LOWER_A && code <= CharCodes.LOWER_Z || isNumber(code);\n}\n/**\n* Checks if the given character is a valid end character for an entity in an attribute.\n*\n* Attribute values that aren't terminated properly aren't parsed, and shouldn't lead to a parser error.\n* See the example in https://html.spec.whatwg.org/multipage/parsing.html#named-character-reference-state\n*/\nfunction isEntityInAttributeInvalidEnd(code) {\n\treturn code === CharCodes.EQUALS || isAsciiAlphaNumeric$1(code);\n}\nvar EntityDecoderState;\n(function(EntityDecoderState$1) {\n\tEntityDecoderState$1[EntityDecoderState$1[\"EntityStart\"] = 0] = \"EntityStart\";\n\tEntityDecoderState$1[EntityDecoderState$1[\"NumericStart\"] = 1] = \"NumericStart\";\n\tEntityDecoderState$1[EntityDecoderState$1[\"NumericDecimal\"] = 2] = \"NumericDecimal\";\n\tEntityDecoderState$1[EntityDecoderState$1[\"NumericHex\"] = 3] = \"NumericHex\";\n\tEntityDecoderState$1[EntityDecoderState$1[\"NamedEntity\"] = 4] = \"NamedEntity\";\n})(EntityDecoderState || (EntityDecoderState = {}));\nvar DecodingMode;\n(function(DecodingMode$1) {\n\t/** Entities in text nodes that can end with any character. */\n\tDecodingMode$1[DecodingMode$1[\"Legacy\"] = 0] = \"Legacy\";\n\t/** Only allow entities terminated with a semicolon. */\n\tDecodingMode$1[DecodingMode$1[\"Strict\"] = 1] = \"Strict\";\n\t/** Entities in attributes have limitations on ending characters. */\n\tDecodingMode$1[DecodingMode$1[\"Attribute\"] = 2] = \"Attribute\";\n})(DecodingMode || (DecodingMode = {}));\n/**\n* Token decoder with support of writing partial entities.\n*/\nvar EntityDecoder = class {\n\tconstructor(decodeTree, emitCodePoint, errors) {\n\t\tthis.decodeTree = decodeTree;\n\t\tthis.emitCodePoint = emitCodePoint;\n\t\tthis.errors = errors;\n\t\t/** The current state of the decoder. */\n\t\tthis.state = EntityDecoderState.EntityStart;\n\t\t/** Characters that were consumed while parsing an entity. */\n\t\tthis.consumed = 1;\n\t\t/**\n\t\t* The result of the entity.\n\t\t*\n\t\t* Either the result index of a numeric entity, or the codepoint of a\n\t\t* numeric entity.\n\t\t*/\n\t\tthis.result = 0;\n\t\t/** The current index in the decode tree. */\n\t\tthis.treeIndex = 0;\n\t\t/** The number of characters that were consumed in excess. */\n\t\tthis.excess = 1;\n\t\t/** The mode in which the decoder is operating. */\n\t\tthis.decodeMode = DecodingMode.Strict;\n\t}\n\t/** Resets the instance to make it reusable. */\n\tstartEntity(decodeMode) {\n\t\tthis.decodeMode = decodeMode;\n\t\tthis.state = EntityDecoderState.EntityStart;\n\t\tthis.result = 0;\n\t\tthis.treeIndex = 0;\n\t\tthis.excess = 1;\n\t\tthis.consumed = 1;\n\t}\n\t/**\n\t* Write an entity to the decoder. This can be called multiple times with partial entities.\n\t* If the entity is incomplete, the decoder will return -1.\n\t*\n\t* Mirrors the implementation of `getDecoder`, but with the ability to stop decoding if the\n\t* entity is incomplete, and resume when the next string is written.\n\t*\n\t* @param input The string containing the entity (or a continuation of the entity).\n\t* @param offset The offset at which the entity begins. Should be 0 if this is not the first call.\n\t* @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n\t*/\n\twrite(input, offset) {\n\t\tswitch (this.state) {\n\t\t\tcase EntityDecoderState.EntityStart:\n\t\t\t\tif (input.charCodeAt(offset) === CharCodes.NUM) {\n\t\t\t\t\tthis.state = EntityDecoderState.NumericStart;\n\t\t\t\t\tthis.consumed += 1;\n\t\t\t\t\treturn this.stateNumericStart(input, offset + 1);\n\t\t\t\t}\n\t\t\t\tthis.state = EntityDecoderState.NamedEntity;\n\t\t\t\treturn this.stateNamedEntity(input, offset);\n\t\t\tcase EntityDecoderState.NumericStart: return this.stateNumericStart(input, offset);\n\t\t\tcase EntityDecoderState.NumericDecimal: return this.stateNumericDecimal(input, offset);\n\t\t\tcase EntityDecoderState.NumericHex: return this.stateNumericHex(input, offset);\n\t\t\tcase EntityDecoderState.NamedEntity: return this.stateNamedEntity(input, offset);\n\t\t}\n\t}\n\t/**\n\t* Switches between the numeric decimal and hexadecimal states.\n\t*\n\t* Equivalent to the `Numeric character reference state` in the HTML spec.\n\t*\n\t* @param input The string containing the entity (or a continuation of the entity).\n\t* @param offset The current offset.\n\t* @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n\t*/\n\tstateNumericStart(input, offset) {\n\t\tif (offset >= input.length) return -1;\n\t\tif ((input.charCodeAt(offset) | TO_LOWER_BIT) === CharCodes.LOWER_X) {\n\t\t\tthis.state = EntityDecoderState.NumericHex;\n\t\t\tthis.consumed += 1;\n\t\t\treturn this.stateNumericHex(input, offset + 1);\n\t\t}\n\t\tthis.state = EntityDecoderState.NumericDecimal;\n\t\treturn this.stateNumericDecimal(input, offset);\n\t}\n\taddToNumericResult(input, start, end, base) {\n\t\tif (start !== end) {\n\t\t\tconst digitCount = end - start;\n\t\t\tthis.result = this.result * Math.pow(base, digitCount) + Number.parseInt(input.substr(start, digitCount), base);\n\t\t\tthis.consumed += digitCount;\n\t\t}\n\t}\n\t/**\n\t* Parses a hexadecimal numeric entity.\n\t*\n\t* Equivalent to the `Hexademical character reference state` in the HTML spec.\n\t*\n\t* @param input The string containing the entity (or a continuation of the entity).\n\t* @param offset The current offset.\n\t* @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n\t*/\n\tstateNumericHex(input, offset) {\n\t\tconst startIndex = offset;\n\t\twhile (offset < input.length) {\n\t\t\tconst char = input.charCodeAt(offset);\n\t\t\tif (isNumber(char) || isHexadecimalCharacter(char)) offset += 1;\n\t\t\telse {\n\t\t\t\tthis.addToNumericResult(input, startIndex, offset, 16);\n\t\t\t\treturn this.emitNumericEntity(char, 3);\n\t\t\t}\n\t\t}\n\t\tthis.addToNumericResult(input, startIndex, offset, 16);\n\t\treturn -1;\n\t}\n\t/**\n\t* Parses a decimal numeric entity.\n\t*\n\t* Equivalent to the `Decimal character reference state` in the HTML spec.\n\t*\n\t* @param input The string containing the entity (or a continuation of the entity).\n\t* @param offset The current offset.\n\t* @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n\t*/\n\tstateNumericDecimal(input, offset) {\n\t\tconst startIndex = offset;\n\t\twhile (offset < input.length) {\n\t\t\tconst char = input.charCodeAt(offset);\n\t\t\tif (isNumber(char)) offset += 1;\n\t\t\telse {\n\t\t\t\tthis.addToNumericResult(input, startIndex, offset, 10);\n\t\t\t\treturn this.emitNumericEntity(char, 2);\n\t\t\t}\n\t\t}\n\t\tthis.addToNumericResult(input, startIndex, offset, 10);\n\t\treturn -1;\n\t}\n\t/**\n\t* Validate and emit a numeric entity.\n\t*\n\t* Implements the logic from the `Hexademical character reference start\n\t* state` and `Numeric character reference end state` in the HTML spec.\n\t*\n\t* @param lastCp The last code point of the entity. Used to see if the\n\t*               entity was terminated with a semicolon.\n\t* @param expectedLength The minimum number of characters that should be\n\t*                       consumed. Used to validate that at least one digit\n\t*                       was consumed.\n\t* @returns The number of characters that were consumed.\n\t*/\n\temitNumericEntity(lastCp, expectedLength) {\n\t\tvar _a$1;\n\t\tif (this.consumed <= expectedLength) {\n\t\t\t(_a$1 = this.errors) === null || _a$1 === void 0 || _a$1.absenceOfDigitsInNumericCharacterReference(this.consumed);\n\t\t\treturn 0;\n\t\t}\n\t\tif (lastCp === CharCodes.SEMI) this.consumed += 1;\n\t\telse if (this.decodeMode === DecodingMode.Strict) return 0;\n\t\tthis.emitCodePoint(replaceCodePoint(this.result), this.consumed);\n\t\tif (this.errors) {\n\t\t\tif (lastCp !== CharCodes.SEMI) this.errors.missingSemicolonAfterCharacterReference();\n\t\t\tthis.errors.validateNumericCharacterReference(this.result);\n\t\t}\n\t\treturn this.consumed;\n\t}\n\t/**\n\t* Parses a named entity.\n\t*\n\t* Equivalent to the `Named character reference state` in the HTML spec.\n\t*\n\t* @param input The string containing the entity (or a continuation of the entity).\n\t* @param offset The current offset.\n\t* @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n\t*/\n\tstateNamedEntity(input, offset) {\n\t\tconst { decodeTree } = this;\n\t\tlet current = decodeTree[this.treeIndex];\n\t\tlet valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;\n\t\tfor (; offset < input.length; offset++, this.excess++) {\n\t\t\tconst char = input.charCodeAt(offset);\n\t\t\tthis.treeIndex = determineBranch(decodeTree, current, this.treeIndex + Math.max(1, valueLength), char);\n\t\t\tif (this.treeIndex < 0) return this.result === 0 || this.decodeMode === DecodingMode.Attribute && (valueLength === 0 || isEntityInAttributeInvalidEnd(char)) ? 0 : this.emitNotTerminatedNamedEntity();\n\t\t\tcurrent = decodeTree[this.treeIndex];\n\t\t\tvalueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;\n\t\t\tif (valueLength !== 0) {\n\t\t\t\tif (char === CharCodes.SEMI) return this.emitNamedEntityData(this.treeIndex, valueLength, this.consumed + this.excess);\n\t\t\t\tif (this.decodeMode !== DecodingMode.Strict) {\n\t\t\t\t\tthis.result = this.treeIndex;\n\t\t\t\t\tthis.consumed += this.excess;\n\t\t\t\t\tthis.excess = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t}\n\t/**\n\t* Emit a named entity that was not terminated with a semicolon.\n\t*\n\t* @returns The number of characters consumed.\n\t*/\n\temitNotTerminatedNamedEntity() {\n\t\tvar _a$1;\n\t\tconst { result, decodeTree } = this;\n\t\tconst valueLength = (decodeTree[result] & BinTrieFlags.VALUE_LENGTH) >> 14;\n\t\tthis.emitNamedEntityData(result, valueLength, this.consumed);\n\t\t(_a$1 = this.errors) === null || _a$1 === void 0 || _a$1.missingSemicolonAfterCharacterReference();\n\t\treturn this.consumed;\n\t}\n\t/**\n\t* Emit a named entity.\n\t*\n\t* @param result The index of the entity in the decode tree.\n\t* @param valueLength The number of bytes in the entity.\n\t* @param consumed The number of characters consumed.\n\t*\n\t* @returns The number of characters consumed.\n\t*/\n\temitNamedEntityData(result, valueLength, consumed) {\n\t\tconst { decodeTree } = this;\n\t\tthis.emitCodePoint(valueLength === 1 ? decodeTree[result] & ~BinTrieFlags.VALUE_LENGTH : decodeTree[result + 1], consumed);\n\t\tif (valueLength === 3) this.emitCodePoint(decodeTree[result + 2], consumed);\n\t\treturn consumed;\n\t}\n\t/**\n\t* Signal to the parser that the end of the input was reached.\n\t*\n\t* Remaining data will be emitted and relevant errors will be produced.\n\t*\n\t* @returns The number of characters consumed.\n\t*/\n\tend() {\n\t\tvar _a$1;\n\t\tswitch (this.state) {\n\t\t\tcase EntityDecoderState.NamedEntity: return this.result !== 0 && (this.decodeMode !== DecodingMode.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0;\n\t\t\tcase EntityDecoderState.NumericDecimal: return this.emitNumericEntity(0, 2);\n\t\t\tcase EntityDecoderState.NumericHex: return this.emitNumericEntity(0, 3);\n\t\t\tcase EntityDecoderState.NumericStart:\n\t\t\t\t(_a$1 = this.errors) === null || _a$1 === void 0 || _a$1.absenceOfDigitsInNumericCharacterReference(this.consumed);\n\t\t\t\treturn 0;\n\t\t\tcase EntityDecoderState.EntityStart: return 0;\n\t\t}\n\t}\n};\n/**\n* Determines the branch of the current node that is taken given the current\n* character. This function is used to traverse the trie.\n*\n* @param decodeTree The trie.\n* @param current The current node.\n* @param nodeIdx The index right after the current node and its value.\n* @param char The current character.\n* @returns The index of the next node, or -1 if no branch is taken.\n*/\nfunction determineBranch(decodeTree, current, nodeIndex, char) {\n\tconst branchCount = (current & BinTrieFlags.BRANCH_LENGTH) >> 7;\n\tconst jumpOffset = current & BinTrieFlags.JUMP_TABLE;\n\tif (branchCount === 0) return jumpOffset !== 0 && char === jumpOffset ? nodeIndex : -1;\n\tif (jumpOffset) {\n\t\tconst value = char - jumpOffset;\n\t\treturn value < 0 || value >= branchCount ? -1 : decodeTree[nodeIndex + value] - 1;\n\t}\n\tlet lo = nodeIndex;\n\tlet hi = lo + branchCount - 1;\n\twhile (lo <= hi) {\n\t\tconst mid = lo + hi >>> 1;\n\t\tconst midValue = decodeTree[mid];\n\t\tif (midValue < char) lo = mid + 1;\n\t\telse if (midValue > char) hi = mid - 1;\n\t\telse return decodeTree[mid + branchCount];\n\t}\n\treturn -1;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/html.js\n/** All valid namespaces in HTML. */\nvar NS;\n(function(NS$1) {\n\tNS$1[\"HTML\"] = \"http://www.w3.org/1999/xhtml\";\n\tNS$1[\"MATHML\"] = \"http://www.w3.org/1998/Math/MathML\";\n\tNS$1[\"SVG\"] = \"http://www.w3.org/2000/svg\";\n\tNS$1[\"XLINK\"] = \"http://www.w3.org/1999/xlink\";\n\tNS$1[\"XML\"] = \"http://www.w3.org/XML/1998/namespace\";\n\tNS$1[\"XMLNS\"] = \"http://www.w3.org/2000/xmlns/\";\n})(NS || (NS = {}));\nvar ATTRS;\n(function(ATTRS$1) {\n\tATTRS$1[\"TYPE\"] = \"type\";\n\tATTRS$1[\"ACTION\"] = \"action\";\n\tATTRS$1[\"ENCODING\"] = \"encoding\";\n\tATTRS$1[\"PROMPT\"] = \"prompt\";\n\tATTRS$1[\"NAME\"] = \"name\";\n\tATTRS$1[\"COLOR\"] = \"color\";\n\tATTRS$1[\"FACE\"] = \"face\";\n\tATTRS$1[\"SIZE\"] = \"size\";\n})(ATTRS || (ATTRS = {}));\n/**\n* The mode of the document.\n*\n* @see {@link https://dom.spec.whatwg.org/#concept-document-limited-quirks}\n*/\nvar DOCUMENT_MODE;\n(function(DOCUMENT_MODE$1) {\n\tDOCUMENT_MODE$1[\"NO_QUIRKS\"] = \"no-quirks\";\n\tDOCUMENT_MODE$1[\"QUIRKS\"] = \"quirks\";\n\tDOCUMENT_MODE$1[\"LIMITED_QUIRKS\"] = \"limited-quirks\";\n})(DOCUMENT_MODE || (DOCUMENT_MODE = {}));\nvar TAG_NAMES;\n(function(TAG_NAMES$1) {\n\tTAG_NAMES$1[\"A\"] = \"a\";\n\tTAG_NAMES$1[\"ADDRESS\"] = \"address\";\n\tTAG_NAMES$1[\"ANNOTATION_XML\"] = \"annotation-xml\";\n\tTAG_NAMES$1[\"APPLET\"] = \"applet\";\n\tTAG_NAMES$1[\"AREA\"] = \"area\";\n\tTAG_NAMES$1[\"ARTICLE\"] = \"article\";\n\tTAG_NAMES$1[\"ASIDE\"] = \"aside\";\n\tTAG_NAMES$1[\"B\"] = \"b\";\n\tTAG_NAMES$1[\"BASE\"] = \"base\";\n\tTAG_NAMES$1[\"BASEFONT\"] = \"basefont\";\n\tTAG_NAMES$1[\"BGSOUND\"] = \"bgsound\";\n\tTAG_NAMES$1[\"BIG\"] = \"big\";\n\tTAG_NAMES$1[\"BLOCKQUOTE\"] = \"blockquote\";\n\tTAG_NAMES$1[\"BODY\"] = \"body\";\n\tTAG_NAMES$1[\"BR\"] = \"br\";\n\tTAG_NAMES$1[\"BUTTON\"] = \"button\";\n\tTAG_NAMES$1[\"CAPTION\"] = \"caption\";\n\tTAG_NAMES$1[\"CENTER\"] = \"center\";\n\tTAG_NAMES$1[\"CODE\"] = \"code\";\n\tTAG_NAMES$1[\"COL\"] = \"col\";\n\tTAG_NAMES$1[\"COLGROUP\"] = \"colgroup\";\n\tTAG_NAMES$1[\"DD\"] = \"dd\";\n\tTAG_NAMES$1[\"DESC\"] = \"desc\";\n\tTAG_NAMES$1[\"DETAILS\"] = \"details\";\n\tTAG_NAMES$1[\"DIALOG\"] = \"dialog\";\n\tTAG_NAMES$1[\"DIR\"] = \"dir\";\n\tTAG_NAMES$1[\"DIV\"] = \"div\";\n\tTAG_NAMES$1[\"DL\"] = \"dl\";\n\tTAG_NAMES$1[\"DT\"] = \"dt\";\n\tTAG_NAMES$1[\"EM\"] = \"em\";\n\tTAG_NAMES$1[\"EMBED\"] = \"embed\";\n\tTAG_NAMES$1[\"FIELDSET\"] = \"fieldset\";\n\tTAG_NAMES$1[\"FIGCAPTION\"] = \"figcaption\";\n\tTAG_NAMES$1[\"FIGURE\"] = \"figure\";\n\tTAG_NAMES$1[\"FONT\"] = \"font\";\n\tTAG_NAMES$1[\"FOOTER\"] = \"footer\";\n\tTAG_NAMES$1[\"FOREIGN_OBJECT\"] = \"foreignObject\";\n\tTAG_NAMES$1[\"FORM\"] = \"form\";\n\tTAG_NAMES$1[\"FRAME\"] = \"frame\";\n\tTAG_NAMES$1[\"FRAMESET\"] = \"frameset\";\n\tTAG_NAMES$1[\"H1\"] = \"h1\";\n\tTAG_NAMES$1[\"H2\"] = \"h2\";\n\tTAG_NAMES$1[\"H3\"] = \"h3\";\n\tTAG_NAMES$1[\"H4\"] = \"h4\";\n\tTAG_NAMES$1[\"H5\"] = \"h5\";\n\tTAG_NAMES$1[\"H6\"] = \"h6\";\n\tTAG_NAMES$1[\"HEAD\"] = \"head\";\n\tTAG_NAMES$1[\"HEADER\"] = \"header\";\n\tTAG_NAMES$1[\"HGROUP\"] = \"hgroup\";\n\tTAG_NAMES$1[\"HR\"] = \"hr\";\n\tTAG_NAMES$1[\"HTML\"] = \"html\";\n\tTAG_NAMES$1[\"I\"] = \"i\";\n\tTAG_NAMES$1[\"IMG\"] = \"img\";\n\tTAG_NAMES$1[\"IMAGE\"] = \"image\";\n\tTAG_NAMES$1[\"INPUT\"] = \"input\";\n\tTAG_NAMES$1[\"IFRAME\"] = \"iframe\";\n\tTAG_NAMES$1[\"KEYGEN\"] = \"keygen\";\n\tTAG_NAMES$1[\"LABEL\"] = \"label\";\n\tTAG_NAMES$1[\"LI\"] = \"li\";\n\tTAG_NAMES$1[\"LINK\"] = \"link\";\n\tTAG_NAMES$1[\"LISTING\"] = \"listing\";\n\tTAG_NAMES$1[\"MAIN\"] = \"main\";\n\tTAG_NAMES$1[\"MALIGNMARK\"] = \"malignmark\";\n\tTAG_NAMES$1[\"MARQUEE\"] = \"marquee\";\n\tTAG_NAMES$1[\"MATH\"] = \"math\";\n\tTAG_NAMES$1[\"MENU\"] = \"menu\";\n\tTAG_NAMES$1[\"META\"] = \"meta\";\n\tTAG_NAMES$1[\"MGLYPH\"] = \"mglyph\";\n\tTAG_NAMES$1[\"MI\"] = \"mi\";\n\tTAG_NAMES$1[\"MO\"] = \"mo\";\n\tTAG_NAMES$1[\"MN\"] = \"mn\";\n\tTAG_NAMES$1[\"MS\"] = \"ms\";\n\tTAG_NAMES$1[\"MTEXT\"] = \"mtext\";\n\tTAG_NAMES$1[\"NAV\"] = \"nav\";\n\tTAG_NAMES$1[\"NOBR\"] = \"nobr\";\n\tTAG_NAMES$1[\"NOFRAMES\"] = \"noframes\";\n\tTAG_NAMES$1[\"NOEMBED\"] = \"noembed\";\n\tTAG_NAMES$1[\"NOSCRIPT\"] = \"noscript\";\n\tTAG_NAMES$1[\"OBJECT\"] = \"object\";\n\tTAG_NAMES$1[\"OL\"] = \"ol\";\n\tTAG_NAMES$1[\"OPTGROUP\"] = \"optgroup\";\n\tTAG_NAMES$1[\"OPTION\"] = \"option\";\n\tTAG_NAMES$1[\"P\"] = \"p\";\n\tTAG_NAMES$1[\"PARAM\"] = \"param\";\n\tTAG_NAMES$1[\"PLAINTEXT\"] = \"plaintext\";\n\tTAG_NAMES$1[\"PRE\"] = \"pre\";\n\tTAG_NAMES$1[\"RB\"] = \"rb\";\n\tTAG_NAMES$1[\"RP\"] = \"rp\";\n\tTAG_NAMES$1[\"RT\"] = \"rt\";\n\tTAG_NAMES$1[\"RTC\"] = \"rtc\";\n\tTAG_NAMES$1[\"RUBY\"] = \"ruby\";\n\tTAG_NAMES$1[\"S\"] = \"s\";\n\tTAG_NAMES$1[\"SCRIPT\"] = \"script\";\n\tTAG_NAMES$1[\"SEARCH\"] = \"search\";\n\tTAG_NAMES$1[\"SECTION\"] = \"section\";\n\tTAG_NAMES$1[\"SELECT\"] = \"select\";\n\tTAG_NAMES$1[\"SOURCE\"] = \"source\";\n\tTAG_NAMES$1[\"SMALL\"] = \"small\";\n\tTAG_NAMES$1[\"SPAN\"] = \"span\";\n\tTAG_NAMES$1[\"STRIKE\"] = \"strike\";\n\tTAG_NAMES$1[\"STRONG\"] = \"strong\";\n\tTAG_NAMES$1[\"STYLE\"] = \"style\";\n\tTAG_NAMES$1[\"SUB\"] = \"sub\";\n\tTAG_NAMES$1[\"SUMMARY\"] = \"summary\";\n\tTAG_NAMES$1[\"SUP\"] = \"sup\";\n\tTAG_NAMES$1[\"TABLE\"] = \"table\";\n\tTAG_NAMES$1[\"TBODY\"] = \"tbody\";\n\tTAG_NAMES$1[\"TEMPLATE\"] = \"template\";\n\tTAG_NAMES$1[\"TEXTAREA\"] = \"textarea\";\n\tTAG_NAMES$1[\"TFOOT\"] = \"tfoot\";\n\tTAG_NAMES$1[\"TD\"] = \"td\";\n\tTAG_NAMES$1[\"TH\"] = \"th\";\n\tTAG_NAMES$1[\"THEAD\"] = \"thead\";\n\tTAG_NAMES$1[\"TITLE\"] = \"title\";\n\tTAG_NAMES$1[\"TR\"] = \"tr\";\n\tTAG_NAMES$1[\"TRACK\"] = \"track\";\n\tTAG_NAMES$1[\"TT\"] = \"tt\";\n\tTAG_NAMES$1[\"U\"] = \"u\";\n\tTAG_NAMES$1[\"UL\"] = \"ul\";\n\tTAG_NAMES$1[\"SVG\"] = \"svg\";\n\tTAG_NAMES$1[\"VAR\"] = \"var\";\n\tTAG_NAMES$1[\"WBR\"] = \"wbr\";\n\tTAG_NAMES$1[\"XMP\"] = \"xmp\";\n})(TAG_NAMES || (TAG_NAMES = {}));\n/**\n* Tag IDs are numeric IDs for known tag names.\n*\n* We use tag IDs to improve the performance of tag name comparisons.\n*/\nvar TAG_ID;\n(function(TAG_ID$1) {\n\tTAG_ID$1[TAG_ID$1[\"UNKNOWN\"] = 0] = \"UNKNOWN\";\n\tTAG_ID$1[TAG_ID$1[\"A\"] = 1] = \"A\";\n\tTAG_ID$1[TAG_ID$1[\"ADDRESS\"] = 2] = \"ADDRESS\";\n\tTAG_ID$1[TAG_ID$1[\"ANNOTATION_XML\"] = 3] = \"ANNOTATION_XML\";\n\tTAG_ID$1[TAG_ID$1[\"APPLET\"] = 4] = \"APPLET\";\n\tTAG_ID$1[TAG_ID$1[\"AREA\"] = 5] = \"AREA\";\n\tTAG_ID$1[TAG_ID$1[\"ARTICLE\"] = 6] = \"ARTICLE\";\n\tTAG_ID$1[TAG_ID$1[\"ASIDE\"] = 7] = \"ASIDE\";\n\tTAG_ID$1[TAG_ID$1[\"B\"] = 8] = \"B\";\n\tTAG_ID$1[TAG_ID$1[\"BASE\"] = 9] = \"BASE\";\n\tTAG_ID$1[TAG_ID$1[\"BASEFONT\"] = 10] = \"BASEFONT\";\n\tTAG_ID$1[TAG_ID$1[\"BGSOUND\"] = 11] = \"BGSOUND\";\n\tTAG_ID$1[TAG_ID$1[\"BIG\"] = 12] = \"BIG\";\n\tTAG_ID$1[TAG_ID$1[\"BLOCKQUOTE\"] = 13] = \"BLOCKQUOTE\";\n\tTAG_ID$1[TAG_ID$1[\"BODY\"] = 14] = \"BODY\";\n\tTAG_ID$1[TAG_ID$1[\"BR\"] = 15] = \"BR\";\n\tTAG_ID$1[TAG_ID$1[\"BUTTON\"] = 16] = \"BUTTON\";\n\tTAG_ID$1[TAG_ID$1[\"CAPTION\"] = 17] = \"CAPTION\";\n\tTAG_ID$1[TAG_ID$1[\"CENTER\"] = 18] = \"CENTER\";\n\tTAG_ID$1[TAG_ID$1[\"CODE\"] = 19] = \"CODE\";\n\tTAG_ID$1[TAG_ID$1[\"COL\"] = 20] = \"COL\";\n\tTAG_ID$1[TAG_ID$1[\"COLGROUP\"] = 21] = \"COLGROUP\";\n\tTAG_ID$1[TAG_ID$1[\"DD\"] = 22] = \"DD\";\n\tTAG_ID$1[TAG_ID$1[\"DESC\"] = 23] = \"DESC\";\n\tTAG_ID$1[TAG_ID$1[\"DETAILS\"] = 24] = \"DETAILS\";\n\tTAG_ID$1[TAG_ID$1[\"DIALOG\"] = 25] = \"DIALOG\";\n\tTAG_ID$1[TAG_ID$1[\"DIR\"] = 26] = \"DIR\";\n\tTAG_ID$1[TAG_ID$1[\"DIV\"] = 27] = \"DIV\";\n\tTAG_ID$1[TAG_ID$1[\"DL\"] = 28] = \"DL\";\n\tTAG_ID$1[TAG_ID$1[\"DT\"] = 29] = \"DT\";\n\tTAG_ID$1[TAG_ID$1[\"EM\"] = 30] = \"EM\";\n\tTAG_ID$1[TAG_ID$1[\"EMBED\"] = 31] = \"EMBED\";\n\tTAG_ID$1[TAG_ID$1[\"FIELDSET\"] = 32] = \"FIELDSET\";\n\tTAG_ID$1[TAG_ID$1[\"FIGCAPTION\"] = 33] = \"FIGCAPTION\";\n\tTAG_ID$1[TAG_ID$1[\"FIGURE\"] = 34] = \"FIGURE\";\n\tTAG_ID$1[TAG_ID$1[\"FONT\"] = 35] = \"FONT\";\n\tTAG_ID$1[TAG_ID$1[\"FOOTER\"] = 36] = \"FOOTER\";\n\tTAG_ID$1[TAG_ID$1[\"FOREIGN_OBJECT\"] = 37] = \"FOREIGN_OBJECT\";\n\tTAG_ID$1[TAG_ID$1[\"FORM\"] = 38] = \"FORM\";\n\tTAG_ID$1[TAG_ID$1[\"FRAME\"] = 39] = \"FRAME\";\n\tTAG_ID$1[TAG_ID$1[\"FRAMESET\"] = 40] = \"FRAMESET\";\n\tTAG_ID$1[TAG_ID$1[\"H1\"] = 41] = \"H1\";\n\tTAG_ID$1[TAG_ID$1[\"H2\"] = 42] = \"H2\";\n\tTAG_ID$1[TAG_ID$1[\"H3\"] = 43] = \"H3\";\n\tTAG_ID$1[TAG_ID$1[\"H4\"] = 44] = \"H4\";\n\tTAG_ID$1[TAG_ID$1[\"H5\"] = 45] = \"H5\";\n\tTAG_ID$1[TAG_ID$1[\"H6\"] = 46] = \"H6\";\n\tTAG_ID$1[TAG_ID$1[\"HEAD\"] = 47] = \"HEAD\";\n\tTAG_ID$1[TAG_ID$1[\"HEADER\"] = 48] = \"HEADER\";\n\tTAG_ID$1[TAG_ID$1[\"HGROUP\"] = 49] = \"HGROUP\";\n\tTAG_ID$1[TAG_ID$1[\"HR\"] = 50] = \"HR\";\n\tTAG_ID$1[TAG_ID$1[\"HTML\"] = 51] = \"HTML\";\n\tTAG_ID$1[TAG_ID$1[\"I\"] = 52] = \"I\";\n\tTAG_ID$1[TAG_ID$1[\"IMG\"] = 53] = \"IMG\";\n\tTAG_ID$1[TAG_ID$1[\"IMAGE\"] = 54] = \"IMAGE\";\n\tTAG_ID$1[TAG_ID$1[\"INPUT\"] = 55] = \"INPUT\";\n\tTAG_ID$1[TAG_ID$1[\"IFRAME\"] = 56] = \"IFRAME\";\n\tTAG_ID$1[TAG_ID$1[\"KEYGEN\"] = 57] = \"KEYGEN\";\n\tTAG_ID$1[TAG_ID$1[\"LABEL\"] = 58] = \"LABEL\";\n\tTAG_ID$1[TAG_ID$1[\"LI\"] = 59] = \"LI\";\n\tTAG_ID$1[TAG_ID$1[\"LINK\"] = 60] = \"LINK\";\n\tTAG_ID$1[TAG_ID$1[\"LISTING\"] = 61] = \"LISTING\";\n\tTAG_ID$1[TAG_ID$1[\"MAIN\"] = 62] = \"MAIN\";\n\tTAG_ID$1[TAG_ID$1[\"MALIGNMARK\"] = 63] = \"MALIGNMARK\";\n\tTAG_ID$1[TAG_ID$1[\"MARQUEE\"] = 64] = \"MARQUEE\";\n\tTAG_ID$1[TAG_ID$1[\"MATH\"] = 65] = \"MATH\";\n\tTAG_ID$1[TAG_ID$1[\"MENU\"] = 66] = \"MENU\";\n\tTAG_ID$1[TAG_ID$1[\"META\"] = 67] = \"META\";\n\tTAG_ID$1[TAG_ID$1[\"MGLYPH\"] = 68] = \"MGLYPH\";\n\tTAG_ID$1[TAG_ID$1[\"MI\"] = 69] = \"MI\";\n\tTAG_ID$1[TAG_ID$1[\"MO\"] = 70] = \"MO\";\n\tTAG_ID$1[TAG_ID$1[\"MN\"] = 71] = \"MN\";\n\tTAG_ID$1[TAG_ID$1[\"MS\"] = 72] = \"MS\";\n\tTAG_ID$1[TAG_ID$1[\"MTEXT\"] = 73] = \"MTEXT\";\n\tTAG_ID$1[TAG_ID$1[\"NAV\"] = 74] = \"NAV\";\n\tTAG_ID$1[TAG_ID$1[\"NOBR\"] = 75] = \"NOBR\";\n\tTAG_ID$1[TAG_ID$1[\"NOFRAMES\"] = 76] = \"NOFRAMES\";\n\tTAG_ID$1[TAG_ID$1[\"NOEMBED\"] = 77] = \"NOEMBED\";\n\tTAG_ID$1[TAG_ID$1[\"NOSCRIPT\"] = 78] = \"NOSCRIPT\";\n\tTAG_ID$1[TAG_ID$1[\"OBJECT\"] = 79] = \"OBJECT\";\n\tTAG_ID$1[TAG_ID$1[\"OL\"] = 80] = \"OL\";\n\tTAG_ID$1[TAG_ID$1[\"OPTGROUP\"] = 81] = \"OPTGROUP\";\n\tTAG_ID$1[TAG_ID$1[\"OPTION\"] = 82] = \"OPTION\";\n\tTAG_ID$1[TAG_ID$1[\"P\"] = 83] = \"P\";\n\tTAG_ID$1[TAG_ID$1[\"PARAM\"] = 84] = \"PARAM\";\n\tTAG_ID$1[TAG_ID$1[\"PLAINTEXT\"] = 85] = \"PLAINTEXT\";\n\tTAG_ID$1[TAG_ID$1[\"PRE\"] = 86] = \"PRE\";\n\tTAG_ID$1[TAG_ID$1[\"RB\"] = 87] = \"RB\";\n\tTAG_ID$1[TAG_ID$1[\"RP\"] = 88] = \"RP\";\n\tTAG_ID$1[TAG_ID$1[\"RT\"] = 89] = \"RT\";\n\tTAG_ID$1[TAG_ID$1[\"RTC\"] = 90] = \"RTC\";\n\tTAG_ID$1[TAG_ID$1[\"RUBY\"] = 91] = \"RUBY\";\n\tTAG_ID$1[TAG_ID$1[\"S\"] = 92] = \"S\";\n\tTAG_ID$1[TAG_ID$1[\"SCRIPT\"] = 93] = \"SCRIPT\";\n\tTAG_ID$1[TAG_ID$1[\"SEARCH\"] = 94] = \"SEARCH\";\n\tTAG_ID$1[TAG_ID$1[\"SECTION\"] = 95] = \"SECTION\";\n\tTAG_ID$1[TAG_ID$1[\"SELECT\"] = 96] = \"SELECT\";\n\tTAG_ID$1[TAG_ID$1[\"SOURCE\"] = 97] = \"SOURCE\";\n\tTAG_ID$1[TAG_ID$1[\"SMALL\"] = 98] = \"SMALL\";\n\tTAG_ID$1[TAG_ID$1[\"SPAN\"] = 99] = \"SPAN\";\n\tTAG_ID$1[TAG_ID$1[\"STRIKE\"] = 100] = \"STRIKE\";\n\tTAG_ID$1[TAG_ID$1[\"STRONG\"] = 101] = \"STRONG\";\n\tTAG_ID$1[TAG_ID$1[\"STYLE\"] = 102] = \"STYLE\";\n\tTAG_ID$1[TAG_ID$1[\"SUB\"] = 103] = \"SUB\";\n\tTAG_ID$1[TAG_ID$1[\"SUMMARY\"] = 104] = \"SUMMARY\";\n\tTAG_ID$1[TAG_ID$1[\"SUP\"] = 105] = \"SUP\";\n\tTAG_ID$1[TAG_ID$1[\"TABLE\"] = 106] = \"TABLE\";\n\tTAG_ID$1[TAG_ID$1[\"TBODY\"] = 107] = \"TBODY\";\n\tTAG_ID$1[TAG_ID$1[\"TEMPLATE\"] = 108] = \"TEMPLATE\";\n\tTAG_ID$1[TAG_ID$1[\"TEXTAREA\"] = 109] = \"TEXTAREA\";\n\tTAG_ID$1[TAG_ID$1[\"TFOOT\"] = 110] = \"TFOOT\";\n\tTAG_ID$1[TAG_ID$1[\"TD\"] = 111] = \"TD\";\n\tTAG_ID$1[TAG_ID$1[\"TH\"] = 112] = \"TH\";\n\tTAG_ID$1[TAG_ID$1[\"THEAD\"] = 113] = \"THEAD\";\n\tTAG_ID$1[TAG_ID$1[\"TITLE\"] = 114] = \"TITLE\";\n\tTAG_ID$1[TAG_ID$1[\"TR\"] = 115] = \"TR\";\n\tTAG_ID$1[TAG_ID$1[\"TRACK\"] = 116] = \"TRACK\";\n\tTAG_ID$1[TAG_ID$1[\"TT\"] = 117] = \"TT\";\n\tTAG_ID$1[TAG_ID$1[\"U\"] = 118] = \"U\";\n\tTAG_ID$1[TAG_ID$1[\"UL\"] = 119] = \"UL\";\n\tTAG_ID$1[TAG_ID$1[\"SVG\"] = 120] = \"SVG\";\n\tTAG_ID$1[TAG_ID$1[\"VAR\"] = 121] = \"VAR\";\n\tTAG_ID$1[TAG_ID$1[\"WBR\"] = 122] = \"WBR\";\n\tTAG_ID$1[TAG_ID$1[\"XMP\"] = 123] = \"XMP\";\n})(TAG_ID || (TAG_ID = {}));\nconst TAG_NAME_TO_ID = new Map([\n\t[TAG_NAMES.A, TAG_ID.A],\n\t[TAG_NAMES.ADDRESS, TAG_ID.ADDRESS],\n\t[TAG_NAMES.ANNOTATION_XML, TAG_ID.ANNOTATION_XML],\n\t[TAG_NAMES.APPLET, TAG_ID.APPLET],\n\t[TAG_NAMES.AREA, TAG_ID.AREA],\n\t[TAG_NAMES.ARTICLE, TAG_ID.ARTICLE],\n\t[TAG_NAMES.ASIDE, TAG_ID.ASIDE],\n\t[TAG_NAMES.B, TAG_ID.B],\n\t[TAG_NAMES.BASE, TAG_ID.BASE],\n\t[TAG_NAMES.BASEFONT, TAG_ID.BASEFONT],\n\t[TAG_NAMES.BGSOUND, TAG_ID.BGSOUND],\n\t[TAG_NAMES.BIG, TAG_ID.BIG],\n\t[TAG_NAMES.BLOCKQUOTE, TAG_ID.BLOCKQUOTE],\n\t[TAG_NAMES.BODY, TAG_ID.BODY],\n\t[TAG_NAMES.BR, TAG_ID.BR],\n\t[TAG_NAMES.BUTTON, TAG_ID.BUTTON],\n\t[TAG_NAMES.CAPTION, TAG_ID.CAPTION],\n\t[TAG_NAMES.CENTER, TAG_ID.CENTER],\n\t[TAG_NAMES.CODE, TAG_ID.CODE],\n\t[TAG_NAMES.COL, TAG_ID.COL],\n\t[TAG_NAMES.COLGROUP, TAG_ID.COLGROUP],\n\t[TAG_NAMES.DD, TAG_ID.DD],\n\t[TAG_NAMES.DESC, TAG_ID.DESC],\n\t[TAG_NAMES.DETAILS, TAG_ID.DETAILS],\n\t[TAG_NAMES.DIALOG, TAG_ID.DIALOG],\n\t[TAG_NAMES.DIR, TAG_ID.DIR],\n\t[TAG_NAMES.DIV, TAG_ID.DIV],\n\t[TAG_NAMES.DL, TAG_ID.DL],\n\t[TAG_NAMES.DT, TAG_ID.DT],\n\t[TAG_NAMES.EM, TAG_ID.EM],\n\t[TAG_NAMES.EMBED, TAG_ID.EMBED],\n\t[TAG_NAMES.FIELDSET, TAG_ID.FIELDSET],\n\t[TAG_NAMES.FIGCAPTION, TAG_ID.FIGCAPTION],\n\t[TAG_NAMES.FIGURE, TAG_ID.FIGURE],\n\t[TAG_NAMES.FONT, TAG_ID.FONT],\n\t[TAG_NAMES.FOOTER, TAG_ID.FOOTER],\n\t[TAG_NAMES.FOREIGN_OBJECT, TAG_ID.FOREIGN_OBJECT],\n\t[TAG_NAMES.FORM, TAG_ID.FORM],\n\t[TAG_NAMES.FRAME, TAG_ID.FRAME],\n\t[TAG_NAMES.FRAMESET, TAG_ID.FRAMESET],\n\t[TAG_NAMES.H1, TAG_ID.H1],\n\t[TAG_NAMES.H2, TAG_ID.H2],\n\t[TAG_NAMES.H3, TAG_ID.H3],\n\t[TAG_NAMES.H4, TAG_ID.H4],\n\t[TAG_NAMES.H5, TAG_ID.H5],\n\t[TAG_NAMES.H6, TAG_ID.H6],\n\t[TAG_NAMES.HEAD, TAG_ID.HEAD],\n\t[TAG_NAMES.HEADER, TAG_ID.HEADER],\n\t[TAG_NAMES.HGROUP, TAG_ID.HGROUP],\n\t[TAG_NAMES.HR, TAG_ID.HR],\n\t[TAG_NAMES.HTML, TAG_ID.HTML],\n\t[TAG_NAMES.I, TAG_ID.I],\n\t[TAG_NAMES.IMG, TAG_ID.IMG],\n\t[TAG_NAMES.IMAGE, TAG_ID.IMAGE],\n\t[TAG_NAMES.INPUT, TAG_ID.INPUT],\n\t[TAG_NAMES.IFRAME, TAG_ID.IFRAME],\n\t[TAG_NAMES.KEYGEN, TAG_ID.KEYGEN],\n\t[TAG_NAMES.LABEL, TAG_ID.LABEL],\n\t[TAG_NAMES.LI, TAG_ID.LI],\n\t[TAG_NAMES.LINK, TAG_ID.LINK],\n\t[TAG_NAMES.LISTING, TAG_ID.LISTING],\n\t[TAG_NAMES.MAIN, TAG_ID.MAIN],\n\t[TAG_NAMES.MALIGNMARK, TAG_ID.MALIGNMARK],\n\t[TAG_NAMES.MARQUEE, TAG_ID.MARQUEE],\n\t[TAG_NAMES.MATH, TAG_ID.MATH],\n\t[TAG_NAMES.MENU, TAG_ID.MENU],\n\t[TAG_NAMES.META, TAG_ID.META],\n\t[TAG_NAMES.MGLYPH, TAG_ID.MGLYPH],\n\t[TAG_NAMES.MI, TAG_ID.MI],\n\t[TAG_NAMES.MO, TAG_ID.MO],\n\t[TAG_NAMES.MN, TAG_ID.MN],\n\t[TAG_NAMES.MS, TAG_ID.MS],\n\t[TAG_NAMES.MTEXT, TAG_ID.MTEXT],\n\t[TAG_NAMES.NAV, TAG_ID.NAV],\n\t[TAG_NAMES.NOBR, TAG_ID.NOBR],\n\t[TAG_NAMES.NOFRAMES, TAG_ID.NOFRAMES],\n\t[TAG_NAMES.NOEMBED, TAG_ID.NOEMBED],\n\t[TAG_NAMES.NOSCRIPT, TAG_ID.NOSCRIPT],\n\t[TAG_NAMES.OBJECT, TAG_ID.OBJECT],\n\t[TAG_NAMES.OL, TAG_ID.OL],\n\t[TAG_NAMES.OPTGROUP, TAG_ID.OPTGROUP],\n\t[TAG_NAMES.OPTION, TAG_ID.OPTION],\n\t[TAG_NAMES.P, TAG_ID.P],\n\t[TAG_NAMES.PARAM, TAG_ID.PARAM],\n\t[TAG_NAMES.PLAINTEXT, TAG_ID.PLAINTEXT],\n\t[TAG_NAMES.PRE, TAG_ID.PRE],\n\t[TAG_NAMES.RB, TAG_ID.RB],\n\t[TAG_NAMES.RP, TAG_ID.RP],\n\t[TAG_NAMES.RT, TAG_ID.RT],\n\t[TAG_NAMES.RTC, TAG_ID.RTC],\n\t[TAG_NAMES.RUBY, TAG_ID.RUBY],\n\t[TAG_NAMES.S, TAG_ID.S],\n\t[TAG_NAMES.SCRIPT, TAG_ID.SCRIPT],\n\t[TAG_NAMES.SEARCH, TAG_ID.SEARCH],\n\t[TAG_NAMES.SECTION, TAG_ID.SECTION],\n\t[TAG_NAMES.SELECT, TAG_ID.SELECT],\n\t[TAG_NAMES.SOURCE, TAG_ID.SOURCE],\n\t[TAG_NAMES.SMALL, TAG_ID.SMALL],\n\t[TAG_NAMES.SPAN, TAG_ID.SPAN],\n\t[TAG_NAMES.STRIKE, TAG_ID.STRIKE],\n\t[TAG_NAMES.STRONG, TAG_ID.STRONG],\n\t[TAG_NAMES.STYLE, TAG_ID.STYLE],\n\t[TAG_NAMES.SUB, TAG_ID.SUB],\n\t[TAG_NAMES.SUMMARY, TAG_ID.SUMMARY],\n\t[TAG_NAMES.SUP, TAG_ID.SUP],\n\t[TAG_NAMES.TABLE, TAG_ID.TABLE],\n\t[TAG_NAMES.TBODY, TAG_ID.TBODY],\n\t[TAG_NAMES.TEMPLATE, TAG_ID.TEMPLATE],\n\t[TAG_NAMES.TEXTAREA, TAG_ID.TEXTAREA],\n\t[TAG_NAMES.TFOOT, TAG_ID.TFOOT],\n\t[TAG_NAMES.TD, TAG_ID.TD],\n\t[TAG_NAMES.TH, TAG_ID.TH],\n\t[TAG_NAMES.THEAD, TAG_ID.THEAD],\n\t[TAG_NAMES.TITLE, TAG_ID.TITLE],\n\t[TAG_NAMES.TR, TAG_ID.TR],\n\t[TAG_NAMES.TRACK, TAG_ID.TRACK],\n\t[TAG_NAMES.TT, TAG_ID.TT],\n\t[TAG_NAMES.U, TAG_ID.U],\n\t[TAG_NAMES.UL, TAG_ID.UL],\n\t[TAG_NAMES.SVG, TAG_ID.SVG],\n\t[TAG_NAMES.VAR, TAG_ID.VAR],\n\t[TAG_NAMES.WBR, TAG_ID.WBR],\n\t[TAG_NAMES.XMP, TAG_ID.XMP]\n]);\nfunction getTagID(tagName) {\n\tvar _a$1;\n\treturn (_a$1 = TAG_NAME_TO_ID.get(tagName)) !== null && _a$1 !== void 0 ? _a$1 : TAG_ID.UNKNOWN;\n}\nconst $ = TAG_ID;\nconst SPECIAL_ELEMENTS = {\n\t[NS.HTML]: new Set([\n\t\t$.ADDRESS,\n\t\t$.APPLET,\n\t\t$.AREA,\n\t\t$.ARTICLE,\n\t\t$.ASIDE,\n\t\t$.BASE,\n\t\t$.BASEFONT,\n\t\t$.BGSOUND,\n\t\t$.BLOCKQUOTE,\n\t\t$.BODY,\n\t\t$.BR,\n\t\t$.BUTTON,\n\t\t$.CAPTION,\n\t\t$.CENTER,\n\t\t$.COL,\n\t\t$.COLGROUP,\n\t\t$.DD,\n\t\t$.DETAILS,\n\t\t$.DIR,\n\t\t$.DIV,\n\t\t$.DL,\n\t\t$.DT,\n\t\t$.EMBED,\n\t\t$.FIELDSET,\n\t\t$.FIGCAPTION,\n\t\t$.FIGURE,\n\t\t$.FOOTER,\n\t\t$.FORM,\n\t\t$.FRAME,\n\t\t$.FRAMESET,\n\t\t$.H1,\n\t\t$.H2,\n\t\t$.H3,\n\t\t$.H4,\n\t\t$.H5,\n\t\t$.H6,\n\t\t$.HEAD,\n\t\t$.HEADER,\n\t\t$.HGROUP,\n\t\t$.HR,\n\t\t$.HTML,\n\t\t$.IFRAME,\n\t\t$.IMG,\n\t\t$.INPUT,\n\t\t$.LI,\n\t\t$.LINK,\n\t\t$.LISTING,\n\t\t$.MAIN,\n\t\t$.MARQUEE,\n\t\t$.MENU,\n\t\t$.META,\n\t\t$.NAV,\n\t\t$.NOEMBED,\n\t\t$.NOFRAMES,\n\t\t$.NOSCRIPT,\n\t\t$.OBJECT,\n\t\t$.OL,\n\t\t$.P,\n\t\t$.PARAM,\n\t\t$.PLAINTEXT,\n\t\t$.PRE,\n\t\t$.SCRIPT,\n\t\t$.SECTION,\n\t\t$.SELECT,\n\t\t$.SOURCE,\n\t\t$.STYLE,\n\t\t$.SUMMARY,\n\t\t$.TABLE,\n\t\t$.TBODY,\n\t\t$.TD,\n\t\t$.TEMPLATE,\n\t\t$.TEXTAREA,\n\t\t$.TFOOT,\n\t\t$.TH,\n\t\t$.THEAD,\n\t\t$.TITLE,\n\t\t$.TR,\n\t\t$.TRACK,\n\t\t$.UL,\n\t\t$.WBR,\n\t\t$.XMP\n\t]),\n\t[NS.MATHML]: new Set([\n\t\t$.MI,\n\t\t$.MO,\n\t\t$.MN,\n\t\t$.MS,\n\t\t$.MTEXT,\n\t\t$.ANNOTATION_XML\n\t]),\n\t[NS.SVG]: new Set([\n\t\t$.TITLE,\n\t\t$.FOREIGN_OBJECT,\n\t\t$.DESC\n\t]),\n\t[NS.XLINK]: /* @__PURE__ */ new Set(),\n\t[NS.XML]: /* @__PURE__ */ new Set(),\n\t[NS.XMLNS]: /* @__PURE__ */ new Set()\n};\nconst NUMBERED_HEADERS = new Set([\n\t$.H1,\n\t$.H2,\n\t$.H3,\n\t$.H4,\n\t$.H5,\n\t$.H6\n]);\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tokenizer/index.js\nvar State;\n(function(State$1) {\n\tState$1[State$1[\"DATA\"] = 0] = \"DATA\";\n\tState$1[State$1[\"RCDATA\"] = 1] = \"RCDATA\";\n\tState$1[State$1[\"RAWTEXT\"] = 2] = \"RAWTEXT\";\n\tState$1[State$1[\"SCRIPT_DATA\"] = 3] = \"SCRIPT_DATA\";\n\tState$1[State$1[\"PLAINTEXT\"] = 4] = \"PLAINTEXT\";\n\tState$1[State$1[\"TAG_OPEN\"] = 5] = \"TAG_OPEN\";\n\tState$1[State$1[\"END_TAG_OPEN\"] = 6] = \"END_TAG_OPEN\";\n\tState$1[State$1[\"TAG_NAME\"] = 7] = \"TAG_NAME\";\n\tState$1[State$1[\"RCDATA_LESS_THAN_SIGN\"] = 8] = \"RCDATA_LESS_THAN_SIGN\";\n\tState$1[State$1[\"RCDATA_END_TAG_OPEN\"] = 9] = \"RCDATA_END_TAG_OPEN\";\n\tState$1[State$1[\"RCDATA_END_TAG_NAME\"] = 10] = \"RCDATA_END_TAG_NAME\";\n\tState$1[State$1[\"RAWTEXT_LESS_THAN_SIGN\"] = 11] = \"RAWTEXT_LESS_THAN_SIGN\";\n\tState$1[State$1[\"RAWTEXT_END_TAG_OPEN\"] = 12] = \"RAWTEXT_END_TAG_OPEN\";\n\tState$1[State$1[\"RAWTEXT_END_TAG_NAME\"] = 13] = \"RAWTEXT_END_TAG_NAME\";\n\tState$1[State$1[\"SCRIPT_DATA_LESS_THAN_SIGN\"] = 14] = \"SCRIPT_DATA_LESS_THAN_SIGN\";\n\tState$1[State$1[\"SCRIPT_DATA_END_TAG_OPEN\"] = 15] = \"SCRIPT_DATA_END_TAG_OPEN\";\n\tState$1[State$1[\"SCRIPT_DATA_END_TAG_NAME\"] = 16] = \"SCRIPT_DATA_END_TAG_NAME\";\n\tState$1[State$1[\"SCRIPT_DATA_ESCAPE_START\"] = 17] = \"SCRIPT_DATA_ESCAPE_START\";\n\tState$1[State$1[\"SCRIPT_DATA_ESCAPE_START_DASH\"] = 18] = \"SCRIPT_DATA_ESCAPE_START_DASH\";\n\tState$1[State$1[\"SCRIPT_DATA_ESCAPED\"] = 19] = \"SCRIPT_DATA_ESCAPED\";\n\tState$1[State$1[\"SCRIPT_DATA_ESCAPED_DASH\"] = 20] = \"SCRIPT_DATA_ESCAPED_DASH\";\n\tState$1[State$1[\"SCRIPT_DATA_ESCAPED_DASH_DASH\"] = 21] = \"SCRIPT_DATA_ESCAPED_DASH_DASH\";\n\tState$1[State$1[\"SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN\"] = 22] = \"SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN\";\n\tState$1[State$1[\"SCRIPT_DATA_ESCAPED_END_TAG_OPEN\"] = 23] = \"SCRIPT_DATA_ESCAPED_END_TAG_OPEN\";\n\tState$1[State$1[\"SCRIPT_DATA_ESCAPED_END_TAG_NAME\"] = 24] = \"SCRIPT_DATA_ESCAPED_END_TAG_NAME\";\n\tState$1[State$1[\"SCRIPT_DATA_DOUBLE_ESCAPE_START\"] = 25] = \"SCRIPT_DATA_DOUBLE_ESCAPE_START\";\n\tState$1[State$1[\"SCRIPT_DATA_DOUBLE_ESCAPED\"] = 26] = \"SCRIPT_DATA_DOUBLE_ESCAPED\";\n\tState$1[State$1[\"SCRIPT_DATA_DOUBLE_ESCAPED_DASH\"] = 27] = \"SCRIPT_DATA_DOUBLE_ESCAPED_DASH\";\n\tState$1[State$1[\"SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH\"] = 28] = \"SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH\";\n\tState$1[State$1[\"SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN\"] = 29] = \"SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN\";\n\tState$1[State$1[\"SCRIPT_DATA_DOUBLE_ESCAPE_END\"] = 30] = \"SCRIPT_DATA_DOUBLE_ESCAPE_END\";\n\tState$1[State$1[\"BEFORE_ATTRIBUTE_NAME\"] = 31] = \"BEFORE_ATTRIBUTE_NAME\";\n\tState$1[State$1[\"ATTRIBUTE_NAME\"] = 32] = \"ATTRIBUTE_NAME\";\n\tState$1[State$1[\"AFTER_ATTRIBUTE_NAME\"] = 33] = \"AFTER_ATTRIBUTE_NAME\";\n\tState$1[State$1[\"BEFORE_ATTRIBUTE_VALUE\"] = 34] = \"BEFORE_ATTRIBUTE_VALUE\";\n\tState$1[State$1[\"ATTRIBUTE_VALUE_DOUBLE_QUOTED\"] = 35] = \"ATTRIBUTE_VALUE_DOUBLE_QUOTED\";\n\tState$1[State$1[\"ATTRIBUTE_VALUE_SINGLE_QUOTED\"] = 36] = \"ATTRIBUTE_VALUE_SINGLE_QUOTED\";\n\tState$1[State$1[\"ATTRIBUTE_VALUE_UNQUOTED\"] = 37] = \"ATTRIBUTE_VALUE_UNQUOTED\";\n\tState$1[State$1[\"AFTER_ATTRIBUTE_VALUE_QUOTED\"] = 38] = \"AFTER_ATTRIBUTE_VALUE_QUOTED\";\n\tState$1[State$1[\"SELF_CLOSING_START_TAG\"] = 39] = \"SELF_CLOSING_START_TAG\";\n\tState$1[State$1[\"BOGUS_COMMENT\"] = 40] = \"BOGUS_COMMENT\";\n\tState$1[State$1[\"MARKUP_DECLARATION_OPEN\"] = 41] = \"MARKUP_DECLARATION_OPEN\";\n\tState$1[State$1[\"COMMENT_START\"] = 42] = \"COMMENT_START\";\n\tState$1[State$1[\"COMMENT_START_DASH\"] = 43] = \"COMMENT_START_DASH\";\n\tState$1[State$1[\"COMMENT\"] = 44] = \"COMMENT\";\n\tState$1[State$1[\"COMMENT_LESS_THAN_SIGN\"] = 45] = \"COMMENT_LESS_THAN_SIGN\";\n\tState$1[State$1[\"COMMENT_LESS_THAN_SIGN_BANG\"] = 46] = \"COMMENT_LESS_THAN_SIGN_BANG\";\n\tState$1[State$1[\"COMMENT_LESS_THAN_SIGN_BANG_DASH\"] = 47] = \"COMMENT_LESS_THAN_SIGN_BANG_DASH\";\n\tState$1[State$1[\"COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH\"] = 48] = \"COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH\";\n\tState$1[State$1[\"COMMENT_END_DASH\"] = 49] = \"COMMENT_END_DASH\";\n\tState$1[State$1[\"COMMENT_END\"] = 50] = \"COMMENT_END\";\n\tState$1[State$1[\"COMMENT_END_BANG\"] = 51] = \"COMMENT_END_BANG\";\n\tState$1[State$1[\"DOCTYPE\"] = 52] = \"DOCTYPE\";\n\tState$1[State$1[\"BEFORE_DOCTYPE_NAME\"] = 53] = \"BEFORE_DOCTYPE_NAME\";\n\tState$1[State$1[\"DOCTYPE_NAME\"] = 54] = \"DOCTYPE_NAME\";\n\tState$1[State$1[\"AFTER_DOCTYPE_NAME\"] = 55] = \"AFTER_DOCTYPE_NAME\";\n\tState$1[State$1[\"AFTER_DOCTYPE_PUBLIC_KEYWORD\"] = 56] = \"AFTER_DOCTYPE_PUBLIC_KEYWORD\";\n\tState$1[State$1[\"BEFORE_DOCTYPE_PUBLIC_IDENTIFIER\"] = 57] = \"BEFORE_DOCTYPE_PUBLIC_IDENTIFIER\";\n\tState$1[State$1[\"DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED\"] = 58] = \"DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED\";\n\tState$1[State$1[\"DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED\"] = 59] = \"DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED\";\n\tState$1[State$1[\"AFTER_DOCTYPE_PUBLIC_IDENTIFIER\"] = 60] = \"AFTER_DOCTYPE_PUBLIC_IDENTIFIER\";\n\tState$1[State$1[\"BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS\"] = 61] = \"BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS\";\n\tState$1[State$1[\"AFTER_DOCTYPE_SYSTEM_KEYWORD\"] = 62] = \"AFTER_DOCTYPE_SYSTEM_KEYWORD\";\n\tState$1[State$1[\"BEFORE_DOCTYPE_SYSTEM_IDENTIFIER\"] = 63] = \"BEFORE_DOCTYPE_SYSTEM_IDENTIFIER\";\n\tState$1[State$1[\"DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED\"] = 64] = \"DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED\";\n\tState$1[State$1[\"DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED\"] = 65] = \"DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED\";\n\tState$1[State$1[\"AFTER_DOCTYPE_SYSTEM_IDENTIFIER\"] = 66] = \"AFTER_DOCTYPE_SYSTEM_IDENTIFIER\";\n\tState$1[State$1[\"BOGUS_DOCTYPE\"] = 67] = \"BOGUS_DOCTYPE\";\n\tState$1[State$1[\"CDATA_SECTION\"] = 68] = \"CDATA_SECTION\";\n\tState$1[State$1[\"CDATA_SECTION_BRACKET\"] = 69] = \"CDATA_SECTION_BRACKET\";\n\tState$1[State$1[\"CDATA_SECTION_END\"] = 70] = \"CDATA_SECTION_END\";\n\tState$1[State$1[\"CHARACTER_REFERENCE\"] = 71] = \"CHARACTER_REFERENCE\";\n\tState$1[State$1[\"AMBIGUOUS_AMPERSAND\"] = 72] = \"AMBIGUOUS_AMPERSAND\";\n})(State || (State = {}));\nconst TokenizerMode = {\n\tDATA: State.DATA,\n\tRCDATA: State.RCDATA,\n\tRAWTEXT: State.RAWTEXT,\n\tSCRIPT_DATA: State.SCRIPT_DATA,\n\tPLAINTEXT: State.PLAINTEXT,\n\tCDATA_SECTION: State.CDATA_SECTION\n};\nfunction isAsciiDigit(cp) {\n\treturn cp >= CODE_POINTS.DIGIT_0 && cp <= CODE_POINTS.DIGIT_9;\n}\nfunction isAsciiUpper(cp) {\n\treturn cp >= CODE_POINTS.LATIN_CAPITAL_A && cp <= CODE_POINTS.LATIN_CAPITAL_Z;\n}\nfunction isAsciiLower(cp) {\n\treturn cp >= CODE_POINTS.LATIN_SMALL_A && cp <= CODE_POINTS.LATIN_SMALL_Z;\n}\nfunction isAsciiLetter(cp) {\n\treturn isAsciiLower(cp) || isAsciiUpper(cp);\n}\nfunction isAsciiAlphaNumeric(cp) {\n\treturn isAsciiLetter(cp) || isAsciiDigit(cp);\n}\nfunction toAsciiLower(cp) {\n\treturn cp + 32;\n}\nfunction isWhitespace(cp) {\n\treturn cp === CODE_POINTS.SPACE || cp === CODE_POINTS.LINE_FEED || cp === CODE_POINTS.TABULATION || cp === CODE_POINTS.FORM_FEED;\n}\nfunction isScriptDataDoubleEscapeSequenceEnd(cp) {\n\treturn isWhitespace(cp) || cp === CODE_POINTS.SOLIDUS || cp === CODE_POINTS.GREATER_THAN_SIGN;\n}\nfunction getErrorForNumericCharacterReference(code) {\n\tif (code === CODE_POINTS.NULL) return ERR.nullCharacterReference;\n\telse if (code > 1114111) return ERR.characterReferenceOutsideUnicodeRange;\n\telse if (isSurrogate(code)) return ERR.surrogateCharacterReference;\n\telse if (isUndefinedCodePoint(code)) return ERR.noncharacterCharacterReference;\n\telse if (isControlCodePoint(code) || code === CODE_POINTS.CARRIAGE_RETURN) return ERR.controlCharacterReference;\n\treturn null;\n}\nvar Tokenizer = class {\n\tconstructor(options, handler) {\n\t\tthis.options = options;\n\t\tthis.handler = handler;\n\t\tthis.paused = false;\n\t\t/** Ensures that the parsing loop isn't run multiple times at once. */\n\t\tthis.inLoop = false;\n\t\t/**\n\t\t* Indicates that the current adjusted node exists, is not an element in the HTML namespace,\n\t\t* and that it is not an integration point for either MathML or HTML.\n\t\t*\n\t\t* @see {@link https://html.spec.whatwg.org/multipage/parsing.html#tree-construction}\n\t\t*/\n\t\tthis.inForeignNode = false;\n\t\tthis.lastStartTagName = \"\";\n\t\tthis.active = false;\n\t\tthis.state = State.DATA;\n\t\tthis.returnState = State.DATA;\n\t\tthis.entityStartPos = 0;\n\t\tthis.consumedAfterSnapshot = -1;\n\t\tthis.currentCharacterToken = null;\n\t\tthis.currentToken = null;\n\t\tthis.currentAttr = {\n\t\t\tname: \"\",\n\t\t\tvalue: \"\"\n\t\t};\n\t\tthis.preprocessor = new Preprocessor(handler);\n\t\tthis.currentLocation = this.getCurrentLocation(-1);\n\t\tthis.entityDecoder = new EntityDecoder(htmlDecodeTree, (cp, consumed) => {\n\t\t\tthis.preprocessor.pos = this.entityStartPos + consumed - 1;\n\t\t\tthis._flushCodePointConsumedAsCharacterReference(cp);\n\t\t}, handler.onParseError ? {\n\t\t\tmissingSemicolonAfterCharacterReference: () => {\n\t\t\t\tthis._err(ERR.missingSemicolonAfterCharacterReference, 1);\n\t\t\t},\n\t\t\tabsenceOfDigitsInNumericCharacterReference: (consumed) => {\n\t\t\t\tthis._err(ERR.absenceOfDigitsInNumericCharacterReference, this.entityStartPos - this.preprocessor.pos + consumed);\n\t\t\t},\n\t\t\tvalidateNumericCharacterReference: (code) => {\n\t\t\t\tconst error = getErrorForNumericCharacterReference(code);\n\t\t\t\tif (error) this._err(error, 1);\n\t\t\t}\n\t\t} : void 0);\n\t}\n\t_err(code, cpOffset = 0) {\n\t\tvar _a$1, _b;\n\t\t(_b = (_a$1 = this.handler).onParseError) === null || _b === void 0 || _b.call(_a$1, this.preprocessor.getError(code, cpOffset));\n\t}\n\tgetCurrentLocation(offset) {\n\t\tif (!this.options.sourceCodeLocationInfo) return null;\n\t\treturn {\n\t\t\tstartLine: this.preprocessor.line,\n\t\t\tstartCol: this.preprocessor.col - offset,\n\t\t\tstartOffset: this.preprocessor.offset - offset,\n\t\t\tendLine: -1,\n\t\t\tendCol: -1,\n\t\t\tendOffset: -1\n\t\t};\n\t}\n\t_runParsingLoop() {\n\t\tif (this.inLoop) return;\n\t\tthis.inLoop = true;\n\t\twhile (this.active && !this.paused) {\n\t\t\tthis.consumedAfterSnapshot = 0;\n\t\t\tconst cp = this._consume();\n\t\t\tif (!this._ensureHibernation()) this._callState(cp);\n\t\t}\n\t\tthis.inLoop = false;\n\t}\n\tpause() {\n\t\tthis.paused = true;\n\t}\n\tresume(writeCallback) {\n\t\tif (!this.paused) throw new Error(\"Parser was already resumed\");\n\t\tthis.paused = false;\n\t\tif (this.inLoop) return;\n\t\tthis._runParsingLoop();\n\t\tif (!this.paused) writeCallback === null || writeCallback === void 0 || writeCallback();\n\t}\n\twrite(chunk, isLastChunk, writeCallback) {\n\t\tthis.active = true;\n\t\tthis.preprocessor.write(chunk, isLastChunk);\n\t\tthis._runParsingLoop();\n\t\tif (!this.paused) writeCallback === null || writeCallback === void 0 || writeCallback();\n\t}\n\tinsertHtmlAtCurrentPos(chunk) {\n\t\tthis.active = true;\n\t\tthis.preprocessor.insertHtmlAtCurrentPos(chunk);\n\t\tthis._runParsingLoop();\n\t}\n\t_ensureHibernation() {\n\t\tif (this.preprocessor.endOfChunkHit) {\n\t\t\tthis.preprocessor.retreat(this.consumedAfterSnapshot);\n\t\t\tthis.consumedAfterSnapshot = 0;\n\t\t\tthis.active = false;\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\t_consume() {\n\t\tthis.consumedAfterSnapshot++;\n\t\treturn this.preprocessor.advance();\n\t}\n\t_advanceBy(count) {\n\t\tthis.consumedAfterSnapshot += count;\n\t\tfor (let i = 0; i < count; i++) this.preprocessor.advance();\n\t}\n\t_consumeSequenceIfMatch(pattern, caseSensitive) {\n\t\tif (this.preprocessor.startsWith(pattern, caseSensitive)) {\n\t\t\tthis._advanceBy(pattern.length - 1);\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\t_createStartTagToken() {\n\t\tthis.currentToken = {\n\t\t\ttype: TokenType.START_TAG,\n\t\t\ttagName: \"\",\n\t\t\ttagID: TAG_ID.UNKNOWN,\n\t\t\tselfClosing: false,\n\t\t\tackSelfClosing: false,\n\t\t\tattrs: [],\n\t\t\tlocation: this.getCurrentLocation(1)\n\t\t};\n\t}\n\t_createEndTagToken() {\n\t\tthis.currentToken = {\n\t\t\ttype: TokenType.END_TAG,\n\t\t\ttagName: \"\",\n\t\t\ttagID: TAG_ID.UNKNOWN,\n\t\t\tselfClosing: false,\n\t\t\tackSelfClosing: false,\n\t\t\tattrs: [],\n\t\t\tlocation: this.getCurrentLocation(2)\n\t\t};\n\t}\n\t_createCommentToken(offset) {\n\t\tthis.currentToken = {\n\t\t\ttype: TokenType.COMMENT,\n\t\t\tdata: \"\",\n\t\t\tlocation: this.getCurrentLocation(offset)\n\t\t};\n\t}\n\t_createDoctypeToken(initialName) {\n\t\tthis.currentToken = {\n\t\t\ttype: TokenType.DOCTYPE,\n\t\t\tname: initialName,\n\t\t\tforceQuirks: false,\n\t\t\tpublicId: null,\n\t\t\tsystemId: null,\n\t\t\tlocation: this.currentLocation\n\t\t};\n\t}\n\t_createCharacterToken(type, chars) {\n\t\tthis.currentCharacterToken = {\n\t\t\ttype,\n\t\t\tchars,\n\t\t\tlocation: this.currentLocation\n\t\t};\n\t}\n\t_createAttr(attrNameFirstCh) {\n\t\tthis.currentAttr = {\n\t\t\tname: attrNameFirstCh,\n\t\t\tvalue: \"\"\n\t\t};\n\t\tthis.currentLocation = this.getCurrentLocation(0);\n\t}\n\t_leaveAttrName() {\n\t\tvar _a$1;\n\t\tvar _b;\n\t\tconst token = this.currentToken;\n\t\tif (getTokenAttr(token, this.currentAttr.name) === null) {\n\t\t\ttoken.attrs.push(this.currentAttr);\n\t\t\tif (token.location && this.currentLocation) {\n\t\t\t\tconst attrLocations = (_a$1 = (_b = token.location).attrs) !== null && _a$1 !== void 0 ? _a$1 : _b.attrs = Object.create(null);\n\t\t\t\tattrLocations[this.currentAttr.name] = this.currentLocation;\n\t\t\t\tthis._leaveAttrValue();\n\t\t\t}\n\t\t} else this._err(ERR.duplicateAttribute);\n\t}\n\t_leaveAttrValue() {\n\t\tif (this.currentLocation) {\n\t\t\tthis.currentLocation.endLine = this.preprocessor.line;\n\t\t\tthis.currentLocation.endCol = this.preprocessor.col;\n\t\t\tthis.currentLocation.endOffset = this.preprocessor.offset;\n\t\t}\n\t}\n\tprepareToken(ct) {\n\t\tthis._emitCurrentCharacterToken(ct.location);\n\t\tthis.currentToken = null;\n\t\tif (ct.location) {\n\t\t\tct.location.endLine = this.preprocessor.line;\n\t\t\tct.location.endCol = this.preprocessor.col + 1;\n\t\t\tct.location.endOffset = this.preprocessor.offset + 1;\n\t\t}\n\t\tthis.currentLocation = this.getCurrentLocation(-1);\n\t}\n\temitCurrentTagToken() {\n\t\tconst ct = this.currentToken;\n\t\tthis.prepareToken(ct);\n\t\tct.tagID = getTagID(ct.tagName);\n\t\tif (ct.type === TokenType.START_TAG) {\n\t\t\tthis.lastStartTagName = ct.tagName;\n\t\t\tthis.handler.onStartTag(ct);\n\t\t} else {\n\t\t\tif (ct.attrs.length > 0) this._err(ERR.endTagWithAttributes);\n\t\t\tif (ct.selfClosing) this._err(ERR.endTagWithTrailingSolidus);\n\t\t\tthis.handler.onEndTag(ct);\n\t\t}\n\t\tthis.preprocessor.dropParsedChunk();\n\t}\n\temitCurrentComment(ct) {\n\t\tthis.prepareToken(ct);\n\t\tthis.handler.onComment(ct);\n\t\tthis.preprocessor.dropParsedChunk();\n\t}\n\temitCurrentDoctype(ct) {\n\t\tthis.prepareToken(ct);\n\t\tthis.handler.onDoctype(ct);\n\t\tthis.preprocessor.dropParsedChunk();\n\t}\n\t_emitCurrentCharacterToken(nextLocation) {\n\t\tif (this.currentCharacterToken) {\n\t\t\tif (nextLocation && this.currentCharacterToken.location) {\n\t\t\t\tthis.currentCharacterToken.location.endLine = nextLocation.startLine;\n\t\t\t\tthis.currentCharacterToken.location.endCol = nextLocation.startCol;\n\t\t\t\tthis.currentCharacterToken.location.endOffset = nextLocation.startOffset;\n\t\t\t}\n\t\t\tswitch (this.currentCharacterToken.type) {\n\t\t\t\tcase TokenType.CHARACTER:\n\t\t\t\t\tthis.handler.onCharacter(this.currentCharacterToken);\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.NULL_CHARACTER:\n\t\t\t\t\tthis.handler.onNullCharacter(this.currentCharacterToken);\n\t\t\t\t\tbreak;\n\t\t\t\tcase TokenType.WHITESPACE_CHARACTER:\n\t\t\t\t\tthis.handler.onWhitespaceCharacter(this.currentCharacterToken);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tthis.currentCharacterToken = null;\n\t\t}\n\t}\n\t_emitEOFToken() {\n\t\tconst location = this.getCurrentLocation(0);\n\t\tif (location) {\n\t\t\tlocation.endLine = location.startLine;\n\t\t\tlocation.endCol = location.startCol;\n\t\t\tlocation.endOffset = location.startOffset;\n\t\t}\n\t\tthis._emitCurrentCharacterToken(location);\n\t\tthis.handler.onEof({\n\t\t\ttype: TokenType.EOF,\n\t\t\tlocation\n\t\t});\n\t\tthis.active = false;\n\t}\n\t_appendCharToCurrentCharacterToken(type, ch) {\n\t\tif (this.currentCharacterToken) if (this.currentCharacterToken.type === type) {\n\t\t\tthis.currentCharacterToken.chars += ch;\n\t\t\treturn;\n\t\t} else {\n\t\t\tthis.currentLocation = this.getCurrentLocation(0);\n\t\t\tthis._emitCurrentCharacterToken(this.currentLocation);\n\t\t\tthis.preprocessor.dropParsedChunk();\n\t\t}\n\t\tthis._createCharacterToken(type, ch);\n\t}\n\t_emitCodePoint(cp) {\n\t\tconst type = isWhitespace(cp) ? TokenType.WHITESPACE_CHARACTER : cp === CODE_POINTS.NULL ? TokenType.NULL_CHARACTER : TokenType.CHARACTER;\n\t\tthis._appendCharToCurrentCharacterToken(type, String.fromCodePoint(cp));\n\t}\n\t_emitChars(ch) {\n\t\tthis._appendCharToCurrentCharacterToken(TokenType.CHARACTER, ch);\n\t}\n\t_startCharacterReference() {\n\t\tthis.returnState = this.state;\n\t\tthis.state = State.CHARACTER_REFERENCE;\n\t\tthis.entityStartPos = this.preprocessor.pos;\n\t\tthis.entityDecoder.startEntity(this._isCharacterReferenceInAttribute() ? DecodingMode.Attribute : DecodingMode.Legacy);\n\t}\n\t_isCharacterReferenceInAttribute() {\n\t\treturn this.returnState === State.ATTRIBUTE_VALUE_DOUBLE_QUOTED || this.returnState === State.ATTRIBUTE_VALUE_SINGLE_QUOTED || this.returnState === State.ATTRIBUTE_VALUE_UNQUOTED;\n\t}\n\t_flushCodePointConsumedAsCharacterReference(cp) {\n\t\tif (this._isCharacterReferenceInAttribute()) this.currentAttr.value += String.fromCodePoint(cp);\n\t\telse this._emitCodePoint(cp);\n\t}\n\t_callState(cp) {\n\t\tswitch (this.state) {\n\t\t\tcase State.DATA:\n\t\t\t\tthis._stateData(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.RCDATA:\n\t\t\t\tthis._stateRcdata(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.RAWTEXT:\n\t\t\t\tthis._stateRawtext(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA:\n\t\t\t\tthis._stateScriptData(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.PLAINTEXT:\n\t\t\t\tthis._statePlaintext(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.TAG_OPEN:\n\t\t\t\tthis._stateTagOpen(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.END_TAG_OPEN:\n\t\t\t\tthis._stateEndTagOpen(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.TAG_NAME:\n\t\t\t\tthis._stateTagName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.RCDATA_LESS_THAN_SIGN:\n\t\t\t\tthis._stateRcdataLessThanSign(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.RCDATA_END_TAG_OPEN:\n\t\t\t\tthis._stateRcdataEndTagOpen(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.RCDATA_END_TAG_NAME:\n\t\t\t\tthis._stateRcdataEndTagName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.RAWTEXT_LESS_THAN_SIGN:\n\t\t\t\tthis._stateRawtextLessThanSign(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.RAWTEXT_END_TAG_OPEN:\n\t\t\t\tthis._stateRawtextEndTagOpen(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.RAWTEXT_END_TAG_NAME:\n\t\t\t\tthis._stateRawtextEndTagName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_LESS_THAN_SIGN:\n\t\t\t\tthis._stateScriptDataLessThanSign(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_END_TAG_OPEN:\n\t\t\t\tthis._stateScriptDataEndTagOpen(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_END_TAG_NAME:\n\t\t\t\tthis._stateScriptDataEndTagName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_ESCAPE_START:\n\t\t\t\tthis._stateScriptDataEscapeStart(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_ESCAPE_START_DASH:\n\t\t\t\tthis._stateScriptDataEscapeStartDash(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_ESCAPED:\n\t\t\t\tthis._stateScriptDataEscaped(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_ESCAPED_DASH:\n\t\t\t\tthis._stateScriptDataEscapedDash(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_ESCAPED_DASH_DASH:\n\t\t\t\tthis._stateScriptDataEscapedDashDash(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:\n\t\t\t\tthis._stateScriptDataEscapedLessThanSign(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:\n\t\t\t\tthis._stateScriptDataEscapedEndTagOpen(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_ESCAPED_END_TAG_NAME:\n\t\t\t\tthis._stateScriptDataEscapedEndTagName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_DOUBLE_ESCAPE_START:\n\t\t\t\tthis._stateScriptDataDoubleEscapeStart(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_DOUBLE_ESCAPED:\n\t\t\t\tthis._stateScriptDataDoubleEscaped(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:\n\t\t\t\tthis._stateScriptDataDoubleEscapedDash(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:\n\t\t\t\tthis._stateScriptDataDoubleEscapedDashDash(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:\n\t\t\t\tthis._stateScriptDataDoubleEscapedLessThanSign(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SCRIPT_DATA_DOUBLE_ESCAPE_END:\n\t\t\t\tthis._stateScriptDataDoubleEscapeEnd(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.BEFORE_ATTRIBUTE_NAME:\n\t\t\t\tthis._stateBeforeAttributeName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.ATTRIBUTE_NAME:\n\t\t\t\tthis._stateAttributeName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.AFTER_ATTRIBUTE_NAME:\n\t\t\t\tthis._stateAfterAttributeName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.BEFORE_ATTRIBUTE_VALUE:\n\t\t\t\tthis._stateBeforeAttributeValue(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.ATTRIBUTE_VALUE_DOUBLE_QUOTED:\n\t\t\t\tthis._stateAttributeValueDoubleQuoted(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.ATTRIBUTE_VALUE_SINGLE_QUOTED:\n\t\t\t\tthis._stateAttributeValueSingleQuoted(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.ATTRIBUTE_VALUE_UNQUOTED:\n\t\t\t\tthis._stateAttributeValueUnquoted(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.AFTER_ATTRIBUTE_VALUE_QUOTED:\n\t\t\t\tthis._stateAfterAttributeValueQuoted(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.SELF_CLOSING_START_TAG:\n\t\t\t\tthis._stateSelfClosingStartTag(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.BOGUS_COMMENT:\n\t\t\t\tthis._stateBogusComment(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.MARKUP_DECLARATION_OPEN:\n\t\t\t\tthis._stateMarkupDeclarationOpen(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT_START:\n\t\t\t\tthis._stateCommentStart(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT_START_DASH:\n\t\t\t\tthis._stateCommentStartDash(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT:\n\t\t\t\tthis._stateComment(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT_LESS_THAN_SIGN:\n\t\t\t\tthis._stateCommentLessThanSign(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT_LESS_THAN_SIGN_BANG:\n\t\t\t\tthis._stateCommentLessThanSignBang(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT_LESS_THAN_SIGN_BANG_DASH:\n\t\t\t\tthis._stateCommentLessThanSignBangDash(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:\n\t\t\t\tthis._stateCommentLessThanSignBangDashDash(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT_END_DASH:\n\t\t\t\tthis._stateCommentEndDash(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT_END:\n\t\t\t\tthis._stateCommentEnd(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.COMMENT_END_BANG:\n\t\t\t\tthis._stateCommentEndBang(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.DOCTYPE:\n\t\t\t\tthis._stateDoctype(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.BEFORE_DOCTYPE_NAME:\n\t\t\t\tthis._stateBeforeDoctypeName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.DOCTYPE_NAME:\n\t\t\t\tthis._stateDoctypeName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.AFTER_DOCTYPE_NAME:\n\t\t\t\tthis._stateAfterDoctypeName(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.AFTER_DOCTYPE_PUBLIC_KEYWORD:\n\t\t\t\tthis._stateAfterDoctypePublicKeyword(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:\n\t\t\t\tthis._stateBeforeDoctypePublicIdentifier(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:\n\t\t\t\tthis._stateDoctypePublicIdentifierDoubleQuoted(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:\n\t\t\t\tthis._stateDoctypePublicIdentifierSingleQuoted(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:\n\t\t\t\tthis._stateAfterDoctypePublicIdentifier(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:\n\t\t\t\tthis._stateBetweenDoctypePublicAndSystemIdentifiers(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.AFTER_DOCTYPE_SYSTEM_KEYWORD:\n\t\t\t\tthis._stateAfterDoctypeSystemKeyword(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:\n\t\t\t\tthis._stateBeforeDoctypeSystemIdentifier(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:\n\t\t\t\tthis._stateDoctypeSystemIdentifierDoubleQuoted(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:\n\t\t\t\tthis._stateDoctypeSystemIdentifierSingleQuoted(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:\n\t\t\t\tthis._stateAfterDoctypeSystemIdentifier(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.BOGUS_DOCTYPE:\n\t\t\t\tthis._stateBogusDoctype(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.CDATA_SECTION:\n\t\t\t\tthis._stateCdataSection(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.CDATA_SECTION_BRACKET:\n\t\t\t\tthis._stateCdataSectionBracket(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.CDATA_SECTION_END:\n\t\t\t\tthis._stateCdataSectionEnd(cp);\n\t\t\t\tbreak;\n\t\t\tcase State.CHARACTER_REFERENCE:\n\t\t\t\tthis._stateCharacterReference();\n\t\t\t\tbreak;\n\t\t\tcase State.AMBIGUOUS_AMPERSAND:\n\t\t\t\tthis._stateAmbiguousAmpersand(cp);\n\t\t\t\tbreak;\n\t\t\tdefault: throw new Error(\"Unknown state\");\n\t\t}\n\t}\n\t_stateData(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.TAG_OPEN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.AMPERSAND:\n\t\t\t\tthis._startCharacterReference();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis._emitCodePoint(cp);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateRcdata(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.AMPERSAND:\n\t\t\t\tthis._startCharacterReference();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.RCDATA_LESS_THAN_SIGN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateRawtext(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.RAWTEXT_LESS_THAN_SIGN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateScriptData(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.SCRIPT_DATA_LESS_THAN_SIGN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this._emitCodePoint(cp);\n\t\t}\n\t}\n\t_statePlaintext(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateTagOpen(cp) {\n\t\tif (isAsciiLetter(cp)) {\n\t\t\tthis._createStartTagToken();\n\t\t\tthis.state = State.TAG_NAME;\n\t\t\tthis._stateTagName(cp);\n\t\t} else switch (cp) {\n\t\t\tcase CODE_POINTS.EXCLAMATION_MARK:\n\t\t\t\tthis.state = State.MARKUP_DECLARATION_OPEN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.SOLIDUS:\n\t\t\t\tthis.state = State.END_TAG_OPEN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.QUESTION_MARK:\n\t\t\t\tthis._err(ERR.unexpectedQuestionMarkInsteadOfTagName);\n\t\t\t\tthis._createCommentToken(1);\n\t\t\t\tthis.state = State.BOGUS_COMMENT;\n\t\t\t\tthis._stateBogusComment(cp);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofBeforeTagName);\n\t\t\t\tthis._emitChars(\"<\");\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.invalidFirstCharacterOfTagName);\n\t\t\t\tthis._emitChars(\"<\");\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis._stateData(cp);\n\t\t}\n\t}\n\t_stateEndTagOpen(cp) {\n\t\tif (isAsciiLetter(cp)) {\n\t\t\tthis._createEndTagToken();\n\t\t\tthis.state = State.TAG_NAME;\n\t\t\tthis._stateTagName(cp);\n\t\t} else switch (cp) {\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.missingEndTagName);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofBeforeTagName);\n\t\t\t\tthis._emitChars(\"</\");\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.invalidFirstCharacterOfTagName);\n\t\t\t\tthis._createCommentToken(2);\n\t\t\t\tthis.state = State.BOGUS_COMMENT;\n\t\t\t\tthis._stateBogusComment(cp);\n\t\t}\n\t}\n\t_stateTagName(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\t\tthis.state = State.BEFORE_ATTRIBUTE_NAME;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.SOLIDUS:\n\t\t\t\tthis.state = State.SELF_CLOSING_START_TAG;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentTagToken();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\ttoken.tagName += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInTag);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: token.tagName += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp);\n\t\t}\n\t}\n\t_stateRcdataLessThanSign(cp) {\n\t\tif (cp === CODE_POINTS.SOLIDUS) this.state = State.RCDATA_END_TAG_OPEN;\n\t\telse {\n\t\t\tthis._emitChars(\"<\");\n\t\t\tthis.state = State.RCDATA;\n\t\t\tthis._stateRcdata(cp);\n\t\t}\n\t}\n\t_stateRcdataEndTagOpen(cp) {\n\t\tif (isAsciiLetter(cp)) {\n\t\t\tthis.state = State.RCDATA_END_TAG_NAME;\n\t\t\tthis._stateRcdataEndTagName(cp);\n\t\t} else {\n\t\t\tthis._emitChars(\"</\");\n\t\t\tthis.state = State.RCDATA;\n\t\t\tthis._stateRcdata(cp);\n\t\t}\n\t}\n\thandleSpecialEndTag(_cp) {\n\t\tif (!this.preprocessor.startsWith(this.lastStartTagName, false)) return !this._ensureHibernation();\n\t\tthis._createEndTagToken();\n\t\tconst token = this.currentToken;\n\t\ttoken.tagName = this.lastStartTagName;\n\t\tswitch (this.preprocessor.peek(this.lastStartTagName.length)) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\t\tthis._advanceBy(this.lastStartTagName.length);\n\t\t\t\tthis.state = State.BEFORE_ATTRIBUTE_NAME;\n\t\t\t\treturn false;\n\t\t\tcase CODE_POINTS.SOLIDUS:\n\t\t\t\tthis._advanceBy(this.lastStartTagName.length);\n\t\t\t\tthis.state = State.SELF_CLOSING_START_TAG;\n\t\t\t\treturn false;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._advanceBy(this.lastStartTagName.length);\n\t\t\t\tthis.emitCurrentTagToken();\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\treturn false;\n\t\t\tdefault: return !this._ensureHibernation();\n\t\t}\n\t}\n\t_stateRcdataEndTagName(cp) {\n\t\tif (this.handleSpecialEndTag(cp)) {\n\t\t\tthis._emitChars(\"</\");\n\t\t\tthis.state = State.RCDATA;\n\t\t\tthis._stateRcdata(cp);\n\t\t}\n\t}\n\t_stateRawtextLessThanSign(cp) {\n\t\tif (cp === CODE_POINTS.SOLIDUS) this.state = State.RAWTEXT_END_TAG_OPEN;\n\t\telse {\n\t\t\tthis._emitChars(\"<\");\n\t\t\tthis.state = State.RAWTEXT;\n\t\t\tthis._stateRawtext(cp);\n\t\t}\n\t}\n\t_stateRawtextEndTagOpen(cp) {\n\t\tif (isAsciiLetter(cp)) {\n\t\t\tthis.state = State.RAWTEXT_END_TAG_NAME;\n\t\t\tthis._stateRawtextEndTagName(cp);\n\t\t} else {\n\t\t\tthis._emitChars(\"</\");\n\t\t\tthis.state = State.RAWTEXT;\n\t\t\tthis._stateRawtext(cp);\n\t\t}\n\t}\n\t_stateRawtextEndTagName(cp) {\n\t\tif (this.handleSpecialEndTag(cp)) {\n\t\t\tthis._emitChars(\"</\");\n\t\t\tthis.state = State.RAWTEXT;\n\t\t\tthis._stateRawtext(cp);\n\t\t}\n\t}\n\t_stateScriptDataLessThanSign(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SOLIDUS:\n\t\t\t\tthis.state = State.SCRIPT_DATA_END_TAG_OPEN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EXCLAMATION_MARK:\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPE_START;\n\t\t\t\tthis._emitChars(\"<!\");\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._emitChars(\"<\");\n\t\t\t\tthis.state = State.SCRIPT_DATA;\n\t\t\t\tthis._stateScriptData(cp);\n\t\t}\n\t}\n\t_stateScriptDataEndTagOpen(cp) {\n\t\tif (isAsciiLetter(cp)) {\n\t\t\tthis.state = State.SCRIPT_DATA_END_TAG_NAME;\n\t\t\tthis._stateScriptDataEndTagName(cp);\n\t\t} else {\n\t\t\tthis._emitChars(\"</\");\n\t\t\tthis.state = State.SCRIPT_DATA;\n\t\t\tthis._stateScriptData(cp);\n\t\t}\n\t}\n\t_stateScriptDataEndTagName(cp) {\n\t\tif (this.handleSpecialEndTag(cp)) {\n\t\t\tthis._emitChars(\"</\");\n\t\t\tthis.state = State.SCRIPT_DATA;\n\t\t\tthis._stateScriptData(cp);\n\t\t}\n\t}\n\t_stateScriptDataEscapeStart(cp) {\n\t\tif (cp === CODE_POINTS.HYPHEN_MINUS) {\n\t\t\tthis.state = State.SCRIPT_DATA_ESCAPE_START_DASH;\n\t\t\tthis._emitChars(\"-\");\n\t\t} else {\n\t\t\tthis.state = State.SCRIPT_DATA;\n\t\t\tthis._stateScriptData(cp);\n\t\t}\n\t}\n\t_stateScriptDataEscapeStartDash(cp) {\n\t\tif (cp === CODE_POINTS.HYPHEN_MINUS) {\n\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED_DASH_DASH;\n\t\t\tthis._emitChars(\"-\");\n\t\t} else {\n\t\t\tthis.state = State.SCRIPT_DATA;\n\t\t\tthis._stateScriptData(cp);\n\t\t}\n\t}\n\t_stateScriptDataEscaped(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED_DASH;\n\t\t\t\tthis._emitChars(\"-\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInScriptHtmlCommentLikeText);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateScriptDataEscapedDash(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED_DASH_DASH;\n\t\t\t\tthis._emitChars(\"-\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED;\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInScriptHtmlCommentLikeText);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED;\n\t\t\t\tthis._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateScriptDataEscapedDashDash(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis._emitChars(\"-\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.SCRIPT_DATA;\n\t\t\t\tthis._emitChars(\">\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED;\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInScriptHtmlCommentLikeText);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED;\n\t\t\t\tthis._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateScriptDataEscapedLessThanSign(cp) {\n\t\tif (cp === CODE_POINTS.SOLIDUS) this.state = State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN;\n\t\telse if (isAsciiLetter(cp)) {\n\t\t\tthis._emitChars(\"<\");\n\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_START;\n\t\t\tthis._stateScriptDataDoubleEscapeStart(cp);\n\t\t} else {\n\t\t\tthis._emitChars(\"<\");\n\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED;\n\t\t\tthis._stateScriptDataEscaped(cp);\n\t\t}\n\t}\n\t_stateScriptDataEscapedEndTagOpen(cp) {\n\t\tif (isAsciiLetter(cp)) {\n\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED_END_TAG_NAME;\n\t\t\tthis._stateScriptDataEscapedEndTagName(cp);\n\t\t} else {\n\t\t\tthis._emitChars(\"</\");\n\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED;\n\t\t\tthis._stateScriptDataEscaped(cp);\n\t\t}\n\t}\n\t_stateScriptDataEscapedEndTagName(cp) {\n\t\tif (this.handleSpecialEndTag(cp)) {\n\t\t\tthis._emitChars(\"</\");\n\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED;\n\t\t\tthis._stateScriptDataEscaped(cp);\n\t\t}\n\t}\n\t_stateScriptDataDoubleEscapeStart(cp) {\n\t\tif (this.preprocessor.startsWith(SEQUENCES.SCRIPT, false) && isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek(SEQUENCES.SCRIPT.length))) {\n\t\t\tthis._emitCodePoint(cp);\n\t\t\tfor (let i = 0; i < SEQUENCES.SCRIPT.length; i++) this._emitCodePoint(this._consume());\n\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n\t\t} else if (!this._ensureHibernation()) {\n\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED;\n\t\t\tthis._stateScriptDataEscaped(cp);\n\t\t}\n\t}\n\t_stateScriptDataDoubleEscaped(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH;\n\t\t\t\tthis._emitChars(\"-\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN;\n\t\t\t\tthis._emitChars(\"<\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInScriptHtmlCommentLikeText);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateScriptDataDoubleEscapedDash(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH;\n\t\t\t\tthis._emitChars(\"-\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN;\n\t\t\t\tthis._emitChars(\"<\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInScriptHtmlCommentLikeText);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n\t\t\t\tthis._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateScriptDataDoubleEscapedDashDash(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis._emitChars(\"-\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN;\n\t\t\t\tthis._emitChars(\"<\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.SCRIPT_DATA;\n\t\t\t\tthis._emitChars(\">\");\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n\t\t\t\tthis._emitChars(REPLACEMENT_CHARACTER);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInScriptHtmlCommentLikeText);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n\t\t\t\tthis._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateScriptDataDoubleEscapedLessThanSign(cp) {\n\t\tif (cp === CODE_POINTS.SOLIDUS) {\n\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_END;\n\t\t\tthis._emitChars(\"/\");\n\t\t} else {\n\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n\t\t\tthis._stateScriptDataDoubleEscaped(cp);\n\t\t}\n\t}\n\t_stateScriptDataDoubleEscapeEnd(cp) {\n\t\tif (this.preprocessor.startsWith(SEQUENCES.SCRIPT, false) && isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek(SEQUENCES.SCRIPT.length))) {\n\t\t\tthis._emitCodePoint(cp);\n\t\t\tfor (let i = 0; i < SEQUENCES.SCRIPT.length; i++) this._emitCodePoint(this._consume());\n\t\t\tthis.state = State.SCRIPT_DATA_ESCAPED;\n\t\t} else if (!this._ensureHibernation()) {\n\t\t\tthis.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n\t\t\tthis._stateScriptDataDoubleEscaped(cp);\n\t\t}\n\t}\n\t_stateBeforeAttributeName(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED: break;\n\t\t\tcase CODE_POINTS.SOLIDUS:\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis.state = State.AFTER_ATTRIBUTE_NAME;\n\t\t\t\tthis._stateAfterAttributeName(cp);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EQUALS_SIGN:\n\t\t\t\tthis._err(ERR.unexpectedEqualsSignBeforeAttributeName);\n\t\t\t\tthis._createAttr(\"=\");\n\t\t\t\tthis.state = State.ATTRIBUTE_NAME;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._createAttr(\"\");\n\t\t\t\tthis.state = State.ATTRIBUTE_NAME;\n\t\t\t\tthis._stateAttributeName(cp);\n\t\t}\n\t}\n\t_stateAttributeName(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\tcase CODE_POINTS.SOLIDUS:\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._leaveAttrName();\n\t\t\t\tthis.state = State.AFTER_ATTRIBUTE_NAME;\n\t\t\t\tthis._stateAfterAttributeName(cp);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EQUALS_SIGN:\n\t\t\t\tthis._leaveAttrName();\n\t\t\t\tthis.state = State.BEFORE_ATTRIBUTE_VALUE;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\tthis._err(ERR.unexpectedCharacterInAttributeName);\n\t\t\t\tthis.currentAttr.name += String.fromCodePoint(cp);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis.currentAttr.name += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tdefault: this.currentAttr.name += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp);\n\t\t}\n\t}\n\t_stateAfterAttributeName(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED: break;\n\t\t\tcase CODE_POINTS.SOLIDUS:\n\t\t\t\tthis.state = State.SELF_CLOSING_START_TAG;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EQUALS_SIGN:\n\t\t\t\tthis.state = State.BEFORE_ATTRIBUTE_VALUE;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentTagToken();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInTag);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._createAttr(\"\");\n\t\t\t\tthis.state = State.ATTRIBUTE_NAME;\n\t\t\t\tthis._stateAttributeName(cp);\n\t\t}\n\t}\n\t_stateBeforeAttributeValue(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED: break;\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\tthis.state = State.ATTRIBUTE_VALUE_DOUBLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\tthis.state = State.ATTRIBUTE_VALUE_SINGLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.missingAttributeValue);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentTagToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis.state = State.ATTRIBUTE_VALUE_UNQUOTED;\n\t\t\t\tthis._stateAttributeValueUnquoted(cp);\n\t\t}\n\t}\n\t_stateAttributeValueDoubleQuoted(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\tthis.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.AMPERSAND:\n\t\t\t\tthis._startCharacterReference();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis.currentAttr.value += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInTag);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this.currentAttr.value += String.fromCodePoint(cp);\n\t\t}\n\t}\n\t_stateAttributeValueSingleQuoted(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\tthis.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.AMPERSAND:\n\t\t\t\tthis._startCharacterReference();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis.currentAttr.value += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInTag);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this.currentAttr.value += String.fromCodePoint(cp);\n\t\t}\n\t}\n\t_stateAttributeValueUnquoted(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\t\tthis._leaveAttrValue();\n\t\t\t\tthis.state = State.BEFORE_ATTRIBUTE_NAME;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.AMPERSAND:\n\t\t\t\tthis._startCharacterReference();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._leaveAttrValue();\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentTagToken();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis.currentAttr.value += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\tcase CODE_POINTS.EQUALS_SIGN:\n\t\t\tcase CODE_POINTS.GRAVE_ACCENT:\n\t\t\t\tthis._err(ERR.unexpectedCharacterInUnquotedAttributeValue);\n\t\t\t\tthis.currentAttr.value += String.fromCodePoint(cp);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInTag);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this.currentAttr.value += String.fromCodePoint(cp);\n\t\t}\n\t}\n\t_stateAfterAttributeValueQuoted(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\t\tthis._leaveAttrValue();\n\t\t\t\tthis.state = State.BEFORE_ATTRIBUTE_NAME;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.SOLIDUS:\n\t\t\t\tthis._leaveAttrValue();\n\t\t\t\tthis.state = State.SELF_CLOSING_START_TAG;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._leaveAttrValue();\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentTagToken();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInTag);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.missingWhitespaceBetweenAttributes);\n\t\t\t\tthis.state = State.BEFORE_ATTRIBUTE_NAME;\n\t\t\t\tthis._stateBeforeAttributeName(cp);\n\t\t}\n\t}\n\t_stateSelfClosingStartTag(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN: {\n\t\t\t\tconst token = this.currentToken;\n\t\t\t\ttoken.selfClosing = true;\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentTagToken();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInTag);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.unexpectedSolidusInTag);\n\t\t\t\tthis.state = State.BEFORE_ATTRIBUTE_NAME;\n\t\t\t\tthis._stateBeforeAttributeName(cp);\n\t\t}\n\t}\n\t_stateBogusComment(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\ttoken.data += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tdefault: token.data += String.fromCodePoint(cp);\n\t\t}\n\t}\n\t_stateMarkupDeclarationOpen(cp) {\n\t\tif (this._consumeSequenceIfMatch(SEQUENCES.DASH_DASH, true)) {\n\t\t\tthis._createCommentToken(SEQUENCES.DASH_DASH.length + 1);\n\t\t\tthis.state = State.COMMENT_START;\n\t\t} else if (this._consumeSequenceIfMatch(SEQUENCES.DOCTYPE, false)) {\n\t\t\tthis.currentLocation = this.getCurrentLocation(SEQUENCES.DOCTYPE.length + 1);\n\t\t\tthis.state = State.DOCTYPE;\n\t\t} else if (this._consumeSequenceIfMatch(SEQUENCES.CDATA_START, true)) if (this.inForeignNode) this.state = State.CDATA_SECTION;\n\t\telse {\n\t\t\tthis._err(ERR.cdataInHtmlContent);\n\t\t\tthis._createCommentToken(SEQUENCES.CDATA_START.length + 1);\n\t\t\tthis.currentToken.data = \"[CDATA[\";\n\t\t\tthis.state = State.BOGUS_COMMENT;\n\t\t}\n\t\telse if (!this._ensureHibernation()) {\n\t\t\tthis._err(ERR.incorrectlyOpenedComment);\n\t\t\tthis._createCommentToken(2);\n\t\t\tthis.state = State.BOGUS_COMMENT;\n\t\t\tthis._stateBogusComment(cp);\n\t\t}\n\t}\n\t_stateCommentStart(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis.state = State.COMMENT_START_DASH;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.abruptClosingOfEmptyComment);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentComment(this.currentToken);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis.state = State.COMMENT;\n\t\t\t\tthis._stateComment(cp);\n\t\t}\n\t}\n\t_stateCommentStartDash(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis.state = State.COMMENT_END;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.abruptClosingOfEmptyComment);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInComment);\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\ttoken.data += \"-\";\n\t\t\t\tthis.state = State.COMMENT;\n\t\t\t\tthis._stateComment(cp);\n\t\t}\n\t}\n\t_stateComment(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis.state = State.COMMENT_END_DASH;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\ttoken.data += \"<\";\n\t\t\t\tthis.state = State.COMMENT_LESS_THAN_SIGN;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\ttoken.data += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInComment);\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: token.data += String.fromCodePoint(cp);\n\t\t}\n\t}\n\t_stateCommentLessThanSign(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.EXCLAMATION_MARK:\n\t\t\t\ttoken.data += \"!\";\n\t\t\t\tthis.state = State.COMMENT_LESS_THAN_SIGN_BANG;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.LESS_THAN_SIGN:\n\t\t\t\ttoken.data += \"<\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis.state = State.COMMENT;\n\t\t\t\tthis._stateComment(cp);\n\t\t}\n\t}\n\t_stateCommentLessThanSignBang(cp) {\n\t\tif (cp === CODE_POINTS.HYPHEN_MINUS) this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH;\n\t\telse {\n\t\t\tthis.state = State.COMMENT;\n\t\t\tthis._stateComment(cp);\n\t\t}\n\t}\n\t_stateCommentLessThanSignBangDash(cp) {\n\t\tif (cp === CODE_POINTS.HYPHEN_MINUS) this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH;\n\t\telse {\n\t\t\tthis.state = State.COMMENT_END_DASH;\n\t\t\tthis._stateCommentEndDash(cp);\n\t\t}\n\t}\n\t_stateCommentLessThanSignBangDashDash(cp) {\n\t\tif (cp !== CODE_POINTS.GREATER_THAN_SIGN && cp !== CODE_POINTS.EOF) this._err(ERR.nestedComment);\n\t\tthis.state = State.COMMENT_END;\n\t\tthis._stateCommentEnd(cp);\n\t}\n\t_stateCommentEndDash(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\tthis.state = State.COMMENT_END;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInComment);\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\ttoken.data += \"-\";\n\t\t\t\tthis.state = State.COMMENT;\n\t\t\t\tthis._stateComment(cp);\n\t\t}\n\t}\n\t_stateCommentEnd(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EXCLAMATION_MARK:\n\t\t\t\tthis.state = State.COMMENT_END_BANG;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\ttoken.data += \"-\";\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInComment);\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\ttoken.data += \"--\";\n\t\t\t\tthis.state = State.COMMENT;\n\t\t\t\tthis._stateComment(cp);\n\t\t}\n\t}\n\t_stateCommentEndBang(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.HYPHEN_MINUS:\n\t\t\t\ttoken.data += \"--!\";\n\t\t\t\tthis.state = State.COMMENT_END_DASH;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.incorrectlyClosedComment);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInComment);\n\t\t\t\tthis.emitCurrentComment(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\ttoken.data += \"--!\";\n\t\t\t\tthis.state = State.COMMENT;\n\t\t\t\tthis._stateComment(cp);\n\t\t}\n\t}\n\t_stateDoctype(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\t\tthis.state = State.BEFORE_DOCTYPE_NAME;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.BEFORE_DOCTYPE_NAME;\n\t\t\t\tthis._stateBeforeDoctypeName(cp);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF: {\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\tthis._createDoctypeToken(null);\n\t\t\t\tconst token = this.currentToken;\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.missingWhitespaceBeforeDoctypeName);\n\t\t\t\tthis.state = State.BEFORE_DOCTYPE_NAME;\n\t\t\t\tthis._stateBeforeDoctypeName(cp);\n\t\t}\n\t}\n\t_stateBeforeDoctypeName(cp) {\n\t\tif (isAsciiUpper(cp)) {\n\t\t\tthis._createDoctypeToken(String.fromCharCode(toAsciiLower(cp)));\n\t\t\tthis.state = State.DOCTYPE_NAME;\n\t\t} else switch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED: break;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tthis._createDoctypeToken(REPLACEMENT_CHARACTER);\n\t\t\t\tthis.state = State.DOCTYPE_NAME;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN: {\n\t\t\t\tthis._err(ERR.missingDoctypeName);\n\t\t\t\tthis._createDoctypeToken(null);\n\t\t\t\tconst token = this.currentToken;\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase CODE_POINTS.EOF: {\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\tthis._createDoctypeToken(null);\n\t\t\t\tconst token = this.currentToken;\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault:\n\t\t\t\tthis._createDoctypeToken(String.fromCodePoint(cp));\n\t\t\t\tthis.state = State.DOCTYPE_NAME;\n\t\t}\n\t}\n\t_stateDoctypeName(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\t\tthis.state = State.AFTER_DOCTYPE_NAME;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\ttoken.name += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: token.name += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp);\n\t\t}\n\t}\n\t_stateAfterDoctypeName(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED: break;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: if (this._consumeSequenceIfMatch(SEQUENCES.PUBLIC, false)) this.state = State.AFTER_DOCTYPE_PUBLIC_KEYWORD;\n\t\t\telse if (this._consumeSequenceIfMatch(SEQUENCES.SYSTEM, false)) this.state = State.AFTER_DOCTYPE_SYSTEM_KEYWORD;\n\t\t\telse if (!this._ensureHibernation()) {\n\t\t\t\tthis._err(ERR.invalidCharacterSequenceAfterDoctypeName);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.BOGUS_DOCTYPE;\n\t\t\t\tthis._stateBogusDoctype(cp);\n\t\t\t}\n\t\t}\n\t}\n\t_stateAfterDoctypePublicKeyword(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\t\tthis.state = State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\tthis._err(ERR.missingWhitespaceAfterDoctypePublicKeyword);\n\t\t\t\ttoken.publicId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\tthis._err(ERR.missingWhitespaceAfterDoctypePublicKeyword);\n\t\t\t\ttoken.publicId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.missingDoctypePublicIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.missingQuoteBeforeDoctypePublicIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.BOGUS_DOCTYPE;\n\t\t\t\tthis._stateBogusDoctype(cp);\n\t\t}\n\t}\n\t_stateBeforeDoctypePublicIdentifier(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED: break;\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\ttoken.publicId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\ttoken.publicId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.missingDoctypePublicIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.missingQuoteBeforeDoctypePublicIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.BOGUS_DOCTYPE;\n\t\t\t\tthis._stateBogusDoctype(cp);\n\t\t}\n\t}\n\t_stateDoctypePublicIdentifierDoubleQuoted(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\tthis.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\ttoken.publicId += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.abruptDoctypePublicIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: token.publicId += String.fromCodePoint(cp);\n\t\t}\n\t}\n\t_stateDoctypePublicIdentifierSingleQuoted(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\tthis.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\ttoken.publicId += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.abruptDoctypePublicIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: token.publicId += String.fromCodePoint(cp);\n\t\t}\n\t}\n\t_stateAfterDoctypePublicIdentifier(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\t\tthis.state = State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\tthis._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers);\n\t\t\t\ttoken.systemId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\tthis._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers);\n\t\t\t\ttoken.systemId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.BOGUS_DOCTYPE;\n\t\t\t\tthis._stateBogusDoctype(cp);\n\t\t}\n\t}\n\t_stateBetweenDoctypePublicAndSystemIdentifiers(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED: break;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\ttoken.systemId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\ttoken.systemId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.BOGUS_DOCTYPE;\n\t\t\t\tthis._stateBogusDoctype(cp);\n\t\t}\n\t}\n\t_stateAfterDoctypeSystemKeyword(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED:\n\t\t\t\tthis.state = State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\tthis._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword);\n\t\t\t\ttoken.systemId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\tthis._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword);\n\t\t\t\ttoken.systemId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.missingDoctypeSystemIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.BOGUS_DOCTYPE;\n\t\t\t\tthis._stateBogusDoctype(cp);\n\t\t}\n\t}\n\t_stateBeforeDoctypeSystemIdentifier(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED: break;\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\ttoken.systemId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\ttoken.systemId = \"\";\n\t\t\t\tthis.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.missingDoctypeSystemIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.state = State.BOGUS_DOCTYPE;\n\t\t\t\tthis._stateBogusDoctype(cp);\n\t\t}\n\t}\n\t_stateDoctypeSystemIdentifierDoubleQuoted(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.QUOTATION_MARK:\n\t\t\t\tthis.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\ttoken.systemId += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.abruptDoctypeSystemIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: token.systemId += String.fromCodePoint(cp);\n\t\t}\n\t}\n\t_stateDoctypeSystemIdentifierSingleQuoted(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.APOSTROPHE:\n\t\t\t\tthis.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\ttoken.systemId += REPLACEMENT_CHARACTER;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis._err(ERR.abruptDoctypeSystemIdentifier);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: token.systemId += String.fromCodePoint(cp);\n\t\t}\n\t}\n\t_stateAfterDoctypeSystemIdentifier(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.SPACE:\n\t\t\tcase CODE_POINTS.LINE_FEED:\n\t\t\tcase CODE_POINTS.TABULATION:\n\t\t\tcase CODE_POINTS.FORM_FEED: break;\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInDoctype);\n\t\t\t\ttoken.forceQuirks = true;\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._err(ERR.unexpectedCharacterAfterDoctypeSystemIdentifier);\n\t\t\t\tthis.state = State.BOGUS_DOCTYPE;\n\t\t\t\tthis._stateBogusDoctype(cp);\n\t\t}\n\t}\n\t_stateBogusDoctype(cp) {\n\t\tconst token = this.currentToken;\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.NULL:\n\t\t\t\tthis._err(ERR.unexpectedNullCharacter);\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis.emitCurrentDoctype(token);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\t_stateCdataSection(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.RIGHT_SQUARE_BRACKET:\n\t\t\t\tthis.state = State.CDATA_SECTION_BRACKET;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.EOF:\n\t\t\t\tthis._err(ERR.eofInCdata);\n\t\t\t\tthis._emitEOFToken();\n\t\t\t\tbreak;\n\t\t\tdefault: this._emitCodePoint(cp);\n\t\t}\n\t}\n\t_stateCdataSectionBracket(cp) {\n\t\tif (cp === CODE_POINTS.RIGHT_SQUARE_BRACKET) this.state = State.CDATA_SECTION_END;\n\t\telse {\n\t\t\tthis._emitChars(\"]\");\n\t\t\tthis.state = State.CDATA_SECTION;\n\t\t\tthis._stateCdataSection(cp);\n\t\t}\n\t}\n\t_stateCdataSectionEnd(cp) {\n\t\tswitch (cp) {\n\t\t\tcase CODE_POINTS.GREATER_THAN_SIGN:\n\t\t\t\tthis.state = State.DATA;\n\t\t\t\tbreak;\n\t\t\tcase CODE_POINTS.RIGHT_SQUARE_BRACKET:\n\t\t\t\tthis._emitChars(\"]\");\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tthis._emitChars(\"]]\");\n\t\t\t\tthis.state = State.CDATA_SECTION;\n\t\t\t\tthis._stateCdataSection(cp);\n\t\t}\n\t}\n\t_stateCharacterReference() {\n\t\tlet length = this.entityDecoder.write(this.preprocessor.html, this.preprocessor.pos);\n\t\tif (length < 0) if (this.preprocessor.lastChunkWritten) length = this.entityDecoder.end();\n\t\telse {\n\t\t\tthis.active = false;\n\t\t\tthis.preprocessor.pos = this.preprocessor.html.length - 1;\n\t\t\tthis.consumedAfterSnapshot = 0;\n\t\t\tthis.preprocessor.endOfChunkHit = true;\n\t\t\treturn;\n\t\t}\n\t\tif (length === 0) {\n\t\t\tthis.preprocessor.pos = this.entityStartPos;\n\t\t\tthis._flushCodePointConsumedAsCharacterReference(CODE_POINTS.AMPERSAND);\n\t\t\tthis.state = !this._isCharacterReferenceInAttribute() && isAsciiAlphaNumeric(this.preprocessor.peek(1)) ? State.AMBIGUOUS_AMPERSAND : this.returnState;\n\t\t} else this.state = this.returnState;\n\t}\n\t_stateAmbiguousAmpersand(cp) {\n\t\tif (isAsciiAlphaNumeric(cp)) this._flushCodePointConsumedAsCharacterReference(cp);\n\t\telse {\n\t\t\tif (cp === CODE_POINTS.SEMICOLON) this._err(ERR.unknownNamedCharacterReference);\n\t\t\tthis.state = this.returnState;\n\t\t\tthis._callState(cp);\n\t\t}\n\t}\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/open-element-stack.js\nconst IMPLICIT_END_TAG_REQUIRED = new Set([\n\tTAG_ID.DD,\n\tTAG_ID.DT,\n\tTAG_ID.LI,\n\tTAG_ID.OPTGROUP,\n\tTAG_ID.OPTION,\n\tTAG_ID.P,\n\tTAG_ID.RB,\n\tTAG_ID.RP,\n\tTAG_ID.RT,\n\tTAG_ID.RTC\n]);\nconst IMPLICIT_END_TAG_REQUIRED_THOROUGHLY = new Set([\n\t...IMPLICIT_END_TAG_REQUIRED,\n\tTAG_ID.CAPTION,\n\tTAG_ID.COLGROUP,\n\tTAG_ID.TBODY,\n\tTAG_ID.TD,\n\tTAG_ID.TFOOT,\n\tTAG_ID.TH,\n\tTAG_ID.THEAD,\n\tTAG_ID.TR\n]);\nconst SCOPING_ELEMENTS_HTML = new Set([\n\tTAG_ID.APPLET,\n\tTAG_ID.CAPTION,\n\tTAG_ID.HTML,\n\tTAG_ID.MARQUEE,\n\tTAG_ID.OBJECT,\n\tTAG_ID.TABLE,\n\tTAG_ID.TD,\n\tTAG_ID.TEMPLATE,\n\tTAG_ID.TH\n]);\nconst SCOPING_ELEMENTS_HTML_LIST = new Set([\n\t...SCOPING_ELEMENTS_HTML,\n\tTAG_ID.OL,\n\tTAG_ID.UL\n]);\nconst SCOPING_ELEMENTS_HTML_BUTTON = new Set([...SCOPING_ELEMENTS_HTML, TAG_ID.BUTTON]);\nconst SCOPING_ELEMENTS_MATHML = new Set([\n\tTAG_ID.ANNOTATION_XML,\n\tTAG_ID.MI,\n\tTAG_ID.MN,\n\tTAG_ID.MO,\n\tTAG_ID.MS,\n\tTAG_ID.MTEXT\n]);\nconst SCOPING_ELEMENTS_SVG = new Set([\n\tTAG_ID.DESC,\n\tTAG_ID.FOREIGN_OBJECT,\n\tTAG_ID.TITLE\n]);\nconst TABLE_ROW_CONTEXT = new Set([\n\tTAG_ID.TR,\n\tTAG_ID.TEMPLATE,\n\tTAG_ID.HTML\n]);\nconst TABLE_BODY_CONTEXT = new Set([\n\tTAG_ID.TBODY,\n\tTAG_ID.TFOOT,\n\tTAG_ID.THEAD,\n\tTAG_ID.TEMPLATE,\n\tTAG_ID.HTML\n]);\nconst TABLE_CONTEXT = new Set([\n\tTAG_ID.TABLE,\n\tTAG_ID.TEMPLATE,\n\tTAG_ID.HTML\n]);\nconst TABLE_CELLS = new Set([TAG_ID.TD, TAG_ID.TH]);\nvar OpenElementStack = class {\n\tget currentTmplContentOrNode() {\n\t\treturn this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current;\n\t}\n\tconstructor(document, treeAdapter, handler) {\n\t\tthis.treeAdapter = treeAdapter;\n\t\tthis.handler = handler;\n\t\tthis.items = [];\n\t\tthis.tagIDs = [];\n\t\tthis.stackTop = -1;\n\t\tthis.tmplCount = 0;\n\t\tthis.currentTagId = TAG_ID.UNKNOWN;\n\t\tthis.current = document;\n\t}\n\t_indexOf(element) {\n\t\treturn this.items.lastIndexOf(element, this.stackTop);\n\t}\n\t_isInTemplate() {\n\t\treturn this.currentTagId === TAG_ID.TEMPLATE && this.treeAdapter.getNamespaceURI(this.current) === NS.HTML;\n\t}\n\t_updateCurrentElement() {\n\t\tthis.current = this.items[this.stackTop];\n\t\tthis.currentTagId = this.tagIDs[this.stackTop];\n\t}\n\tpush(element, tagID) {\n\t\tthis.stackTop++;\n\t\tthis.items[this.stackTop] = element;\n\t\tthis.current = element;\n\t\tthis.tagIDs[this.stackTop] = tagID;\n\t\tthis.currentTagId = tagID;\n\t\tif (this._isInTemplate()) this.tmplCount++;\n\t\tthis.handler.onItemPush(element, tagID, true);\n\t}\n\tpop() {\n\t\tconst popped = this.current;\n\t\tif (this.tmplCount > 0 && this._isInTemplate()) this.tmplCount--;\n\t\tthis.stackTop--;\n\t\tthis._updateCurrentElement();\n\t\tthis.handler.onItemPop(popped, true);\n\t}\n\treplace(oldElement, newElement) {\n\t\tconst idx = this._indexOf(oldElement);\n\t\tthis.items[idx] = newElement;\n\t\tif (idx === this.stackTop) this.current = newElement;\n\t}\n\tinsertAfter(referenceElement, newElement, newElementID) {\n\t\tconst insertionIdx = this._indexOf(referenceElement) + 1;\n\t\tthis.items.splice(insertionIdx, 0, newElement);\n\t\tthis.tagIDs.splice(insertionIdx, 0, newElementID);\n\t\tthis.stackTop++;\n\t\tif (insertionIdx === this.stackTop) this._updateCurrentElement();\n\t\tif (this.current && this.currentTagId !== void 0) this.handler.onItemPush(this.current, this.currentTagId, insertionIdx === this.stackTop);\n\t}\n\tpopUntilTagNamePopped(tagName) {\n\t\tlet targetIdx = this.stackTop + 1;\n\t\tdo\n\t\t\ttargetIdx = this.tagIDs.lastIndexOf(tagName, targetIdx - 1);\n\t\twhile (targetIdx > 0 && this.treeAdapter.getNamespaceURI(this.items[targetIdx]) !== NS.HTML);\n\t\tthis.shortenToLength(Math.max(targetIdx, 0));\n\t}\n\tshortenToLength(idx) {\n\t\twhile (this.stackTop >= idx) {\n\t\t\tconst popped = this.current;\n\t\t\tif (this.tmplCount > 0 && this._isInTemplate()) this.tmplCount -= 1;\n\t\t\tthis.stackTop--;\n\t\t\tthis._updateCurrentElement();\n\t\t\tthis.handler.onItemPop(popped, this.stackTop < idx);\n\t\t}\n\t}\n\tpopUntilElementPopped(element) {\n\t\tconst idx = this._indexOf(element);\n\t\tthis.shortenToLength(Math.max(idx, 0));\n\t}\n\tpopUntilPopped(tagNames, targetNS) {\n\t\tconst idx = this._indexOfTagNames(tagNames, targetNS);\n\t\tthis.shortenToLength(Math.max(idx, 0));\n\t}\n\tpopUntilNumberedHeaderPopped() {\n\t\tthis.popUntilPopped(NUMBERED_HEADERS, NS.HTML);\n\t}\n\tpopUntilTableCellPopped() {\n\t\tthis.popUntilPopped(TABLE_CELLS, NS.HTML);\n\t}\n\tpopAllUpToHtmlElement() {\n\t\tthis.tmplCount = 0;\n\t\tthis.shortenToLength(1);\n\t}\n\t_indexOfTagNames(tagNames, namespace) {\n\t\tfor (let i = this.stackTop; i >= 0; i--) if (tagNames.has(this.tagIDs[i]) && this.treeAdapter.getNamespaceURI(this.items[i]) === namespace) return i;\n\t\treturn -1;\n\t}\n\tclearBackTo(tagNames, targetNS) {\n\t\tconst idx = this._indexOfTagNames(tagNames, targetNS);\n\t\tthis.shortenToLength(idx + 1);\n\t}\n\tclearBackToTableContext() {\n\t\tthis.clearBackTo(TABLE_CONTEXT, NS.HTML);\n\t}\n\tclearBackToTableBodyContext() {\n\t\tthis.clearBackTo(TABLE_BODY_CONTEXT, NS.HTML);\n\t}\n\tclearBackToTableRowContext() {\n\t\tthis.clearBackTo(TABLE_ROW_CONTEXT, NS.HTML);\n\t}\n\tremove(element) {\n\t\tconst idx = this._indexOf(element);\n\t\tif (idx >= 0) if (idx === this.stackTop) this.pop();\n\t\telse {\n\t\t\tthis.items.splice(idx, 1);\n\t\t\tthis.tagIDs.splice(idx, 1);\n\t\t\tthis.stackTop--;\n\t\t\tthis._updateCurrentElement();\n\t\t\tthis.handler.onItemPop(element, false);\n\t\t}\n\t}\n\ttryPeekProperlyNestedBodyElement() {\n\t\treturn this.stackTop >= 1 && this.tagIDs[1] === TAG_ID.BODY ? this.items[1] : null;\n\t}\n\tcontains(element) {\n\t\treturn this._indexOf(element) > -1;\n\t}\n\tgetCommonAncestor(element) {\n\t\tconst elementIdx = this._indexOf(element) - 1;\n\t\treturn elementIdx >= 0 ? this.items[elementIdx] : null;\n\t}\n\tisRootHtmlElementCurrent() {\n\t\treturn this.stackTop === 0 && this.tagIDs[0] === TAG_ID.HTML;\n\t}\n\thasInDynamicScope(tagName, htmlScope) {\n\t\tfor (let i = this.stackTop; i >= 0; i--) {\n\t\t\tconst tn = this.tagIDs[i];\n\t\t\tswitch (this.treeAdapter.getNamespaceURI(this.items[i])) {\n\t\t\t\tcase NS.HTML:\n\t\t\t\t\tif (tn === tagName) return true;\n\t\t\t\t\tif (htmlScope.has(tn)) return false;\n\t\t\t\t\tbreak;\n\t\t\t\tcase NS.SVG:\n\t\t\t\t\tif (SCOPING_ELEMENTS_SVG.has(tn)) return false;\n\t\t\t\t\tbreak;\n\t\t\t\tcase NS.MATHML:\n\t\t\t\t\tif (SCOPING_ELEMENTS_MATHML.has(tn)) return false;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\thasInScope(tagName) {\n\t\treturn this.hasInDynamicScope(tagName, SCOPING_ELEMENTS_HTML);\n\t}\n\thasInListItemScope(tagName) {\n\t\treturn this.hasInDynamicScope(tagName, SCOPING_ELEMENTS_HTML_LIST);\n\t}\n\thasInButtonScope(tagName) {\n\t\treturn this.hasInDynamicScope(tagName, SCOPING_ELEMENTS_HTML_BUTTON);\n\t}\n\thasNumberedHeaderInScope() {\n\t\tfor (let i = this.stackTop; i >= 0; i--) {\n\t\t\tconst tn = this.tagIDs[i];\n\t\t\tswitch (this.treeAdapter.getNamespaceURI(this.items[i])) {\n\t\t\t\tcase NS.HTML:\n\t\t\t\t\tif (NUMBERED_HEADERS.has(tn)) return true;\n\t\t\t\t\tif (SCOPING_ELEMENTS_HTML.has(tn)) return false;\n\t\t\t\t\tbreak;\n\t\t\t\tcase NS.SVG:\n\t\t\t\t\tif (SCOPING_ELEMENTS_SVG.has(tn)) return false;\n\t\t\t\t\tbreak;\n\t\t\t\tcase NS.MATHML:\n\t\t\t\t\tif (SCOPING_ELEMENTS_MATHML.has(tn)) return false;\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\thasInTableScope(tagName) {\n\t\tfor (let i = this.stackTop; i >= 0; i--) {\n\t\t\tif (this.treeAdapter.getNamespaceURI(this.items[i]) !== NS.HTML) continue;\n\t\t\tswitch (this.tagIDs[i]) {\n\t\t\t\tcase tagName: return true;\n\t\t\t\tcase TAG_ID.TABLE:\n\t\t\t\tcase TAG_ID.HTML: return false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\thasTableBodyContextInTableScope() {\n\t\tfor (let i = this.stackTop; i >= 0; i--) {\n\t\t\tif (this.treeAdapter.getNamespaceURI(this.items[i]) !== NS.HTML) continue;\n\t\t\tswitch (this.tagIDs[i]) {\n\t\t\t\tcase TAG_ID.TBODY:\n\t\t\t\tcase TAG_ID.THEAD:\n\t\t\t\tcase TAG_ID.TFOOT: return true;\n\t\t\t\tcase TAG_ID.TABLE:\n\t\t\t\tcase TAG_ID.HTML: return false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\thasInSelectScope(tagName) {\n\t\tfor (let i = this.stackTop; i >= 0; i--) {\n\t\t\tif (this.treeAdapter.getNamespaceURI(this.items[i]) !== NS.HTML) continue;\n\t\t\tswitch (this.tagIDs[i]) {\n\t\t\t\tcase tagName: return true;\n\t\t\t\tcase TAG_ID.OPTION:\n\t\t\t\tcase TAG_ID.OPTGROUP: break;\n\t\t\t\tdefault: return false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\tgenerateImpliedEndTags() {\n\t\twhile (this.currentTagId !== void 0 && IMPLICIT_END_TAG_REQUIRED.has(this.currentTagId)) this.pop();\n\t}\n\tgenerateImpliedEndTagsThoroughly() {\n\t\twhile (this.currentTagId !== void 0 && IMPLICIT_END_TAG_REQUIRED_THOROUGHLY.has(this.currentTagId)) this.pop();\n\t}\n\tgenerateImpliedEndTagsWithExclusion(exclusionId) {\n\t\twhile (this.currentTagId !== void 0 && this.currentTagId !== exclusionId && IMPLICIT_END_TAG_REQUIRED_THOROUGHLY.has(this.currentTagId)) this.pop();\n\t}\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/formatting-element-list.js\nconst NOAH_ARK_CAPACITY = 3;\nvar EntryType;\n(function(EntryType$1) {\n\tEntryType$1[EntryType$1[\"Marker\"] = 0] = \"Marker\";\n\tEntryType$1[EntryType$1[\"Element\"] = 1] = \"Element\";\n})(EntryType || (EntryType = {}));\nconst MARKER = { type: EntryType.Marker };\nvar FormattingElementList = class {\n\tconstructor(treeAdapter) {\n\t\tthis.treeAdapter = treeAdapter;\n\t\tthis.entries = [];\n\t\tthis.bookmark = null;\n\t}\n\t_getNoahArkConditionCandidates(newElement, neAttrs) {\n\t\tconst candidates = [];\n\t\tconst neAttrsLength = neAttrs.length;\n\t\tconst neTagName = this.treeAdapter.getTagName(newElement);\n\t\tconst neNamespaceURI = this.treeAdapter.getNamespaceURI(newElement);\n\t\tfor (let i = 0; i < this.entries.length; i++) {\n\t\t\tconst entry = this.entries[i];\n\t\t\tif (entry.type === EntryType.Marker) break;\n\t\t\tconst { element } = entry;\n\t\t\tif (this.treeAdapter.getTagName(element) === neTagName && this.treeAdapter.getNamespaceURI(element) === neNamespaceURI) {\n\t\t\t\tconst elementAttrs = this.treeAdapter.getAttrList(element);\n\t\t\t\tif (elementAttrs.length === neAttrsLength) candidates.push({\n\t\t\t\t\tidx: i,\n\t\t\t\t\tattrs: elementAttrs\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\treturn candidates;\n\t}\n\t_ensureNoahArkCondition(newElement) {\n\t\tif (this.entries.length < NOAH_ARK_CAPACITY) return;\n\t\tconst neAttrs = this.treeAdapter.getAttrList(newElement);\n\t\tconst candidates = this._getNoahArkConditionCandidates(newElement, neAttrs);\n\t\tif (candidates.length < NOAH_ARK_CAPACITY) return;\n\t\tconst neAttrsMap = new Map(neAttrs.map((neAttr) => [neAttr.name, neAttr.value]));\n\t\tlet validCandidates = 0;\n\t\tfor (let i = 0; i < candidates.length; i++) {\n\t\t\tconst candidate = candidates[i];\n\t\t\tif (candidate.attrs.every((cAttr) => neAttrsMap.get(cAttr.name) === cAttr.value)) {\n\t\t\t\tvalidCandidates += 1;\n\t\t\t\tif (validCandidates >= NOAH_ARK_CAPACITY) this.entries.splice(candidate.idx, 1);\n\t\t\t}\n\t\t}\n\t}\n\tinsertMarker() {\n\t\tthis.entries.unshift(MARKER);\n\t}\n\tpushElement(element, token) {\n\t\tthis._ensureNoahArkCondition(element);\n\t\tthis.entries.unshift({\n\t\t\ttype: EntryType.Element,\n\t\t\telement,\n\t\t\ttoken\n\t\t});\n\t}\n\tinsertElementAfterBookmark(element, token) {\n\t\tconst bookmarkIdx = this.entries.indexOf(this.bookmark);\n\t\tthis.entries.splice(bookmarkIdx, 0, {\n\t\t\ttype: EntryType.Element,\n\t\t\telement,\n\t\t\ttoken\n\t\t});\n\t}\n\tremoveEntry(entry) {\n\t\tconst entryIndex = this.entries.indexOf(entry);\n\t\tif (entryIndex !== -1) this.entries.splice(entryIndex, 1);\n\t}\n\t/**\n\t* Clears the list of formatting elements up to the last marker.\n\t*\n\t* @see https://html.spec.whatwg.org/multipage/parsing.html#clear-the-list-of-active-formatting-elements-up-to-the-last-marker\n\t*/\n\tclearToLastMarker() {\n\t\tconst markerIdx = this.entries.indexOf(MARKER);\n\t\tif (markerIdx === -1) this.entries.length = 0;\n\t\telse this.entries.splice(0, markerIdx + 1);\n\t}\n\tgetElementEntryInScopeWithTagName(tagName) {\n\t\tconst entry = this.entries.find((entry$1) => entry$1.type === EntryType.Marker || this.treeAdapter.getTagName(entry$1.element) === tagName);\n\t\treturn entry && entry.type === EntryType.Element ? entry : null;\n\t}\n\tgetElementEntry(element) {\n\t\treturn this.entries.find((entry) => entry.type === EntryType.Element && entry.element === element);\n\t}\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/tree-adapters/default.js\nconst defaultTreeAdapter = {\n\tcreateDocument() {\n\t\treturn {\n\t\t\tnodeName: \"#document\",\n\t\t\tmode: DOCUMENT_MODE.NO_QUIRKS,\n\t\t\tchildNodes: []\n\t\t};\n\t},\n\tcreateDocumentFragment() {\n\t\treturn {\n\t\t\tnodeName: \"#document-fragment\",\n\t\t\tchildNodes: []\n\t\t};\n\t},\n\tcreateElement(tagName, namespaceURI, attrs) {\n\t\treturn {\n\t\t\tnodeName: tagName,\n\t\t\ttagName,\n\t\t\tattrs,\n\t\t\tnamespaceURI,\n\t\t\tchildNodes: [],\n\t\t\tparentNode: null\n\t\t};\n\t},\n\tcreateCommentNode(data) {\n\t\treturn {\n\t\t\tnodeName: \"#comment\",\n\t\t\tdata,\n\t\t\tparentNode: null\n\t\t};\n\t},\n\tcreateTextNode(value) {\n\t\treturn {\n\t\t\tnodeName: \"#text\",\n\t\t\tvalue,\n\t\t\tparentNode: null\n\t\t};\n\t},\n\tappendChild(parentNode, newNode) {\n\t\tparentNode.childNodes.push(newNode);\n\t\tnewNode.parentNode = parentNode;\n\t},\n\tinsertBefore(parentNode, newNode, referenceNode) {\n\t\tconst insertionIdx = parentNode.childNodes.indexOf(referenceNode);\n\t\tparentNode.childNodes.splice(insertionIdx, 0, newNode);\n\t\tnewNode.parentNode = parentNode;\n\t},\n\tsetTemplateContent(templateElement, contentElement) {\n\t\ttemplateElement.content = contentElement;\n\t},\n\tgetTemplateContent(templateElement) {\n\t\treturn templateElement.content;\n\t},\n\tsetDocumentType(document, name, publicId, systemId) {\n\t\tconst doctypeNode = document.childNodes.find((node) => node.nodeName === \"#documentType\");\n\t\tif (doctypeNode) {\n\t\t\tdoctypeNode.name = name;\n\t\t\tdoctypeNode.publicId = publicId;\n\t\t\tdoctypeNode.systemId = systemId;\n\t\t} else defaultTreeAdapter.appendChild(document, {\n\t\t\tnodeName: \"#documentType\",\n\t\t\tname,\n\t\t\tpublicId,\n\t\t\tsystemId,\n\t\t\tparentNode: null\n\t\t});\n\t},\n\tsetDocumentMode(document, mode) {\n\t\tdocument.mode = mode;\n\t},\n\tgetDocumentMode(document) {\n\t\treturn document.mode;\n\t},\n\tdetachNode(node) {\n\t\tif (node.parentNode) {\n\t\t\tconst idx = node.parentNode.childNodes.indexOf(node);\n\t\t\tnode.parentNode.childNodes.splice(idx, 1);\n\t\t\tnode.parentNode = null;\n\t\t}\n\t},\n\tinsertText(parentNode, text) {\n\t\tif (parentNode.childNodes.length > 0) {\n\t\t\tconst prevNode = parentNode.childNodes[parentNode.childNodes.length - 1];\n\t\t\tif (defaultTreeAdapter.isTextNode(prevNode)) {\n\t\t\t\tprevNode.value += text;\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tdefaultTreeAdapter.appendChild(parentNode, defaultTreeAdapter.createTextNode(text));\n\t},\n\tinsertTextBefore(parentNode, text, referenceNode) {\n\t\tconst prevNode = parentNode.childNodes[parentNode.childNodes.indexOf(referenceNode) - 1];\n\t\tif (prevNode && defaultTreeAdapter.isTextNode(prevNode)) prevNode.value += text;\n\t\telse defaultTreeAdapter.insertBefore(parentNode, defaultTreeAdapter.createTextNode(text), referenceNode);\n\t},\n\tadoptAttributes(recipient, attrs) {\n\t\tconst recipientAttrsMap = new Set(recipient.attrs.map((attr) => attr.name));\n\t\tfor (let j = 0; j < attrs.length; j++) if (!recipientAttrsMap.has(attrs[j].name)) recipient.attrs.push(attrs[j]);\n\t},\n\tgetFirstChild(node) {\n\t\treturn node.childNodes[0];\n\t},\n\tgetChildNodes(node) {\n\t\treturn node.childNodes;\n\t},\n\tgetParentNode(node) {\n\t\treturn node.parentNode;\n\t},\n\tgetAttrList(element) {\n\t\treturn element.attrs;\n\t},\n\tgetTagName(element) {\n\t\treturn element.tagName;\n\t},\n\tgetNamespaceURI(element) {\n\t\treturn element.namespaceURI;\n\t},\n\tgetTextNodeContent(textNode) {\n\t\treturn textNode.value;\n\t},\n\tgetCommentNodeContent(commentNode) {\n\t\treturn commentNode.data;\n\t},\n\tgetDocumentTypeNodeName(doctypeNode) {\n\t\treturn doctypeNode.name;\n\t},\n\tgetDocumentTypeNodePublicId(doctypeNode) {\n\t\treturn doctypeNode.publicId;\n\t},\n\tgetDocumentTypeNodeSystemId(doctypeNode) {\n\t\treturn doctypeNode.systemId;\n\t},\n\tisTextNode(node) {\n\t\treturn node.nodeName === \"#text\";\n\t},\n\tisCommentNode(node) {\n\t\treturn node.nodeName === \"#comment\";\n\t},\n\tisDocumentTypeNode(node) {\n\t\treturn node.nodeName === \"#documentType\";\n\t},\n\tisElementNode(node) {\n\t\treturn Object.prototype.hasOwnProperty.call(node, \"tagName\");\n\t},\n\tsetNodeSourceCodeLocation(node, location) {\n\t\tnode.sourceCodeLocation = location;\n\t},\n\tgetNodeSourceCodeLocation(node) {\n\t\treturn node.sourceCodeLocation;\n\t},\n\tupdateNodeSourceCodeLocation(node, endLocation) {\n\t\tnode.sourceCodeLocation = {\n\t\t\t...node.sourceCodeLocation,\n\t\t\t...endLocation\n\t\t};\n\t}\n};\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/doctype.js\nconst VALID_DOCTYPE_NAME = \"html\";\nconst VALID_SYSTEM_ID = \"about:legacy-compat\";\nconst QUIRKS_MODE_SYSTEM_ID = \"http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd\";\nconst QUIRKS_MODE_PUBLIC_ID_PREFIXES = [\n\t\"+//silmaril//dtd html pro v0r11 19970101//\",\n\t\"-//as//dtd html 3.0 aswedit + extensions//\",\n\t\"-//advasoft ltd//dtd html 3.0 aswedit + extensions//\",\n\t\"-//ietf//dtd html 2.0 level 1//\",\n\t\"-//ietf//dtd html 2.0 level 2//\",\n\t\"-//ietf//dtd html 2.0 strict level 1//\",\n\t\"-//ietf//dtd html 2.0 strict level 2//\",\n\t\"-//ietf//dtd html 2.0 strict//\",\n\t\"-//ietf//dtd html 2.0//\",\n\t\"-//ietf//dtd html 2.1e//\",\n\t\"-//ietf//dtd html 3.0//\",\n\t\"-//ietf//dtd html 3.2 final//\",\n\t\"-//ietf//dtd html 3.2//\",\n\t\"-//ietf//dtd html 3//\",\n\t\"-//ietf//dtd html level 0//\",\n\t\"-//ietf//dtd html level 1//\",\n\t\"-//ietf//dtd html level 2//\",\n\t\"-//ietf//dtd html level 3//\",\n\t\"-//ietf//dtd html strict level 0//\",\n\t\"-//ietf//dtd html strict level 1//\",\n\t\"-//ietf//dtd html strict level 2//\",\n\t\"-//ietf//dtd html strict level 3//\",\n\t\"-//ietf//dtd html strict//\",\n\t\"-//ietf//dtd html//\",\n\t\"-//metrius//dtd metrius presentational//\",\n\t\"-//microsoft//dtd internet explorer 2.0 html strict//\",\n\t\"-//microsoft//dtd internet explorer 2.0 html//\",\n\t\"-//microsoft//dtd internet explorer 2.0 tables//\",\n\t\"-//microsoft//dtd internet explorer 3.0 html strict//\",\n\t\"-//microsoft//dtd internet explorer 3.0 html//\",\n\t\"-//microsoft//dtd internet explorer 3.0 tables//\",\n\t\"-//netscape comm. corp.//dtd html//\",\n\t\"-//netscape comm. corp.//dtd strict html//\",\n\t\"-//o'reilly and associates//dtd html 2.0//\",\n\t\"-//o'reilly and associates//dtd html extended 1.0//\",\n\t\"-//o'reilly and associates//dtd html extended relaxed 1.0//\",\n\t\"-//sq//dtd html 2.0 hotmetal + extensions//\",\n\t\"-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//\",\n\t\"-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//\",\n\t\"-//spyglass//dtd html 2.0 extended//\",\n\t\"-//sun microsystems corp.//dtd hotjava html//\",\n\t\"-//sun microsystems corp.//dtd hotjava strict html//\",\n\t\"-//w3c//dtd html 3 1995-03-24//\",\n\t\"-//w3c//dtd html 3.2 draft//\",\n\t\"-//w3c//dtd html 3.2 final//\",\n\t\"-//w3c//dtd html 3.2//\",\n\t\"-//w3c//dtd html 3.2s draft//\",\n\t\"-//w3c//dtd html 4.0 frameset//\",\n\t\"-//w3c//dtd html 4.0 transitional//\",\n\t\"-//w3c//dtd html experimental 19960712//\",\n\t\"-//w3c//dtd html experimental 970421//\",\n\t\"-//w3c//dtd w3 html//\",\n\t\"-//w3o//dtd w3 html 3.0//\",\n\t\"-//webtechs//dtd mozilla html 2.0//\",\n\t\"-//webtechs//dtd mozilla html//\"\n];\nconst QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES = [\n\t...QUIRKS_MODE_PUBLIC_ID_PREFIXES,\n\t\"-//w3c//dtd html 4.01 frameset//\",\n\t\"-//w3c//dtd html 4.01 transitional//\"\n];\nconst QUIRKS_MODE_PUBLIC_IDS = new Set([\n\t\"-//w3o//dtd w3 html strict 3.0//en//\",\n\t\"-/w3c/dtd html 4.0 transitional/en\",\n\t\"html\"\n]);\nconst LIMITED_QUIRKS_PUBLIC_ID_PREFIXES = [\"-//w3c//dtd xhtml 1.0 frameset//\", \"-//w3c//dtd xhtml 1.0 transitional//\"];\nconst LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES = [\n\t...LIMITED_QUIRKS_PUBLIC_ID_PREFIXES,\n\t\"-//w3c//dtd html 4.01 frameset//\",\n\t\"-//w3c//dtd html 4.01 transitional//\"\n];\nfunction hasPrefix(publicId, prefixes) {\n\treturn prefixes.some((prefix) => publicId.startsWith(prefix));\n}\nfunction isConforming(token) {\n\treturn token.name === VALID_DOCTYPE_NAME && token.publicId === null && (token.systemId === null || token.systemId === VALID_SYSTEM_ID);\n}\nfunction getDocumentMode(token) {\n\tif (token.name !== VALID_DOCTYPE_NAME) return DOCUMENT_MODE.QUIRKS;\n\tconst { systemId } = token;\n\tif (systemId && systemId.toLowerCase() === QUIRKS_MODE_SYSTEM_ID) return DOCUMENT_MODE.QUIRKS;\n\tlet { publicId } = token;\n\tif (publicId !== null) {\n\t\tpublicId = publicId.toLowerCase();\n\t\tif (QUIRKS_MODE_PUBLIC_IDS.has(publicId)) return DOCUMENT_MODE.QUIRKS;\n\t\tlet prefixes = systemId === null ? QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES : QUIRKS_MODE_PUBLIC_ID_PREFIXES;\n\t\tif (hasPrefix(publicId, prefixes)) return DOCUMENT_MODE.QUIRKS;\n\t\tprefixes = systemId === null ? LIMITED_QUIRKS_PUBLIC_ID_PREFIXES : LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES;\n\t\tif (hasPrefix(publicId, prefixes)) return DOCUMENT_MODE.LIMITED_QUIRKS;\n\t}\n\treturn DOCUMENT_MODE.NO_QUIRKS;\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/common/foreign-content.js\nconst MIME_TYPES = {\n\tTEXT_HTML: \"text/html\",\n\tAPPLICATION_XML: \"application/xhtml+xml\"\n};\nconst DEFINITION_URL_ATTR = \"definitionurl\";\nconst ADJUSTED_DEFINITION_URL_ATTR = \"definitionURL\";\nconst SVG_ATTRS_ADJUSTMENT_MAP = new Map([\n\t\"attributeName\",\n\t\"attributeType\",\n\t\"baseFrequency\",\n\t\"baseProfile\",\n\t\"calcMode\",\n\t\"clipPathUnits\",\n\t\"diffuseConstant\",\n\t\"edgeMode\",\n\t\"filterUnits\",\n\t\"glyphRef\",\n\t\"gradientTransform\",\n\t\"gradientUnits\",\n\t\"kernelMatrix\",\n\t\"kernelUnitLength\",\n\t\"keyPoints\",\n\t\"keySplines\",\n\t\"keyTimes\",\n\t\"lengthAdjust\",\n\t\"limitingConeAngle\",\n\t\"markerHeight\",\n\t\"markerUnits\",\n\t\"markerWidth\",\n\t\"maskContentUnits\",\n\t\"maskUnits\",\n\t\"numOctaves\",\n\t\"pathLength\",\n\t\"patternContentUnits\",\n\t\"patternTransform\",\n\t\"patternUnits\",\n\t\"pointsAtX\",\n\t\"pointsAtY\",\n\t\"pointsAtZ\",\n\t\"preserveAlpha\",\n\t\"preserveAspectRatio\",\n\t\"primitiveUnits\",\n\t\"refX\",\n\t\"refY\",\n\t\"repeatCount\",\n\t\"repeatDur\",\n\t\"requiredExtensions\",\n\t\"requiredFeatures\",\n\t\"specularConstant\",\n\t\"specularExponent\",\n\t\"spreadMethod\",\n\t\"startOffset\",\n\t\"stdDeviation\",\n\t\"stitchTiles\",\n\t\"surfaceScale\",\n\t\"systemLanguage\",\n\t\"tableValues\",\n\t\"targetX\",\n\t\"targetY\",\n\t\"textLength\",\n\t\"viewBox\",\n\t\"viewTarget\",\n\t\"xChannelSelector\",\n\t\"yChannelSelector\",\n\t\"zoomAndPan\"\n].map((attr) => [attr.toLowerCase(), attr]));\nconst XML_ATTRS_ADJUSTMENT_MAP = new Map([\n\t[\"xlink:actuate\", {\n\t\tprefix: \"xlink\",\n\t\tname: \"actuate\",\n\t\tnamespace: NS.XLINK\n\t}],\n\t[\"xlink:arcrole\", {\n\t\tprefix: \"xlink\",\n\t\tname: \"arcrole\",\n\t\tnamespace: NS.XLINK\n\t}],\n\t[\"xlink:href\", {\n\t\tprefix: \"xlink\",\n\t\tname: \"href\",\n\t\tnamespace: NS.XLINK\n\t}],\n\t[\"xlink:role\", {\n\t\tprefix: \"xlink\",\n\t\tname: \"role\",\n\t\tnamespace: NS.XLINK\n\t}],\n\t[\"xlink:show\", {\n\t\tprefix: \"xlink\",\n\t\tname: \"show\",\n\t\tnamespace: NS.XLINK\n\t}],\n\t[\"xlink:title\", {\n\t\tprefix: \"xlink\",\n\t\tname: \"title\",\n\t\tnamespace: NS.XLINK\n\t}],\n\t[\"xlink:type\", {\n\t\tprefix: \"xlink\",\n\t\tname: \"type\",\n\t\tnamespace: NS.XLINK\n\t}],\n\t[\"xml:lang\", {\n\t\tprefix: \"xml\",\n\t\tname: \"lang\",\n\t\tnamespace: NS.XML\n\t}],\n\t[\"xml:space\", {\n\t\tprefix: \"xml\",\n\t\tname: \"space\",\n\t\tnamespace: NS.XML\n\t}],\n\t[\"xmlns\", {\n\t\tprefix: \"\",\n\t\tname: \"xmlns\",\n\t\tnamespace: NS.XMLNS\n\t}],\n\t[\"xmlns:xlink\", {\n\t\tprefix: \"xmlns\",\n\t\tname: \"xlink\",\n\t\tnamespace: NS.XMLNS\n\t}]\n]);\nconst SVG_TAG_NAMES_ADJUSTMENT_MAP = new Map([\n\t\"altGlyph\",\n\t\"altGlyphDef\",\n\t\"altGlyphItem\",\n\t\"animateColor\",\n\t\"animateMotion\",\n\t\"animateTransform\",\n\t\"clipPath\",\n\t\"feBlend\",\n\t\"feColorMatrix\",\n\t\"feComponentTransfer\",\n\t\"feComposite\",\n\t\"feConvolveMatrix\",\n\t\"feDiffuseLighting\",\n\t\"feDisplacementMap\",\n\t\"feDistantLight\",\n\t\"feFlood\",\n\t\"feFuncA\",\n\t\"feFuncB\",\n\t\"feFuncG\",\n\t\"feFuncR\",\n\t\"feGaussianBlur\",\n\t\"feImage\",\n\t\"feMerge\",\n\t\"feMergeNode\",\n\t\"feMorphology\",\n\t\"feOffset\",\n\t\"fePointLight\",\n\t\"feSpecularLighting\",\n\t\"feSpotLight\",\n\t\"feTile\",\n\t\"feTurbulence\",\n\t\"foreignObject\",\n\t\"glyphRef\",\n\t\"linearGradient\",\n\t\"radialGradient\",\n\t\"textPath\"\n].map((tn) => [tn.toLowerCase(), tn]));\nconst EXITS_FOREIGN_CONTENT = new Set([\n\tTAG_ID.B,\n\tTAG_ID.BIG,\n\tTAG_ID.BLOCKQUOTE,\n\tTAG_ID.BODY,\n\tTAG_ID.BR,\n\tTAG_ID.CENTER,\n\tTAG_ID.CODE,\n\tTAG_ID.DD,\n\tTAG_ID.DIV,\n\tTAG_ID.DL,\n\tTAG_ID.DT,\n\tTAG_ID.EM,\n\tTAG_ID.EMBED,\n\tTAG_ID.H1,\n\tTAG_ID.H2,\n\tTAG_ID.H3,\n\tTAG_ID.H4,\n\tTAG_ID.H5,\n\tTAG_ID.H6,\n\tTAG_ID.HEAD,\n\tTAG_ID.HR,\n\tTAG_ID.I,\n\tTAG_ID.IMG,\n\tTAG_ID.LI,\n\tTAG_ID.LISTING,\n\tTAG_ID.MENU,\n\tTAG_ID.META,\n\tTAG_ID.NOBR,\n\tTAG_ID.OL,\n\tTAG_ID.P,\n\tTAG_ID.PRE,\n\tTAG_ID.RUBY,\n\tTAG_ID.S,\n\tTAG_ID.SMALL,\n\tTAG_ID.SPAN,\n\tTAG_ID.STRONG,\n\tTAG_ID.STRIKE,\n\tTAG_ID.SUB,\n\tTAG_ID.SUP,\n\tTAG_ID.TABLE,\n\tTAG_ID.TT,\n\tTAG_ID.U,\n\tTAG_ID.UL,\n\tTAG_ID.VAR\n]);\nfunction causesExit(startTagToken) {\n\tconst tn = startTagToken.tagID;\n\treturn tn === TAG_ID.FONT && startTagToken.attrs.some(({ name }) => name === ATTRS.COLOR || name === ATTRS.SIZE || name === ATTRS.FACE) || EXITS_FOREIGN_CONTENT.has(tn);\n}\nfunction adjustTokenMathMLAttrs(token) {\n\tfor (let i = 0; i < token.attrs.length; i++) if (token.attrs[i].name === DEFINITION_URL_ATTR) {\n\t\ttoken.attrs[i].name = ADJUSTED_DEFINITION_URL_ATTR;\n\t\tbreak;\n\t}\n}\nfunction adjustTokenSVGAttrs(token) {\n\tfor (let i = 0; i < token.attrs.length; i++) {\n\t\tconst adjustedAttrName = SVG_ATTRS_ADJUSTMENT_MAP.get(token.attrs[i].name);\n\t\tif (adjustedAttrName != null) token.attrs[i].name = adjustedAttrName;\n\t}\n}\nfunction adjustTokenXMLAttrs(token) {\n\tfor (let i = 0; i < token.attrs.length; i++) {\n\t\tconst adjustedAttrEntry = XML_ATTRS_ADJUSTMENT_MAP.get(token.attrs[i].name);\n\t\tif (adjustedAttrEntry) {\n\t\t\ttoken.attrs[i].prefix = adjustedAttrEntry.prefix;\n\t\t\ttoken.attrs[i].name = adjustedAttrEntry.name;\n\t\t\ttoken.attrs[i].namespace = adjustedAttrEntry.namespace;\n\t\t}\n\t}\n}\nfunction adjustTokenSVGTagName(token) {\n\tconst adjustedTagName = SVG_TAG_NAMES_ADJUSTMENT_MAP.get(token.tagName);\n\tif (adjustedTagName != null) {\n\t\ttoken.tagName = adjustedTagName;\n\t\ttoken.tagID = getTagID(token.tagName);\n\t}\n}\nfunction isMathMLTextIntegrationPoint(tn, ns) {\n\treturn ns === NS.MATHML && (tn === TAG_ID.MI || tn === TAG_ID.MO || tn === TAG_ID.MN || tn === TAG_ID.MS || tn === TAG_ID.MTEXT);\n}\nfunction isHtmlIntegrationPoint(tn, ns, attrs) {\n\tif (ns === NS.MATHML && tn === TAG_ID.ANNOTATION_XML) {\n\t\tfor (let i = 0; i < attrs.length; i++) if (attrs[i].name === ATTRS.ENCODING) {\n\t\t\tconst value = attrs[i].value.toLowerCase();\n\t\t\treturn value === MIME_TYPES.TEXT_HTML || value === MIME_TYPES.APPLICATION_XML;\n\t\t}\n\t}\n\treturn ns === NS.SVG && (tn === TAG_ID.FOREIGN_OBJECT || tn === TAG_ID.DESC || tn === TAG_ID.TITLE);\n}\nfunction isIntegrationPoint(tn, ns, attrs, foreignNS) {\n\treturn (!foreignNS || foreignNS === NS.HTML) && isHtmlIntegrationPoint(tn, ns, attrs) || (!foreignNS || foreignNS === NS.MATHML) && isMathMLTextIntegrationPoint(tn, ns);\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/parser/index.js\nconst HIDDEN_INPUT_TYPE = \"hidden\";\nconst AA_OUTER_LOOP_ITER = 8;\nconst AA_INNER_LOOP_ITER = 3;\nvar InsertionMode;\n(function(InsertionMode$1) {\n\tInsertionMode$1[InsertionMode$1[\"INITIAL\"] = 0] = \"INITIAL\";\n\tInsertionMode$1[InsertionMode$1[\"BEFORE_HTML\"] = 1] = \"BEFORE_HTML\";\n\tInsertionMode$1[InsertionMode$1[\"BEFORE_HEAD\"] = 2] = \"BEFORE_HEAD\";\n\tInsertionMode$1[InsertionMode$1[\"IN_HEAD\"] = 3] = \"IN_HEAD\";\n\tInsertionMode$1[InsertionMode$1[\"IN_HEAD_NO_SCRIPT\"] = 4] = \"IN_HEAD_NO_SCRIPT\";\n\tInsertionMode$1[InsertionMode$1[\"AFTER_HEAD\"] = 5] = \"AFTER_HEAD\";\n\tInsertionMode$1[InsertionMode$1[\"IN_BODY\"] = 6] = \"IN_BODY\";\n\tInsertionMode$1[InsertionMode$1[\"TEXT\"] = 7] = \"TEXT\";\n\tInsertionMode$1[InsertionMode$1[\"IN_TABLE\"] = 8] = \"IN_TABLE\";\n\tInsertionMode$1[InsertionMode$1[\"IN_TABLE_TEXT\"] = 9] = \"IN_TABLE_TEXT\";\n\tInsertionMode$1[InsertionMode$1[\"IN_CAPTION\"] = 10] = \"IN_CAPTION\";\n\tInsertionMode$1[InsertionMode$1[\"IN_COLUMN_GROUP\"] = 11] = \"IN_COLUMN_GROUP\";\n\tInsertionMode$1[InsertionMode$1[\"IN_TABLE_BODY\"] = 12] = \"IN_TABLE_BODY\";\n\tInsertionMode$1[InsertionMode$1[\"IN_ROW\"] = 13] = \"IN_ROW\";\n\tInsertionMode$1[InsertionMode$1[\"IN_CELL\"] = 14] = \"IN_CELL\";\n\tInsertionMode$1[InsertionMode$1[\"IN_SELECT\"] = 15] = \"IN_SELECT\";\n\tInsertionMode$1[InsertionMode$1[\"IN_SELECT_IN_TABLE\"] = 16] = \"IN_SELECT_IN_TABLE\";\n\tInsertionMode$1[InsertionMode$1[\"IN_TEMPLATE\"] = 17] = \"IN_TEMPLATE\";\n\tInsertionMode$1[InsertionMode$1[\"AFTER_BODY\"] = 18] = \"AFTER_BODY\";\n\tInsertionMode$1[InsertionMode$1[\"IN_FRAMESET\"] = 19] = \"IN_FRAMESET\";\n\tInsertionMode$1[InsertionMode$1[\"AFTER_FRAMESET\"] = 20] = \"AFTER_FRAMESET\";\n\tInsertionMode$1[InsertionMode$1[\"AFTER_AFTER_BODY\"] = 21] = \"AFTER_AFTER_BODY\";\n\tInsertionMode$1[InsertionMode$1[\"AFTER_AFTER_FRAMESET\"] = 22] = \"AFTER_AFTER_FRAMESET\";\n})(InsertionMode || (InsertionMode = {}));\nconst BASE_LOC = {\n\tstartLine: -1,\n\tstartCol: -1,\n\tstartOffset: -1,\n\tendLine: -1,\n\tendCol: -1,\n\tendOffset: -1\n};\nconst TABLE_STRUCTURE_TAGS = new Set([\n\tTAG_ID.TABLE,\n\tTAG_ID.TBODY,\n\tTAG_ID.TFOOT,\n\tTAG_ID.THEAD,\n\tTAG_ID.TR\n]);\nconst defaultParserOptions = {\n\tscriptingEnabled: true,\n\tsourceCodeLocationInfo: false,\n\ttreeAdapter: defaultTreeAdapter,\n\tonParseError: null\n};\nvar Parser = class {\n\tconstructor(options, document, fragmentContext = null, scriptHandler = null) {\n\t\tthis.fragmentContext = fragmentContext;\n\t\tthis.scriptHandler = scriptHandler;\n\t\tthis.currentToken = null;\n\t\tthis.stopped = false;\n\t\t/** @internal */\n\t\tthis.insertionMode = InsertionMode.INITIAL;\n\t\t/** @internal */\n\t\tthis.originalInsertionMode = InsertionMode.INITIAL;\n\t\t/** @internal */\n\t\tthis.headElement = null;\n\t\t/** @internal */\n\t\tthis.formElement = null;\n\t\t/** Indicates that the current node is not an element in the HTML namespace */\n\t\tthis.currentNotInHTML = false;\n\t\t/**\n\t\t* The template insertion mode stack is maintained from the left.\n\t\t* Ie. the topmost element will always have index 0.\n\t\t*\n\t\t* @internal\n\t\t*/\n\t\tthis.tmplInsertionModeStack = [];\n\t\t/** @internal */\n\t\tthis.pendingCharacterTokens = [];\n\t\t/** @internal */\n\t\tthis.hasNonWhitespacePendingCharacterToken = false;\n\t\t/** @internal */\n\t\tthis.framesetOk = true;\n\t\t/** @internal */\n\t\tthis.skipNextNewLine = false;\n\t\t/** @internal */\n\t\tthis.fosterParentingEnabled = false;\n\t\tthis.options = {\n\t\t\t...defaultParserOptions,\n\t\t\t...options\n\t\t};\n\t\tthis.treeAdapter = this.options.treeAdapter;\n\t\tthis.onParseError = this.options.onParseError;\n\t\tif (this.onParseError) this.options.sourceCodeLocationInfo = true;\n\t\tthis.document = document !== null && document !== void 0 ? document : this.treeAdapter.createDocument();\n\t\tthis.tokenizer = new Tokenizer(this.options, this);\n\t\tthis.activeFormattingElements = new FormattingElementList(this.treeAdapter);\n\t\tthis.fragmentContextID = fragmentContext ? getTagID(this.treeAdapter.getTagName(fragmentContext)) : TAG_ID.UNKNOWN;\n\t\tthis._setContextModes(fragmentContext !== null && fragmentContext !== void 0 ? fragmentContext : this.document, this.fragmentContextID);\n\t\tthis.openElements = new OpenElementStack(this.document, this.treeAdapter, this);\n\t}\n\tstatic parse(html, options) {\n\t\tconst parser = new this(options);\n\t\tparser.tokenizer.write(html, true);\n\t\treturn parser.document;\n\t}\n\tstatic getFragmentParser(fragmentContext, options) {\n\t\tconst opts = {\n\t\t\t...defaultParserOptions,\n\t\t\t...options\n\t\t};\n\t\tfragmentContext !== null && fragmentContext !== void 0 || (fragmentContext = opts.treeAdapter.createElement(TAG_NAMES.TEMPLATE, NS.HTML, []));\n\t\tconst documentMock = opts.treeAdapter.createElement(\"documentmock\", NS.HTML, []);\n\t\tconst parser = new this(opts, documentMock, fragmentContext);\n\t\tif (parser.fragmentContextID === TAG_ID.TEMPLATE) parser.tmplInsertionModeStack.unshift(InsertionMode.IN_TEMPLATE);\n\t\tparser._initTokenizerForFragmentParsing();\n\t\tparser._insertFakeRootElement();\n\t\tparser._resetInsertionMode();\n\t\tparser._findFormInFragmentContext();\n\t\treturn parser;\n\t}\n\tgetFragment() {\n\t\tconst rootElement = this.treeAdapter.getFirstChild(this.document);\n\t\tconst fragment = this.treeAdapter.createDocumentFragment();\n\t\tthis._adoptNodes(rootElement, fragment);\n\t\treturn fragment;\n\t}\n\t/** @internal */\n\t_err(token, code, beforeToken) {\n\t\tvar _a$1;\n\t\tif (!this.onParseError) return;\n\t\tconst loc = (_a$1 = token.location) !== null && _a$1 !== void 0 ? _a$1 : BASE_LOC;\n\t\tthis.onParseError({\n\t\t\tcode,\n\t\t\tstartLine: loc.startLine,\n\t\t\tstartCol: loc.startCol,\n\t\t\tstartOffset: loc.startOffset,\n\t\t\tendLine: beforeToken ? loc.startLine : loc.endLine,\n\t\t\tendCol: beforeToken ? loc.startCol : loc.endCol,\n\t\t\tendOffset: beforeToken ? loc.startOffset : loc.endOffset\n\t\t});\n\t}\n\t/** @internal */\n\tonItemPush(node, tid, isTop) {\n\t\tvar _a$1, _b;\n\t\t(_b = (_a$1 = this.treeAdapter).onItemPush) === null || _b === void 0 || _b.call(_a$1, node);\n\t\tif (isTop && this.openElements.stackTop > 0) this._setContextModes(node, tid);\n\t}\n\t/** @internal */\n\tonItemPop(node, isTop) {\n\t\tvar _a$1, _b;\n\t\tif (this.options.sourceCodeLocationInfo) this._setEndLocation(node, this.currentToken);\n\t\t(_b = (_a$1 = this.treeAdapter).onItemPop) === null || _b === void 0 || _b.call(_a$1, node, this.openElements.current);\n\t\tif (isTop) {\n\t\t\tlet current;\n\t\t\tlet currentTagId;\n\t\t\tif (this.openElements.stackTop === 0 && this.fragmentContext) {\n\t\t\t\tcurrent = this.fragmentContext;\n\t\t\t\tcurrentTagId = this.fragmentContextID;\n\t\t\t} else ({current, currentTagId} = this.openElements);\n\t\t\tthis._setContextModes(current, currentTagId);\n\t\t}\n\t}\n\t_setContextModes(current, tid) {\n\t\tconst isHTML = current === this.document || current && this.treeAdapter.getNamespaceURI(current) === NS.HTML;\n\t\tthis.currentNotInHTML = !isHTML;\n\t\tthis.tokenizer.inForeignNode = !isHTML && current !== void 0 && tid !== void 0 && !this._isIntegrationPoint(tid, current);\n\t}\n\t/** @protected */\n\t_switchToTextParsing(currentToken, nextTokenizerState) {\n\t\tthis._insertElement(currentToken, NS.HTML);\n\t\tthis.tokenizer.state = nextTokenizerState;\n\t\tthis.originalInsertionMode = this.insertionMode;\n\t\tthis.insertionMode = InsertionMode.TEXT;\n\t}\n\tswitchToPlaintextParsing() {\n\t\tthis.insertionMode = InsertionMode.TEXT;\n\t\tthis.originalInsertionMode = InsertionMode.IN_BODY;\n\t\tthis.tokenizer.state = TokenizerMode.PLAINTEXT;\n\t}\n\t/** @protected */\n\t_getAdjustedCurrentElement() {\n\t\treturn this.openElements.stackTop === 0 && this.fragmentContext ? this.fragmentContext : this.openElements.current;\n\t}\n\t/** @protected */\n\t_findFormInFragmentContext() {\n\t\tlet node = this.fragmentContext;\n\t\twhile (node) {\n\t\t\tif (this.treeAdapter.getTagName(node) === TAG_NAMES.FORM) {\n\t\t\t\tthis.formElement = node;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tnode = this.treeAdapter.getParentNode(node);\n\t\t}\n\t}\n\t_initTokenizerForFragmentParsing() {\n\t\tif (!this.fragmentContext || this.treeAdapter.getNamespaceURI(this.fragmentContext) !== NS.HTML) return;\n\t\tswitch (this.fragmentContextID) {\n\t\t\tcase TAG_ID.TITLE:\n\t\t\tcase TAG_ID.TEXTAREA:\n\t\t\t\tthis.tokenizer.state = TokenizerMode.RCDATA;\n\t\t\t\tbreak;\n\t\t\tcase TAG_ID.STYLE:\n\t\t\tcase TAG_ID.XMP:\n\t\t\tcase TAG_ID.IFRAME:\n\t\t\tcase TAG_ID.NOEMBED:\n\t\t\tcase TAG_ID.NOFRAMES:\n\t\t\tcase TAG_ID.NOSCRIPT:\n\t\t\t\tthis.tokenizer.state = TokenizerMode.RAWTEXT;\n\t\t\t\tbreak;\n\t\t\tcase TAG_ID.SCRIPT:\n\t\t\t\tthis.tokenizer.state = TokenizerMode.SCRIPT_DATA;\n\t\t\t\tbreak;\n\t\t\tcase TAG_ID.PLAINTEXT:\n\t\t\t\tthis.tokenizer.state = TokenizerMode.PLAINTEXT;\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\t/** @protected */\n\t_setDocumentType(token) {\n\t\tthis.treeAdapter.setDocumentType(this.document, token.name || \"\", token.publicId || \"\", token.systemId || \"\");\n\t\tif (token.location) {\n\t\t\tconst docTypeNode = this.treeAdapter.getChildNodes(this.document).find((node) => this.treeAdapter.isDocumentTypeNode(node));\n\t\t\tif (docTypeNode) this.treeAdapter.setNodeSourceCodeLocation(docTypeNode, token.location);\n\t\t}\n\t}\n\t/** @protected */\n\t_attachElementToTree(element, location) {\n\t\tif (this.options.sourceCodeLocationInfo) {\n\t\t\tconst loc = location && {\n\t\t\t\t...location,\n\t\t\t\tstartTag: location\n\t\t\t};\n\t\t\tthis.treeAdapter.setNodeSourceCodeLocation(element, loc);\n\t\t}\n\t\tif (this._shouldFosterParentOnInsertion()) this._fosterParentElement(element);\n\t\telse {\n\t\t\tconst parent = this.openElements.currentTmplContentOrNode;\n\t\t\tthis.treeAdapter.appendChild(parent !== null && parent !== void 0 ? parent : this.document, element);\n\t\t}\n\t}\n\t/**\n\t* For self-closing tags. Add an element to the tree, but skip adding it\n\t* to the stack.\n\t*/\n\t/** @protected */\n\t_appendElement(token, namespaceURI) {\n\t\tconst element = this.treeAdapter.createElement(token.tagName, namespaceURI, token.attrs);\n\t\tthis._attachElementToTree(element, token.location);\n\t}\n\t/** @protected */\n\t_insertElement(token, namespaceURI) {\n\t\tconst element = this.treeAdapter.createElement(token.tagName, namespaceURI, token.attrs);\n\t\tthis._attachElementToTree(element, token.location);\n\t\tthis.openElements.push(element, token.tagID);\n\t}\n\t/** @protected */\n\t_insertFakeElement(tagName, tagID) {\n\t\tconst element = this.treeAdapter.createElement(tagName, NS.HTML, []);\n\t\tthis._attachElementToTree(element, null);\n\t\tthis.openElements.push(element, tagID);\n\t}\n\t/** @protected */\n\t_insertTemplate(token) {\n\t\tconst tmpl = this.treeAdapter.createElement(token.tagName, NS.HTML, token.attrs);\n\t\tconst content = this.treeAdapter.createDocumentFragment();\n\t\tthis.treeAdapter.setTemplateContent(tmpl, content);\n\t\tthis._attachElementToTree(tmpl, token.location);\n\t\tthis.openElements.push(tmpl, token.tagID);\n\t\tif (this.options.sourceCodeLocationInfo) this.treeAdapter.setNodeSourceCodeLocation(content, null);\n\t}\n\t/** @protected */\n\t_insertFakeRootElement() {\n\t\tconst element = this.treeAdapter.createElement(TAG_NAMES.HTML, NS.HTML, []);\n\t\tif (this.options.sourceCodeLocationInfo) this.treeAdapter.setNodeSourceCodeLocation(element, null);\n\t\tthis.treeAdapter.appendChild(this.openElements.current, element);\n\t\tthis.openElements.push(element, TAG_ID.HTML);\n\t}\n\t/** @protected */\n\t_appendCommentNode(token, parent) {\n\t\tconst commentNode = this.treeAdapter.createCommentNode(token.data);\n\t\tthis.treeAdapter.appendChild(parent, commentNode);\n\t\tif (this.options.sourceCodeLocationInfo) this.treeAdapter.setNodeSourceCodeLocation(commentNode, token.location);\n\t}\n\t/** @protected */\n\t_insertCharacters(token) {\n\t\tlet parent;\n\t\tlet beforeElement;\n\t\tif (this._shouldFosterParentOnInsertion()) {\n\t\t\t({parent, beforeElement} = this._findFosterParentingLocation());\n\t\t\tif (beforeElement) this.treeAdapter.insertTextBefore(parent, token.chars, beforeElement);\n\t\t\telse this.treeAdapter.insertText(parent, token.chars);\n\t\t} else {\n\t\t\tparent = this.openElements.currentTmplContentOrNode;\n\t\t\tthis.treeAdapter.insertText(parent, token.chars);\n\t\t}\n\t\tif (!token.location) return;\n\t\tconst siblings = this.treeAdapter.getChildNodes(parent);\n\t\tconst textNodeIdx = beforeElement ? siblings.lastIndexOf(beforeElement) : siblings.length;\n\t\tconst textNode = siblings[textNodeIdx - 1];\n\t\tif (this.treeAdapter.getNodeSourceCodeLocation(textNode)) {\n\t\t\tconst { endLine, endCol, endOffset } = token.location;\n\t\t\tthis.treeAdapter.updateNodeSourceCodeLocation(textNode, {\n\t\t\t\tendLine,\n\t\t\t\tendCol,\n\t\t\t\tendOffset\n\t\t\t});\n\t\t} else if (this.options.sourceCodeLocationInfo) this.treeAdapter.setNodeSourceCodeLocation(textNode, token.location);\n\t}\n\t/** @protected */\n\t_adoptNodes(donor, recipient) {\n\t\tfor (let child = this.treeAdapter.getFirstChild(donor); child; child = this.treeAdapter.getFirstChild(donor)) {\n\t\t\tthis.treeAdapter.detachNode(child);\n\t\t\tthis.treeAdapter.appendChild(recipient, child);\n\t\t}\n\t}\n\t/** @protected */\n\t_setEndLocation(element, closingToken) {\n\t\tif (this.treeAdapter.getNodeSourceCodeLocation(element) && closingToken.location) {\n\t\t\tconst ctLoc = closingToken.location;\n\t\t\tconst tn = this.treeAdapter.getTagName(element);\n\t\t\tconst endLoc = closingToken.type === TokenType.END_TAG && tn === closingToken.tagName ? {\n\t\t\t\tendTag: { ...ctLoc },\n\t\t\t\tendLine: ctLoc.endLine,\n\t\t\t\tendCol: ctLoc.endCol,\n\t\t\t\tendOffset: ctLoc.endOffset\n\t\t\t} : {\n\t\t\t\tendLine: ctLoc.startLine,\n\t\t\t\tendCol: ctLoc.startCol,\n\t\t\t\tendOffset: ctLoc.startOffset\n\t\t\t};\n\t\t\tthis.treeAdapter.updateNodeSourceCodeLocation(element, endLoc);\n\t\t}\n\t}\n\tshouldProcessStartTagTokenInForeignContent(token) {\n\t\tif (!this.currentNotInHTML) return false;\n\t\tlet current;\n\t\tlet currentTagId;\n\t\tif (this.openElements.stackTop === 0 && this.fragmentContext) {\n\t\t\tcurrent = this.fragmentContext;\n\t\t\tcurrentTagId = this.fragmentContextID;\n\t\t} else ({current, currentTagId} = this.openElements);\n\t\tif (token.tagID === TAG_ID.SVG && this.treeAdapter.getTagName(current) === TAG_NAMES.ANNOTATION_XML && this.treeAdapter.getNamespaceURI(current) === NS.MATHML) return false;\n\t\treturn this.tokenizer.inForeignNode || (token.tagID === TAG_ID.MGLYPH || token.tagID === TAG_ID.MALIGNMARK) && currentTagId !== void 0 && !this._isIntegrationPoint(currentTagId, current, NS.HTML);\n\t}\n\t/** @protected */\n\t_processToken(token) {\n\t\tswitch (token.type) {\n\t\t\tcase TokenType.CHARACTER:\n\t\t\t\tthis.onCharacter(token);\n\t\t\t\tbreak;\n\t\t\tcase TokenType.NULL_CHARACTER:\n\t\t\t\tthis.onNullCharacter(token);\n\t\t\t\tbreak;\n\t\t\tcase TokenType.COMMENT:\n\t\t\t\tthis.onComment(token);\n\t\t\t\tbreak;\n\t\t\tcase TokenType.DOCTYPE:\n\t\t\t\tthis.onDoctype(token);\n\t\t\t\tbreak;\n\t\t\tcase TokenType.START_TAG:\n\t\t\t\tthis._processStartTag(token);\n\t\t\t\tbreak;\n\t\t\tcase TokenType.END_TAG:\n\t\t\t\tthis.onEndTag(token);\n\t\t\t\tbreak;\n\t\t\tcase TokenType.EOF:\n\t\t\t\tthis.onEof(token);\n\t\t\t\tbreak;\n\t\t\tcase TokenType.WHITESPACE_CHARACTER:\n\t\t\t\tthis.onWhitespaceCharacter(token);\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t/** @protected */\n\t_isIntegrationPoint(tid, element, foreignNS) {\n\t\tconst ns = this.treeAdapter.getNamespaceURI(element);\n\t\tconst attrs = this.treeAdapter.getAttrList(element);\n\t\treturn isIntegrationPoint(tid, ns, attrs, foreignNS);\n\t}\n\t/** @protected */\n\t_reconstructActiveFormattingElements() {\n\t\tconst listLength = this.activeFormattingElements.entries.length;\n\t\tif (listLength) {\n\t\t\tconst endIndex = this.activeFormattingElements.entries.findIndex((entry) => entry.type === EntryType.Marker || this.openElements.contains(entry.element));\n\t\t\tconst unopenIdx = endIndex === -1 ? listLength - 1 : endIndex - 1;\n\t\t\tfor (let i = unopenIdx; i >= 0; i--) {\n\t\t\t\tconst entry = this.activeFormattingElements.entries[i];\n\t\t\t\tthis._insertElement(entry.token, this.treeAdapter.getNamespaceURI(entry.element));\n\t\t\t\tentry.element = this.openElements.current;\n\t\t\t}\n\t\t}\n\t}\n\t/** @protected */\n\t_closeTableCell() {\n\t\tthis.openElements.generateImpliedEndTags();\n\t\tthis.openElements.popUntilTableCellPopped();\n\t\tthis.activeFormattingElements.clearToLastMarker();\n\t\tthis.insertionMode = InsertionMode.IN_ROW;\n\t}\n\t/** @protected */\n\t_closePElement() {\n\t\tthis.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.P);\n\t\tthis.openElements.popUntilTagNamePopped(TAG_ID.P);\n\t}\n\t/** @protected */\n\t_resetInsertionMode() {\n\t\tfor (let i = this.openElements.stackTop; i >= 0; i--) switch (i === 0 && this.fragmentContext ? this.fragmentContextID : this.openElements.tagIDs[i]) {\n\t\t\tcase TAG_ID.TR:\n\t\t\t\tthis.insertionMode = InsertionMode.IN_ROW;\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.TBODY:\n\t\t\tcase TAG_ID.THEAD:\n\t\t\tcase TAG_ID.TFOOT:\n\t\t\t\tthis.insertionMode = InsertionMode.IN_TABLE_BODY;\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.CAPTION:\n\t\t\t\tthis.insertionMode = InsertionMode.IN_CAPTION;\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.COLGROUP:\n\t\t\t\tthis.insertionMode = InsertionMode.IN_COLUMN_GROUP;\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.TABLE:\n\t\t\t\tthis.insertionMode = InsertionMode.IN_TABLE;\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.BODY:\n\t\t\t\tthis.insertionMode = InsertionMode.IN_BODY;\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.FRAMESET:\n\t\t\t\tthis.insertionMode = InsertionMode.IN_FRAMESET;\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.SELECT:\n\t\t\t\tthis._resetInsertionModeForSelect(i);\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.TEMPLATE:\n\t\t\t\tthis.insertionMode = this.tmplInsertionModeStack[0];\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.HTML:\n\t\t\t\tthis.insertionMode = this.headElement ? InsertionMode.AFTER_HEAD : InsertionMode.BEFORE_HEAD;\n\t\t\t\treturn;\n\t\t\tcase TAG_ID.TD:\n\t\t\tcase TAG_ID.TH:\n\t\t\t\tif (i > 0) {\n\t\t\t\t\tthis.insertionMode = InsertionMode.IN_CELL;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase TAG_ID.HEAD:\n\t\t\t\tif (i > 0) {\n\t\t\t\t\tthis.insertionMode = InsertionMode.IN_HEAD;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t\tthis.insertionMode = InsertionMode.IN_BODY;\n\t}\n\t/** @protected */\n\t_resetInsertionModeForSelect(selectIdx) {\n\t\tif (selectIdx > 0) for (let i = selectIdx - 1; i > 0; i--) {\n\t\t\tconst tn = this.openElements.tagIDs[i];\n\t\t\tif (tn === TAG_ID.TEMPLATE) break;\n\t\t\telse if (tn === TAG_ID.TABLE) {\n\t\t\t\tthis.insertionMode = InsertionMode.IN_SELECT_IN_TABLE;\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.insertionMode = InsertionMode.IN_SELECT;\n\t}\n\t/** @protected */\n\t_isElementCausesFosterParenting(tn) {\n\t\treturn TABLE_STRUCTURE_TAGS.has(tn);\n\t}\n\t/** @protected */\n\t_shouldFosterParentOnInsertion() {\n\t\treturn this.fosterParentingEnabled && this.openElements.currentTagId !== void 0 && this._isElementCausesFosterParenting(this.openElements.currentTagId);\n\t}\n\t/** @protected */\n\t_findFosterParentingLocation() {\n\t\tfor (let i = this.openElements.stackTop; i >= 0; i--) {\n\t\t\tconst openElement = this.openElements.items[i];\n\t\t\tswitch (this.openElements.tagIDs[i]) {\n\t\t\t\tcase TAG_ID.TEMPLATE:\n\t\t\t\t\tif (this.treeAdapter.getNamespaceURI(openElement) === NS.HTML) return {\n\t\t\t\t\t\tparent: this.treeAdapter.getTemplateContent(openElement),\n\t\t\t\t\t\tbeforeElement: null\n\t\t\t\t\t};\n\t\t\t\t\tbreak;\n\t\t\t\tcase TAG_ID.TABLE: {\n\t\t\t\t\tconst parent = this.treeAdapter.getParentNode(openElement);\n\t\t\t\t\tif (parent) return {\n\t\t\t\t\t\tparent,\n\t\t\t\t\t\tbeforeElement: openElement\n\t\t\t\t\t};\n\t\t\t\t\treturn {\n\t\t\t\t\t\tparent: this.openElements.items[i - 1],\n\t\t\t\t\t\tbeforeElement: null\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tdefault:\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\tparent: this.openElements.items[0],\n\t\t\tbeforeElement: null\n\t\t};\n\t}\n\t/** @protected */\n\t_fosterParentElement(element) {\n\t\tconst location = this._findFosterParentingLocation();\n\t\tif (location.beforeElement) this.treeAdapter.insertBefore(location.parent, element, location.beforeElement);\n\t\telse this.treeAdapter.appendChild(location.parent, element);\n\t}\n\t/** @protected */\n\t_isSpecialElement(element, id) {\n\t\tconst ns = this.treeAdapter.getNamespaceURI(element);\n\t\treturn SPECIAL_ELEMENTS[ns].has(id);\n\t}\n\t/** @internal */\n\tonCharacter(token) {\n\t\tthis.skipNextNewLine = false;\n\t\tif (this.tokenizer.inForeignNode) {\n\t\t\tcharacterInForeignContent(this, token);\n\t\t\treturn;\n\t\t}\n\t\tswitch (this.insertionMode) {\n\t\t\tcase InsertionMode.INITIAL:\n\t\t\t\ttokenInInitialMode(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HTML:\n\t\t\t\ttokenBeforeHtml(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HEAD:\n\t\t\t\ttokenBeforeHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD:\n\t\t\t\ttokenInHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD_NO_SCRIPT:\n\t\t\t\ttokenInHeadNoScript(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_HEAD:\n\t\t\t\ttokenAfterHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_BODY:\n\t\t\tcase InsertionMode.IN_CAPTION:\n\t\t\tcase InsertionMode.IN_CELL:\n\t\t\tcase InsertionMode.IN_TEMPLATE:\n\t\t\t\tcharacterInBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.TEXT:\n\t\t\tcase InsertionMode.IN_SELECT:\n\t\t\tcase InsertionMode.IN_SELECT_IN_TABLE:\n\t\t\t\tthis._insertCharacters(token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE:\n\t\t\tcase InsertionMode.IN_TABLE_BODY:\n\t\t\tcase InsertionMode.IN_ROW:\n\t\t\t\tcharacterInTable(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE_TEXT:\n\t\t\t\tcharacterInTableText(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_COLUMN_GROUP:\n\t\t\t\ttokenInColumnGroup(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_BODY:\n\t\t\t\ttokenAfterBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_AFTER_BODY:\n\t\t\t\ttokenAfterAfterBody(this, token);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\t/** @internal */\n\tonNullCharacter(token) {\n\t\tthis.skipNextNewLine = false;\n\t\tif (this.tokenizer.inForeignNode) {\n\t\t\tnullCharacterInForeignContent(this, token);\n\t\t\treturn;\n\t\t}\n\t\tswitch (this.insertionMode) {\n\t\t\tcase InsertionMode.INITIAL:\n\t\t\t\ttokenInInitialMode(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HTML:\n\t\t\t\ttokenBeforeHtml(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HEAD:\n\t\t\t\ttokenBeforeHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD:\n\t\t\t\ttokenInHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD_NO_SCRIPT:\n\t\t\t\ttokenInHeadNoScript(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_HEAD:\n\t\t\t\ttokenAfterHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.TEXT:\n\t\t\t\tthis._insertCharacters(token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE:\n\t\t\tcase InsertionMode.IN_TABLE_BODY:\n\t\t\tcase InsertionMode.IN_ROW:\n\t\t\t\tcharacterInTable(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_COLUMN_GROUP:\n\t\t\t\ttokenInColumnGroup(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_BODY:\n\t\t\t\ttokenAfterBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_AFTER_BODY:\n\t\t\t\ttokenAfterAfterBody(this, token);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\t/** @internal */\n\tonComment(token) {\n\t\tthis.skipNextNewLine = false;\n\t\tif (this.currentNotInHTML) {\n\t\t\tappendComment(this, token);\n\t\t\treturn;\n\t\t}\n\t\tswitch (this.insertionMode) {\n\t\t\tcase InsertionMode.INITIAL:\n\t\t\tcase InsertionMode.BEFORE_HTML:\n\t\t\tcase InsertionMode.BEFORE_HEAD:\n\t\t\tcase InsertionMode.IN_HEAD:\n\t\t\tcase InsertionMode.IN_HEAD_NO_SCRIPT:\n\t\t\tcase InsertionMode.AFTER_HEAD:\n\t\t\tcase InsertionMode.IN_BODY:\n\t\t\tcase InsertionMode.IN_TABLE:\n\t\t\tcase InsertionMode.IN_CAPTION:\n\t\t\tcase InsertionMode.IN_COLUMN_GROUP:\n\t\t\tcase InsertionMode.IN_TABLE_BODY:\n\t\t\tcase InsertionMode.IN_ROW:\n\t\t\tcase InsertionMode.IN_CELL:\n\t\t\tcase InsertionMode.IN_SELECT:\n\t\t\tcase InsertionMode.IN_SELECT_IN_TABLE:\n\t\t\tcase InsertionMode.IN_TEMPLATE:\n\t\t\tcase InsertionMode.IN_FRAMESET:\n\t\t\tcase InsertionMode.AFTER_FRAMESET:\n\t\t\t\tappendComment(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE_TEXT:\n\t\t\t\ttokenInTableText(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_BODY:\n\t\t\t\tappendCommentToRootHtmlElement(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_AFTER_BODY:\n\t\t\tcase InsertionMode.AFTER_AFTER_FRAMESET:\n\t\t\t\tappendCommentToDocument(this, token);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\t/** @internal */\n\tonDoctype(token) {\n\t\tthis.skipNextNewLine = false;\n\t\tswitch (this.insertionMode) {\n\t\t\tcase InsertionMode.INITIAL:\n\t\t\t\tdoctypeInInitialMode(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HEAD:\n\t\t\tcase InsertionMode.IN_HEAD:\n\t\t\tcase InsertionMode.IN_HEAD_NO_SCRIPT:\n\t\t\tcase InsertionMode.AFTER_HEAD:\n\t\t\t\tthis._err(token, ERR.misplacedDoctype);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE_TEXT:\n\t\t\t\ttokenInTableText(this, token);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\t/** @internal */\n\tonStartTag(token) {\n\t\tthis.skipNextNewLine = false;\n\t\tthis.currentToken = token;\n\t\tthis._processStartTag(token);\n\t\tif (token.selfClosing && !token.ackSelfClosing) this._err(token, ERR.nonVoidHtmlElementStartTagWithTrailingSolidus);\n\t}\n\t/**\n\t* Processes a given start tag.\n\t*\n\t* `onStartTag` checks if a self-closing tag was recognized. When a token\n\t* is moved inbetween multiple insertion modes, this check for self-closing\n\t* could lead to false positives. To avoid this, `_processStartTag` is used\n\t* for nested calls.\n\t*\n\t* @param token The token to process.\n\t* @protected\n\t*/\n\t_processStartTag(token) {\n\t\tif (this.shouldProcessStartTagTokenInForeignContent(token)) startTagInForeignContent(this, token);\n\t\telse this._startTagOutsideForeignContent(token);\n\t}\n\t/** @protected */\n\t_startTagOutsideForeignContent(token) {\n\t\tswitch (this.insertionMode) {\n\t\t\tcase InsertionMode.INITIAL:\n\t\t\t\ttokenInInitialMode(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HTML:\n\t\t\t\tstartTagBeforeHtml(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HEAD:\n\t\t\t\tstartTagBeforeHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD:\n\t\t\t\tstartTagInHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD_NO_SCRIPT:\n\t\t\t\tstartTagInHeadNoScript(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_HEAD:\n\t\t\t\tstartTagAfterHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_BODY:\n\t\t\t\tstartTagInBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE:\n\t\t\t\tstartTagInTable(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE_TEXT:\n\t\t\t\ttokenInTableText(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_CAPTION:\n\t\t\t\tstartTagInCaption(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_COLUMN_GROUP:\n\t\t\t\tstartTagInColumnGroup(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE_BODY:\n\t\t\t\tstartTagInTableBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_ROW:\n\t\t\t\tstartTagInRow(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_CELL:\n\t\t\t\tstartTagInCell(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_SELECT:\n\t\t\t\tstartTagInSelect(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_SELECT_IN_TABLE:\n\t\t\t\tstartTagInSelectInTable(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TEMPLATE:\n\t\t\t\tstartTagInTemplate(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_BODY:\n\t\t\t\tstartTagAfterBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_FRAMESET:\n\t\t\t\tstartTagInFrameset(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_FRAMESET:\n\t\t\t\tstartTagAfterFrameset(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_AFTER_BODY:\n\t\t\t\tstartTagAfterAfterBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_AFTER_FRAMESET:\n\t\t\t\tstartTagAfterAfterFrameset(this, token);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\t/** @internal */\n\tonEndTag(token) {\n\t\tthis.skipNextNewLine = false;\n\t\tthis.currentToken = token;\n\t\tif (this.currentNotInHTML) endTagInForeignContent(this, token);\n\t\telse this._endTagOutsideForeignContent(token);\n\t}\n\t/** @protected */\n\t_endTagOutsideForeignContent(token) {\n\t\tswitch (this.insertionMode) {\n\t\t\tcase InsertionMode.INITIAL:\n\t\t\t\ttokenInInitialMode(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HTML:\n\t\t\t\tendTagBeforeHtml(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HEAD:\n\t\t\t\tendTagBeforeHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD:\n\t\t\t\tendTagInHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD_NO_SCRIPT:\n\t\t\t\tendTagInHeadNoScript(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_HEAD:\n\t\t\t\tendTagAfterHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_BODY:\n\t\t\t\tendTagInBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.TEXT:\n\t\t\t\tendTagInText(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE:\n\t\t\t\tendTagInTable(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE_TEXT:\n\t\t\t\ttokenInTableText(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_CAPTION:\n\t\t\t\tendTagInCaption(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_COLUMN_GROUP:\n\t\t\t\tendTagInColumnGroup(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE_BODY:\n\t\t\t\tendTagInTableBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_ROW:\n\t\t\t\tendTagInRow(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_CELL:\n\t\t\t\tendTagInCell(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_SELECT:\n\t\t\t\tendTagInSelect(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_SELECT_IN_TABLE:\n\t\t\t\tendTagInSelectInTable(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TEMPLATE:\n\t\t\t\tendTagInTemplate(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_BODY:\n\t\t\t\tendTagAfterBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_FRAMESET:\n\t\t\t\tendTagInFrameset(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_FRAMESET:\n\t\t\t\tendTagAfterFrameset(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_AFTER_BODY:\n\t\t\t\ttokenAfterAfterBody(this, token);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\t/** @internal */\n\tonEof(token) {\n\t\tswitch (this.insertionMode) {\n\t\t\tcase InsertionMode.INITIAL:\n\t\t\t\ttokenInInitialMode(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HTML:\n\t\t\t\ttokenBeforeHtml(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.BEFORE_HEAD:\n\t\t\t\ttokenBeforeHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD:\n\t\t\t\ttokenInHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_HEAD_NO_SCRIPT:\n\t\t\t\ttokenInHeadNoScript(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_HEAD:\n\t\t\t\ttokenAfterHead(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_BODY:\n\t\t\tcase InsertionMode.IN_TABLE:\n\t\t\tcase InsertionMode.IN_CAPTION:\n\t\t\tcase InsertionMode.IN_COLUMN_GROUP:\n\t\t\tcase InsertionMode.IN_TABLE_BODY:\n\t\t\tcase InsertionMode.IN_ROW:\n\t\t\tcase InsertionMode.IN_CELL:\n\t\t\tcase InsertionMode.IN_SELECT:\n\t\t\tcase InsertionMode.IN_SELECT_IN_TABLE:\n\t\t\t\teofInBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.TEXT:\n\t\t\t\teofInText(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE_TEXT:\n\t\t\t\ttokenInTableText(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TEMPLATE:\n\t\t\t\teofInTemplate(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.AFTER_BODY:\n\t\t\tcase InsertionMode.IN_FRAMESET:\n\t\t\tcase InsertionMode.AFTER_FRAMESET:\n\t\t\tcase InsertionMode.AFTER_AFTER_BODY:\n\t\t\tcase InsertionMode.AFTER_AFTER_FRAMESET:\n\t\t\t\tstopParsing(this, token);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n\t/** @internal */\n\tonWhitespaceCharacter(token) {\n\t\tif (this.skipNextNewLine) {\n\t\t\tthis.skipNextNewLine = false;\n\t\t\tif (token.chars.charCodeAt(0) === CODE_POINTS.LINE_FEED) {\n\t\t\t\tif (token.chars.length === 1) return;\n\t\t\t\ttoken.chars = token.chars.substr(1);\n\t\t\t}\n\t\t}\n\t\tif (this.tokenizer.inForeignNode) {\n\t\t\tthis._insertCharacters(token);\n\t\t\treturn;\n\t\t}\n\t\tswitch (this.insertionMode) {\n\t\t\tcase InsertionMode.IN_HEAD:\n\t\t\tcase InsertionMode.IN_HEAD_NO_SCRIPT:\n\t\t\tcase InsertionMode.AFTER_HEAD:\n\t\t\tcase InsertionMode.TEXT:\n\t\t\tcase InsertionMode.IN_COLUMN_GROUP:\n\t\t\tcase InsertionMode.IN_SELECT:\n\t\t\tcase InsertionMode.IN_SELECT_IN_TABLE:\n\t\t\tcase InsertionMode.IN_FRAMESET:\n\t\t\tcase InsertionMode.AFTER_FRAMESET:\n\t\t\t\tthis._insertCharacters(token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_BODY:\n\t\t\tcase InsertionMode.IN_CAPTION:\n\t\t\tcase InsertionMode.IN_CELL:\n\t\t\tcase InsertionMode.IN_TEMPLATE:\n\t\t\tcase InsertionMode.AFTER_BODY:\n\t\t\tcase InsertionMode.AFTER_AFTER_BODY:\n\t\t\tcase InsertionMode.AFTER_AFTER_FRAMESET:\n\t\t\t\twhitespaceCharacterInBody(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE:\n\t\t\tcase InsertionMode.IN_TABLE_BODY:\n\t\t\tcase InsertionMode.IN_ROW:\n\t\t\t\tcharacterInTable(this, token);\n\t\t\t\tbreak;\n\t\t\tcase InsertionMode.IN_TABLE_TEXT:\n\t\t\t\twhitespaceCharacterInTableText(this, token);\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t}\n\t}\n};\nfunction aaObtainFormattingElementEntry(p, token) {\n\tlet formattingElementEntry = p.activeFormattingElements.getElementEntryInScopeWithTagName(token.tagName);\n\tif (formattingElementEntry) {\n\t\tif (!p.openElements.contains(formattingElementEntry.element)) {\n\t\t\tp.activeFormattingElements.removeEntry(formattingElementEntry);\n\t\t\tformattingElementEntry = null;\n\t\t} else if (!p.openElements.hasInScope(token.tagID)) formattingElementEntry = null;\n\t} else genericEndTagInBody(p, token);\n\treturn formattingElementEntry;\n}\nfunction aaObtainFurthestBlock(p, formattingElementEntry) {\n\tlet furthestBlock = null;\n\tlet idx = p.openElements.stackTop;\n\tfor (; idx >= 0; idx--) {\n\t\tconst element = p.openElements.items[idx];\n\t\tif (element === formattingElementEntry.element) break;\n\t\tif (p._isSpecialElement(element, p.openElements.tagIDs[idx])) furthestBlock = element;\n\t}\n\tif (!furthestBlock) {\n\t\tp.openElements.shortenToLength(Math.max(idx, 0));\n\t\tp.activeFormattingElements.removeEntry(formattingElementEntry);\n\t}\n\treturn furthestBlock;\n}\nfunction aaInnerLoop(p, furthestBlock, formattingElement) {\n\tlet lastElement = furthestBlock;\n\tlet nextElement = p.openElements.getCommonAncestor(furthestBlock);\n\tfor (let i = 0, element = nextElement; element !== formattingElement; i++, element = nextElement) {\n\t\tnextElement = p.openElements.getCommonAncestor(element);\n\t\tconst elementEntry = p.activeFormattingElements.getElementEntry(element);\n\t\tconst counterOverflow = elementEntry && i >= AA_INNER_LOOP_ITER;\n\t\tif (!elementEntry || counterOverflow) {\n\t\t\tif (counterOverflow) p.activeFormattingElements.removeEntry(elementEntry);\n\t\t\tp.openElements.remove(element);\n\t\t} else {\n\t\t\telement = aaRecreateElementFromEntry(p, elementEntry);\n\t\t\tif (lastElement === furthestBlock) p.activeFormattingElements.bookmark = elementEntry;\n\t\t\tp.treeAdapter.detachNode(lastElement);\n\t\t\tp.treeAdapter.appendChild(element, lastElement);\n\t\t\tlastElement = element;\n\t\t}\n\t}\n\treturn lastElement;\n}\nfunction aaRecreateElementFromEntry(p, elementEntry) {\n\tconst ns = p.treeAdapter.getNamespaceURI(elementEntry.element);\n\tconst newElement = p.treeAdapter.createElement(elementEntry.token.tagName, ns, elementEntry.token.attrs);\n\tp.openElements.replace(elementEntry.element, newElement);\n\telementEntry.element = newElement;\n\treturn newElement;\n}\nfunction aaInsertLastNodeInCommonAncestor(p, commonAncestor, lastElement) {\n\tconst tn = p.treeAdapter.getTagName(commonAncestor);\n\tconst tid = getTagID(tn);\n\tif (p._isElementCausesFosterParenting(tid)) p._fosterParentElement(lastElement);\n\telse {\n\t\tconst ns = p.treeAdapter.getNamespaceURI(commonAncestor);\n\t\tif (tid === TAG_ID.TEMPLATE && ns === NS.HTML) commonAncestor = p.treeAdapter.getTemplateContent(commonAncestor);\n\t\tp.treeAdapter.appendChild(commonAncestor, lastElement);\n\t}\n}\nfunction aaReplaceFormattingElement(p, furthestBlock, formattingElementEntry) {\n\tconst ns = p.treeAdapter.getNamespaceURI(formattingElementEntry.element);\n\tconst { token } = formattingElementEntry;\n\tconst newElement = p.treeAdapter.createElement(token.tagName, ns, token.attrs);\n\tp._adoptNodes(furthestBlock, newElement);\n\tp.treeAdapter.appendChild(furthestBlock, newElement);\n\tp.activeFormattingElements.insertElementAfterBookmark(newElement, token);\n\tp.activeFormattingElements.removeEntry(formattingElementEntry);\n\tp.openElements.remove(formattingElementEntry.element);\n\tp.openElements.insertAfter(furthestBlock, newElement, token.tagID);\n}\nfunction callAdoptionAgency(p, token) {\n\tfor (let i = 0; i < AA_OUTER_LOOP_ITER; i++) {\n\t\tconst formattingElementEntry = aaObtainFormattingElementEntry(p, token);\n\t\tif (!formattingElementEntry) break;\n\t\tconst furthestBlock = aaObtainFurthestBlock(p, formattingElementEntry);\n\t\tif (!furthestBlock) break;\n\t\tp.activeFormattingElements.bookmark = formattingElementEntry;\n\t\tconst lastElement = aaInnerLoop(p, furthestBlock, formattingElementEntry.element);\n\t\tconst commonAncestor = p.openElements.getCommonAncestor(formattingElementEntry.element);\n\t\tp.treeAdapter.detachNode(lastElement);\n\t\tif (commonAncestor) aaInsertLastNodeInCommonAncestor(p, commonAncestor, lastElement);\n\t\taaReplaceFormattingElement(p, furthestBlock, formattingElementEntry);\n\t}\n}\nfunction appendComment(p, token) {\n\tp._appendCommentNode(token, p.openElements.currentTmplContentOrNode);\n}\nfunction appendCommentToRootHtmlElement(p, token) {\n\tp._appendCommentNode(token, p.openElements.items[0]);\n}\nfunction appendCommentToDocument(p, token) {\n\tp._appendCommentNode(token, p.document);\n}\nfunction stopParsing(p, token) {\n\tp.stopped = true;\n\tif (token.location) {\n\t\tconst target = p.fragmentContext ? 0 : 2;\n\t\tfor (let i = p.openElements.stackTop; i >= target; i--) p._setEndLocation(p.openElements.items[i], token);\n\t\tif (!p.fragmentContext && p.openElements.stackTop >= 0) {\n\t\t\tconst htmlElement = p.openElements.items[0];\n\t\t\tconst htmlLocation = p.treeAdapter.getNodeSourceCodeLocation(htmlElement);\n\t\t\tif (htmlLocation && !htmlLocation.endTag) {\n\t\t\t\tp._setEndLocation(htmlElement, token);\n\t\t\t\tif (p.openElements.stackTop >= 1) {\n\t\t\t\t\tconst bodyElement = p.openElements.items[1];\n\t\t\t\t\tconst bodyLocation = p.treeAdapter.getNodeSourceCodeLocation(bodyElement);\n\t\t\t\t\tif (bodyLocation && !bodyLocation.endTag) p._setEndLocation(bodyElement, token);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\nfunction doctypeInInitialMode(p, token) {\n\tp._setDocumentType(token);\n\tconst mode = token.forceQuirks ? DOCUMENT_MODE.QUIRKS : getDocumentMode(token);\n\tif (!isConforming(token)) p._err(token, ERR.nonConformingDoctype);\n\tp.treeAdapter.setDocumentMode(p.document, mode);\n\tp.insertionMode = InsertionMode.BEFORE_HTML;\n}\nfunction tokenInInitialMode(p, token) {\n\tp._err(token, ERR.missingDoctype, true);\n\tp.treeAdapter.setDocumentMode(p.document, DOCUMENT_MODE.QUIRKS);\n\tp.insertionMode = InsertionMode.BEFORE_HTML;\n\tp._processToken(token);\n}\nfunction startTagBeforeHtml(p, token) {\n\tif (token.tagID === TAG_ID.HTML) {\n\t\tp._insertElement(token, NS.HTML);\n\t\tp.insertionMode = InsertionMode.BEFORE_HEAD;\n\t} else tokenBeforeHtml(p, token);\n}\nfunction endTagBeforeHtml(p, token) {\n\tconst tn = token.tagID;\n\tif (tn === TAG_ID.HTML || tn === TAG_ID.HEAD || tn === TAG_ID.BODY || tn === TAG_ID.BR) tokenBeforeHtml(p, token);\n}\nfunction tokenBeforeHtml(p, token) {\n\tp._insertFakeRootElement();\n\tp.insertionMode = InsertionMode.BEFORE_HEAD;\n\tp._processToken(token);\n}\nfunction startTagBeforeHead(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HTML:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.HEAD:\n\t\t\tp._insertElement(token, NS.HTML);\n\t\t\tp.headElement = p.openElements.current;\n\t\t\tp.insertionMode = InsertionMode.IN_HEAD;\n\t\t\tbreak;\n\t\tdefault: tokenBeforeHead(p, token);\n\t}\n}\nfunction endTagBeforeHead(p, token) {\n\tconst tn = token.tagID;\n\tif (tn === TAG_ID.HEAD || tn === TAG_ID.BODY || tn === TAG_ID.HTML || tn === TAG_ID.BR) tokenBeforeHead(p, token);\n\telse p._err(token, ERR.endTagWithoutMatchingOpenElement);\n}\nfunction tokenBeforeHead(p, token) {\n\tp._insertFakeElement(TAG_NAMES.HEAD, TAG_ID.HEAD);\n\tp.headElement = p.openElements.current;\n\tp.insertionMode = InsertionMode.IN_HEAD;\n\tp._processToken(token);\n}\nfunction startTagInHead(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HTML:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.BASE:\n\t\tcase TAG_ID.BASEFONT:\n\t\tcase TAG_ID.BGSOUND:\n\t\tcase TAG_ID.LINK:\n\t\tcase TAG_ID.META:\n\t\t\tp._appendElement(token, NS.HTML);\n\t\t\ttoken.ackSelfClosing = true;\n\t\t\tbreak;\n\t\tcase TAG_ID.TITLE:\n\t\t\tp._switchToTextParsing(token, TokenizerMode.RCDATA);\n\t\t\tbreak;\n\t\tcase TAG_ID.NOSCRIPT:\n\t\t\tif (p.options.scriptingEnabled) p._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n\t\t\telse {\n\t\t\t\tp._insertElement(token, NS.HTML);\n\t\t\t\tp.insertionMode = InsertionMode.IN_HEAD_NO_SCRIPT;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.NOFRAMES:\n\t\tcase TAG_ID.STYLE:\n\t\t\tp._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n\t\t\tbreak;\n\t\tcase TAG_ID.SCRIPT:\n\t\t\tp._switchToTextParsing(token, TokenizerMode.SCRIPT_DATA);\n\t\t\tbreak;\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\tp._insertTemplate(token);\n\t\t\tp.activeFormattingElements.insertMarker();\n\t\t\tp.framesetOk = false;\n\t\t\tp.insertionMode = InsertionMode.IN_TEMPLATE;\n\t\t\tp.tmplInsertionModeStack.unshift(InsertionMode.IN_TEMPLATE);\n\t\t\tbreak;\n\t\tcase TAG_ID.HEAD:\n\t\t\tp._err(token, ERR.misplacedStartTagForHeadElement);\n\t\t\tbreak;\n\t\tdefault: tokenInHead(p, token);\n\t}\n}\nfunction endTagInHead(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HEAD:\n\t\t\tp.openElements.pop();\n\t\t\tp.insertionMode = InsertionMode.AFTER_HEAD;\n\t\t\tbreak;\n\t\tcase TAG_ID.BODY:\n\t\tcase TAG_ID.BR:\n\t\tcase TAG_ID.HTML:\n\t\t\ttokenInHead(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\ttemplateEndTagInHead(p, token);\n\t\t\tbreak;\n\t\tdefault: p._err(token, ERR.endTagWithoutMatchingOpenElement);\n\t}\n}\nfunction templateEndTagInHead(p, token) {\n\tif (p.openElements.tmplCount > 0) {\n\t\tp.openElements.generateImpliedEndTagsThoroughly();\n\t\tif (p.openElements.currentTagId !== TAG_ID.TEMPLATE) p._err(token, ERR.closingOfElementWithOpenChildElements);\n\t\tp.openElements.popUntilTagNamePopped(TAG_ID.TEMPLATE);\n\t\tp.activeFormattingElements.clearToLastMarker();\n\t\tp.tmplInsertionModeStack.shift();\n\t\tp._resetInsertionMode();\n\t} else p._err(token, ERR.endTagWithoutMatchingOpenElement);\n}\nfunction tokenInHead(p, token) {\n\tp.openElements.pop();\n\tp.insertionMode = InsertionMode.AFTER_HEAD;\n\tp._processToken(token);\n}\nfunction startTagInHeadNoScript(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HTML:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.BASEFONT:\n\t\tcase TAG_ID.BGSOUND:\n\t\tcase TAG_ID.HEAD:\n\t\tcase TAG_ID.LINK:\n\t\tcase TAG_ID.META:\n\t\tcase TAG_ID.NOFRAMES:\n\t\tcase TAG_ID.STYLE:\n\t\t\tstartTagInHead(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.NOSCRIPT:\n\t\t\tp._err(token, ERR.nestedNoscriptInHead);\n\t\t\tbreak;\n\t\tdefault: tokenInHeadNoScript(p, token);\n\t}\n}\nfunction endTagInHeadNoScript(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.NOSCRIPT:\n\t\t\tp.openElements.pop();\n\t\t\tp.insertionMode = InsertionMode.IN_HEAD;\n\t\t\tbreak;\n\t\tcase TAG_ID.BR:\n\t\t\ttokenInHeadNoScript(p, token);\n\t\t\tbreak;\n\t\tdefault: p._err(token, ERR.endTagWithoutMatchingOpenElement);\n\t}\n}\nfunction tokenInHeadNoScript(p, token) {\n\tp._err(token, token.type === TokenType.EOF ? ERR.openElementsLeftAfterEof : ERR.disallowedContentInNoscriptInHead);\n\tp.openElements.pop();\n\tp.insertionMode = InsertionMode.IN_HEAD;\n\tp._processToken(token);\n}\nfunction startTagAfterHead(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HTML:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.BODY:\n\t\t\tp._insertElement(token, NS.HTML);\n\t\t\tp.framesetOk = false;\n\t\t\tp.insertionMode = InsertionMode.IN_BODY;\n\t\t\tbreak;\n\t\tcase TAG_ID.FRAMESET:\n\t\t\tp._insertElement(token, NS.HTML);\n\t\t\tp.insertionMode = InsertionMode.IN_FRAMESET;\n\t\t\tbreak;\n\t\tcase TAG_ID.BASE:\n\t\tcase TAG_ID.BASEFONT:\n\t\tcase TAG_ID.BGSOUND:\n\t\tcase TAG_ID.LINK:\n\t\tcase TAG_ID.META:\n\t\tcase TAG_ID.NOFRAMES:\n\t\tcase TAG_ID.SCRIPT:\n\t\tcase TAG_ID.STYLE:\n\t\tcase TAG_ID.TEMPLATE:\n\t\tcase TAG_ID.TITLE:\n\t\t\tp._err(token, ERR.abandonedHeadElementChild);\n\t\t\tp.openElements.push(p.headElement, TAG_ID.HEAD);\n\t\t\tstartTagInHead(p, token);\n\t\t\tp.openElements.remove(p.headElement);\n\t\t\tbreak;\n\t\tcase TAG_ID.HEAD:\n\t\t\tp._err(token, ERR.misplacedStartTagForHeadElement);\n\t\t\tbreak;\n\t\tdefault: tokenAfterHead(p, token);\n\t}\n}\nfunction endTagAfterHead(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.BODY:\n\t\tcase TAG_ID.HTML:\n\t\tcase TAG_ID.BR:\n\t\t\ttokenAfterHead(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\ttemplateEndTagInHead(p, token);\n\t\t\tbreak;\n\t\tdefault: p._err(token, ERR.endTagWithoutMatchingOpenElement);\n\t}\n}\nfunction tokenAfterHead(p, token) {\n\tp._insertFakeElement(TAG_NAMES.BODY, TAG_ID.BODY);\n\tp.insertionMode = InsertionMode.IN_BODY;\n\tmodeInBody(p, token);\n}\nfunction modeInBody(p, token) {\n\tswitch (token.type) {\n\t\tcase TokenType.CHARACTER:\n\t\t\tcharacterInBody(p, token);\n\t\t\tbreak;\n\t\tcase TokenType.WHITESPACE_CHARACTER:\n\t\t\twhitespaceCharacterInBody(p, token);\n\t\t\tbreak;\n\t\tcase TokenType.COMMENT:\n\t\t\tappendComment(p, token);\n\t\t\tbreak;\n\t\tcase TokenType.START_TAG:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TokenType.END_TAG:\n\t\t\tendTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TokenType.EOF:\n\t\t\teofInBody(p, token);\n\t\t\tbreak;\n\t\tdefault:\n\t}\n}\nfunction whitespaceCharacterInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tp._insertCharacters(token);\n}\nfunction characterInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tp._insertCharacters(token);\n\tp.framesetOk = false;\n}\nfunction htmlStartTagInBody(p, token) {\n\tif (p.openElements.tmplCount === 0) p.treeAdapter.adoptAttributes(p.openElements.items[0], token.attrs);\n}\nfunction bodyStartTagInBody(p, token) {\n\tconst bodyElement = p.openElements.tryPeekProperlyNestedBodyElement();\n\tif (bodyElement && p.openElements.tmplCount === 0) {\n\t\tp.framesetOk = false;\n\t\tp.treeAdapter.adoptAttributes(bodyElement, token.attrs);\n\t}\n}\nfunction framesetStartTagInBody(p, token) {\n\tconst bodyElement = p.openElements.tryPeekProperlyNestedBodyElement();\n\tif (p.framesetOk && bodyElement) {\n\t\tp.treeAdapter.detachNode(bodyElement);\n\t\tp.openElements.popAllUpToHtmlElement();\n\t\tp._insertElement(token, NS.HTML);\n\t\tp.insertionMode = InsertionMode.IN_FRAMESET;\n\t}\n}\nfunction addressStartTagInBody(p, token) {\n\tif (p.openElements.hasInButtonScope(TAG_ID.P)) p._closePElement();\n\tp._insertElement(token, NS.HTML);\n}\nfunction numberedHeaderStartTagInBody(p, token) {\n\tif (p.openElements.hasInButtonScope(TAG_ID.P)) p._closePElement();\n\tif (p.openElements.currentTagId !== void 0 && NUMBERED_HEADERS.has(p.openElements.currentTagId)) p.openElements.pop();\n\tp._insertElement(token, NS.HTML);\n}\nfunction preStartTagInBody(p, token) {\n\tif (p.openElements.hasInButtonScope(TAG_ID.P)) p._closePElement();\n\tp._insertElement(token, NS.HTML);\n\tp.skipNextNewLine = true;\n\tp.framesetOk = false;\n}\nfunction formStartTagInBody(p, token) {\n\tconst inTemplate = p.openElements.tmplCount > 0;\n\tif (!p.formElement || inTemplate) {\n\t\tif (p.openElements.hasInButtonScope(TAG_ID.P)) p._closePElement();\n\t\tp._insertElement(token, NS.HTML);\n\t\tif (!inTemplate) p.formElement = p.openElements.current;\n\t}\n}\nfunction listItemStartTagInBody(p, token) {\n\tp.framesetOk = false;\n\tconst tn = token.tagID;\n\tfor (let i = p.openElements.stackTop; i >= 0; i--) {\n\t\tconst elementId = p.openElements.tagIDs[i];\n\t\tif (tn === TAG_ID.LI && elementId === TAG_ID.LI || (tn === TAG_ID.DD || tn === TAG_ID.DT) && (elementId === TAG_ID.DD || elementId === TAG_ID.DT)) {\n\t\t\tp.openElements.generateImpliedEndTagsWithExclusion(elementId);\n\t\t\tp.openElements.popUntilTagNamePopped(elementId);\n\t\t\tbreak;\n\t\t}\n\t\tif (elementId !== TAG_ID.ADDRESS && elementId !== TAG_ID.DIV && elementId !== TAG_ID.P && p._isSpecialElement(p.openElements.items[i], elementId)) break;\n\t}\n\tif (p.openElements.hasInButtonScope(TAG_ID.P)) p._closePElement();\n\tp._insertElement(token, NS.HTML);\n}\nfunction plaintextStartTagInBody(p, token) {\n\tif (p.openElements.hasInButtonScope(TAG_ID.P)) p._closePElement();\n\tp._insertElement(token, NS.HTML);\n\tp.tokenizer.state = TokenizerMode.PLAINTEXT;\n}\nfunction buttonStartTagInBody(p, token) {\n\tif (p.openElements.hasInScope(TAG_ID.BUTTON)) {\n\t\tp.openElements.generateImpliedEndTags();\n\t\tp.openElements.popUntilTagNamePopped(TAG_ID.BUTTON);\n\t}\n\tp._reconstructActiveFormattingElements();\n\tp._insertElement(token, NS.HTML);\n\tp.framesetOk = false;\n}\nfunction aStartTagInBody(p, token) {\n\tconst activeElementEntry = p.activeFormattingElements.getElementEntryInScopeWithTagName(TAG_NAMES.A);\n\tif (activeElementEntry) {\n\t\tcallAdoptionAgency(p, token);\n\t\tp.openElements.remove(activeElementEntry.element);\n\t\tp.activeFormattingElements.removeEntry(activeElementEntry);\n\t}\n\tp._reconstructActiveFormattingElements();\n\tp._insertElement(token, NS.HTML);\n\tp.activeFormattingElements.pushElement(p.openElements.current, token);\n}\nfunction bStartTagInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tp._insertElement(token, NS.HTML);\n\tp.activeFormattingElements.pushElement(p.openElements.current, token);\n}\nfunction nobrStartTagInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tif (p.openElements.hasInScope(TAG_ID.NOBR)) {\n\t\tcallAdoptionAgency(p, token);\n\t\tp._reconstructActiveFormattingElements();\n\t}\n\tp._insertElement(token, NS.HTML);\n\tp.activeFormattingElements.pushElement(p.openElements.current, token);\n}\nfunction appletStartTagInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tp._insertElement(token, NS.HTML);\n\tp.activeFormattingElements.insertMarker();\n\tp.framesetOk = false;\n}\nfunction tableStartTagInBody(p, token) {\n\tif (p.treeAdapter.getDocumentMode(p.document) !== DOCUMENT_MODE.QUIRKS && p.openElements.hasInButtonScope(TAG_ID.P)) p._closePElement();\n\tp._insertElement(token, NS.HTML);\n\tp.framesetOk = false;\n\tp.insertionMode = InsertionMode.IN_TABLE;\n}\nfunction areaStartTagInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tp._appendElement(token, NS.HTML);\n\tp.framesetOk = false;\n\ttoken.ackSelfClosing = true;\n}\nfunction isHiddenInput(token) {\n\tconst inputType = getTokenAttr(token, ATTRS.TYPE);\n\treturn inputType != null && inputType.toLowerCase() === HIDDEN_INPUT_TYPE;\n}\nfunction inputStartTagInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tp._appendElement(token, NS.HTML);\n\tif (!isHiddenInput(token)) p.framesetOk = false;\n\ttoken.ackSelfClosing = true;\n}\nfunction paramStartTagInBody(p, token) {\n\tp._appendElement(token, NS.HTML);\n\ttoken.ackSelfClosing = true;\n}\nfunction hrStartTagInBody(p, token) {\n\tif (p.openElements.hasInButtonScope(TAG_ID.P)) p._closePElement();\n\tp._appendElement(token, NS.HTML);\n\tp.framesetOk = false;\n\ttoken.ackSelfClosing = true;\n}\nfunction imageStartTagInBody(p, token) {\n\ttoken.tagName = TAG_NAMES.IMG;\n\ttoken.tagID = TAG_ID.IMG;\n\tareaStartTagInBody(p, token);\n}\nfunction textareaStartTagInBody(p, token) {\n\tp._insertElement(token, NS.HTML);\n\tp.skipNextNewLine = true;\n\tp.tokenizer.state = TokenizerMode.RCDATA;\n\tp.originalInsertionMode = p.insertionMode;\n\tp.framesetOk = false;\n\tp.insertionMode = InsertionMode.TEXT;\n}\nfunction xmpStartTagInBody(p, token) {\n\tif (p.openElements.hasInButtonScope(TAG_ID.P)) p._closePElement();\n\tp._reconstructActiveFormattingElements();\n\tp.framesetOk = false;\n\tp._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n}\nfunction iframeStartTagInBody(p, token) {\n\tp.framesetOk = false;\n\tp._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n}\nfunction rawTextStartTagInBody(p, token) {\n\tp._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n}\nfunction selectStartTagInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tp._insertElement(token, NS.HTML);\n\tp.framesetOk = false;\n\tp.insertionMode = p.insertionMode === InsertionMode.IN_TABLE || p.insertionMode === InsertionMode.IN_CAPTION || p.insertionMode === InsertionMode.IN_TABLE_BODY || p.insertionMode === InsertionMode.IN_ROW || p.insertionMode === InsertionMode.IN_CELL ? InsertionMode.IN_SELECT_IN_TABLE : InsertionMode.IN_SELECT;\n}\nfunction optgroupStartTagInBody(p, token) {\n\tif (p.openElements.currentTagId === TAG_ID.OPTION) p.openElements.pop();\n\tp._reconstructActiveFormattingElements();\n\tp._insertElement(token, NS.HTML);\n}\nfunction rbStartTagInBody(p, token) {\n\tif (p.openElements.hasInScope(TAG_ID.RUBY)) p.openElements.generateImpliedEndTags();\n\tp._insertElement(token, NS.HTML);\n}\nfunction rtStartTagInBody(p, token) {\n\tif (p.openElements.hasInScope(TAG_ID.RUBY)) p.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.RTC);\n\tp._insertElement(token, NS.HTML);\n}\nfunction mathStartTagInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tadjustTokenMathMLAttrs(token);\n\tadjustTokenXMLAttrs(token);\n\tif (token.selfClosing) p._appendElement(token, NS.MATHML);\n\telse p._insertElement(token, NS.MATHML);\n\ttoken.ackSelfClosing = true;\n}\nfunction svgStartTagInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tadjustTokenSVGAttrs(token);\n\tadjustTokenXMLAttrs(token);\n\tif (token.selfClosing) p._appendElement(token, NS.SVG);\n\telse p._insertElement(token, NS.SVG);\n\ttoken.ackSelfClosing = true;\n}\nfunction genericStartTagInBody(p, token) {\n\tp._reconstructActiveFormattingElements();\n\tp._insertElement(token, NS.HTML);\n}\nfunction startTagInBody(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.I:\n\t\tcase TAG_ID.S:\n\t\tcase TAG_ID.B:\n\t\tcase TAG_ID.U:\n\t\tcase TAG_ID.EM:\n\t\tcase TAG_ID.TT:\n\t\tcase TAG_ID.BIG:\n\t\tcase TAG_ID.CODE:\n\t\tcase TAG_ID.FONT:\n\t\tcase TAG_ID.SMALL:\n\t\tcase TAG_ID.STRIKE:\n\t\tcase TAG_ID.STRONG:\n\t\t\tbStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.A:\n\t\t\taStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.H1:\n\t\tcase TAG_ID.H2:\n\t\tcase TAG_ID.H3:\n\t\tcase TAG_ID.H4:\n\t\tcase TAG_ID.H5:\n\t\tcase TAG_ID.H6:\n\t\t\tnumberedHeaderStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.P:\n\t\tcase TAG_ID.DL:\n\t\tcase TAG_ID.OL:\n\t\tcase TAG_ID.UL:\n\t\tcase TAG_ID.DIV:\n\t\tcase TAG_ID.DIR:\n\t\tcase TAG_ID.NAV:\n\t\tcase TAG_ID.MAIN:\n\t\tcase TAG_ID.MENU:\n\t\tcase TAG_ID.ASIDE:\n\t\tcase TAG_ID.CENTER:\n\t\tcase TAG_ID.FIGURE:\n\t\tcase TAG_ID.FOOTER:\n\t\tcase TAG_ID.HEADER:\n\t\tcase TAG_ID.HGROUP:\n\t\tcase TAG_ID.DIALOG:\n\t\tcase TAG_ID.DETAILS:\n\t\tcase TAG_ID.ADDRESS:\n\t\tcase TAG_ID.ARTICLE:\n\t\tcase TAG_ID.SEARCH:\n\t\tcase TAG_ID.SECTION:\n\t\tcase TAG_ID.SUMMARY:\n\t\tcase TAG_ID.FIELDSET:\n\t\tcase TAG_ID.BLOCKQUOTE:\n\t\tcase TAG_ID.FIGCAPTION:\n\t\t\taddressStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.LI:\n\t\tcase TAG_ID.DD:\n\t\tcase TAG_ID.DT:\n\t\t\tlistItemStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.BR:\n\t\tcase TAG_ID.IMG:\n\t\tcase TAG_ID.WBR:\n\t\tcase TAG_ID.AREA:\n\t\tcase TAG_ID.EMBED:\n\t\tcase TAG_ID.KEYGEN:\n\t\t\tareaStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.HR:\n\t\t\thrStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.RB:\n\t\tcase TAG_ID.RTC:\n\t\t\trbStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.RT:\n\t\tcase TAG_ID.RP:\n\t\t\trtStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.PRE:\n\t\tcase TAG_ID.LISTING:\n\t\t\tpreStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.XMP:\n\t\t\txmpStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.SVG:\n\t\t\tsvgStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.HTML:\n\t\t\thtmlStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.BASE:\n\t\tcase TAG_ID.LINK:\n\t\tcase TAG_ID.META:\n\t\tcase TAG_ID.STYLE:\n\t\tcase TAG_ID.TITLE:\n\t\tcase TAG_ID.SCRIPT:\n\t\tcase TAG_ID.BGSOUND:\n\t\tcase TAG_ID.BASEFONT:\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\tstartTagInHead(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.BODY:\n\t\t\tbodyStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.FORM:\n\t\t\tformStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.NOBR:\n\t\t\tnobrStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.MATH:\n\t\t\tmathStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.TABLE:\n\t\t\ttableStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.INPUT:\n\t\t\tinputStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.PARAM:\n\t\tcase TAG_ID.TRACK:\n\t\tcase TAG_ID.SOURCE:\n\t\t\tparamStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.IMAGE:\n\t\t\timageStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.BUTTON:\n\t\t\tbuttonStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.APPLET:\n\t\tcase TAG_ID.OBJECT:\n\t\tcase TAG_ID.MARQUEE:\n\t\t\tappletStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.IFRAME:\n\t\t\tiframeStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.SELECT:\n\t\t\tselectStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.OPTION:\n\t\tcase TAG_ID.OPTGROUP:\n\t\t\toptgroupStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.NOEMBED:\n\t\tcase TAG_ID.NOFRAMES:\n\t\t\trawTextStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.FRAMESET:\n\t\t\tframesetStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.TEXTAREA:\n\t\t\ttextareaStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.NOSCRIPT:\n\t\t\tif (p.options.scriptingEnabled) rawTextStartTagInBody(p, token);\n\t\t\telse genericStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.PLAINTEXT:\n\t\t\tplaintextStartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.COL:\n\t\tcase TAG_ID.TH:\n\t\tcase TAG_ID.TD:\n\t\tcase TAG_ID.TR:\n\t\tcase TAG_ID.HEAD:\n\t\tcase TAG_ID.FRAME:\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.THEAD:\n\t\tcase TAG_ID.CAPTION:\n\t\tcase TAG_ID.COLGROUP: break;\n\t\tdefault: genericStartTagInBody(p, token);\n\t}\n}\nfunction bodyEndTagInBody(p, token) {\n\tif (p.openElements.hasInScope(TAG_ID.BODY)) {\n\t\tp.insertionMode = InsertionMode.AFTER_BODY;\n\t\tif (p.options.sourceCodeLocationInfo) {\n\t\t\tconst bodyElement = p.openElements.tryPeekProperlyNestedBodyElement();\n\t\t\tif (bodyElement) p._setEndLocation(bodyElement, token);\n\t\t}\n\t}\n}\nfunction htmlEndTagInBody(p, token) {\n\tif (p.openElements.hasInScope(TAG_ID.BODY)) {\n\t\tp.insertionMode = InsertionMode.AFTER_BODY;\n\t\tendTagAfterBody(p, token);\n\t}\n}\nfunction addressEndTagInBody(p, token) {\n\tconst tn = token.tagID;\n\tif (p.openElements.hasInScope(tn)) {\n\t\tp.openElements.generateImpliedEndTags();\n\t\tp.openElements.popUntilTagNamePopped(tn);\n\t}\n}\nfunction formEndTagInBody(p) {\n\tconst inTemplate = p.openElements.tmplCount > 0;\n\tconst { formElement } = p;\n\tif (!inTemplate) p.formElement = null;\n\tif ((formElement || inTemplate) && p.openElements.hasInScope(TAG_ID.FORM)) {\n\t\tp.openElements.generateImpliedEndTags();\n\t\tif (inTemplate) p.openElements.popUntilTagNamePopped(TAG_ID.FORM);\n\t\telse if (formElement) p.openElements.remove(formElement);\n\t}\n}\nfunction pEndTagInBody(p) {\n\tif (!p.openElements.hasInButtonScope(TAG_ID.P)) p._insertFakeElement(TAG_NAMES.P, TAG_ID.P);\n\tp._closePElement();\n}\nfunction liEndTagInBody(p) {\n\tif (p.openElements.hasInListItemScope(TAG_ID.LI)) {\n\t\tp.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.LI);\n\t\tp.openElements.popUntilTagNamePopped(TAG_ID.LI);\n\t}\n}\nfunction ddEndTagInBody(p, token) {\n\tconst tn = token.tagID;\n\tif (p.openElements.hasInScope(tn)) {\n\t\tp.openElements.generateImpliedEndTagsWithExclusion(tn);\n\t\tp.openElements.popUntilTagNamePopped(tn);\n\t}\n}\nfunction numberedHeaderEndTagInBody(p) {\n\tif (p.openElements.hasNumberedHeaderInScope()) {\n\t\tp.openElements.generateImpliedEndTags();\n\t\tp.openElements.popUntilNumberedHeaderPopped();\n\t}\n}\nfunction appletEndTagInBody(p, token) {\n\tconst tn = token.tagID;\n\tif (p.openElements.hasInScope(tn)) {\n\t\tp.openElements.generateImpliedEndTags();\n\t\tp.openElements.popUntilTagNamePopped(tn);\n\t\tp.activeFormattingElements.clearToLastMarker();\n\t}\n}\nfunction brEndTagInBody(p) {\n\tp._reconstructActiveFormattingElements();\n\tp._insertFakeElement(TAG_NAMES.BR, TAG_ID.BR);\n\tp.openElements.pop();\n\tp.framesetOk = false;\n}\nfunction genericEndTagInBody(p, token) {\n\tconst tn = token.tagName;\n\tconst tid = token.tagID;\n\tfor (let i = p.openElements.stackTop; i > 0; i--) {\n\t\tconst element = p.openElements.items[i];\n\t\tconst elementId = p.openElements.tagIDs[i];\n\t\tif (tid === elementId && (tid !== TAG_ID.UNKNOWN || p.treeAdapter.getTagName(element) === tn)) {\n\t\t\tp.openElements.generateImpliedEndTagsWithExclusion(tid);\n\t\t\tif (p.openElements.stackTop >= i) p.openElements.shortenToLength(i);\n\t\t\tbreak;\n\t\t}\n\t\tif (p._isSpecialElement(element, elementId)) break;\n\t}\n}\nfunction endTagInBody(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.A:\n\t\tcase TAG_ID.B:\n\t\tcase TAG_ID.I:\n\t\tcase TAG_ID.S:\n\t\tcase TAG_ID.U:\n\t\tcase TAG_ID.EM:\n\t\tcase TAG_ID.TT:\n\t\tcase TAG_ID.BIG:\n\t\tcase TAG_ID.CODE:\n\t\tcase TAG_ID.FONT:\n\t\tcase TAG_ID.NOBR:\n\t\tcase TAG_ID.SMALL:\n\t\tcase TAG_ID.STRIKE:\n\t\tcase TAG_ID.STRONG:\n\t\t\tcallAdoptionAgency(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.P:\n\t\t\tpEndTagInBody(p);\n\t\t\tbreak;\n\t\tcase TAG_ID.DL:\n\t\tcase TAG_ID.UL:\n\t\tcase TAG_ID.OL:\n\t\tcase TAG_ID.DIR:\n\t\tcase TAG_ID.DIV:\n\t\tcase TAG_ID.NAV:\n\t\tcase TAG_ID.PRE:\n\t\tcase TAG_ID.MAIN:\n\t\tcase TAG_ID.MENU:\n\t\tcase TAG_ID.ASIDE:\n\t\tcase TAG_ID.BUTTON:\n\t\tcase TAG_ID.CENTER:\n\t\tcase TAG_ID.FIGURE:\n\t\tcase TAG_ID.FOOTER:\n\t\tcase TAG_ID.HEADER:\n\t\tcase TAG_ID.HGROUP:\n\t\tcase TAG_ID.DIALOG:\n\t\tcase TAG_ID.ADDRESS:\n\t\tcase TAG_ID.ARTICLE:\n\t\tcase TAG_ID.DETAILS:\n\t\tcase TAG_ID.SEARCH:\n\t\tcase TAG_ID.SECTION:\n\t\tcase TAG_ID.SUMMARY:\n\t\tcase TAG_ID.LISTING:\n\t\tcase TAG_ID.FIELDSET:\n\t\tcase TAG_ID.BLOCKQUOTE:\n\t\tcase TAG_ID.FIGCAPTION:\n\t\t\taddressEndTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.LI:\n\t\t\tliEndTagInBody(p);\n\t\t\tbreak;\n\t\tcase TAG_ID.DD:\n\t\tcase TAG_ID.DT:\n\t\t\tddEndTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.H1:\n\t\tcase TAG_ID.H2:\n\t\tcase TAG_ID.H3:\n\t\tcase TAG_ID.H4:\n\t\tcase TAG_ID.H5:\n\t\tcase TAG_ID.H6:\n\t\t\tnumberedHeaderEndTagInBody(p);\n\t\t\tbreak;\n\t\tcase TAG_ID.BR:\n\t\t\tbrEndTagInBody(p);\n\t\t\tbreak;\n\t\tcase TAG_ID.BODY:\n\t\t\tbodyEndTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.HTML:\n\t\t\thtmlEndTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.FORM:\n\t\t\tformEndTagInBody(p);\n\t\t\tbreak;\n\t\tcase TAG_ID.APPLET:\n\t\tcase TAG_ID.OBJECT:\n\t\tcase TAG_ID.MARQUEE:\n\t\t\tappletEndTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\ttemplateEndTagInHead(p, token);\n\t\t\tbreak;\n\t\tdefault: genericEndTagInBody(p, token);\n\t}\n}\nfunction eofInBody(p, token) {\n\tif (p.tmplInsertionModeStack.length > 0) eofInTemplate(p, token);\n\telse stopParsing(p, token);\n}\nfunction endTagInText(p, token) {\n\tvar _a$1;\n\tif (token.tagID === TAG_ID.SCRIPT) (_a$1 = p.scriptHandler) === null || _a$1 === void 0 || _a$1.call(p, p.openElements.current);\n\tp.openElements.pop();\n\tp.insertionMode = p.originalInsertionMode;\n}\nfunction eofInText(p, token) {\n\tp._err(token, ERR.eofInElementThatCanContainOnlyText);\n\tp.openElements.pop();\n\tp.insertionMode = p.originalInsertionMode;\n\tp.onEof(token);\n}\nfunction characterInTable(p, token) {\n\tif (p.openElements.currentTagId !== void 0 && TABLE_STRUCTURE_TAGS.has(p.openElements.currentTagId)) {\n\t\tp.pendingCharacterTokens.length = 0;\n\t\tp.hasNonWhitespacePendingCharacterToken = false;\n\t\tp.originalInsertionMode = p.insertionMode;\n\t\tp.insertionMode = InsertionMode.IN_TABLE_TEXT;\n\t\tswitch (token.type) {\n\t\t\tcase TokenType.CHARACTER:\n\t\t\t\tcharacterInTableText(p, token);\n\t\t\t\tbreak;\n\t\t\tcase TokenType.WHITESPACE_CHARACTER:\n\t\t\t\twhitespaceCharacterInTableText(p, token);\n\t\t\t\tbreak;\n\t\t}\n\t} else tokenInTable(p, token);\n}\nfunction captionStartTagInTable(p, token) {\n\tp.openElements.clearBackToTableContext();\n\tp.activeFormattingElements.insertMarker();\n\tp._insertElement(token, NS.HTML);\n\tp.insertionMode = InsertionMode.IN_CAPTION;\n}\nfunction colgroupStartTagInTable(p, token) {\n\tp.openElements.clearBackToTableContext();\n\tp._insertElement(token, NS.HTML);\n\tp.insertionMode = InsertionMode.IN_COLUMN_GROUP;\n}\nfunction colStartTagInTable(p, token) {\n\tp.openElements.clearBackToTableContext();\n\tp._insertFakeElement(TAG_NAMES.COLGROUP, TAG_ID.COLGROUP);\n\tp.insertionMode = InsertionMode.IN_COLUMN_GROUP;\n\tstartTagInColumnGroup(p, token);\n}\nfunction tbodyStartTagInTable(p, token) {\n\tp.openElements.clearBackToTableContext();\n\tp._insertElement(token, NS.HTML);\n\tp.insertionMode = InsertionMode.IN_TABLE_BODY;\n}\nfunction tdStartTagInTable(p, token) {\n\tp.openElements.clearBackToTableContext();\n\tp._insertFakeElement(TAG_NAMES.TBODY, TAG_ID.TBODY);\n\tp.insertionMode = InsertionMode.IN_TABLE_BODY;\n\tstartTagInTableBody(p, token);\n}\nfunction tableStartTagInTable(p, token) {\n\tif (p.openElements.hasInTableScope(TAG_ID.TABLE)) {\n\t\tp.openElements.popUntilTagNamePopped(TAG_ID.TABLE);\n\t\tp._resetInsertionMode();\n\t\tp._processStartTag(token);\n\t}\n}\nfunction inputStartTagInTable(p, token) {\n\tif (isHiddenInput(token)) p._appendElement(token, NS.HTML);\n\telse tokenInTable(p, token);\n\ttoken.ackSelfClosing = true;\n}\nfunction formStartTagInTable(p, token) {\n\tif (!p.formElement && p.openElements.tmplCount === 0) {\n\t\tp._insertElement(token, NS.HTML);\n\t\tp.formElement = p.openElements.current;\n\t\tp.openElements.pop();\n\t}\n}\nfunction startTagInTable(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.TD:\n\t\tcase TAG_ID.TH:\n\t\tcase TAG_ID.TR:\n\t\t\ttdStartTagInTable(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.STYLE:\n\t\tcase TAG_ID.SCRIPT:\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\tstartTagInHead(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.COL:\n\t\t\tcolStartTagInTable(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.FORM:\n\t\t\tformStartTagInTable(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.TABLE:\n\t\t\ttableStartTagInTable(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.THEAD:\n\t\t\ttbodyStartTagInTable(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.INPUT:\n\t\t\tinputStartTagInTable(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.CAPTION:\n\t\t\tcaptionStartTagInTable(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.COLGROUP:\n\t\t\tcolgroupStartTagInTable(p, token);\n\t\t\tbreak;\n\t\tdefault: tokenInTable(p, token);\n\t}\n}\nfunction endTagInTable(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.TABLE:\n\t\t\tif (p.openElements.hasInTableScope(TAG_ID.TABLE)) {\n\t\t\t\tp.openElements.popUntilTagNamePopped(TAG_ID.TABLE);\n\t\t\t\tp._resetInsertionMode();\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\ttemplateEndTagInHead(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.BODY:\n\t\tcase TAG_ID.CAPTION:\n\t\tcase TAG_ID.COL:\n\t\tcase TAG_ID.COLGROUP:\n\t\tcase TAG_ID.HTML:\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TD:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.TH:\n\t\tcase TAG_ID.THEAD:\n\t\tcase TAG_ID.TR: break;\n\t\tdefault: tokenInTable(p, token);\n\t}\n}\nfunction tokenInTable(p, token) {\n\tconst savedFosterParentingState = p.fosterParentingEnabled;\n\tp.fosterParentingEnabled = true;\n\tmodeInBody(p, token);\n\tp.fosterParentingEnabled = savedFosterParentingState;\n}\nfunction whitespaceCharacterInTableText(p, token) {\n\tp.pendingCharacterTokens.push(token);\n}\nfunction characterInTableText(p, token) {\n\tp.pendingCharacterTokens.push(token);\n\tp.hasNonWhitespacePendingCharacterToken = true;\n}\nfunction tokenInTableText(p, token) {\n\tlet i = 0;\n\tif (p.hasNonWhitespacePendingCharacterToken) for (; i < p.pendingCharacterTokens.length; i++) tokenInTable(p, p.pendingCharacterTokens[i]);\n\telse for (; i < p.pendingCharacterTokens.length; i++) p._insertCharacters(p.pendingCharacterTokens[i]);\n\tp.insertionMode = p.originalInsertionMode;\n\tp._processToken(token);\n}\nconst TABLE_VOID_ELEMENTS = new Set([\n\tTAG_ID.CAPTION,\n\tTAG_ID.COL,\n\tTAG_ID.COLGROUP,\n\tTAG_ID.TBODY,\n\tTAG_ID.TD,\n\tTAG_ID.TFOOT,\n\tTAG_ID.TH,\n\tTAG_ID.THEAD,\n\tTAG_ID.TR\n]);\nfunction startTagInCaption(p, token) {\n\tif (TABLE_VOID_ELEMENTS.has(token.tagID)) {\n\t\tif (p.openElements.hasInTableScope(TAG_ID.CAPTION)) {\n\t\t\tp.openElements.generateImpliedEndTags();\n\t\t\tp.openElements.popUntilTagNamePopped(TAG_ID.CAPTION);\n\t\t\tp.activeFormattingElements.clearToLastMarker();\n\t\t\tp.insertionMode = InsertionMode.IN_TABLE;\n\t\t\tstartTagInTable(p, token);\n\t\t}\n\t} else startTagInBody(p, token);\n}\nfunction endTagInCaption(p, token) {\n\tconst tn = token.tagID;\n\tswitch (tn) {\n\t\tcase TAG_ID.CAPTION:\n\t\tcase TAG_ID.TABLE:\n\t\t\tif (p.openElements.hasInTableScope(TAG_ID.CAPTION)) {\n\t\t\t\tp.openElements.generateImpliedEndTags();\n\t\t\t\tp.openElements.popUntilTagNamePopped(TAG_ID.CAPTION);\n\t\t\t\tp.activeFormattingElements.clearToLastMarker();\n\t\t\t\tp.insertionMode = InsertionMode.IN_TABLE;\n\t\t\t\tif (tn === TAG_ID.TABLE) endTagInTable(p, token);\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.BODY:\n\t\tcase TAG_ID.COL:\n\t\tcase TAG_ID.COLGROUP:\n\t\tcase TAG_ID.HTML:\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TD:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.TH:\n\t\tcase TAG_ID.THEAD:\n\t\tcase TAG_ID.TR: break;\n\t\tdefault: endTagInBody(p, token);\n\t}\n}\nfunction startTagInColumnGroup(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HTML:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.COL:\n\t\t\tp._appendElement(token, NS.HTML);\n\t\t\ttoken.ackSelfClosing = true;\n\t\t\tbreak;\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\tstartTagInHead(p, token);\n\t\t\tbreak;\n\t\tdefault: tokenInColumnGroup(p, token);\n\t}\n}\nfunction endTagInColumnGroup(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.COLGROUP:\n\t\t\tif (p.openElements.currentTagId === TAG_ID.COLGROUP) {\n\t\t\t\tp.openElements.pop();\n\t\t\t\tp.insertionMode = InsertionMode.IN_TABLE;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\ttemplateEndTagInHead(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.COL: break;\n\t\tdefault: tokenInColumnGroup(p, token);\n\t}\n}\nfunction tokenInColumnGroup(p, token) {\n\tif (p.openElements.currentTagId === TAG_ID.COLGROUP) {\n\t\tp.openElements.pop();\n\t\tp.insertionMode = InsertionMode.IN_TABLE;\n\t\tp._processToken(token);\n\t}\n}\nfunction startTagInTableBody(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.TR:\n\t\t\tp.openElements.clearBackToTableBodyContext();\n\t\t\tp._insertElement(token, NS.HTML);\n\t\t\tp.insertionMode = InsertionMode.IN_ROW;\n\t\t\tbreak;\n\t\tcase TAG_ID.TH:\n\t\tcase TAG_ID.TD:\n\t\t\tp.openElements.clearBackToTableBodyContext();\n\t\t\tp._insertFakeElement(TAG_NAMES.TR, TAG_ID.TR);\n\t\t\tp.insertionMode = InsertionMode.IN_ROW;\n\t\t\tstartTagInRow(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.CAPTION:\n\t\tcase TAG_ID.COL:\n\t\tcase TAG_ID.COLGROUP:\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.THEAD:\n\t\t\tif (p.openElements.hasTableBodyContextInTableScope()) {\n\t\t\t\tp.openElements.clearBackToTableBodyContext();\n\t\t\t\tp.openElements.pop();\n\t\t\t\tp.insertionMode = InsertionMode.IN_TABLE;\n\t\t\t\tstartTagInTable(p, token);\n\t\t\t}\n\t\t\tbreak;\n\t\tdefault: startTagInTable(p, token);\n\t}\n}\nfunction endTagInTableBody(p, token) {\n\tconst tn = token.tagID;\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.THEAD:\n\t\t\tif (p.openElements.hasInTableScope(tn)) {\n\t\t\t\tp.openElements.clearBackToTableBodyContext();\n\t\t\t\tp.openElements.pop();\n\t\t\t\tp.insertionMode = InsertionMode.IN_TABLE;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.TABLE:\n\t\t\tif (p.openElements.hasTableBodyContextInTableScope()) {\n\t\t\t\tp.openElements.clearBackToTableBodyContext();\n\t\t\t\tp.openElements.pop();\n\t\t\t\tp.insertionMode = InsertionMode.IN_TABLE;\n\t\t\t\tendTagInTable(p, token);\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.BODY:\n\t\tcase TAG_ID.CAPTION:\n\t\tcase TAG_ID.COL:\n\t\tcase TAG_ID.COLGROUP:\n\t\tcase TAG_ID.HTML:\n\t\tcase TAG_ID.TD:\n\t\tcase TAG_ID.TH:\n\t\tcase TAG_ID.TR: break;\n\t\tdefault: endTagInTable(p, token);\n\t}\n}\nfunction startTagInRow(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.TH:\n\t\tcase TAG_ID.TD:\n\t\t\tp.openElements.clearBackToTableRowContext();\n\t\t\tp._insertElement(token, NS.HTML);\n\t\t\tp.insertionMode = InsertionMode.IN_CELL;\n\t\t\tp.activeFormattingElements.insertMarker();\n\t\t\tbreak;\n\t\tcase TAG_ID.CAPTION:\n\t\tcase TAG_ID.COL:\n\t\tcase TAG_ID.COLGROUP:\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.THEAD:\n\t\tcase TAG_ID.TR:\n\t\t\tif (p.openElements.hasInTableScope(TAG_ID.TR)) {\n\t\t\t\tp.openElements.clearBackToTableRowContext();\n\t\t\t\tp.openElements.pop();\n\t\t\t\tp.insertionMode = InsertionMode.IN_TABLE_BODY;\n\t\t\t\tstartTagInTableBody(p, token);\n\t\t\t}\n\t\t\tbreak;\n\t\tdefault: startTagInTable(p, token);\n\t}\n}\nfunction endTagInRow(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.TR:\n\t\t\tif (p.openElements.hasInTableScope(TAG_ID.TR)) {\n\t\t\t\tp.openElements.clearBackToTableRowContext();\n\t\t\t\tp.openElements.pop();\n\t\t\t\tp.insertionMode = InsertionMode.IN_TABLE_BODY;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.TABLE:\n\t\t\tif (p.openElements.hasInTableScope(TAG_ID.TR)) {\n\t\t\t\tp.openElements.clearBackToTableRowContext();\n\t\t\t\tp.openElements.pop();\n\t\t\t\tp.insertionMode = InsertionMode.IN_TABLE_BODY;\n\t\t\t\tendTagInTableBody(p, token);\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.THEAD:\n\t\t\tif (p.openElements.hasInTableScope(token.tagID) || p.openElements.hasInTableScope(TAG_ID.TR)) {\n\t\t\t\tp.openElements.clearBackToTableRowContext();\n\t\t\t\tp.openElements.pop();\n\t\t\t\tp.insertionMode = InsertionMode.IN_TABLE_BODY;\n\t\t\t\tendTagInTableBody(p, token);\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.BODY:\n\t\tcase TAG_ID.CAPTION:\n\t\tcase TAG_ID.COL:\n\t\tcase TAG_ID.COLGROUP:\n\t\tcase TAG_ID.HTML:\n\t\tcase TAG_ID.TD:\n\t\tcase TAG_ID.TH: break;\n\t\tdefault: endTagInTable(p, token);\n\t}\n}\nfunction startTagInCell(p, token) {\n\tif (TABLE_VOID_ELEMENTS.has(token.tagID)) {\n\t\tif (p.openElements.hasInTableScope(TAG_ID.TD) || p.openElements.hasInTableScope(TAG_ID.TH)) {\n\t\t\tp._closeTableCell();\n\t\t\tstartTagInRow(p, token);\n\t\t}\n\t} else startTagInBody(p, token);\n}\nfunction endTagInCell(p, token) {\n\tconst tn = token.tagID;\n\tswitch (tn) {\n\t\tcase TAG_ID.TD:\n\t\tcase TAG_ID.TH:\n\t\t\tif (p.openElements.hasInTableScope(tn)) {\n\t\t\t\tp.openElements.generateImpliedEndTags();\n\t\t\t\tp.openElements.popUntilTagNamePopped(tn);\n\t\t\t\tp.activeFormattingElements.clearToLastMarker();\n\t\t\t\tp.insertionMode = InsertionMode.IN_ROW;\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.TABLE:\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.THEAD:\n\t\tcase TAG_ID.TR:\n\t\t\tif (p.openElements.hasInTableScope(tn)) {\n\t\t\t\tp._closeTableCell();\n\t\t\t\tendTagInRow(p, token);\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.BODY:\n\t\tcase TAG_ID.CAPTION:\n\t\tcase TAG_ID.COL:\n\t\tcase TAG_ID.COLGROUP:\n\t\tcase TAG_ID.HTML: break;\n\t\tdefault: endTagInBody(p, token);\n\t}\n}\nfunction startTagInSelect(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HTML:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.OPTION:\n\t\t\tif (p.openElements.currentTagId === TAG_ID.OPTION) p.openElements.pop();\n\t\t\tp._insertElement(token, NS.HTML);\n\t\t\tbreak;\n\t\tcase TAG_ID.OPTGROUP:\n\t\t\tif (p.openElements.currentTagId === TAG_ID.OPTION) p.openElements.pop();\n\t\t\tif (p.openElements.currentTagId === TAG_ID.OPTGROUP) p.openElements.pop();\n\t\t\tp._insertElement(token, NS.HTML);\n\t\t\tbreak;\n\t\tcase TAG_ID.HR:\n\t\t\tif (p.openElements.currentTagId === TAG_ID.OPTION) p.openElements.pop();\n\t\t\tif (p.openElements.currentTagId === TAG_ID.OPTGROUP) p.openElements.pop();\n\t\t\tp._appendElement(token, NS.HTML);\n\t\t\ttoken.ackSelfClosing = true;\n\t\t\tbreak;\n\t\tcase TAG_ID.INPUT:\n\t\tcase TAG_ID.KEYGEN:\n\t\tcase TAG_ID.TEXTAREA:\n\t\tcase TAG_ID.SELECT:\n\t\t\tif (p.openElements.hasInSelectScope(TAG_ID.SELECT)) {\n\t\t\t\tp.openElements.popUntilTagNamePopped(TAG_ID.SELECT);\n\t\t\t\tp._resetInsertionMode();\n\t\t\t\tif (token.tagID !== TAG_ID.SELECT) p._processStartTag(token);\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.SCRIPT:\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\tstartTagInHead(p, token);\n\t\t\tbreak;\n\t\tdefault:\n\t}\n}\nfunction endTagInSelect(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.OPTGROUP:\n\t\t\tif (p.openElements.stackTop > 0 && p.openElements.currentTagId === TAG_ID.OPTION && p.openElements.tagIDs[p.openElements.stackTop - 1] === TAG_ID.OPTGROUP) p.openElements.pop();\n\t\t\tif (p.openElements.currentTagId === TAG_ID.OPTGROUP) p.openElements.pop();\n\t\t\tbreak;\n\t\tcase TAG_ID.OPTION:\n\t\t\tif (p.openElements.currentTagId === TAG_ID.OPTION) p.openElements.pop();\n\t\t\tbreak;\n\t\tcase TAG_ID.SELECT:\n\t\t\tif (p.openElements.hasInSelectScope(TAG_ID.SELECT)) {\n\t\t\t\tp.openElements.popUntilTagNamePopped(TAG_ID.SELECT);\n\t\t\t\tp._resetInsertionMode();\n\t\t\t}\n\t\t\tbreak;\n\t\tcase TAG_ID.TEMPLATE:\n\t\t\ttemplateEndTagInHead(p, token);\n\t\t\tbreak;\n\t\tdefault:\n\t}\n}\nfunction startTagInSelectInTable(p, token) {\n\tconst tn = token.tagID;\n\tif (tn === TAG_ID.CAPTION || tn === TAG_ID.TABLE || tn === TAG_ID.TBODY || tn === TAG_ID.TFOOT || tn === TAG_ID.THEAD || tn === TAG_ID.TR || tn === TAG_ID.TD || tn === TAG_ID.TH) {\n\t\tp.openElements.popUntilTagNamePopped(TAG_ID.SELECT);\n\t\tp._resetInsertionMode();\n\t\tp._processStartTag(token);\n\t} else startTagInSelect(p, token);\n}\nfunction endTagInSelectInTable(p, token) {\n\tconst tn = token.tagID;\n\tif (tn === TAG_ID.CAPTION || tn === TAG_ID.TABLE || tn === TAG_ID.TBODY || tn === TAG_ID.TFOOT || tn === TAG_ID.THEAD || tn === TAG_ID.TR || tn === TAG_ID.TD || tn === TAG_ID.TH) {\n\t\tif (p.openElements.hasInTableScope(tn)) {\n\t\t\tp.openElements.popUntilTagNamePopped(TAG_ID.SELECT);\n\t\t\tp._resetInsertionMode();\n\t\t\tp.onEndTag(token);\n\t\t}\n\t} else endTagInSelect(p, token);\n}\nfunction startTagInTemplate(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.BASE:\n\t\tcase TAG_ID.BASEFONT:\n\t\tcase TAG_ID.BGSOUND:\n\t\tcase TAG_ID.LINK:\n\t\tcase TAG_ID.META:\n\t\tcase TAG_ID.NOFRAMES:\n\t\tcase TAG_ID.SCRIPT:\n\t\tcase TAG_ID.STYLE:\n\t\tcase TAG_ID.TEMPLATE:\n\t\tcase TAG_ID.TITLE:\n\t\t\tstartTagInHead(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.CAPTION:\n\t\tcase TAG_ID.COLGROUP:\n\t\tcase TAG_ID.TBODY:\n\t\tcase TAG_ID.TFOOT:\n\t\tcase TAG_ID.THEAD:\n\t\t\tp.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE;\n\t\t\tp.insertionMode = InsertionMode.IN_TABLE;\n\t\t\tstartTagInTable(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.COL:\n\t\t\tp.tmplInsertionModeStack[0] = InsertionMode.IN_COLUMN_GROUP;\n\t\t\tp.insertionMode = InsertionMode.IN_COLUMN_GROUP;\n\t\t\tstartTagInColumnGroup(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.TR:\n\t\t\tp.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE_BODY;\n\t\t\tp.insertionMode = InsertionMode.IN_TABLE_BODY;\n\t\t\tstartTagInTableBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.TD:\n\t\tcase TAG_ID.TH:\n\t\t\tp.tmplInsertionModeStack[0] = InsertionMode.IN_ROW;\n\t\t\tp.insertionMode = InsertionMode.IN_ROW;\n\t\t\tstartTagInRow(p, token);\n\t\t\tbreak;\n\t\tdefault:\n\t\t\tp.tmplInsertionModeStack[0] = InsertionMode.IN_BODY;\n\t\t\tp.insertionMode = InsertionMode.IN_BODY;\n\t\t\tstartTagInBody(p, token);\n\t}\n}\nfunction endTagInTemplate(p, token) {\n\tif (token.tagID === TAG_ID.TEMPLATE) templateEndTagInHead(p, token);\n}\nfunction eofInTemplate(p, token) {\n\tif (p.openElements.tmplCount > 0) {\n\t\tp.openElements.popUntilTagNamePopped(TAG_ID.TEMPLATE);\n\t\tp.activeFormattingElements.clearToLastMarker();\n\t\tp.tmplInsertionModeStack.shift();\n\t\tp._resetInsertionMode();\n\t\tp.onEof(token);\n\t} else stopParsing(p, token);\n}\nfunction startTagAfterBody(p, token) {\n\tif (token.tagID === TAG_ID.HTML) startTagInBody(p, token);\n\telse tokenAfterBody(p, token);\n}\nfunction endTagAfterBody(p, token) {\n\tvar _a$1;\n\tif (token.tagID === TAG_ID.HTML) {\n\t\tif (!p.fragmentContext) p.insertionMode = InsertionMode.AFTER_AFTER_BODY;\n\t\tif (p.options.sourceCodeLocationInfo && p.openElements.tagIDs[0] === TAG_ID.HTML) {\n\t\t\tp._setEndLocation(p.openElements.items[0], token);\n\t\t\tconst bodyElement = p.openElements.items[1];\n\t\t\tif (bodyElement && !((_a$1 = p.treeAdapter.getNodeSourceCodeLocation(bodyElement)) === null || _a$1 === void 0 ? void 0 : _a$1.endTag)) p._setEndLocation(bodyElement, token);\n\t\t}\n\t} else tokenAfterBody(p, token);\n}\nfunction tokenAfterBody(p, token) {\n\tp.insertionMode = InsertionMode.IN_BODY;\n\tmodeInBody(p, token);\n}\nfunction startTagInFrameset(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HTML:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.FRAMESET:\n\t\t\tp._insertElement(token, NS.HTML);\n\t\t\tbreak;\n\t\tcase TAG_ID.FRAME:\n\t\t\tp._appendElement(token, NS.HTML);\n\t\t\ttoken.ackSelfClosing = true;\n\t\t\tbreak;\n\t\tcase TAG_ID.NOFRAMES:\n\t\t\tstartTagInHead(p, token);\n\t\t\tbreak;\n\t\tdefault:\n\t}\n}\nfunction endTagInFrameset(p, token) {\n\tif (token.tagID === TAG_ID.FRAMESET && !p.openElements.isRootHtmlElementCurrent()) {\n\t\tp.openElements.pop();\n\t\tif (!p.fragmentContext && p.openElements.currentTagId !== TAG_ID.FRAMESET) p.insertionMode = InsertionMode.AFTER_FRAMESET;\n\t}\n}\nfunction startTagAfterFrameset(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HTML:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.NOFRAMES:\n\t\t\tstartTagInHead(p, token);\n\t\t\tbreak;\n\t\tdefault:\n\t}\n}\nfunction endTagAfterFrameset(p, token) {\n\tif (token.tagID === TAG_ID.HTML) p.insertionMode = InsertionMode.AFTER_AFTER_FRAMESET;\n}\nfunction startTagAfterAfterBody(p, token) {\n\tif (token.tagID === TAG_ID.HTML) startTagInBody(p, token);\n\telse tokenAfterAfterBody(p, token);\n}\nfunction tokenAfterAfterBody(p, token) {\n\tp.insertionMode = InsertionMode.IN_BODY;\n\tmodeInBody(p, token);\n}\nfunction startTagAfterAfterFrameset(p, token) {\n\tswitch (token.tagID) {\n\t\tcase TAG_ID.HTML:\n\t\t\tstartTagInBody(p, token);\n\t\t\tbreak;\n\t\tcase TAG_ID.NOFRAMES:\n\t\t\tstartTagInHead(p, token);\n\t\t\tbreak;\n\t\tdefault:\n\t}\n}\nfunction nullCharacterInForeignContent(p, token) {\n\ttoken.chars = REPLACEMENT_CHARACTER;\n\tp._insertCharacters(token);\n}\nfunction characterInForeignContent(p, token) {\n\tp._insertCharacters(token);\n\tp.framesetOk = false;\n}\nfunction popUntilHtmlOrIntegrationPoint(p) {\n\twhile (p.treeAdapter.getNamespaceURI(p.openElements.current) !== NS.HTML && p.openElements.currentTagId !== void 0 && !p._isIntegrationPoint(p.openElements.currentTagId, p.openElements.current)) p.openElements.pop();\n}\nfunction startTagInForeignContent(p, token) {\n\tif (causesExit(token)) {\n\t\tpopUntilHtmlOrIntegrationPoint(p);\n\t\tp._startTagOutsideForeignContent(token);\n\t} else {\n\t\tconst current = p._getAdjustedCurrentElement();\n\t\tconst currentNs = p.treeAdapter.getNamespaceURI(current);\n\t\tif (currentNs === NS.MATHML) adjustTokenMathMLAttrs(token);\n\t\telse if (currentNs === NS.SVG) {\n\t\t\tadjustTokenSVGTagName(token);\n\t\t\tadjustTokenSVGAttrs(token);\n\t\t}\n\t\tadjustTokenXMLAttrs(token);\n\t\tif (token.selfClosing) p._appendElement(token, currentNs);\n\t\telse p._insertElement(token, currentNs);\n\t\ttoken.ackSelfClosing = true;\n\t}\n}\nfunction endTagInForeignContent(p, token) {\n\tif (token.tagID === TAG_ID.P || token.tagID === TAG_ID.BR) {\n\t\tpopUntilHtmlOrIntegrationPoint(p);\n\t\tp._endTagOutsideForeignContent(token);\n\t\treturn;\n\t}\n\tfor (let i = p.openElements.stackTop; i > 0; i--) {\n\t\tconst element = p.openElements.items[i];\n\t\tif (p.treeAdapter.getNamespaceURI(element) === NS.HTML) {\n\t\t\tp._endTagOutsideForeignContent(token);\n\t\t\tbreak;\n\t\t}\n\t\tconst tagName = p.treeAdapter.getTagName(element);\n\t\tif (tagName.toLowerCase() === token.tagName) {\n\t\t\ttoken.tagName = tagName;\n\t\t\tp.openElements.shortenToLength(i);\n\t\t\tbreak;\n\t\t}\n\t}\n}\n\n//#endregion\n//#region ../../node_modules/.pnpm/parse5@8.0.0/node_modules/parse5/dist/index.js\n/**\n* Parses an HTML string.\n*\n* @param html Input HTML string.\n* @param options Parsing options.\n* @returns Document\n*\n* @example\n*\n* ```js\n* const parse5 = require('parse5');\n*\n* const document = parse5.parse('<!DOCTYPE html><html><head></head><body>Hi there!</body></html>');\n*\n* console.log(document.childNodes[1].tagName); //> 'html'\n*```\n*/\nfunction parse(html, options) {\n\treturn Parser.parse(html, options);\n}\n\n//#endregion\nexport { parse };"],"names":["UNDEFINED_CODE_POINTS","REPLACEMENT_CHARACTER","CODE_POINTS","CODE_POINTS$1","SEQUENCES","isSurrogate","cp","isSurrogatePair","getSurrogatePairCodePoint","cp1","cp2","isControlCodePoint","isUndefinedCodePoint","ERR","ERR$1","DEFAULT_BUFFER_WATERLINE","Preprocessor","handler","code","cpOffset","line","col","offset","startCol","startOffset","nextCp","chunk","isLastChunk","pattern","caseSensitive","i","pos","count","TokenType","TokenType$1","getTokenAttr","token","attrName","htmlDecodeTree","c","decodeMap","replaceCodePoint","codePoint","_a$1","CharCodes","CharCodes$1","TO_LOWER_BIT","BinTrieFlags","BinTrieFlags$1","isNumber","isHexadecimalCharacter","isAsciiAlphaNumeric$1","isEntityInAttributeInvalidEnd","EntityDecoderState","EntityDecoderState$1","DecodingMode","DecodingMode$1","EntityDecoder","decodeTree","emitCodePoint","errors","decodeMode","input","start","end","base","digitCount","startIndex","char","lastCp","expectedLength","current","valueLength","determineBranch","result","consumed","nodeIndex","branchCount","jumpOffset","value","lo","hi","mid","midValue","NS","NS$1","ATTRS","ATTRS$1","DOCUMENT_MODE","DOCUMENT_MODE$1","TAG_NAMES","TAG_NAMES$1","TAG_ID","TAG_ID$1","TAG_NAME_TO_ID","getTagID","tagName","$","SPECIAL_ELEMENTS","NUMBERED_HEADERS","State","State$1","TokenizerMode","isAsciiDigit","isAsciiUpper","isAsciiLower","isAsciiLetter","isAsciiAlphaNumeric","toAsciiLower","isWhitespace","isScriptDataDoubleEscapeSequenceEnd","getErrorForNumericCharacterReference","Tokenizer","options","error","_b","writeCallback","initialName","type","chars","attrNameFirstCh","attrLocations","ct","nextLocation","location","ch","_cp","length","IMPLICIT_END_TAG_REQUIRED","IMPLICIT_END_TAG_REQUIRED_THOROUGHLY","SCOPING_ELEMENTS_HTML","SCOPING_ELEMENTS_HTML_LIST","SCOPING_ELEMENTS_HTML_BUTTON","SCOPING_ELEMENTS_MATHML","SCOPING_ELEMENTS_SVG","TABLE_ROW_CONTEXT","TABLE_BODY_CONTEXT","TABLE_CONTEXT","TABLE_CELLS","OpenElementStack","document","treeAdapter","element","tagID","popped","oldElement","newElement","idx","referenceElement","newElementID","insertionIdx","targetIdx","tagNames","targetNS","namespace","elementIdx","htmlScope","tn","exclusionId","NOAH_ARK_CAPACITY","EntryType","EntryType$1","MARKER","FormattingElementList","neAttrs","candidates","neAttrsLength","neTagName","neNamespaceURI","entry","elementAttrs","neAttrsMap","neAttr","validCandidates","candidate","cAttr","bookmarkIdx","entryIndex","markerIdx","entry$1","defaultTreeAdapter","namespaceURI","attrs","data","parentNode","newNode","referenceNode","templateElement","contentElement","name","publicId","systemId","doctypeNode","node","mode","text","prevNode","recipient","recipientAttrsMap","attr","j","textNode","commentNode","endLocation","VALID_DOCTYPE_NAME","VALID_SYSTEM_ID","QUIRKS_MODE_SYSTEM_ID","QUIRKS_MODE_PUBLIC_ID_PREFIXES","QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES","QUIRKS_MODE_PUBLIC_IDS","LIMITED_QUIRKS_PUBLIC_ID_PREFIXES","LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES","hasPrefix","prefixes","prefix","isConforming","getDocumentMode","MIME_TYPES","DEFINITION_URL_ATTR","ADJUSTED_DEFINITION_URL_ATTR","SVG_ATTRS_ADJUSTMENT_MAP","XML_ATTRS_ADJUSTMENT_MAP","SVG_TAG_NAMES_ADJUSTMENT_MAP","EXITS_FOREIGN_CONTENT","causesExit","startTagToken","adjustTokenMathMLAttrs","adjustTokenSVGAttrs","adjustedAttrName","adjustTokenXMLAttrs","adjustedAttrEntry","adjustTokenSVGTagName","adjustedTagName","isMathMLTextIntegrationPoint","ns","isHtmlIntegrationPoint","isIntegrationPoint","foreignNS","HIDDEN_INPUT_TYPE","AA_OUTER_LOOP_ITER","AA_INNER_LOOP_ITER","InsertionMode","InsertionMode$1","BASE_LOC","TABLE_STRUCTURE_TAGS","defaultParserOptions","Parser","fragmentContext","scriptHandler","html","parser","opts","documentMock","rootElement","fragment","beforeToken","loc","tid","isTop","currentTagId","isHTML","currentToken","nextTokenizerState","docTypeNode","parent","tmpl","content","beforeElement","siblings","textNodeIdx","endLine","endCol","endOffset","donor","child","closingToken","ctLoc","endLoc","listLength","endIndex","unopenIdx","selectIdx","openElement","id","characterInForeignContent","tokenInInitialMode","tokenBeforeHtml","tokenBeforeHead","tokenInHead","tokenInHeadNoScript","tokenAfterHead","characterInBody","characterInTable","characterInTableText","tokenInColumnGroup","tokenAfterBody","tokenAfterAfterBody","nullCharacterInForeignContent","appendComment","tokenInTableText","appendCommentToRootHtmlElement","appendCommentToDocument","doctypeInInitialMode","startTagInForeignContent","startTagBeforeHtml","startTagBeforeHead","startTagInHead","startTagInHeadNoScript","startTagAfterHead","startTagInBody","startTagInTable","startTagInCaption","startTagInColumnGroup","startTagInTableBody","startTagInRow","startTagInCell","startTagInSelect","startTagInSelectInTable","startTagInTemplate","startTagAfterBody","startTagInFrameset","startTagAfterFrameset","startTagAfterAfterBody","startTagAfterAfterFrameset","endTagInForeignContent","endTagBeforeHtml","endTagBeforeHead","endTagInHead","endTagInHeadNoScript","endTagAfterHead","endTagInBody","endTagInText","endTagInTable","endTagInCaption","endTagInColumnGroup","endTagInTableBody","endTagInRow","endTagInCell","endTagInSelect","endTagInSelectInTable","endTagInTemplate","endTagAfterBody","endTagInFrameset","endTagAfterFrameset","eofInBody","eofInText","eofInTemplate","stopParsing","whitespaceCharacterInBody","whitespaceCharacterInTableText","aaObtainFormattingElementEntry","p","formattingElementEntry","genericEndTagInBody","aaObtainFurthestBlock","furthestBlock","aaInnerLoop","formattingElement","lastElement","nextElement","elementEntry","counterOverflow","aaRecreateElementFromEntry","aaInsertLastNodeInCommonAncestor","commonAncestor","aaReplaceFormattingElement","callAdoptionAgency","target","htmlElement","htmlLocation","bodyElement","bodyLocation","templateEndTagInHead","modeInBody","htmlStartTagInBody","bodyStartTagInBody","framesetStartTagInBody","addressStartTagInBody","numberedHeaderStartTagInBody","preStartTagInBody","formStartTagInBody","inTemplate","listItemStartTagInBody","elementId","plaintextStartTagInBody","buttonStartTagInBody","aStartTagInBody","activeElementEntry","bStartTagInBody","nobrStartTagInBody","appletStartTagInBody","tableStartTagInBody","areaStartTagInBody","isHiddenInput","inputType","inputStartTagInBody","paramStartTagInBody","hrStartTagInBody","imageStartTagInBody","textareaStartTagInBody","xmpStartTagInBody","iframeStartTagInBody","rawTextStartTagInBody","selectStartTagInBody","optgroupStartTagInBody","rbStartTagInBody","rtStartTagInBody","mathStartTagInBody","svgStartTagInBody","genericStartTagInBody","bodyEndTagInBody","htmlEndTagInBody","addressEndTagInBody","formEndTagInBody","formElement","pEndTagInBody","liEndTagInBody","ddEndTagInBody","numberedHeaderEndTagInBody","appletEndTagInBody","brEndTagInBody","tokenInTable","captionStartTagInTable","colgroupStartTagInTable","colStartTagInTable","tbodyStartTagInTable","tdStartTagInTable","tableStartTagInTable","inputStartTagInTable","formStartTagInTable","savedFosterParentingState","TABLE_VOID_ELEMENTS","popUntilHtmlOrIntegrationPoint","currentNs","parse"],"mappings":"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","x_google_ignoreList":[0]}