§
    ¤”jÉ  ã                   óþ   — d dl mZmZmZ d dlmZ d dlmZ d dlm	Z	 ddl
mZ ddlmZ dd	lmZ d
„ Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ de¦  «        Z G d„ dej        ¦  «        ZdS )é    )Úabsolute_importÚdivisionÚunicode_literals)Ú	text_type)ÚOrderedDict)Úetreeé   )Ú
tag_regexpé   )Úbase)Ú	_ihatexmlc                 ód   — | €d S t          | t          ¦  «        r| S |                      dd¦  «        S )NÚasciiÚstrict)Ú
isinstancer   Údecode)Úss    ún/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/html5lib/treewalkers/etree_lxml.pyÚ
ensure_strr      s7   € Ø€yØˆtÝ	�A•yÑ	!Ô	!ð +Øˆà�xŠx˜ Ñ*Ô*Ð*ó    c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚRootc           
      ó„  — || _         g | _        	 |j        j        ro| j                             t          | t          |j        j        ¦  «        t          |j        j        ¦  «        t          |j        j	        ¦  «        ¦  «        ¦  «         n# t          $ r Y nw xY w	 |                     ¦   «         }n# t          $ r |}Y nw xY w|                     ¦   «         �(|                     ¦   «         }|                     ¦   «         ­(|�0| j                             |¦  «         |                     ¦   «         }|­0d | _        d | _        d S ©N)ÚelementtreeÚchildrenÚdocinfoÚinternalDTDÚappendÚDoctyper   Ú	root_nameÚ	public_idÚ
