+
    S<Âj¥"  ã                   ó¶   € R t ^ RIt^ RIHt ^ RIHt ^ RIHt ]! R4      t0 Rmt	R t
R t ! R R	4      t ! R
 R]4      t ! R R]4      t ! R R]4      tR tR# )zCompare two HTML documents.N)Ú
HTMLParser)ÚVOID_ELEMENTS)Ú_lazy_re_compilez[\t\n\f\r ]+c                 ó.   € \         P                  R V 4      # )Ú )ÚASCII_WHITESPACEÚsub)Ústrings   &ÚP/var/www/html/data_capital/venv/lib/python3.14/site-packages/django/test/html.pyÚnormalize_whitespacer   -   s   € Ü×Ñ  VÓ,Ð,ó    c           	      ó  € . pV  F|  w  r#VR 8X  d=   V'       d5   RP                  \        R \        P                  V4       4       4      4      pV\        9   d   V'       d   W28X  d   RpMVf   RpVP                  W#34       K~  	  V# )Úclassr   c              3   ó8   "  € T F  q'       g   K  Vx € K  	  R # 5i©N© )Ú.0Úvalues   & r
   Ú	<genexpr>Ú'normalize_attributes.<locals>.<genexpr>8   s   é € ÐQÑ*G Ë5—u’uÓ*Gùs   ‚	�
NÚ )ÚjoinÚsortedr   ÚsplitÚBOOLEAN_ATTRIBUTESÚappend)Ú
attributesÚ
normalizedÚnamer   s   &   r
   Únormalize_attributesr   1   s€   € Ø€JÛ!‰ˆØ�7Œ?Ÿuð —H‘HÜÑQÔ*:×*@Ñ*@ÀÔ*GÓQÓQóˆEð Ô%Ô%ß˜EœMØ�øØŠ]ØˆEØ×Ñ˜4˜-Ö(ñ "ð  Ðr   c                   óf   a € ] tR t^Ft o R tR tR tR tR tRR lt	R t
R tR	 tR
 tR tRtV tR# )ÚElementc                ó@   € Wn         \        V4      V n        . V n        R # r   )r   r   r   Úchildren)Úselfr   r   s   &&&r
   Ú__init__ÚElement.__init__G   s   € ØŒ	Ü  Ó,ˆŒØˆŽr   c                óŽ  € \        V\        4      '       d�   \        V4      pV P                  '       dr   \        V P                  R,          \        4      '       dK   V P                  R;;,          V,          uu&   \        V P                  R,          4      V P                  R&   R# MzV P                  '       di   \        V P                  R,          \        4      '       dB   V P                  R,          P	                  4       '       d   V P                  P                  4        V'       d   V P                  P                  V4       R# R# )é   Néÿÿÿÿ)Ú
isinstanceÚstrr   r#   ÚisspaceÚpopr   ©r$   Úelements   &&r
   r   ÚElement.appendL   sÍ   € Ü�gœs×#Ò#Ü*¨7Ó3ˆGØ�}�}ˆ}¤¨D¯M©M¸"Õ,=¼s×!CÒ!CØ—‘˜b×! WÕ,Ó!Ü$8¸¿¹ÀrÕ9JÓ$K�—‘˜bÑ!ÙøØ�]�]ˆ]ô ˜$Ÿ-™-¨Õ+¬S×1Ò1°d·m±mÀBÕ6G×6OÑ6O×6QÒ6QØ—‘×!Ñ!Ô#ßØ�M‰M× Ñ  Ö)ñ r   c                ó&  a€ V3R  loS! V P                   4       \        V P                   4       F^  w  r\        V\        4      '       d    VP	                  4       V P                   V&   K:  \        VR4      '       g   KN  VP                  4        K`  	  R# )c                 óÔ   <€ V '       d_   \        V R,          \        4      '       dB   V R,          P                  4       V R&   V R,          '       g   V P                  4        S! V 4      p V # ©r(   r)   )r*   r+   Úrstripr-   )r#   Úrstrip_last_elements   &€r
   r5   Ú-Element.finalize.<locals>.rstrip_last_element]   sM   ø€ ßœJ x°¥|´S×9Ò9Ø'¨�|×2Ñ2Ó4�˜‘Ø —|”|Ø—L‘L”NÙ2°8Ó<�HØˆOr   ÚfinalizeN)r#   Ú	enumerater*   r+   ÚstripÚhasattrr7   )r$   ÚiÚchildr5   s   &  @r
   r7   ÚElement.finalize\   sc   ø€ õ	ñ 	˜DŸM™MÔ*Ü! $§-¡-Ö0‰HˆAÜ˜%¤×%Ò%Ø#(§;¡;£=�—‘˜aÓ Ü˜ 
