ó
    µ'Ôi*  ã                   óÐ   • S r SSKrSSKrSSKJrJr  SSKJr  SSKJ	r	   SSKJ
r
  \" S5      rS rS\S\4   S\S\S
\4S jrS\4S jrS rS rg! \ a    S\S	\S
S4S jr
 N>f = f)z2Convenience layer on top of stdlib's shutil and osé    N)ÚCallableÚTypeVaré   )Úpy311)Úlog)ÚchmodÚargsÚkwargsÚreturnc                  ó   • g ©N© )r	   r
   s     ÚQ/var/www/surfInsights/venv3-11/lib/python3.13/site-packages/setuptools/_shutil.pyr   r      s   € Øó    Ú_Tc                 ó¦   • [         R                  " SX5         [        X5        g ! [         a!  n[         R                  " SU5         S nAg S nAff = f)Nzchanging mode of %s to %ozchmod failed: %s)r   Údebugr   ÚOSError)ÚpathÚmodeÚes      r   Úattempt_chmod_verboser      s@   € Ü‡I‚IÐ)¨4Ô6ð)ÜˆdÕøÜó )Ü�	Š	Ð$ a×(Ñ(ûð)ús   ™% ¥
A¯AÁAÚfunc.ÚargÚexcc                 óº   • U [         R                  [         R                  4;   a6  [         R                  S:X  a"  [	        U[
        R                  5        U " U5      $ Ue)zIshutils onexc callback to automatically call chmod for certain functions.Únt)ÚosÚunlinkÚremoveÚnamer   ÚstatÚS_IWRITE)r   r   r   s      r   Ú_auto_chmodr$       s@   € ð
 ”—	‘	œ2Ÿ9™9Ð%Ó%¬"¯'©'°T«/Ü˜c¤4§=¡=Ô1Ù�C‹yÐØ
€Ir   Fc                 ó0   • [         R                  " XU5      $ )zl
Similar to ``shutil.rmtree`` but automatically executes ``chmod``
for well know Windows failure scenarios.
)r   Úshutil_rmtree)r   Úignore_errorsÚonexcs      r   Úrmtreer)   +   s   € ô
 ×Ò˜t°EÓ:Ð:r   c                 óf   • [         R                  R                  U 5      (       a  [        U 40 UD6  g g r   )r   r   Úisdirr)   )r   Úoptss     r   Úrmdirr-   3   s'   € Ü	‡w�w‡}�}�T×ÑÜˆtÑ�tÓð r   c                  ó^   • [         R                  " S5      n [         R                  " U 5        U $ )Né   )r   Úumask)Útmps    r   Úcurrent_umaskr2   8   s   € Ü
�(Š(�5‹/€CÜ‡H‚HˆS„MØ€Jr   )Ú__doc__r   r"   Útypingr   r   Úcompatr   Ú	distutilsr   r   ÚImportErrorÚobjectr   r   ÚstrÚBaseExceptionr$   r)   r-   r2   r   r   r   Ú<module>r;      sŸ   ðÙ 8ã 	Û ß $å å ðÝñ ˆTƒ]€ò)ðØ
�3˜�7Ñ
ðØ"%ðØ,9ðàôð  %¨Kô ;òó
øðU ó ð�Vð  vð °$ö ðús    A ÁA%Á$A%