system_urlÚAttributeErrorÚgetrootÚgetpreviousÚgetnextÚtextÚtail)ÚselfÚetÚnodes      r   Ú__init__zRoot.__init__   sZ  € ØˆÔØˆŒð	ØŒzÔ%ð QØ”×$Ò$¥W¨TÝ-7¸¼
Ô8LÑ-MÔ-MÝ-7¸¼
Ô8LÑ-MÔ-MÝ-7¸¼
Ô8MÑ-NÔ-Nñ&Pô &Pñ Qô Qð Qøøõ ð 	ð 	ð 	ØˆDð	øøøð	Ø—:’:‘<”<ˆDˆDøÝð 	ð 	ð 	ØˆDˆDˆDð	øøøð ×ÒÑ Ô Ð,Ø×#Ò#Ñ%Ô%ˆDð ×ÒÑ Ô Ð,àÐØŒM× Ò  Ñ&Ô&Ð&Ø—<’<‘>”>ˆDð Ðð ˆŒ	ØˆŒ	ˆ	ˆ	s$   �A;B Â
BÂBÂB2 Â2CÃ Cc                 ó   — | j         |         S r   )r   ©r*   Úkeys     r   Ú__getitem__zRoot.__getitem__3   s   € ØŒ}˜SÔ!Ð!r   c                 ó   — d S r   © ©r*   s    r   r'   zRoot.getnext6   ó   € Øˆtr   c                 ó   — dS ©Nr   r3   r4   s    r   Ú__len__zRoot.__len__9   s   € Øˆqr   N)Ú__name__Ú
__module__Ú__qualname__r-   r1   r'   r8   r3   r   r   r   r      sP   € € € € € ðð ð ð6"ð "ð "ðð ð ðð ð ð ð r   r   c                   ó   — e Zd Zd„ Zd„ ZdS )r    c                 óZ   — || _         || _        || _        || _        d | _        d | _        d S r   )Ú	root_nodeÚnamer"   Ú	system_idr(   r)   )r*   r>   r?   r"   r@   s        r   r-   zDoctype.__init__>   s0   € Ø"ˆŒØˆŒ	Ø"ˆŒØ"ˆŒàˆŒ	ØˆŒ	ˆ	ˆ	r   c                 ó&   — | j         j        d         S r7   )r>   r   r4   s    r   r'   zDoctype.getnextG   s   € ØŒ~Ô& qÔ)Ð)r   N©r9   r:   r;   r-   r'   r3   r   r   r    r    =   s2   € € € € € ðð ð ð*ð *ð *ð *ð *r   r    c                   ó   — e Zd Zd„ Zd„ ZdS )ÚFragmentRootc                 óJ   ‡ — ˆ fd„|D ¦   «         ‰ _         d x‰ _        ‰ _        d S )Nc                 ó0   •— g | ]}t          ‰|¦  «        ‘ŒS r3   )ÚFragmentWrapper)Ú.0Úchildr*   s     €r   ú
<listcomp>z)FragmentRoot.__init__.<locals>.<listcomp>M   s#   ø€ ÐLÐLÐL¸%�¨¨uÑ5Ô5ÐLÐLÐLr   )r   r(   r)   )r*   r   s   ` r   r-   zFragmentRoot.__init__L   s0   ø€ ØLÐLÐLÐLÀ8ÐLÑLÔLˆŒØ $Ð$ˆŒ	�D”I�I�Ir   c                 ó   — d S r   r3   r4   s    r   r'   zFragmentRoot.getnextP   r5   r   NrB   r3   r   r   rD   rD   K   s2   € € € € € ð%ð %ð %ðð ð ð ð r   rD   c                   óD   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
S )rG   c                 ó  — || _         || _        t          | j        d¦  «        rt          | j        j        ¦  «        | _        nd | _        t          | j        d¦  «        r t          | j        j        ¦  «        | _        d S d | _        d S )Nr(   r)   )r>   ÚobjÚhasattrr   r(   r)   )r*   Úfragment_rootrN   s      r   r-   zFragmentWrapper.__init__U   sv   € Ø&ˆŒØˆŒÝ�4”8˜VÑ$Ô$ð 	Ý" 4¤8¤=Ñ1Ô1ˆDŒIˆIàˆDŒIÝ�4”8˜VÑ$Ô$ð 	Ý" 4¤8¤=Ñ1Ô1ˆDŒIˆIˆIàˆDŒIˆIˆIr   c                 ó,   — t          | j        |¦  «        S r   )ÚgetattrrN   )r*   r?   s     r   Ú__getattr__zFragmentWrapper.__getattr__a   s   € Ý�t”x Ñ&Ô&Ð&r   c                 óŠ   — | j         j        }|                     | ¦  «        }|t          |¦  «        dz
  k     r||dz            S d S r7   )r>   r   ÚindexÚlen)r*   ÚsiblingsÚidxs      r   r'   zFragmentWrapper.getnextd   sG   € Ø”>Ô*ˆØ�nŠn˜TÑ"Ô"ˆØ•�X‘” Ñ"Ò"Ð"Ø˜C !™GÔ$Ð$à�4r   c                 ó   — | j         |         S r   )rN   r/   s     r   r1   zFragmentWrapper.__getitem__l   s   € ØŒx˜Œ}Ðr   c                 ó*   — t          | j        ¦  «        S r   )ÚboolrN   r4   s    r   Ú__bool__zFragmentWrapper.__bool__o   s   € Ý�D”H‰~Œ~Ðr   c                 ó   — d S r   r3   r4   s    r   Ú	getparentzFragmentWrapper.getparentr   r5   r   c                 ó*   — t          | j        ¦  «        S r   ©ÚstrrN   r4   s    r   Ú__str__zFragmentWrapper.__str__u   ó   € Ý�4”8‰}Œ}Ðr   c                 ó*   — t          | j        ¦  «        S r   r`   r4   s    r   Ú__unicode__zFragmentWrapper.__unicode__x   rc   r   c                 ó*   — t          | j        ¦  «        S r   )rV   rN   r4   s    r   r8   zFragmentWrapper.__len__{   rc   r   N)r9   r:   r;   r-   rS   r'   r1   r\   r^   rb   re   r8   r3   r   r   rG   rG   T   s›   € € € € € ð
