§
    ¢”jž  ã                   ó„   — d Z ddlmZmZ ddlmZmZ  G d„ d¦  «        Z G d„ d¦  «        Z G d„ d	ej	        ¦  «        Z	d
S )zù
Legacy module - don't use in new code!

html5lib now has its own proper implementation.

This module implements a tree builder for html5lib that generates lxml
html element trees.  This module uses camelCase as it follows the
html5lib style guide.
é    )Ú_baseÚetree)Úhtmlr   c                   ó   — e Zd Zd„ ZdS )ÚDocumentTypec                 ó0   — || _         || _        || _        d S ©N)ÚnameÚpublicIdÚsystemId)Úselfr
   r   r   s       úf/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/lxml/html/_html5builder.pyÚ__init__zDocumentType.__init__   s   € ØˆŒ	Ø ˆŒØ ˆŒˆˆó    N)Ú__name__Ú
__module__Ú__qualname__r   © r   r   r   r      s#   € € € € € ð!ð !ð !ð !ð !r   r   c                   ó   — e Zd Zd„ Zd„ ZdS )ÚDocumentc                 ó"   — d | _         g | _        d S r	   )Ú_elementTreeÚ
childNodes©r   s    r   r   zDocument.__init__   s   € Ø ˆÔØˆŒˆˆr   c                 óh   — | j                              ¦   «                              |j        ¦  «         d S r	   )r   ÚgetrootÚaddnextÚ_element)r   Úelements     r   ÚappendChildzDocument.appendChild   s.   € ØÔ×!Ò!Ñ#Ô#×+Ò+¨GÔ,<Ñ=Ô=Ð=Ð=Ð=r   N)r   r   r   r   r    r   r   r   r   r      s2   € € € € € ðð ð ð>ð >ð >ð >ð >r   r   c                   óN   — e Zd ZeZeZdZdZeZ	d„ Z
d„ Zd„ Zd„ Zd„ Zd	d„Zd„ ZdS )
ÚTreeBuilderNc                 óÖ   — t          j        t          d¬¦  «        }t          j        t          d¬¦  «        }|j        | _        |j        | _        t          j	        j
        | g|¢R i |¤Ž d S )NF)ÚfullTree)Úetree_buildersÚgetETreeModuler   r   ÚElementÚelementClassÚCommentÚcommentClassr   r"   r   )r   ÚargsÚkwargsÚhtml_builderÚetree_builders        r   r   zTreeBuilder.__init__'   sl   € Ý%Ô4µTÀEÐJÑJÔJˆÝ&Ô5µeÀeÐLÑLÔLˆØ(Ô0ˆÔØ)Ô1ˆÔÝÔÔ" 4Ð9¨$Ð9Ð9Ð9°&Ð9Ð9Ð9Ð9Ð9r   c                 ón   — t           j                             | ¦  «         d| _        g | _        d | _        d S )NF)r   r"   ÚresetÚrootInsertedÚinitialCommentsÚdoctyper   s    r   r0   zTreeBuilder.reset.   s4   € ÝÔ×Ò Ñ%Ô%Ð%Ø!ˆÔØ!ˆÔØˆŒˆˆr   c                 ó   — | j         j        S r	   )Údocumentr   r   s    r   ÚgetDocumentzTreeBuilder.getDocument4   s   € ØŒ}Ô)Ð)r   c                 ó   — g }| j         d         j        }|j        r|                     |j        ¦  «         |                     |                     ¦   «         ¦  «         |j        r|                     |j        ¦  «         |S )Nr   )ÚopenElementsr   ÚtextÚappendÚextendÚgetchildrenÚtail)r   Úfragmentr   s      r   ÚgetFragmentzTreeBuilder.getFragment7   sv   € ØˆØÔ# AÔ&Ô/ˆØŒ<ð 	*Ø�OŠO˜GœLÑ)Ô)Ð)Ø�Š˜×+Ò+Ñ-Ô-Ñ.Ô.Ð.ØŒ<ð 	*Ø�OŠO˜GœLÑ)Ô)Ð)Øˆr   c                 óB   — |                       |||¦  «        }|| _        d S r	   )ÚdoctypeClassr3   )r   r
   r   r   r3   s        r   ÚinsertDoctypezTreeBuilder.insertDoctypeA   s$   € Ø×#Ò# D¨(°HÑ=Ô=ˆØˆŒˆˆr   c                 óŽ   — | j         s| j                             |¦  «         d S t          j                             | ||¦  «         d S r	   )r1   r2   r:   r   r"   ÚinsertComment)r   ÚdataÚparents      r   rD   zTreeBuilder.insertCommentE   sL   € ØÔ ð 	@ØÔ ×'Ò'¨Ñ-Ô-Ð-Ð-Ð-åÔ×+Ò+¨D°$¸Ñ?Ô?Ð?Ð?Ð?r   c                 ó.  — g }| j         r‹| j         j        r|                     d| j         j        z  ¦  «         | j         j        €| j         j        �0|                     d| j         j        ›d| j         j        ›d�¦  «         |                     d¦  «         |                     d¦  «         t          j        d                     |¦  «        ¦  «        }| j        D ])}| 	                    t          j        |¦  «        ¦  «         Œ*|                      ¦   «         | _        |                     ¦   «         | j        _        |                      |¦  «        }||_        | j        j                             |¦  «         | j                             |¦  «         d| _        d S )	Nz<!DOCTYPE %sz	 PUBLIC "z" "ú"ú>z<html></html>Ú T)r3   r
   r:   r   r   r   Ú
