Ë
    ˜…j³  ã                   ób  — d Z ddlZddlZddlZddlZddlZddlZddlmZ ddl	Z	ddl
mZ ddl	mZ  ej                  e«      Z e	j                   d«      Z ee«      Zej(                  fd„Zd„ Z G d	„ d
ej.                  «      Z G d„ d«      Z G d„ d«      Zd„ Z G d„ d«      Z G d„ de«      Zy))ÚAutoCastableÚAutoCloseableÚObjectTrackerÚLIBRARY_AVAILABLEÚDEBUG_AUTOCLOSEÚ_debug_closeÚ_warn_closeé    N)Údefaultdict)Úcached_property)r   Fc                 ó  — |t         j                  k  ry 	 t        j                  t        j
                  j                  «       | dz   j                  «       «       y # t        $ r t        | t        j
                  ¬«       Y y w xY w)Nú
)Úfile)
r   ÚvalueÚosÚwriteÚsysÚstderrÚfilenoÚencodeÚ	ExceptionÚprint)ÚmsgÚprios     úY/root/aria/tools/markitdown-venv/lib/python3.12/site-packages/pypdfium2/internal/bases.pyr   r      s]   € àŒo×#Ñ#Ò#Øð$Ü
�‰”—‘×"Ñ"Ó$ s¨4¡x×&7Ñ&7Ó&9Õ:øÜò $ÜˆcœŸ
™
×#ð$ús   –AA Á$BÂ Bc                 ó8   — t        | t        j                  «       y ©N)r   ÚloggingÚWARNING)r   s    r   r   r       s   € Ü�”g—o‘oÕ&ó    c                   ó   — e Zd ZdZdZdZdZy)Ú_STATEéÿÿÿÿr	   é   é   N)Ú__name__Ú
__module__Ú__qualname__ÚINVALIDÚAUTOÚEXPLICITÚBYPARENT© r   r   r!   r!   $   s   „ Ø€GØ€DØ€HØ�Hr   r!   c                   ó   — e Zd ZdZd„ Zy)Ú_FinalizerInfo)Ú
close_funcÚargsÚkwargsÚtrackedÚstatec                 óh   — || _         ||c| _        | _        || _        t        j
                  | _        y r   )r/   r0   r1   r2   r!   r)   r3   )Úselfr/   r0   r1   r2   s        r   Ú__init__z_FinalizerInfo.__init__6   s+   € Ø$ˆŒØ!% vÐˆŒ	�4”;ØˆŒÜ—[‘[ˆ�
r   N©r%   r&   r'   Ú	__slots__r6   r,   r   r   r.   r.   4   s   „ ØD€Ió!r   r.   c                   ó   — e Zd ZdZd„ Zy)Ú_FinalizerOwner©ÚrawÚparentÚwrefÚtypeÚreprc                 óN   — ||c| _         | _        |||c| _        | _        | _        y r   r;   )r5   r<   r=   r>   r?   r@   s         r   r6   z_FinalizerOwner.__init__>   s(   € Ø # VÐˆŒ�$”+Ø*.°°dÐ'ˆŒ	�4”9˜d�ir   Nr7   r,   r   r   r:   r:   <   s   „ Ø9€Ió;r   r:   c                 óî  — t        d| j                  j                  j                  «       › d|j                  › �«       t
        st        d|j                  › d�«       y | j                  t        j                  k7  sJ ‚|j                  }|�‹|j                  «       rJ ‚| j                  rm|j                  |j                  v s0J |j                  › d|j                  › d|› d|j                  › �«       ‚|j                  j                  |j                  «        | j                  |j                   g| j"                  ¢­i | j$                  ¤Ž t&        |j(                     j                  |j                  «       y )NzClose (z) z-> Cannot close z<; pdfium library is destroyed. This may cause a memory leak.ú z, )r   r3   ÚnameÚlowerr@   r   r   r!   r(   r=   Ú_tree_closedr2   r>   Ú_kidsÚremover/   r<   r0   r1   r   r?   )ÚinfoÚownerr=   s      r   Ú_close_templaterK   C   s"  € ô �7˜4Ÿ:™:Ÿ?™?×0Ñ0Ó2Ð3°2°e·j±j°\ÐBÔCÝÜÐ& u§z¡z lÐ2nÐoÔpØà�:‰:œŸ™Ò'Ð'Ð'à�\‰\€FØÐØ×&Ñ&Ô(Ð(Ð(Ø�<Š<Ø—:‘: §¡Ñ-Ðd°%·*±*°¸Q¸u¿z¹z¸lÈ"ÈVÈHÐTUÐV\×VbÑVbÐUcÐ/dÓdÐ-Ø�L‰L×Ñ §
¡
Ô+à€D‡O�O�E—I‘IÐ9 §	¡	Ò9¨T¯[©[Ò9Ü�%—*‘*Ñ×$Ñ$ U§Z¡ZÕ0r   c                   ó,   — e Zd Zed„ «       Zed„ «       Zy)r   c                 ó   — | j                   S r   )r<   ©r5   s    r   Ú_as_parameter_zAutoCastable._as_parameter_]   s   € ð
 �x‰xˆr   c                 ó,   — t        j                  | «      S r   )ÚweakrefÚrefrN   s    r   Ú_wref_to_selfzAutoCastable._wref_to_selfd   s   € ä�{‰{˜4Ó Ð r   N)r%   r&   r'   ÚpropertyrO   r   rS   r,   r   r   r   r   [   s(   „ àñó ðð ñ!ó ñ!r   r   c                   ób   — e Zd Zddddœd„Zed„ «       Zed„ «       Zd„ Zd„ Zd	„ Z	d
„ Z
d„ Zdd„Zy)r   NT)ÚobjÚ
needs_freer2   c                ó�   — t        | d«      rJ ‚t        ||||«      | _        |€| n|| _        d | _        |r| j                  «        y y )NÚ
_finalizer)Úhasattrr.   Ú	_fin_infoÚ_fin_objrY   Ú_attach_finalizer)r5   r/   rV   rW   r2   r0   r1   s          r   r6   zAutoCloseable.__init__k   sN   € ô ˜4 Ô.Ð.Ð.ä'¨
°D¸&À'ÓJˆŒØ # ™°ˆŒØˆŒáØ×"Ñ"Õ$ð r   c                 ó   — t        «       S r   )ÚsetrN   s    r   rG   zAutoCloseable._kidsw   s	   € ä‹uˆr   c                 óp   — t         j                  t        j                  k  rt	        j
                  «       S d S r   )r   r   r   r   ÚuuidÚuuid4rN   s    r   Ú_uuidzAutoCloseable._uuid{   s$   € ä.×4Ñ4´w·±ÒFŒt�z‰z‹|ÐPÈDÐPr   c                 ó¬   — | j                   €t        t        | «      «      n| j                   j                  d d }dt        | «      j                  › d|› d�S )Né   ú<rC   ú>)rc   ÚhexÚidr?   r%   )r5   Ú
