Ë ‚Ö¦i=9ãó—dZddlZejd«jZejd«jZejd«Zejd«Zejd«Z[Gd„d «Z y) zÎShared support for scanning document type declarations in HTML and XHTML. This module is used as a foundation for the html.parser module. It has no documented public API and should not be used directly. éNz[a-zA-Z][-_.a-zA-Z0-9]*\s*z(\'[^\']*\'|"[^"]*")\s*z--\s*>z ]\s*]\s*>z]\s*>cól—eZdZdZd„Zd„Zd„Zd„ZdZd„Z dd„Z dd „Z d „Z d „Z d „Zd „Zd„Zd„Zd„Zy)Ú ParserBaseziParser base class which provides some common support methods used by the SGML/HTML and XHTML parsers.có>—|jtur td«‚y)Nz)_markupbase.ParserBase must be subclassed)Ú __class__rÚ RuntimeError©Úselfs ú$/usr/lib64/python3.12/_markupbase.pyÚ__init__zParserBase.__init__s#€Ø �>‰>œZÑ 'ÜØ;ó=ð =ð (ócó —d|_d|_y)Nér©ÚlinenoÚoffsetrs r ÚresetzParserBase.reset s€ØˆŒ ؈� r có2—|j|jfS)z&Return current line number and offset.rrs r ÚgetposzParserBase.getpos$s€à�{‰{˜DŸK™KÐ'Ð'r cóð—||k\r|S|j}|jd||«}|r6|j|z|_|jd||«}||dzz |_|S|j|z|z |_|S)NÚ r)ÚrawdataÚcountrÚrindexr)r ÚiÚjrÚnlinesÚposs r Ú updateposzParserBase.updatepos,s€Ø �Š6؈HØ—,‘,ˆØ—‘˜t Q¨Ó*ˆÙ ØŸ+™+¨Ñ.ˆDŒKØ—.‘.  q¨!Ó,ˆCؘS ™U™)ˆDŒKðˆðŸ+™+¨™/¨!Ñ+ˆDŒK؈r Úcó4—|j}|dz}|||dk(sJd«‚|||dzdk(r|dzS|||dzdvryt|«}|||dzdk(r|j|«S||d k(r|j|«S|j ||«\}}|d kr|S|d k(rd |_||krð||}|dk(r9||dz|}|d k(r|j |«|dzS|j|«|dzS|d vr t||«}|sy|j«}n||dvr|j ||«\} }nb||j vr|dz}nN|d k(r8|d k(r|j|dz|«}n.|dvrtd|z«‚td«‚td||z«‚|d kr|S||krŒðy)Néú)Ú-réÿÿÿÿz--Ú[rÚdoctyperz"'Ú4abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ>ÚlinkÚattlistÚelementÚlinktypez&unsupported '[' char in %s declarationz"unexpected '[' char in declarationz!unexpected %r char in declaration) rÚlenÚ parse_commentÚparse_marked_sectionÚ _scan_nameÚ_decl_othercharsÚ handle_declÚ unknown_declÚ_declstringlit_matchÚendÚ_parse_doctype_subsetÚAssertionError) r rrrÚnÚdecltypeÚcÚdataÚmÚnames r Úparse_declarationzParserBase.parse_declaration<s€ð—,‘,ˆØ �‰EˆØ�q˜ˆ|˜tÒ#ÐKÐ%KÓKÐ#Ø �1�Q�q‘Sˆ>˜SÒ à�q‘5ˆLØ �1�Q�q‘Sˆ>˜YÑ &ðä �‹LˆØ �1�Q�q‘Sˆ>˜TÒ !à×%Ñ% aÓ(Ð (Ø �Q‰Z˜3Ò ð ×,Ñ,¨QÓ/Ð /àŸ/™/¨!¨QÓ/‰KˆH�aØ ˆqŠ5؈HØ �yÒ Ø$&ˆDÔ !Ø�!Šeؘ‘ ˆAØ�CŠxà˜q ™s 1�~�ؘyÒ(Ø×$Ñ$ TÔ*ð˜1‘u� ð×%Ñ% dÔ+ؘ1‘u� Ø�E‰zÜ(¨°!Ó4�ÙØØ—E‘E“G‘ØÐLÑLØŸ/™/¨!¨QÓ/‘�‘aØ�d×+Ñ+Ñ+ؘ‘E‘Ø�c’à˜yÒ(Ø×2Ñ2°1°q±5¸!Ó<‘AØÐ!KÑKô )Ð)QÐT\Ñ)\Ó]Ð]ä(Ð)MÓNÐNä$Ð%HÈ7ÐSTÉ:Ñ%UÓVÐVØ�1ŠuØ�ðM�!‹eðNr có˜—|j}|||dzdk(sJd«‚|j|dz|«\}}|dkr|S|dvrtj||dz«}n2|dvrtj||dz«}nt d||dz|z«‚|sy|r(|j d«}|j||dz|«|jd«S) NézÚtempÚcdataÚignoreÚrcdataÚinclude>ÚifÚelseÚendifz+unknown status keyword %r in marked sectionr%) rr0Ú_markedsectioncloseÚsearchÚ_msmarkedsectioncloser7Ústartr3r5)r rÚreportrÚsectNamerÚmatchs r r/zParserBase.parse_marked_section�sè€Ø—‘ˆØ�q˜˜1™ˆ~ Ò&ÐSÐ(SÓSÐ&Ø—o‘o q¨¡s¨AÓ/‰ ˆ�!Ø ˆqŠ5؈HØ ÐGÑ Gä&×-Ñ-¨g°q¸±sÓ;‰EØ Ð0Ñ 0ä(×/Ñ/°¸¸1¹Ó=‰Eä Ø=ÀÈÈ!ÉÈAÀÑNóð ñØÙ Ø— ‘ ˜A“ˆAØ × Ñ ˜g a¨¡c¨1˜oÔ .Ø�y‰y˜‹|Ðr cóô—|j}|||dzdk7r td«‚tj||dz«}|sy|r(|j d«}|j ||dz|«|j d«S)Néú