fromstringÚjoinr2   Úaddpreviousr   r)   ÚdocumentClassr5   Úgetroottreer   r(   r   r   r8   r1   )r   r
   ÚbufÚrootÚcommentÚroot_elements         r   Ú
insertRootzTreeBuilder.insertRootK   s  € ØˆØŒ<ð 	˜DœLÔ-ð 	Ø�JŠJ�~¨¬Ô(9Ñ9Ñ:Ô:Ð:ØŒ|Ô$Ð0°D´LÔ4IÐ4UØ—
’
�
°$´,Ô2GÐ2GÐ2GØ26´,Ô2GÐ2GÐ2GðIñ Jô Jð Jà�JŠJ�s‰OŒOˆOØ�
Š
�?Ñ#Ô#Ð#ÝŒ˜rŸwšw s™|œ|Ñ,Ô,ˆð Ô+ð 	5ð 	5ˆGØ×Ò�Uœ]¨7Ñ3Ô3Ñ4Ô4Ð4Ð4ð ×*Ò*Ñ,Ô,ˆŒØ%)×%5Ò%5Ñ%7Ô%7ˆŒÔ"ð ×(Ò(¨Ñ.Ô.ˆØ $ˆÔØŒÔ ×'Ò'¨Ñ5Ô5Ð5ØÔ× Ò  Ñ.Ô.Ð.à ˆÔÐÐr   r	   )r   r   r   r   rN   r   rA   r(   r*   ÚfragmentClassr   r0   r6   r?   rB   rD   rT   r   r   r   r"   r"       sŸ   € € € € € Ø€MØ€LØ€LØ€LØ€Mð:ð :ð :ðð ð ð*ð *ð *ðð ð ðð ð ð@ð @ð @ð @ð!ð !ð !ð !ð !r   r"   N)
Ú__doc__Úhtml5lib.treebuildersr   r   r%   Úlxmlr   r   r   r"   r   r   r   ú<module>rY      sÓ   ððð ð AÐ @Ð @Ð @Ð @Ð @Ð @Ð @Ø Ð Ð Ð Ð Ð Ð Ð ð!ð !ð !ð !ð !ñ !ô !ð !ð>ð >ð >ð >ð >ñ >ô >ð >ðD!ð D!ð D!ð D!ð D!�%Ô#ñ D!ô D!ð D!ð D!ð D!r   