ð 
ð 
ð'ð 'ð 'ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð ð r   rG   c                   ó,   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )Ú
TreeWalkerc                 ó,  — t          |t          ¦  «        r$t          |¦  «        | _        t	          |¦  «        }n"t          ¦   «         | _        t          |¦  «        }t          j                             | |¦  «         t          j
        ¦   «         | _        d S r   )r   ÚlistÚsetÚfragmentChildrenrD   r   r   ÚNonRecursiveTreeWalkerr-   r   ÚInfosetFilterÚfilter)r*   Útrees     r   r-   zTreeWalker.__init__€   su   € å�d�DÑ!Ô!ð 	Ý$'¨¡I¤IˆDÔ!Ý Ñ%Ô%ˆDˆDå$'¡E¤EˆDÔ!Ý˜‘:”:ˆDÝÔ#×,Ò,¨T°4Ñ8Ô8Ð8ÝÔ-Ñ/Ô/ˆŒˆˆr   c                 ó8  — t          |t          ¦  «        r?|\  }}|dv sJ d|z  ¦   «         ‚t          j        t	          t          ||¦  «        ¦  «        fS t          |t          ¦  «        rt          j        fS t          |t          ¦  «        rt          j	        |j
        |j        |j        fS t          |t          ¦  «        r0t          |d¦  «        s t          j        t	          |j        ¦  «        fS |j        t"          j        k    r t          j        t	          |j        ¦  «        fS |j        t"          j        k    r(t          j        t	          |j        ¦  «        dd…         fS t/          j        t	          |j        ¦  «        ¦  «        }|r|                     ¦   «         \  }}nd }t	          |j        ¦  «        }t5          ¦   «         }t7          |j                             ¦   «         ¦  «        D ]n\  }}t	          |¦  «        }t	          |¦  «        }t/          j        |¦  «        }|r.|||                     d¦  «        |                     d¦  «        f<   Œg||d |f<   Œot          j        || j          !                    |¦  «        |tE          |¦  «        dk    p|j        fS )N©r(   r)   ú%Text nodes are text or tail, found %sÚtagr   éÿÿÿÿr	   r   )#r   Útupler   ÚTEXTr   rR   r   ÚDOCUMENTr    ÚDOCTYPEr?   r"   r@   rG   rO   rN   rt   r   ÚCommentÚCOMMENTr(   ÚEntityÚENTITYr
   ÚmatchÚgroupsr   rj   ÚattribÚitemsÚgroupÚELEMENTro   ÚfromXmlNamerV   )	r*   r,   r0   r~   Ú	namespacert   Úattrsr?   Úvalues	            r   ÚgetNodeDetailszTreeWalker.getNodeDetails‹   sQ  € Ý�d�EÑ"Ô"ð &	7Ø‰IˆD�#ØÐ*Ð*Ð*Ð*Ð,SÐVYÑ,YÑ*Ô*Ð*Ý”9�j­°°sÑ);Ô);Ñ<Ô<Ð<Ð<å˜�dÑ#Ô#ð !	7Ý”MÐ#Ð#å˜�gÑ&Ô&ð 	7Ý”< ¤¨D¬N¸D¼NÐJÐJå˜�oÑ.Ô.ð 	7µw¸tÀUÑ7KÔ7Kð 	7Ý”9�j¨¬Ñ2Ô2Ð2Ð2àŒX�œÒ&Ð&Ý”<¥¨D¬IÑ!6Ô!6Ð6Ð6àŒX�œÒ%Ð%Ý”;¥