identifiers     r   Ú__repr__zAutoCloseable.__repr__   sI   € Ø&*§j¡jÐ&8”Sœ˜D›”]¸d¿j¹j¿n¹nÈSÈbÐ>Qˆ
Ø”4˜“:×&Ñ&Ð' q¨¨°AÐ6Ð6r   c           	      óP  — | j                   �J ‚t        | «      }t        | j                  | j                  | j
                  |t        | «      «      }t        j                  | j                  t        | j                  |«      | _         t        |   j                  | j
                  «       y r   )rY   r?   r:   r<   r=   rS   r@   rQ   Úfinalizer\   rK   r[   r   Úadd)r5   Úown_typerJ   s      r   r]   zAutoCloseable._attach_finalizerƒ   s~   € Ø�‰Ð&Ð&Ð&Ü˜“:ˆô   §¡¨$¯+©+°t×7IÑ7IÈ8ÔUYÐZ^ÓU_Ó`ˆÜ!×*Ñ*¨4¯=©=¼/È4Ï>É>Ð[`ÓaˆŒÜ�hÑ×#Ñ# D×$6Ñ$6Õ7r   c                 óœ   — | j                   j                  «        d | _         t        t        | «         j	                  | j
                  «       y r   )rY   Údetachr   r?   rH   rS   rN   s    r   Ú_detach_finalizerzAutoCloseable._detach_finalizerŒ   s6   € Ø�‰×ÑÔ ØˆŒÜ”d˜4“jÑ!×(Ñ(¨×);Ñ);Õ<r   c                 ór   — | j                   €y| j                  d k7  r| j                  j                  «       ryy)NTF)r<   r=   rF   rN   s    r   rF   zAutoCloseable._tree_closed‘   s0   € Ø�8‰8ÐØØ�;‰;˜$Ò 4§;¡;×#;Ñ#;Ô#=ØØr   c                 óN   — | j                   j                  |j                  «       y r   )rG   rn   rS   )r5   Úkids     r   Ú_add_kidzAutoCloseable._add_kid˜   s   € à�
‰
�‰˜×)Ñ)Õ+r   c                 óZ  — | j                   sy| j                  sd | _         yg }| j                  D ]*  } |«       }|sŒ|j                   sŒ|j                  |«       Œ, |D ]  }|j	                  d¬«       Œ | j                  r<t
        j                  d| j                  › �«       | j                  j                  «        |rt        j                  nt        j                  | j                  _        | j                  «        t        j                  | j                  _        d | _         d | _        y)NFT)Ú
_by_parentz-Some kids weakrefs have not been cleaned up: )r<   rY   rG   ÚappendÚcloseÚloggerÚwarningÚclearr!   r+   r*   r[   r3   r(   )r5   rx   Ú
need_closeÚk_wrefÚks        r   rz   zAutoCloseable.close�   sè   € à�xŠxØØ�ŠØˆDŒHØð ˆ
Ø—j‘jò 	%ˆFÙ“ˆAÚ�Q—U“Uà×!Ñ! !Õ$ð		%ð
 ò 	%ˆAØ�G‰G˜tˆGÕ$ð	%ð �:Š:Ü�N‰NÐJÈ4Ï:É:È,ÐWÔXØ�J‰J×ÑÔá2<œvŸšÄ&Ç/Á/ˆ�‰ÔØ�‰ÔÜ%Ÿ~™~ˆ�‰ÔØˆŒØˆŒàr   )F)r%   r&   r'   r6   r   rG   rc   rk   r]   rr   rF   rv   rz   r,   r   r   r   r   i   sV   „ à.2¸tÈTô 
%ð ñó ðð ñQó ðQò7ò8ò=ò
ò,ô
r   r   )Ú__all__r   r   Úenumra   rQ   r   Úcollectionsr
   Úpypdfium2_cfgÚpypdfium2._lazyr   r   Ú	getLoggerr%   r{   Ú_Mutabler   r_   r   ÚDEBUGr   r   ÚEnumr!   r.   r:   rK   r   r   r,   r   r   ú<module>rŠ      s®   ðð D€ã 	Û 
Û Û Û Û Ý #Û Ý +Ý )à	ˆ×	Ñ	˜8Ó	$€Ø*�M×*Ñ*¨5Ó1Ð á˜CÓ €ð #Ÿ=™=ó $ò'ôˆd�i‰iô ÷ !ñ !÷;ñ ;ò1÷0!ñ !ôP�\õ Pr   