×+Ô+Ø—‘Ö ó	 1r   c                óÌ   € \        VR 4      '       d   V P                  VP                  8w  d   R# V P                  VP                  8w  d   R# V P                  VP                  8H  # )r   F)r:   r   r   r#   r.   s   &&r
   Ú__eq__ÚElement.__eq__l   sK   € Ü�w ×'Ò'¨4¯9©9¸¿¹Ô+DÙØ�?‰?˜g×0Ñ0Ô0ÙØ�}‰} × 0Ñ 0Ñ0Ð0r   c                óH   € \        V P                  .V P                  O54      # r   )Úhashr   r   ©r$   s   &r
   Ú__hash__ÚElement.__hash__s   s   € Ü�T—Y‘YÐ1 §¡Ñ1Ó2Ð2r   c                óÚ  € \        V\        4      '       g	   W8X  d   ^# \        V\        4      '       d   V P                  VP                  8X  d   ^# ^ p^ pV P                   EF  p\        V\        4      '       dE   \        V\        4      '       d-   V'       d   W5P	                  V4      ,          pKQ  W9   d    ^# K\  K^  W5P                  WR7      ,          pV'       g   V'       d   Vu # \        V\        4      '       g   K¢  VP                  '       g   K¶  VP                  V,          pWe8X  d4   V^,          pV\        VP                  4      8X  d   V^,          p^ pKÿ  EK  ^ pEK  	  V# )r(   ©Úcount)r*   r+   ÚRootElementr#   rH   Ú_countÚlen)r$   r/   rH   r;   Úelem_child_idxr<   Ú