¨4¬9Ñ 5Ô 5°a¸°dÔ ;Ð;Ð;õ Ô$¥Z°´Ñ%9Ô%9Ñ:Ô:ˆEØð +Ø!&§¢¡¤‘�	˜3˜3à �	Ý  ¤Ñ*Ô*�Ý‘M”MˆEÝ# D¤K×$5Ò$5Ñ$7Ô$7Ñ8Ô8ð 0ð 0‘��eÝ! $Ñ'Ô'�Ý" 5Ñ)Ô)�Ý"Ô(¨Ñ.Ô.�Øð 0Ø>C�E˜5Ÿ;š; q™>œ>¨5¯;ª;°q©>¬>Ð:Ñ;Ð;à*/�E˜4 ˜,Ñ'Ð'Ý”L )¨T¬[×-DÒ-DÀSÑ-IÔ-IØ�3˜t™9œ9 qš=Ð5¨D¬Ið7ð 7r   c                 ó¦   — t          |t          ¦  «        r
J d¦   «         ‚t          |¦  «        s|j        s
J d¦   «         ‚|j        r|dfS |d         S )NzText nodes have no childrenzNode has no childrenr(   r   )r   rv   rV   r(   )r*   r,   s     r   ÚgetFirstChildzTreeWalker.getFirstChild´   s`   € Ý˜d¥EÑ*Ô*ÐIÐIÐ,IÑIÔIÐIå�4‰yŒyÐ=˜DœIÐ=Ð=Ð'=Ñ=Ô=Ð=ØŒ9ð 	Ø˜&�>Ð!à˜”7ˆNr   c                 óü   — t          |t          ¦  «        rI|\  }}|dv sJ d|z  ¦   «         ‚|dk    rt          |¦  «        r|d         S d S |                     ¦   «         S |j        r|dfn|                     ¦   «         S )Nrr   rs   r(   r   r)   )r   rv   rV   r'   r)   ©r*   r,   r0   s      r   ÚgetNextSiblingzTreeWalker.getNextSibling½   s�   € Ý�d�EÑ"Ô"ð 	&Ø‰IˆD�#ØÐ*Ð*Ð*Ð*Ð,SÐVYÑ,YÑ*Ô*Ð*Ø�fŠ}ˆ}õ �t‘9”9ð  Ø œ7�Nà˜4à—|’|‘~”~Ð%à!%¤Ð>��fˆ~ˆ~°·²±´Ð>r   c                 ó¨   — t          |t          ¦  «        r|\  }}|dv sJ d|z  ¦   «         ‚|dk    r|S n|| j        v rd S |                     ¦   «         S )Nrr   rs   r(   )r   rv   rl   r^   rŒ   s      r   ÚgetParentNodezTreeWalker.getParentNodeÍ   sv   € Ý�d�EÑ"Ô"ð 	Ø‰IˆD�#ØÐ*Ð*Ð*Ð*Ð,SÐVYÑ,YÑ*Ô*Ð*Ø�fŠ}ˆ}Ø�ð ð �TÔ*Ð*Ð*Ø�4à�~Š~ÑÔÐr   N)r9   r:   r;   r-   rˆ   rŠ   r�   r�   r3   r   r   rh   rh      s`   € € € € € ð	0ð 	0ð 	0ð'7ð '7ð '7ðRð ð ð?ð ?ð ?ð 
 ð 
 ð 
 ð 
 ð 
 r   rh   N)Ú
__future__r   r   r   Úsixr   Úcollectionsr   Úlxmlr   Útreebuilders.etreer
   Ú r   r   r   Úobjectr   r    rD   rG   rm   rh   r3   r   r   ú<module>r—      s‰  ðØ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BÐ BØ Ð Ð Ð Ð Ð à #Ð #Ð #Ð #Ð #Ð #à Ð Ð Ð Ð Ð Ø +Ð +Ð +Ð +Ð +Ð +à Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð ð+ð +ð +ð#ð #ð #ð #ð #ˆ6ñ #ô #ð #ðL*ð *ð *ð *ð *ˆfñ *ô *ð *ðð ð ð ð �4ñ ô ð ð(ð (ð (ð (ð (�fñ (ô (ð (ðVX ð X ð X ð X ð X �Ô,ñ X ô X ð X ð X ð X r   