+
    € ’eg9  ã                   ó  € R t ^ RIt]P                  ! R4      P                  t]P                  ! R4      P                  t]P                  ! R4      t]P                  ! R4      t]P                  ! R4      tA ! R R4      t	R# )	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                   ó„   a € ] tR t^t o RtR tR tR tR tRt	R t
RR ltRR	 ltR
 tR tR tR tR tR tR tRtV tR# )Ú
ParserBasezeParser base class which provides some common support methods used
by the SGML/HTML and XHTML parsers.c                óD   € V P                   \        J d   \        R 4      hR# )z)_markupbase.ParserBase must be subclassedN)Ú	__class__r   ÚRuntimeError©Úselfs   &Ú]C:\Users\johnn\AppData\Local\hermes\tools\python-3.14.9+20261021-win32-x64\Lib\_markupbase.pyÚ__init__ÚParserBase.__init__   s#   € Ø�>‰>œZÓ'ÜØ;ó=ð =ñ (ó    c                ó"   € ^V n         ^ V n        R# )é   N©ÚlinenoÚoffsetr   s   &r	   ÚresetÚParserBase.reset    s   € ØˆŒØˆŽr   c                ó2   € V P                   V P                  3# )z&Return current line number and offset.r   r   s   &r	   ÚgetposÚParserBase.getpos$   s   € à�{‰{˜DŸK™KÐ'Ð'r   c                ó   € W8¼  d   V# V P                   pVP                  R W4      pV'       dA   V P                  V,           V n        VP                  R W4      pW%^,           ,
          V n        V# V P                  V,           V,
          V n        V# )Ú
)ÚrawdataÚcountr   Úrindexr   )r   ÚiÚjr   ÚnlinesÚposs   &&&   r	   Ú	updateposÚParserBase.updatepos,   sw   € ØŒ6ØˆHØ—,‘,ˆØ—‘˜t QÓ*ˆßØŸ+™+¨Õ.ˆDŒKØ—.‘.  qÓ,ˆCØ �U�)ˆDŒKð ˆð Ÿ+™+¨�/¨!Õ+ˆDŒKØˆr   Ú c                óê  € V P                   pV^,           pW!V R8X  g   Q R4       hW#V^,            R8X  d
   V^,           # W#V^,            R9   d   R# \        V4      pW#V^,            R8X  d   V P                  V4      # W#,          R8X  d   V P                  V4      # V P	                  W14      w  rSV^ 8  d   V# VR8X  d   RV n        W48  Ed(   W#,          pVR8X  dG   W!^,           V pVR8X  d   V P                  V4       V^,           # V P                  V4       V^,           # VR9   d'   \        W#4      pV'       g   R# VP                  4       pM™VR	9   d   V P	                  W14      w  r“M~W`P
                  9   d   V^,           pMdVR8X  dF   VR8X  d   V P                  V^,           V4      pM<VR9   d   \        R
V,          4      h\        R4      h\        RW#,          ,          4      hV^ 8  g   EK,  V# R# )é   ú<!z$unexpected call to parse_declarationÚ>r"   z--Ú[Údoctypez"'Ú4abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZz&unsupported '[' char in %s declarationz"unexpected '[' char in declarationz!unexpected %r char in declaration)Ú-r"   éÿÿÿÿ>   ÚlinkÚattlistÚelementÚlinktype)r   ÚlenÚparse_commentÚparse_marked_sectionÚ
_scan_nameÚ_decl_othercharsÚhandle_declÚunknown_declÚ_declstringlit_matchÚendÚ_parse_doctype_subsetÚAssertionError)
r   r   r   r   ÚnÚdecltypeÚcÚdataÚmÚnames
   &&        r	   Úparse_declarationÚParserBase.parse_declaration<   sñ  € ð —,‘,ˆØ��EˆØ˜ˆ|˜tÔ#ÐKÐ%KÓKÐ#Ø�Q�q•Sˆ>˜SÔ à�q•5ˆLØ�Q�q•Sˆ>˜YÔ&ð ˆIä�‹LˆØ�Q�q•Sˆ>˜TÔ!à×%Ñ% aÓ(Ð(Ø�Z˜3Ôð
 ×,Ñ,¨QÓ/Ð/àŸ/™/¨!Ó/‰KˆHØˆqŒ5ØˆHØ�yÔ Ø$&ˆDÔ!Ø�eØ•
