�&ǐk�@'bJ�h�ۊL'}T� :��'2�Z#$��n�a��� �>a��`��_3d�Qpt�/�P -��#5�,�M��� �pA:©�q�����NW��ډ�A���� �9nʺج���� �TSM��{J6?7��r�@�\����D��� �׶���s�f�TJj?"��D��`?��̒� b�#�%�C*v�$�{�$����5Ծ�F�s��y�e/8��h-�f�̰&(����Gj�L:U� 2�� ����v�_k����Y��gp,�k�WF�R������_C�R��N@���R�@�ߔ?A�w9���F("iNa-S���Q�o�3tDMLh*�#4k�T/iQ��Y*�G��m����)��8�hBm/�I�,g�ﯖ���Z��}�Cz�q@´��d.����L�ŕ�,��1�Z�܌�: ̪���F+J-'��c�tvJ8��]Q-��b��y �6;*J`r_�d ��'�G ~p��)'�C,�%F��E(��2�k�����lР�z�!�=t ��_�0��f7��� ;�p�|�U �%s ]\s*]\s*>s]\s*>t ParserBasecBseZdZdZdZdZdZdZdZdZ dd Z dd Z d Z d Z d ZdZdZdZdZRS(siParser base class which provides some common support methods used by the SGML/HTML and XHTML parsers.cCs"|jtkrtdndS(Ns(markupbase.ParserBase must be subclassed(t __class__Rt RuntimeError(tself((s"/usr/lib64/python2.7/markupbase.pyt__init__scCstddS(Ns.subclasses of ParserBase must override error()(tNotImplementedError(Rtmessage((s"/usr/lib64/python2.7/markupbase.pyterror!scCsd|_d|_dS(Nii(tlinenotoffset(R((s"/usr/lib64/python2.7/markupbase.pytreset%s cCs|j|jfS(s&Return current line number and offset.(RR (R((s"/usr/lib64/python2.7/markupbase.pytgetpos)scCs||kr|S|j}|jd||}|rm|j||_|jd||}||d|_n|j|||_|S(Ns i(trawdatatcountRtrindexR (RtitjR tnlinestpos((s"/usr/lib64/python2.7/markupbase.pyt updatepos1s  tc Cse|j}|d}|||!dks2td|||d!dkrQ|dS|||d!dkrldSt|}|||d!d kr|j|S||d kr|j|S|j||\}}|d kr|S|d krd|_nxe||kr`||}|dkr`||d|!}|d krK|j|n |j||dS|d krt ||}|sdS|j }n|dkr|j||\} }n||jkr|d}nv|d kr8|d kr|j |d|}qM|dkr(|j d|qM|j dn|j d|||d kr|SqWdS(Nist-Ris--t[itdoctypes"'t4abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZtattlisttlinktypetlinktelements&unsupported '[' char in %s declarations"unexpected '[' char in declarations!unexpected %r char in declaration(RR(RRRR( R tAssertionErrortlent parse_commenttparse_marked_sectiont _scan_namet_decl_othercharst handle_declt unknown_declt_declstringlit_matchtendt_parse_doctype_subsetR( RRR Rtntdecltypetctdatatmtname((s"/usr/lib64/python2.7/markupbase.pytparse_declarationAsZ                   icCs|j}|||d!dks,td|j|d|\}}|dkrX|S|dkr}tj||d}nA|dkrtj||d}n|jd ||d|!|sdS|r|jd}|j||d|!n|j dS(NisR((s"/usr/lib64/python2.7/markupbase.pyR s c Cs|j}t|}|}x||kr||}|dkr|||d!}|dkradS|dkr|j||d|jd|n|d|krdS|d|krdS|||d!dkr|j|d d }|d kr|Sqn|j|d|\}}|dkr+dS|dkr_|j||d|jd|nt|d|} | ||}|d kr|Sq|dkr|d|krdS|j|d|\}}|d kr|S||dkr|d}qq|dkr|d}x*||krB||jrB|d}qW||kr||dkrc|S|j|||jdqdSq|jr|d}q|j|||jd|qWdS(Nts$     cCs3|j}|||d!dkri|d}xB|||d!}|sHdS|jra|d}q-Pq-Wn|}|j||\}}|dkr|Sx|j||d!}|sdS|dkrt||}|r|j}q+dSq|dkr|dS|j||\}}|dkr|SqWdS(NiREiis'"R(R RIR"R&R'(RRRJR RR+R.R-((s"/usr/lib64/python2.7/markupbase.pyt_parse_doctype_entityUs8        cCs|j}t|}||kr%dSt||}|r|j}|j}|t||krldS|j|jfS|j|||j d|||d!dS(Nisexpected name token at %ri(Ni(Ni( R RtNonet_declname_matchtgrouptstriptlowerR'RR(RRRJR R)R-RKR.((s"/usr/lib64/python2.7/markupbase.pyR"ys      cCsdS(N((RR,((s"/usr/lib64/python2.7/markupbase.pyR%s(t__name__t __module__t__doc__RRR R RR#R/R!R R(RNRRRSRTR"R%(((s"/usr/lib64/python2.7/markupbase.pyRs"      R   C 9  $ (( R\tretcompileR>RVR&R?R8R:R(((s"/usr/lib64/python2.7/markupbase.pyts