elem_childs   &&&    r
   rJ   ÚElement._countv   s   € Ü˜'¤3×'Ò'¨D¬OÙÜ�gœ{×+Ò+°·±À×AQÑAQÔ0QÙØˆØˆØ—]•]ˆEô ˜%¤×%Ò%Ü˜g¤s×+Ò+ßØŸ[™[¨Ó1Õ1šØ Ô)Ú ñ *ñ ,ð —\‘\ '�\Ó7Õ7�ß§Ø’Hô
 ˜g¤{×3Ô3¸×8H×8HÒ8HØ!(×!1Ñ!1°.Õ!A�Jà!Ô*Ø&¨!Õ+˜à)¬S°×1AÑ1AÓ-BÔBØ �F˜AØ-.šNò Cð
 *+›ñ; #ð< ˆr   c                ó.   € V P                  VR R7      ^ 8„  # )FrG   ©rJ   r.   s   &&r
   Ú__contains__ÚElement.__contains__�   s   € Ø�{‰{˜7¨%ˆ{Ó0°1Ñ4Ð4r   c                ó(   € V P                  VR R7      # )TrG   rP   r.   s   &&r
   rH   ÚElement.count    s   € Ø�{‰{˜7¨$ˆ{Ó/Ð/r   c                ó(   € V P                   V,          # r   )r#   )r$   Úkeys   &&r
   Ú__getitem__ÚElement.__getitem__£   s   € Ø�}‰}˜SÕ!Ð!r   c           
     óþ  € R V P                   ,          pV P                   F-  w  r#Ve   VRV: RV: R2,          pK  VRV,          ,          pK/  	  V P                  '       d�   VR,          pTRP                  V P                   Uu. uF:  p\	        V\
        4      '       d   \        P                  ! V4      M
\        V4      NK<  	  up4      ,          pVRV P                   ,          ,          pV# VR,          pV# u upi )	z<%sr   z="Ú"z %sz>
r   z
</%s>Ú>)r   r   r#   r   r*   r+   ÚhtmlÚescape)r$   ÚoutputrV   r   Úcs   &    r
   Ú__str__ÚElement.__str__¦   sÛ   € Ø˜Ÿ™Õ"ˆØŸ/œ/‰JˆCØÒ Ù««UÐ3Õ3’à˜% #�+Õ%’ñ	 *ð
 �=�=ˆ=Ø�e�OˆFØ�b—g‘gð "Ÿ]š]óá*˜ô '1°´C×&8Ò&8”D—K’K ”N¼cÀ!»fÒDÙ*ñóõ ˆFð �i $§)¡)Õ+Õ+ˆFð ˆð �c�MˆFØˆùòs   ÂA C:
c                ó   € \        V 4      # r   )r+   rC   s   &r
   Ú__repr__ÚElement.__repr__º   s   € Ü�4‹yÐr   )r   r#   r   N)T)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r%   r   r7   r?   rD   rJ   rQ   rH   rW   r`   rc   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r
   r!   r!   F   sB   ø‡ € òò
*ò !ò 1ò3ô%òN5ò0ò"ò÷(ð r   r!   c                   ó8   a a€ ] tR t^¾t oV 3R ltR tRtVtV ;t# )rI   c                ó(   <€ \         SV `  R R4       R # )Nr   )Úsuperr%   ©r$   Ú	__class__s   &€r
   r%   ÚRootElement.__init__¿   s   ø€ Ü‰Ñ˜˜rÖ"r   c           	     óÌ   € R P                  V P                   Uu. uF:  p\        V\        4      '       d   \        P
                  ! V4      M
\        V4      NK<  	  up4      # u upi )r   )r   r#   r*   r+   r\   r]   )r$   r_   s   & r
   r`   ÚRootElement.__str__Â   sI   € Ø�w‰wØGKÇ}Â}ÓUÁ}À!œz¨!¬S×1Ò1ŒT�[Š[˜Œ^´s¸1³vÒ=Á}ÑUó
ð 	
ùÚUs   šA A!r   )	re   rf   rg   rh   r%   r`   ri   rj   Ú__classcell__©rp   rk   s   @@r
   rI   rI   ¾   s   ù‡ € õ#÷
ò 
r   rI   c                   ó   € ] tR t^ÈtRtR# )ÚHTMLParseErrorr   N)re   rf   rg   rh   ri   r   r   r
   rw   rw   È   s   † Ûr   rw   c                   ój   a a€ ] tR t^Ìt oV 3R ltR tR
R lt]R 4       tR t	R t
R tR tR	tVtV ;t# )ÚParserc                ó^   <€ \         SV `  4        \        4       V n        . V n        / V n        R # r   )rn   r%   rI   ÚrootÚ	open_tagsÚelement_positionsro   s   &€r
   r%   ÚParser.__init__Í   s&   ø€ Ü‰ÑÔÜ“MˆŒ	ØˆŒØ!#ˆÖr   c                ó4   € \        WP                  4       4      hr   )rw   Úgetpos)r$   Úmsgs   &&r
   ÚerrorÚParser.errorÓ   s   € Ü˜S§+¡+£-Ó0Ð0r   c                óÖ   € V'       g   V'       d   V P                   V,          pVf   V P                  4       p\        VR4      '       d   VP                  VP                  3pRV,          # )NÚlinenozLine %d, Column %d)r}   r€   r:   r…   Úoffset)r$   Úpositionr/   s   &&&r
   Úformat_positionÚParser.format_positionÖ   sR   € ßŸGØ×-Ñ-¨gÕ6ˆHØÒØ—{‘{“}ˆHÜ�8˜X×&Ò&Ø—‘¨¯©Ð7ˆHØ# hÕ.Ð.r   c                ód   € V P                   '       d   V P                   R,          # V P                  # r3   )r|   r{   rC   s   &r
   ÚcurrentÚParser.currentß   s$   € à�>�>ˆ>Ø—>‘> "Õ%Ð%à—9‘9Ðr   c                ód   € V P                  W4       V\        9  d   V P                  V4       R # R # r   )Úhandle_starttagr   Úhandle_endtag)r$   ÚtagÚattrss   &&&r
   Úhandle_startendtagÚParser.handle_startendtagæ   s+   € Ø×Ñ˜SÔ(Ø”mÔ#Ø×Ñ˜sÖ#ñ $r   c                óî   € \        V4      p\        W4      pV P                  P                  V4       V\        9  d   V P
                  P                  V4       V P                  4       V P                  V&   R # r   )r   r!   r‹   r   r   r|   r€   r}   )r$   r�   r‘   r/   s   &&& r
   rŽ   ÚParser.handle_starttagë   sX   € Ü$ UÓ+ˆÜ˜#Ó%ˆØ�‰×Ñ˜GÔ$Ø”mÔ#Ø�N‰N×!Ñ! 'Ô*Ø*.¯+©+«-ˆ×Ñ˜wÓ'r   c                ó|  € V P                   '       g)   V P                  R V: RV P                  4       : R24       V P                   P                  4       pVP                  V8w  dW   V P                   '       g)   V P                  R V: RV P                  4       : R24       V P                   P                  4       pKg  R# )zUnexpected end tag `z` (Ú)N)r|   r‚   rˆ   r-   r   )r$   r�   r/   s   && r
   r�   ÚParser.handle_endtagó   s‚   € Ø�~�~ˆ~Ø�JŠJ»¸d×>RÑ>RÖ>TÐUÔVØ—.‘.×$Ñ$Ó&ˆØ�l‰l˜cÔ!Ø—>—>�>Ø—
’
Û69¸4×;OÑ;OÖ;QÐRôð —n‘n×(Ñ(Ó*ŠGñ "r   c                ó<   € V P                   P                  V4       R # r   )r‹   r   )r$   Údatas   &&r
   Úhandle_dataÚParser.handle_dataþ   s   € Ø�‰×Ñ˜DÖ!r   )r}   r|   r{   )NN)re   rf   rg   rh   r%   r‚   rˆ   Úpropertyr‹   r’   rŽ   r�   r›   ri   rj   rt   ru   s   @@r
   ry   ry   Ì   sA   ù‡ € õ$ò1ô/ð ñó ðò$ò
8ò	+÷"ò "r   ry   c                ó<  € \        4       pVP                  V 4       VP                  4        VP                  pVP	                  4        \        VP                  4      ^8X  d;   \        VP                  ^ ,          \        4      '       g   VP                  ^ ,          pV# )zè
Take a string that contains HTML and turn it into a Python object structure
that can be easily compared against other HTML on semantic equivalence.
Syntactical differences like which quotation is used on arguments will be
ignored.
)	ry   ÚfeedÚcloser{   r7   rK   r#   r*   r+   )r\   ÚparserÚdocuments   &  r
   Ú
parse_htmlr£     st   € ô ‹X€FØ
‡K�K�ÔØ
‡L�L„NØ�{‰{€HØ×ÑÔä
ˆ8×ÑÓ Ô"¬:°h×6GÑ6GÈÕ6JÌC×+PÒ+PØ×$Ñ$ QÕ'ˆØ€Or   >   ÚloopÚopenÚasyncÚismapÚmutedÚhiddenÚcheckedÚdefaultÚautoplayÚcontrolsÚdisabledÚmultipleÚnomoduleÚreadonlyÚrequiredÚreversedÚselectedÚ	autofocusÚ	itemscopeÚ	truespeedÚ
novalidateÚplaysinlineÚformnovalidateÚallowfullscreenúdefer )Ú__doc__r\   Úhtml.parserr   Údjango.utils.htmlr   Údjango.utils.regex_helperr   r   r   r   r   r!   rI   Ú	Exceptionrw   ry   r£   r   r   r
   Ú<module>rÂ      sj   ðÙ !ã Ý "å +Ý 6ñ
 $ OÓ4Ð òÐ ò<-ò÷*uñ uôp
�'ô 
ô	�Yô 	ô3"ˆZô 3"ôlr   