ˆAØ�CŒxà �s 1�~�Ø˜yÔ(Ø×$Ñ$ TÔ*ð ˜1•u�ð ×%Ñ% dÔ+Ø˜1•u�Ø�EŒzÜ(¨Ó4�ßØ�IØ—E‘E“G‘ØÐLÔLØŸ/™/¨!Ó/‘��aØ×+Ñ+Ô+Ø˜•E‘Ø�c”à˜yÔ(Ø×2Ñ2°1°qµ5¸!Ó<‘AØÐ!KÔKô
 )Ð)QÐT\Õ)\Ó]Ð]ä(Ð)MÓNÐNä$Ð%HÈ7Í:Õ%UÓVÐVØ�1�uØ�Øˆ	r   c                óò  € V P                   pW1V^,            R8X  g   Q R4       hV P                  V^,           V4      w  rEV^ 8  d   V# VR9   d   \        P                  W1^,           4      pM?VR9   d   \        P                  W1^,           4      pM\        RW1^,           V ,          4      hV'       g   R# V'       d,   VP                  ^ 4      pV P                  W1^,           V 4       VP                  ^ 4      # )é   z<![z)unexpected call to parse_marked_section()z+unknown status keyword %r in marked section>   ÚtempÚcdataÚignoreÚrcdataÚinclude>   ÚifÚelseÚendifr+   )	r   r3   Ú_markedsectioncloseÚsearchÚ_msmarkedsectioncloser:   Ústartr6   r8   )r   r   Úreportr   ÚsectNamer   Úmatchs   &&&    r	   r2   ÚParserBase.parse_marked_section�   sÞ   € Ø—‘ˆØ˜˜1�ˆ~ Ô&ÐSÐ(SÓSÐ&Ø—o‘o q¨¥s¨AÓ/‰ˆØˆqŒ5ØˆHØÐGÔGä&×-Ñ-¨g¸µsÓ;‰EØÐ0Ô0ä(×/Ñ/°¸1½Ó=‰Eä Ø=ÀÈ!ÍÈAÀÕNóð ÷ ØˆIßØ—‘˜A“ˆAØ×Ñ˜g¨¥c¨1˜oÔ.Ø�y‰y˜‹|Ðr   c                ó$  € V P                   pW1V^,            R8w  d   \        R4      h\        P                  W1^,           4      pV'       g   R# V'       d,   VP	                  ^ 4      pV P                  W1^,           V 4       VP                  ^ 4      # )é   ú<!--z"unexpected call to parse_comment()r+   )r   r:   Ú_commentcloserN   rP   Úhandle_commentr8   )r   r   rQ   r   rS   r   s   &&&   r	   r1   ÚParserBase.parse_comment¥   sw   € Ø—,‘,ˆØ�Q�q•Sˆ>˜VÔ#Ü Ð!EÓFÐFÜ×$Ñ$ W°­cÓ2ˆßØˆIßØ—‘˜A“ˆAØ×Ñ ¨!­¨Q Ô0Ø�y‰y˜‹|Ðr   c                óœ  € V P                   p\        V4      pTpWT8  Ed,   W5,          pVR 8X  Ed   W5V^,            pVR 8X  d   R# VR8w  d+   V P                  W%^,           4       \        RV,          4      hV^,           V8X  d   R# V^,           V8”  d   R# W5V^,            R8X  d   V P	                  V^ R7      pV^ 8  d   V# Kª  V P                  V^,           V4      w  r…VR8X  d   R# VR9  d+   V P                  W%^,           4       \        RV,          4      h\        V RV,           4      p	V	! WR4      pV^ 8  d   V# EK&  VR8X  dQ   V^,           V8X  d   R# V P                  V^,           V4      w  ruV^ 8  d   V# W5,          R8X  d   V^,           pEKz  EK}  VR	8X  dj   V^,           pWT8  d(   W5,          P                  4       '       d   V^,           pK-  WT8  d,   W5,          R
