Ë
    dQêjª	  ã                  óæ   — d dl mZ ddhZd dlZd dlZd dlmZ dej                  cxk  xr dk  nc xs+ dej                  cxk  xr d	k  nc xs ej                  d	k\  Zerdd
„Z	ndd„Z	dd„Z
dgZy)é    )ÚannotationsÚpathlibÚtarfileN)ÚPath)é   é
   é   )r   é   )r   r
   é   )r   é   c                ó*   — | j                  |d¬«       y)zNExtract every member of ``tar`` into ``path`` via the PEP 706 ``data`` filter.Údata)ÚfilterN)Ú
extractall)ÚtarÚpaths     úZ/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/build/_compat/tarfile.pyÚsafe_extractallr      s   € à�‰�t FˆÕ+ó    c                óš   — t        |«      j                  «       }| j                  «       D ]  }t        ||«       Œ | j	                  |«       y)aW  Validate every member of ``tar``, then extract into ``path``.

        Reached on 3.10.0-3.10.12 / 3.11.0-3.11.4 where the stdlib ``data`` filter is missing. Device or special files,
        paths that escape ``path``, and symlinks/hardlinks whose targets resolve outside ``path`` are rejected before
        any write hits the disk.

        N)r   ÚresolveÚ
getmembersÚ_validate_safe_memberr   )r   r   ÚbaseÚmembers       r   r   r      sB   € ô �D‹z×!Ñ!Ó#ˆØ—n‘nÓ&ò 	0ˆFÜ! &¨$Õ/ð	0à�‰�tÕr   c                ó~  — | j                  «       s | j                  «       s| j                  «       r$d| j                  ›�}t	        j
                  |«      ‚|| j                  z  j                  d¬«      }|j                  |«      s%d| j                  ›d�}t	        j
                  |«      ‚| j                  «       s| j                  «       rt| j                  «       r|j                  n|}|| j                  z  j                  d¬«      }|j                  |«      s%d| j                  ›d�}t	        j
                  |«      ‚y y )Nz(refusing to extract special device file F)Ústrictzrefusing to extract z: path escapes destinationz!: link target escapes destination)ÚischrÚisblkÚisfifoÚnamer   ÚTarErrorr   Úis_relative_toÚissymÚislnkÚparentÚlinkname)r   r   ÚmsgÚtargetÚ	link_baseÚlink_targets         r   r   r   -   s  € Ø‡|�|„~˜Ÿ™œ¨6¯=©=¬?Ø8¸¿¹¸ÐHˆÜ×Ñ˜sÓ#Ð#Ø�V—[‘[Ñ ×)Ñ)°Ð)Ó7€FØ× Ñ  Ô&Ø$ V§[¡[ OÐ3MÐNˆÜ×Ñ˜sÓ#Ð#Ø‡|�|„~˜Ÿ™œØ%+§\¡\¤^�F—M’M¸ˆ	Ø  6§?¡?Ñ2×;Ñ;À5Ð;ÓIˆØ×)Ñ)¨$Ô/Ø(¨¯©¨Ð7XÐYˆCÜ×"Ñ" 3Ó'Ð'ð 0ð (r   r   )r   ztarfile.TarFiler   z
Path | strÚreturnÚNone)r   ztarfile.TarInfor   r   r,   r-   )Ú
__future__r   Ú__lazy_modules__Úsysr   r   r   Úversion_infoÚ_HAS_DATA_FILTERr   r   Ú__all__© r   r   ú<module>r5      s€   ðÝ "ð ˜yÐ)Ð ã 
Û å ð �3×#Ñ#Ö- gÔ-Òx°¸s×?OÑ?OÖ1YÐRYÔ1YÒxÐ]`×]mÑ]mÐqxÑ]xð ñ ô,óó(ð" ð�r   