D,biTSSKrSSKrSSKJr SSKJr S/r\R"S5r \R"S5r \R"S5r \R"S5r \R"S 5r \R"S 5r\R"S 5r\R"S 5r\R"S 5r\R"S5r\R"S5r\R"S5r\R"S\R*5r\R"S\R*5r\R"S\R*5r\R"S 5r\R"S5rSrSr"SS\R:5rg)N)unescape)html5 HTMLParserz[&<]z &[a-zA-Z#]z%&([a-zA-Z][-.a-zA-Z0-9]*)[^a-zA-Z0-9]z)&#(?:[0-9]+|[xX][0-9a-fA-F]+)[^0-9a-fA-F]z&#(?:[0-9]|[xX][0-9a-fA-F])z6&(#[0-9]+|#[xX][0-9a-fA-F]+|[a-zA-Z][a-zA-Z0-9]*)[;=]?z <[a-zA-Z]z z--!?>z-?>z0([a-zA-Z][^\t\n\r\f />]*)(?:[\t\n\r\f ]|/(?!>))*a{ ( (?<=['"\t\n\r\f /])[^\t\n\r\f />][^\t\n\r\f /=>]* # attribute name ) ([\t\n\r\f ]*=[\t\n\r\f ]* # value indicator ('[^']*' # LITA-enclosed value |"[^"]*" # LIT-enclosed value |(?!['"])[^>\t\n\r\f ]* # bare value ) )? (?:[\t\n\r\f ]|/(?!>))* # possibly followed by a space a [a-zA-Z][^\t\n\r\f />]* # tag name [\t\n\r\f /]* # optional whitespace before attribute name (?:(?<=['"\t\n\r\f /])[^\t\n\r\f />][^\t\n\r\f /=>]* # attribute name (?:[\t\n\r\f ]*=[\t\n\r\f ]* # value indicator (?:'[^']*' # LITA-enclosed value |"[^"]*" # LIT-enclosed value |(?!['"])[^>\t\n\r\f ]* # bare value ) )? [\t\n\r\f /]* # possibly followed by a space )* >? aF <[a-zA-Z][^\t\n\r\f />\x00]* # tag name (?:[\s/]* # optional whitespace before attribute name (?:(?<=['"\s/])[^\s/>][^\s/=>]* # attribute name (?:\s*=+\s* # value indicator (?:'[^']*' # LITA-enclosed value |"[^"]*" # LIT-enclosed value |(?!['"])[^>\s]* # bare value ) \s* # possibly followed by a space )?(?:\s|/(?!>))* )* )? \s* # trailing whitespace z#cURS5nURS5(a [U5$URS5(dUSS[;a [U5$U$)Nr&#=)group startswithrendswithhtml5_entities)matchrefs 2/opt/alt/python313/lib64/python3.13/html/parser.py_replace_attr_charrefr]sU ++a.C ~~d} <<  QRN!:} Jc6[R[U5$N) attr_charrefsubr)ss r_unescape_attrvalueris   11 55rc^\rSrSrSrSrSSS.U4SjjrU4SjrS rS r S r S r SS .Sjr Sr S$SjrSrSrS$SjrS%SjrSrSrSrSrSrSrSrSrSrSrSrS rS!rS"r S#r!U=r"$)&rm)scriptstylexmpiframenoembednoframes)textareatitleTF)convert_charrefs scriptingcZ>[TU]5 XlX lUR 5 gr)super__init__r$r%reset)selfr$r% __class__s rr(HTMLParser.__init__s$  0" rc~>SUlSUl[UlSUlSUlSUl[TU]!5 g)Nz???T) rawdatalasttaginteresting_normal interesting cdata_elem_support_cdata _escapabler'r))r*r+s rr)HTMLParser.resets8  -"  rcNURU-UlURS5 g)Nr)r/goaheadr*datas rfeedHTMLParser.feeds ||d*  Qrc&URS5 g)Nr )r8r*s rcloseHTMLParser.closes  QrNcUR$r)_HTMLParser__starttag_textr>s rget_starttag_textHTMLParser.get_starttag_texts###r escapablecUR5UlX lURS:Xa[R"S5UlgU(aZUR (dI[R"SUR-[R[R-5Ulg[R"SUR-[R[R-5Ulg)N plaintextz\Zz&|])z])) lowerr3r5recompiler2r$ IGNORECASEASCII)r*elemrFs rset_cdata_modeHTMLParser.set_cdata_modes**,# ??k )!zz%0D  t44!zz*Dt*V*,--*@ BD  "zz*BT__*T*,--*@ BD rc6[UlSUlSUlg)NT)r1r2r3r5r>s rclear_cdata_modeHTMLParser.clear_cdata_modes-rcXlgr)r4)r*flags r_set_support_cdataHTMLParser._set_support_cdatas #rc$ URnSn[U5nX4:GaUR(a|UR(dkUR SU5nUS:aRUR S[ X4S- 55nUS:a,[R"S5RX&5(dGOoUnOHURRX#5nU(aUR5nOUR(aGO&UnX5:aRUR(a.UR(aUR[X#U55 OURX#U5 URX55nX4:XaGOUR nU"SU5(Ga["R%X#5(aUR'U5n OU"SU5(aUR)U5n OU"SU5(aUR+U5n OiU"SU5(aUR-U5n OIU"S U5(aUR/U5n O)US -U:dU(aURS5 US -n OGOU S:GaU(dGO["R%X#5(aGOrU"SU5(aPUS -U:XaURS5 GOH[0R%X#5(aGO,UR3X#S -S5 GOU"SU5(aKUnS H,n UR5XS -5(dMU[U 5-n O UR3X#S -U5 OU"SU5(a(UR6(aUR9X#S-S5 OX#US-R;5S:XaUR=X#S -S5 OUU"S U5(aUR3X#S -S5 O0U"SU5(aUR?X#S -S5 O [AS5eUn URX95nGO U"SU5(a[BR%X#5nU(a^URE5S Sn URGU 5 URI5n U"SU S - 5(dU S - n URX95nGMu[JR%X#5nU(a2U(a)URGX#S -S5 URX45nGO>GO>wOOA((//; AAu((T__$$Xgl%;<$$Wq\2q$Avu ++J#q!!%%g11++A.Aa(())!,A****1-Aa(( a(Aa((33A6A!eq[C$$S)AAq5#))'55#D!,,q5A: ,,T2'--g99 !//! >#FA..&8F&//!<< !S[ 0 %'9++GaCN;#K338K8K))'A#$-8 1Q3--/;>((17#D!,,++GaCDM:#D!,,wst}5,-FGGANN1(D!$$ g1 ;;=2.D''- A%c1Q3//Eq,A*00<++GaCDM: NN10UQY$$T*qa%0AC##!3 ;;q>D))$/ A%c1Q3//Eq,A"((4--gcdm< NN10UQY$$S)qa%0ACeJ 15$$  'A,!78  1.q$Ar{ rcURnX!US-S:XaURU5$X!US-S:XaHUR(a7URSUS-5nUS:agUR X!S-U5 US-$X!US-R 5S :Xa7URS US-5nUS:XagUR X!S -U5 US -$URU5$) Nr_r\rbr`z]]>rrdrarcrr]r )r/rqr4rgrvrIrwparse_bogus_comment)r*rr/rgtposs rrs!HTMLParser.parse_html_declarationjs,, QqS>V #%%a( ( qs^{ *t/B/B UAaC(A1u   gc1o .q5L qs^ ! ! #{ 2LLac*E{   WqS/ 07N++A. .rcURn[RX1S-5nU(d [R X1S-5nU(dgU(a&UR 5nUR X1S-U5 UR5$)Nr_rd)r/ commentcloserjcommentabruptcloserrkrur|)r*rreportr/rrs rrqHTMLParser.parse_commentsl,,##GqS1&,,Wc:E  A   !Q 0yy{rcURnURSUS-5nUS:XagU(aURX1S-U5 US-$)Nrr]rdr )r/rgru)r*rrr/poss rrHTMLParser.parse_bogus_commentsN,,ll3!$ "9    !C 0 1QwrcURn[RX!S-5nU(dgUR5nUR X!S-U5 UR 5nU$)Nr]rd)r/picloserjrkrxr|r*rr/rrs rrrHTMLParser.parse_pisR,,w!, KKM wsA' IIKrcSUlURU5nUS:aU$URnX1UUl/n[R X1S-5nUR 5nUR S5R5=UlnXb:a[R X65nU(dOUR SSS5upn U (dSn O0U SSSs=:Xa U SS:XdO U SSSs=:Xa U SS:XaO OU SSn U (a [U 5n URU R5U 45 UR 5nXb:aMX6UR5n U S;aURX1U5 U$U RS 5(aURXt5 U$UR!Xt5 XpR";dUR$(aUS :XdUS :XaUR'US S 9 U$XpR(;aUR'USS 9 U$)Nrr r]ra'rd")r/>rnoscriptrHFrET)rBcheck_for_whole_start_tagr/tagfind_tolerantrr|r rIr0attrfind_tolerantrappendstriprlr handle_startendtaghandle_starttagCDATA_CONTENT_ELEMENTSr%rORCDATA_CONTENT_ELEMENTS) r*rendposr/attrsrrtagmattrnamerest attrvaluer|s rroHTMLParser.parse_starttags $//2 A:M,,&0 &&w!4 IIK"[[^1133 sj!''3A()1a(8 %HI 2A$8)BC.82A#7237%aO / : LL(..*I6 7Aj%%' k !   Wv. /M <<    # #C /    ,222C:$5{"##C5#9 444##C4#8 rcURn[RX!S-5nUR5nX$S- S:wagU$)Nr rrd)r/ locatetagendrr|rs rr$HTMLParser.check_for_whole_start_tags@,,""7aC0 IIK Q3<3 rcURnURSUS-5S:ag[RX!5(d$X!S-US-S:XaUS-$UR U5$[ RX!S-5nUR 5nX$S- S:wag[RX!S-5nURS5R5nURU5 UR5 U$)Nrr]rrdrar ) r/rgrtrrrr|rr rI handle_endtagrR)r*rr/rrrs rrpHTMLParser.parse_endtags,, <<QqS !A %++s1Q33&s //22""7aC0 IIK Q3<3 !&&w!4kk!n""$ 3 rcHURX5 URU5 gr)rrr*rrs rrHTMLParser.handle_startendtags S( 3rcgrrs rrHTMLParser.handle_starttag  rcgrr)r*rs rrHTMLParser.handle_endtag rrcgrrr*rs rr{HTMLParser.handle_charrefrrcgrrrs rrHTMLParser.handle_entityrefrrcgrrr9s rrlHTMLParser.handle_datarrcgrrr9s rruHTMLParser.handle_commentrrcgrr)r*decls rrwHTMLParser.handle_decl!rrcgrrr9s rrxHTMLParser.handle_pi%rrcgrrr9s rrvHTMLParser.unknown_decl(rr) __starttag_textr5r4r3r$r2r0r/r%)T)r )#__name__ __module__ __qualname____firstlineno__rrr(r)r;r?rBrCrOrRrVr8rsrqrrrrorrprrrr{rrlrurwrxrv__static_attributes__ __classcell__)r+s@rrrms2Y3+/5  O$16 B # O#h/2   .d<           r)rJ _markupbasehtmlr html.entitiesrr__all__rKr1rr~rzr}rrnrtrrrrVERBOSErrlocatestarttagend_tolerant endendtag endtagfindrr ParserBaserrrrrsf 1 .ZZ' ZZ % JJ> ? **@ AZZ =>zzST zz+& ZZ % **S/zz(# ZZ'::QRJJ ZZ zz ZZ   ZZ)ZZ JJsO ZZ> ?  6| ''| r