8X  d   V# V P                  W%4       \        R4      hR# VP                  4       '       d   V^,           pEK  V P                  W%4       \        RV,          4      hR# )Ú<r%   z*unexpected char in internal subset (in %r)rW   )rQ   z)unknown declaration %r in internal subsetÚ_parse_doctype_Ú%Ú;Ú]r&   z%unexpected char after internal subsetz%unexpected char %r in internal subsetr+   >   Úentityr-   r.   Únotation)r   r0   r    r:   r1   r3   ÚgetattrÚisspace)
r   r   Údeclstartposr   r;   r   r=   Úsr@   Úmeths
   &&&       r	   r9   Ú ParserBase._parse_doctype_subset³   s,  € Ø—,‘,ˆÜ�‹LˆØˆØ�eØ•
ˆAØ�C�xØ˜a �c�N�Ø˜”8à�IØ˜”9Ø—N‘N <°QµÔ7Ü(ØDÀqÕHóð ð ˜•E˜a”<à�IØ˜•E˜Q”;à�IØ˜Q˜q�S�> VÔ+Ø×*Ñ*¨1°QÐ*Ó7�AØ˜1”uØ ˜ÙØŸ/™/¨!¨a­%°Ó>‘�Ø˜”7Ø�IØÐKÔKØ—N‘N <°QµÔ7Ü(ØCÀdÕJóð ô ˜tÐ%6¸Õ%=Ó>�Ù˜Ó)�Ø�q”5Ø�Hò à�c”à˜•E˜a”<à�IØ—‘ q¨1¥u¨lÓ;‘�Ø�q”5Ø�HØ•: Ô$Ø˜A�“Aò %à�c”Ø˜•E�Ø”e ¥
× 2Ñ 2× 4Ò 4Ø˜A�’AØ”5Ø•z SÔ(Ø ˜Ø—N‘N <Ô3Ü(Ð)PÓQÐQà�IØ—‘—’Ø˜•E“à—‘˜|Ô/Ü$Ð%LÈqÕ%PÓQÐQàˆ	r   c                óš   € V P                  W4      w  r4VR8X  d   R# V P                  pRWTR 9   d   VP                  RV4      ^,           # R# )r   r&   Nr+   )r3   r   Úfind)r   r   re   r@   r   r   s   &&&   r	   Ú_parse_doctype_elementÚ!ParserBase._parse_doctype_elementù   sN   € Ø—/‘/ !Ó2‰ˆØ�Œ7ØˆIà—,‘,ˆØ�'˜"�+ÔØ—<‘<  QÓ'¨!Õ+Ð+Øˆ	r   c                ó@  € V P                   pV P                  W4      w  rEW5V^,            pVR8X  d   R# VR8X  d
   V^,           #  V P                  WR4      w  rEV^ 8  d   V# W5V^,            pVR8X  d   R# VR8X  d]   RW5R 9   d   VP                  RV4      ^,           pMR# W5V^,            P                  4       '       d   V^,           pK*  W5R '       g   R# MV P                  WR4      w  rEW5V^,            pV'       g   R# VR9   d<   \	        W54      pV'       d   VP                  4       pMR# W5V^,            pV'       g   R# VR8X  dE   W5R R8X  d   R# V P                  V^,           V4      w  rEV^ 8  d   V# W5V^,            pV'       g   R# VR8X  g   EKS  V^,           # )	r   r"   r&   Ú(Ú)Nú'"Ú#r+   )r   r3   rj   rd   r7   r8   )r   r   re   r   r@   r   r=   r?   s   &&&     r	   Ú_parse_doctype_attlistÚ!ParserBase._parse_doctype_attlist  s›  € Ø—,‘,ˆØ—/‘/ !Ó2‰ˆØ�a˜•cˆNˆØ�Œ7ØˆIØ�Œ8Ø�q•5ˆLØð —o‘o aÓ6‰GˆDØ�1ŒuØ�Ø˜!˜A�#�ˆAØ�BŒwØ�	Ø�CŒxà˜' "˜+Ô%ØŸ™ S¨!Ó,¨qÕ0‘Aà�IØ  !¥�n×,Ñ,×.Ò.Ø˜A�’AØ˜r—{à�Ið #ð Ÿ/™/¨!Ó:‘�Ø˜!˜A�#�ˆAßØ�	Ø�EŒzÜ(¨Ó4�ßØŸ™›‘Aà�IØ˜a �c�N�ßØ�IØ�CŒxØ˜2�; #Ô%à�IØŸ/™/¨!¨a­%°Ó>‘�Ø�q”5Ø�HØ˜a �c�N�ßØ�IØ�C�xà˜1•u�r   c                ó6  € V P                  W4      w  r4V^ 8  d   V# V P                  p WTV^,            pV'       g   R# VR8X  d
   V^,           # VR9   d(   \        WT4      pV'       g   R# VP                  4       pKT  V P                  WB4      w  r4V^ 8  g   Kp  V# )é    r&   rp   r+   )r3   r   r7   r8   )r   r   re   r@   r   r   r=   r?   s   &&&     r	   Ú_parse_doctype_notationÚ"ParserBase._parse_doctype_notation=  s�   € Ø—/‘/ !Ó2‰ˆØˆqŒ5ØˆHØ—,‘,ˆØØ˜!˜A�#�ˆAßà�	Ø�CŒxØ˜1•u�Ø�EŒzÜ(¨Ó4�ßØ�IØ—E‘E“G’àŸ/™/¨!Ó:‘�Ø�q–5Ø�Hr   c                óð  € V P                   pW1V^,            R8X  dB   V^,           p W4V^,            pV'       g   R# VP                  4       '       d   V^,           pK7  MTpV P                  WB4      w  rdV^ 8  d   V#  V P                   WD^,            pV'       g   R# VR9   d(   \        W44      pV'       d   VP	                  4       pKL  R# VR8X  d
   V^,           # V P                  WB4      w  rdV^ 8  g   Kz  V# )r   r^   rp   r&   r+   )r   rd   r3   r7   r8   )r   r   re   r   r   r=   r@   r?   s   &&&     r	   Ú_parse_doctype_entityÚ ParserBase._parse_doctype_entityT  sá   € Ø—,‘,ˆØ�Q�q•Sˆ>˜SÔ Ø�A•ˆAØØ˜a �c�N�ßØ�IØ—9‘9—;’;Ø˜A�’AààˆAØ—/‘/ !Ó2‰ˆØˆqŒ5ØˆHØØ—‘˜Q �sÐ#ˆAßØ�	Ø�EŒzÜ(¨Ó4�ßØŸ™›’Aà�IØ�c”Ø˜1•u�àŸ/™/¨!Ó:‘�Ø�q–5Ø�Hr   c                óp  € V P                   p\        V4      pW8X  d   R# \        W14      pV'       dZ   VP                  4       pVP	                  4       pV\        V4      ,           V8X  d   R# VP                  4       VP                  4       3# V P                  W!4       \        RW2V^,            ,          4      h)Nzexpected name token at %r)Nr+   )	r   r0   Ú_declname_matchÚgroupÚstripÚlowerr8   r    r:   )r   r   re   r   r;   r?   rf   r@   s   &&&     r	   r3   ÚParserBase._scan_namex  s˜   € Ø—,‘,ˆÜ�‹LˆØŒ6ØˆOÜ˜GÓ'ˆßØ—‘“	ˆAØ—7‘7“9ˆDØ”C˜“F•
˜qÔ Ø�Ø—:‘:“< §¡£Ð(Ð(à�N‰N˜<Ô+Ü Ø+¨gÀ<ÐPRÅ?Ð.SÕSóð r   c                ó   € R # )N© )r   r>   s   &&r	   r6   ÚParserBase.unknown_decl‹  s   € Ùr   )r4   r   r   N)r   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r
   r   r   r    r4   rA   r2   r1   r9   rk   rr   rv   ry   r3   r6   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r	   r   r      sc   ø‡ € ñ+ò=ò
ò(òð ÐòMôbô0
òCòLò6òrò. òH÷&ð r   r   )
rˆ   ÚreÚcompilerS   r|   r7   rX   rM   rO   r   r‚   r   r	   Ú<module>rŽ      sw   ðñó 
à—*’*Ð:Ó;×AÑA€Ø—z’zÐ"<Ó=×CÑCÐ Ø—
’
˜9Ó%€Ø—j’j Ó.Ð ð
 Ÿ
š
 8Ó,Ð à÷uó ur   