grthtrhthjhtyjytjytkergtrhtrjytjerhrfh3 \9ã@sRddlZejdƒjZejdƒjZejdƒZejdƒZejdƒZ[Gdd„dƒZdS) éNz[a-zA-Z][-_.a-zA-Z0-9]*\s*z(\'[^\']*\'|"[^"]*")\s*z--\s*>z ]\s*]\s*>z]\s*>c@sŒeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd Zd d „Z d"dd„Z d#dd„Z dd„Z dd„Z dd„Zdd„Zdd„Zdd„Zdd „Zd!S)$Ú ParserBasecCs|jtkrtdƒ‚dS)Nz)_markupbase.ParserBase must be subclassed)Ú __class__rÚ RuntimeError)Úself©rú#/usr/lib64/python3.6/_markupbase.pyÚ__init__s zParserBase.__init__cCs tdƒ‚dS)Nz.subclasses of ParserBase must override error())ÚNotImplementedError)rÚmessagerrrÚerror szParserBase.errorcCsd|_d|_dS)Nér)ÚlinenoÚoffset)rrrrÚreset$szParserBase.resetcCs |j|jfS)N)r r)rrrrÚgetpos(szParserBase.getposcCsb||kr |S|j}|jd||ƒ}|rN|j||_|jd||ƒ}||d|_n|j|||_|S)NÚ r )ÚrawdataÚcountr Úrindexr)rÚiÚjrZnlinesÚposrrrÚ updatepos0s zParserBase.updateposÚc CsÊ|j}|d}|||d…dkr*|dS|||d…dkrBdSt|ƒ}|||d…dkrh|j|ƒS||dkr~|j|ƒS|j||ƒ\}}|dkrš|S|d kr¨d|_�x||k�rÄ||}|dk�rþ||d|…}|d krì|j|ƒn |j|ƒ|dS|d k�r&t||ƒ}|�sdS|j ƒ}n�|d k�rB|j||ƒ\} }nt||jk�rX|d}n^|dk�r¤|d k�r~|j |d|ƒ}n$|dk�r˜|j d|ƒn |j dƒn|j d||ƒ|dkr¬|Sq¬WdS)Nér ú>ú-rz--ú[rZdoctypez"'Z4abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZÚattlistÚlinktypeÚlinkÚelementz&unsupported '[' char in %s declarationz"unexpected '[' char in declarationz!unexpected %r char in declaration)rréÿÿÿÿr">r r!rrr") rÚlenÚ parse_commentÚparse_marked_sectionÚ _scan_nameÚ_decl_othercharsZ handle_declÚ unknown_declÚ_declstringlit_matchÚendÚ_parse_doctype_subsetr ) rrrrÚnZdecltypeÚcÚdataÚmÚnamerrrÚparse_declaration@sX                 zParserBase.parse_declarationr cCsª|j}|j|d|ƒ\}}|dkr&|S|d kr@tj||dƒ}n4|dkrZtj||dƒ}n|jd ||d|…ƒ|s|dS|r |jdƒ}|j||d|…ƒ|jdƒS)NérÚtempÚcdataÚignoreÚincludeÚrcdataÚifÚelseÚendifz+unknown status keyword %r in marked sectionr >r5r7r6r4r3>r8r:r9r") rr&Ú_markedsectioncloseÚsearchÚ_msmarkedsectioncloser Ústartr(r*)rrÚreportrZsectNamerÚmatchrrrr%’s zParserBase.parse_marked_sectioncCsj|j}|||d…dkr$|jdƒtj||dƒ}|sZhandle_commentr*)rrr?rr@rrrrr$¨s  zParserBase.parse_commentc Cs4|j}t|ƒ}|}�x||k�r.||}|dk�r4|||d…}|dkrNdS|dkrt|j||dƒ|jd|ƒ|d|kr„dS|d|kr”dS|||d…dkrÄ|j|dd �}|dkr|Sq|j|d|ƒ\}}|dkrädS|dk�r |j||dƒ|jd|ƒt|d|ƒ} | ||ƒ}|dk�r,|Sq|dk�rŠ|d|k�rPdS|j|d|ƒ\}}|dk�rr|S||dk�r,|d}q|dk�rþ|d}x&||k�rÂ||jƒ�rÂ|d}�qžW||k�rø||dk�rà|S|j||ƒ|jdƒndSq|jƒ�r|d}q|j||ƒ|jd|ƒqWdS)NúrDrEr!rr"r"r")rr#rr r$r&ÚgetattrÚisspace) rrÚ declstartposrr,rr-Úsr0Úmethrrrr+¶sn                 z ParserBase._parse_doctype_subsetcCsF|j||ƒ\}}|dkrdS|j}d||d…krB|jd|ƒdSdS)Nr rr"r"r")r&rÚfind)rrrKr0rrrrrÚ_parse_doctype_elementùsz!ParserBase._parse_doctype_elementcCsÀ|j}|j||ƒ\}}|||d…}|dkr2d S|dkrB|dS�xv|j||ƒ\}}|dkrb|S|||d…}|dkr~d S|dkràd||d…kr¨|jd|ƒd}nd Sx |||d…jƒrÌ|d}q®W||d…sðd Sn|j||ƒ\}}|||d…}|�s d S|dk�rLt||ƒ}|�r.|jƒ}ndS|||d…}|�sLdS|dk�r¨||d…dk�rldS|j|d|ƒ\}}|dk�rŽ|S|||d…}|�s¨dS|dkrF|dSqFWdS)Nr rrrú(ú)z'"ú#r"r"r"r"r"r"r"r"r")rr&rNrJr)r*)rrrKrr0rr-r/rrrÚ_parse_doctype_attlistsZ       z!ParserBase._parse_doctype_attlistcCs”|j||ƒ\}}|dkr|S|j}xl|||d…}|ss