Your IP : 18.119.0.68


Current Path : /proc/self/root/opt/alt/python313/lib64/python3.13/__pycache__/
Upload File :
Current File : //proc/self/root/opt/alt/python313/lib64/python3.13/__pycache__/shutil.cpython-313.opt-2.pyc

�

���gw���2�SSKrSSKrSSKrSSKrSSKrSSKrSSKrCSrSSK	r	C	Sr
SSKrCSr\RS:HrS=rr\RS:XaSSKrO\(aSSKr\R"S:XaSSKrOSr\(aSOSr\"\S	5=(a \R"R+S
5q\=(a	 \"\S5rSr/S
Qr"SS\5r"SS\5r"SS\5r"SS\5r"SS\5r"SS\ 5r!"SS\ 5r"Sr#Sr$\4Sjr%SrSjr&S r'S!r(S"r)SS#.S$jr*SS#.S%jr+\"\S&5(aSS#.S'jr,OS(r,SS#.S)jr-SS#.S*jr.SS#.S+jr/S,r0SsS-jr1SS\/SS4S.jr2\"\RfS/5(aS0r4OS1r4S2r5S3r6\Rn\R\Rp\Rr1\Rt:*=(a9 \Rv\Rx;=(a \R\Rz;r>StSSS4.S5jjr?\>\?l@S6rA\/4S7jrBS8rCS9rDS:rES;rFSuS<jrGSvS=jrHS\GlIS\HlIS>\GS?/S@40rJ\(a\GSA/SB4\JSC'\H/SD4\JSE'\
(a	\GSF/SG4\JSH'\(a	\GSI/SJ4\JSK'SLrKSwSMjrLSNrMSxSOjrNSPrOSQrPSwSRjrQSSrRSTrSSUrTSSV.SWjrUSX/\U/S@4SY/\T/SD4SZ.rV\(aS[S\/\U/SB4\VSC'\
(aS]S^/\U/SG4\VSH'\(aS_S`/\U/SJ4\VSK'SarWSySSV.SbjjrX\"\Sc5(a[\R�Sd5 \R�"SeSf5r[Sg\[R�l]Sh\[R�l]Si\[R�l]Sjr`O.\(a'\R�Sd5 \R�"SeSf5r[Skr`SySSSl.SmjjraSzSnjrbSorcSprd\R�\R�-S4Sqjrgg!\a SrGN�f=f!\a Sr
GN�f=f!\a SrGN�f=f){�NTF�nt�posix�win32ii�sendfile)�linux�android�
_fcopyfilez%.COM;.EXE;.BAT;.CMD;.VBS;.JS;.WS;.MSC)�copyfileobj�copyfile�copymode�copystat�copy�copy2�copytree�move�rmtree�Error�SpecialFileError�	ExecError�make_archive�get_archive_formats�register_archive_format�unregister_archive_format�get_unpack_formats�register_unpack_format�unregister_unpack_format�unpack_archive�ignore_patterns�chown�which�get_terminal_size�
SameFileErrorc��\rSrSrSrg)r�C�N��__name__�
__module__�__qualname__�__firstlineno__�__static_attributes__r%��-/opt/alt/python313/lib64/python3.13/shutil.pyrrCs��r,rc��\rSrSrSrg)r"�Fr%Nr&r%r,r-r"r"F���r,r"c��\rSrSrSrg)r�Ir%Nr&r%r,r-rrIr0r,rc��\rSrSrSrg)r�Mr%Nr&r%r,r-rrMr0r,rc��\rSrSrSrg)�	ReadError�Pr%Nr&r%r,r-r6r6Pr0r,r6c��\rSrSrSrg)�
RegistryError�Sr%Nr&r%r,r-r9r9Sr0r,r9c��\rSrSrSrg)�_GiveupOnFastCopy�Wr%Nr&r%r,r-r<r<Wr0r,r<c��UR5nUR5n[R"X4U5 g![an[U5eSnAff=f![
acnURUlURUlUR[R[R1;a[U5eUSeSnAff=f�N)�fileno�	Exceptionr<rr	�OSError�name�filename�	filename2�errno�EINVAL�ENOTSUP)�fsrc�fdst�flags�infd�outfd�errs      r-�_fastcopy_fcopyfilerO\s���%��{�{�}�����
�� �
����e�,��	�%���$�$��%��
� ��y�y����	�	��
��9�9����u�}�}�5�5�#�C�(�(��4���
 �s-� ;�A�
A�A�A�
C�"AC�Cc��UR5nUR5n[[R
"U5RS5n[RS:a[US5nSn[R"X2Xe5nUS:XagXg-
nM%![an[U5eSnAff=f![a SnNsf=f![a�nURUl
URUlUR[R :Xa
Sq[U5eUR[R$:XaUSeUS:Xa5[R&"US[R(5S:Xa[U5eUeSnAff=f)Ni�ili@rF)r@rAr<�max�os�fstat�st_sizerB�sys�maxsize�minrrCrDrErF�ENOTSOCK�_USE_CP_SENDFILE�ENOSPC�lseek�SEEK_CUR)rIrJrLrMrN�	blocksize�offset�sents        r-�_fastcopy_sendfiler`psP��%��{�{�}�����
���������.�.��8�	�
�{�{�W���	�7�+�	�
�F�
�	��;�;�u�F�>�D�,�q�y���N�F�5��%�%���$�$��%�����	����	��9�9�C�L� �I�I�C�M��y�y�E�N�N�*�$)� �'��,�,��y�y�E�L�L�(��t�#���{�r�x�x��q�"�+�+�>�!�C�'��,�,��I��'	�sA� B�*B2�1C�
B/�B*�*B/�2C�C�
E>�B+E9�9E>c� �URnURn[[U55nU"U5nU(dO&Xb:aUSUnU"U5 SSS5 O
U"U5 M6SSS5 g!,(df   N"=f!,(df   g=fr?)�readinto�write�
memoryview�	bytearray)rIrJ�length�
fsrc_readinto�
fdst_write�mv�n�smvs        r-�_copyfileobj_readintorl�s|���M�M�M����J�	�I�f�%�	&�"���b�!�A��������V�s��s�O����2���
'�	&��V��

'�	&�s#�A?�		A.�A?�.
A<	�8A?�?
B
c��U(d[nURnURnU"U5=n(aU"U5 U"U5=n(aMggr?)�COPY_BUFSIZE�readrc)rIrJrf�	fsrc_readrh�bufs      r-r
r
�sH������	�	�I����J��6�"�
"�#�
"��3���6�"�
"�#�
"�
"r,c��[U[R5(ab[[RS5(aC[RRUR
5[R"U55$[[RS5(a [RRX5$[RR[RRU55[RR[RRU55:H$![a gf=f![a gf=f)N�samestatF�samefile)�
isinstancerR�DirEntry�hasattr�pathrs�statrBrt�normcase�abspath��src�dsts  r-�	_samefiler�s����#�r�{�{�#�#������(D�(D�	��7�7�#�#�C�H�H�J������=�=��r�w�w�
�#�#�	��7�7�#�#�C�-�-�

�G�G���R�W�W�_�_�S�1�2��G�G���R�W�W�_�_�S�1�2�
3�4���	��	���	��	�s%�AD:�"E
�:
E�E�

E�Ec��[U[R5(aUR5$[R"U5$r?)rurRrvry��fns r-�_statr��s+��"�2�r�{�{�3�3�2�7�7�9�D������Dr,c��[U[R5(aUR5$[RRU5$r?)rurRrv�
is_symlinkrx�islinkr�s r-�_islinkr��s0��(��R�[�[�9�9�2�=�=�?�Q�r�w�w�~�~�b�?Q�Qr,��follow_symlinksc
�B�[R"SX5 [X5(a[SR	X55eSn[X/5H�upE[
U5n[R"UR5(a;[U[R5(aUROUn[SU-5e[(aUS:XaUR nM�M�M� U(d=[%U5(a-[R&"[R("U5U5 U$[+US5n[+US5n[,(a/[/Xx[0R25 UsSSS5 sSSS5 $[6(a [9Xx5 UsSSS5 sSSS5 $[(a4US:�a.[;Xx[=U[>55 UsSSS5 sSSS5 $[AXx5 SSS5 SSS5 U$!["a GM�f=f![4a N;f=f![4a NKf=f!,(df   NJ=f![Ba9n	[RREU5(d[GSU35U	eeSn	A	ff=f!,(df   U$=f)Nzshutil.copyfilez{!r} and {!r} are the same filerz`%s` is a named pipe�rb�wbzDirectory does not exist: )$rU�auditrr"�format�	enumerater�ry�S_ISFIFO�st_moderurRrvrxr�_WINDOWSrTrBr��symlink�readlink�open�_HAS_FCOPYFILErOr�_COPYFILE_DATAr<rYr`rlrWrnr
�IsADirectoryError�exists�FileNotFoundError)
r}r~r��	file_size�ir��strIrJ�es
          r-rr�s-���I�I���*������=�D�D�S�N�O�O��I��C�:�&���	'��r��B��}�}�R�Z�Z�(�(� *�2�r�{�{� ;� ;�R�W�W���&�'=��'B�C�C��x�A��F��J�J�	�#�x�'��w�s�|�|�
�
�
�2�;�;�s�#�S�)�D�J�A�#�t�_��
��#�t�_��%�~�!�/��E�<P�<P�Q�#&�%�_��_�*�)�!�.�t�:�#&�%�_��_�&"��i�!�m�-�d�#�i��:V�W�"�'%�_��_�. ��+�+%��@�J��]�	��	��, 1�!� �!�� 1�!� �!��%�_��0%�
��w�w�~�~�c�*�*�+�.H���,N�O�UV�V���	
��5�_�@�J�s��H�6J�8I	�H8�H�,	I	�?H8�H(�	I	�*,H8�	I	�)H8�4I	�
H�H�
H%�"H8�$H%�%H8�(
H5�2H8�4H5�5H8�8
I	�I	�J�I	�	
J�4J�J�J�
Jc��[R"SX5 U(dj[U5(aZ[RRU5(a6[
[S5(a [R[RpCOSg[n[RS:Xa([RRU5(aSnO[RnU"U5nU"U[R"UR55 g)Nzshutil.copymode�lchmodrc�0�[R"USS06 g)Nr�T)rR�chmod��argss r-�
chmod_func�copymode.<locals>.chmod_func8s�����$�5��5r,)rUr�r�rRrxr�rw�lstatr�r�rCr�ry�S_IMODEr�)r}r~r��	stat_funcr�r�s      r-rr&s����I�I���*��w�s�|�|������s�0C�0C��2�x� � �$&�H�H�b�i�i�z���	�
�7�7�d�?�r�w�w�~�~�c�2�2�
6����J�	�3��B��s�D�L�L����,�-r,�	listxattrc�(�[R"XS9nUH.n[R"XUS9n[R"XXbS9 M0 g![aHnUR[R[R
[R4;aeSnAgSnAff=f![agnUR[R[R[R
[R[R4;aeSnAM�SnAff=f�Nr�)rRr�rBrFrH�ENODATArG�getxattr�setxattr�EPERM�EACCES)r}r~r��namesr�rC�values       r-�
_copyxattrr�As���	��L�L��F�E�
�D�
����C��O�����C�u�N���	�	��w�w�u�}�}�e�m�m�U�\�\�J�J����	���
��7�7�5�;�;��
�
�u�}�}�#(�<�<����#?�?��?��
�s/�A�*B �
B�>B�B� 
D�*AD�Dc��gr?r%)r��kwargss  r-r�r�Y���r,c�8^	�[R"SX5 SSS.Sjm	U=(d6 [U5=(a [RRU5(+nU(aU	4SjnOU	4Sjn[
U[R5(aURUS9nOU"S5"XS9n[R"UR5nU"S5"XRUR4US9 [XUS9 U"S	5"XUS9 [US
5(aU"S5"XR US9 gg![a N7f=f!["aJnSH>n[[$U5(dMUR$['[$U5:XdM: SnAg eSnAff=f)
Nzshutil.copystat)�nsr�c��gr?r%)r�r�r�s   r-�_nop�copystat.<locals>._nopjr�r,c�&>�[[UT5$r?)�getattrrR)rCr�s �r-�lookup�copystat.<locals>.lookupqs����2�t�T�*�*r,c�V>�[[UT5nU[R;aU$T$r?)r�rR�supports_follow_symlinks)rCr�r�s  �r-r�r�vs)�����T�4�(�B��R�0�0�0��	��Kr,r�ry�utimer��st_flags�chflags)�
EOPNOTSUPPrH)rUr�r�rRrxr�rurvryr�r��st_atime_ns�st_mtime_nsr��NotImplementedErrorrwr�rBrFr�)
r}r~r��followr�r��mode�whyrNr�s
         @r-r
r
\sT����I�I���*��T�
��
J�W�S�\�%I�b�g�g�n�n�S�6I� J�F�
�	+�
	��#�r�{�{�#�#�
�X�X�f�X�
-��
�F�^�C�
8���<�<��
�
�#�D�
�7�O�C�^�^�R�^�^�<�� ��s��0�

��w���6�:��r�:���	��9��c�;�;��G����
�	
�
���	�.���5�#�&�&�3�9�9���s�8K�+K��/���	�s<�=
D5�E�5
E�E�
F�F�+F�F�F�Fc���[RRU5(a=[RRU[RR	U55n[XUS9 [
XUS9 U$r�)rRrx�isdir�join�basenamerr)r}r~r�s   r-rr�sS��
�w�w�}�}�S����g�g�l�l�3���� 0� 0�� 5�6���S��7��S��7��Jr,c��[RRU5(a=[RRU[RR	U55n[[S5(ap[R"U5n[R"U5n[RnU(dU[R-n[R"X4U5 U$[XUS9 [!XUS9 U$![aSnUR[R:XaU(dSnANJUR[R:XaSnANmeSnAff=f)N�	CopyFile2r�)rRrxr�r�r�rw�_winapi�fsdecode�%COPY_FILE_ALLOW_DECRYPTED_DESTINATION�COPY_FILE_COPY_SYMLINKr�rB�winerror�ERROR_PRIVILEGE_NOT_HELD�ERROR_ACCESS_DENIEDrr
)r}r~r��src_�dst_rK�excs       r-rr�s���
�w�w�}�}�S����g�g�l�l�3���� 0� 0�� 5�6���w��$�$��{�{�3����{�{�3����=�=����W�3�3�3�E�	����d�%�0��J�
�S��7��S��7��J���	����� @� @�@�'������!<�!<�<����	�s$�C=�=
E�%E�1E�E�Ec�^�U4SjnU$)Nc�z>�/nTH(nUR[R"X55 M* [U5$r?)�extend�fnmatch�filter�set)rxr��
ignored_names�pattern�patternss    �r-�_ignore_patterns�)ignore_patterns.<locals>._ignore_patterns�s4����
��G�� � �����!?�@� ��=�!�!r,r%)r�r�s` r-rr�s���
"�
�r,c
���Ub8U"[R"U5UVs/sHo�RPM sn5n	OSn	[R"X'S9 /n
U[L=(d U[
LnUGH�nURU	;aM[RRXR5n
[RRX,R5nU(aUOU
nUR5nU(aC[RS:Xa/URSS9nUR[R:XaSnU(a�[R"U
5nU(a)[R"UU5 [X�U(+S9 GMRU5(d
U(aGMIUR!5(a[#X�X4XVU5 GMoU"X�5 GMzUR!5(a[#X�X4UXg5 GM�U"X�5 GM� [X5 U
(a[%U
5eU$s snf![$a*nU
R'UR(S5 SnAGMSnAf[*a(nU
R-X�[/U545 SnAGM1SnAff=f![*a4n[1USS5cU
R-X[/U545 SnAN�SnAff=f)Nr%)�exist_okrFr�rr�)rR�fspathrC�makedirsrrrxr�r�ry�st_reparse_tag�IO_REPARSE_TAG_MOUNT_POINTr�r�r
r��is_dirrrr�r�rB�append�strr�)�entriesr}r~�symlinks�ignore�
copy_function�ignore_dangling_symlinks�
dirs_exist_ok�xr��errors�use_srcentry�srcentry�srcname�dstname�srcobjr�r��linktorNr�s                     r-�	_copytreer��s8��
���r�y�y��~��/H��1����/H�I�
��
��K�K��,�
�F� �E�)�B�]�d�-B�L����=�=�M�)���'�'�,�,�s�M�M�2���'�'�,�,�s�M�M�2��)��w��&	8�!�,�,�.�J��b�g�g��o�!�
�
�e�
�<���'�'�4�+J�+J�J�!&�J�����W�-����J�J�v�w�/��V�(�l�K��7�7�>�>�&�1�1�6N� ����(�(� ��(�!.�!.�0�&�f�6����"�"���(�M�1�B��f�.�M�Z0����
��F�m���J��{0I��b�	'��M�M�#�(�(�1�+�&�&���	8��M�M�7�S��X�6�7�7��	8���0��3�
�D�)�1��M�M�3�S��X�.�/���0�s`�H:
�!B$H?�+H?�6#H?�H?�'#H?�
H?�J&�?
J#�	I.�.
J#�;J�J#�&
K$�0*K�K$c���[R"SX5 [R"U5n[	U5nSSS5 [WXUX4UUS9$!,(df   N=f)Nzshutil.copytree)r�r}r~r�r�r�r�r�)rUr�rR�scandir�listr�)	r}r~r�r�r�r�r��itrr�s	         r-rr&sS��P�I�I���*�	���C��C��s�)��
��W�#��"�.F�#0�2�2�
��s�A�
A�st_file_attributesc���[R"UR5=(dA UR[R-=(a UR
[R:H$r?)ry�S_ISLNKr�r�FILE_ATTRIBUTE_REPARSE_POINTr�r��r�s r-�_rmtree_islinkr	WsL�����R�Z�Z�(�J�
�
"�
"�T�%F�%F�
F�I��%�%��)H�)H�H�	Kr,c�B�[R"UR5$r?)ryrr�rs r-r	r	\s���|�|�B�J�J�'�'r,c�^�U4Sjn[R"USU[RS9nUH�upEnUH9n[RR	XG5n[R
"U5 M; UH9n[RR	XG5n[R"U5 M; M� [R
"U5 g![a M�[a"n	T"[R
X�5 Sn	A	M�Sn	A	ff=f![a M�[a"n	T"[RX�5 Sn	A	M�Sn	A	ff=f![a g[a!n	T"[R
X	5 Sn	A	gSn	A	ff=f)Nc�v>�[U[5(d#T"[RURU5 ggr?)rur�rRrrD)rN�onexcs �r-�onerror�_rmtree_unsafe.<locals>.onerroras*����#�0�1�1��"�*�*�c�l�l�C�0�2r,F)�topdownr�followlinks)	rR�walk�_walk_symlinks_as_filesrxr��rmdirr�rB�unlink)
rxr
r�results�dirpath�dirnames�	filenamesrC�fullnamerNs
 `        r-�_rmtree_unsafer`s'���1��g�g�d�E�7��Hb�Hb�c�G�(/�$��9��D��w�w�|�|�G�2�H�
/�����"���D��w�w�|�|�G�2�H�
0��	�	�(�#��)0�"#�
������%�
���
/��b�h�h��.�.��
/��%�
���
0��b�i�i��/�/��
0���
���#�
�b�h�h��"�"��#�sZ�C�D
�8E�
D�	D�%D�D�

E�	E� D=�=E�
E;�	E;�E6�6E;c��UR5up#pEUcUOURnU[RLa[R"U5 gU[RLa[R"XcS9 gUc[R
"XcS9nOUR
SS9n[Rn[R"U[R[R-US9n[RRn[RRU[R"U55(d[S5eUR[RX4U45 UR[RX�U45 [R n[R "U5n	[#U	5n
SSS5 W
H�n[RR%XKR5nUR'SS9(a$UR[R
X�U45 Me[R*"URUS9 M� g!UR[RX�U45 f=f!,(df   N�=f![(a M�[a Nuf=f![(a M�[a#n
U"[R*X�5 Sn
A
GMSn
A
ff=f![(a4n
UbU[RLaXMlU"X$U
5 Sn
A
gSn
A
gSn
A
f[an
XMlU"X$U
5 Sn
A
gSn
A
ff=f)N)�dir_fdFr��%Cannot call rmtree on a symbolic link)�poprCrR�closerr�ryr��O_RDONLY�
O_NONBLOCKrxr�rsrSrBr�rrr�r�r�rrD)�stackr
�func�dirfdrx�
orig_entryrC�orig_st�topfd�
scandir_itr��entryrrNs              r-�_rmtree_safe_fdr+~si��%*�I�I�K�!�D���%�4�:�?�?�D�6��2�8�8���H�H�U�O���2�8�8���H�H�T�(��
���h�h�t�2�G� �o�o�e�o�<�G��w�w������b�k�k�B�M�M�9�%�H���w�w�~�~��	>��7�7�#�#�G�R�X�X�e�_�=�=��E�F�F��L�L�"�(�(�E��<�=��L�L�"�(�(�E��<�=��z�z��
�Z�Z��
�*��:�&�G���E��w�w�|�|�D�*�*�5�H�
��<�<��<�6��L�L�"�(�(�E�U�!C�D��7�
0��	�	�%�*�*�U�3���
�L�L�"�(�(�E��<�=���
��%�
���
��
��%�
���
0��b�i�i��/�/��
0���#�������!1��L��$�c�"�"�"2������
�d�#�����s��)K�'K�8BK�?A&I�%AK�-I5�96K�06J�&K�*J"�	K�$I2�2K�5
J�?K�
J�K�	J�K�J�K�"
K�,K�/	K�8K�K�K�K�
L=�(%L�
L=�$L8�8L=)r
rc�^�[R"SX5 U(aSnOTcUcSnOUc
TcSnOU4Sjn[(a�[U[5(a[
R"U5n[
RX@S4/nU(a[XS5 U(aMU(aIUR5upgpU[
RLaM/[
R"U5 U(aMHggUb[S5e[
R"U5n
[U
5(a[S5e[!X5$![a!n	U"[
RX	5 Sn	A	N~Sn	A	ff=f!U(axUR5upgpU[
RLaM/[
R"U5 O.![a!n	U"[
RX	5 Sn	A	OSn	A	ff=fU(aMwff=f![a!n	U"[
RX	5 Sn	A	gSn	A	ff=f![a+n	U"[
RRX	5 Sn	A	gSn	A	ff=f)Nz
shutil.rmtreec��gr?r%r�s r-r
�rmtree.<locals>.onexc�s��r,c��er?r%r�s r-r
r.�s��r,c��er?r%r�s r-r
r.�s��r,c�Z>�UupnUcSnO[U5X3R4nT"XU5$)N)NNN)�type�
__traceback__)r�r$rxr��exc_infors     �r-r
r.�s7���"&���C��;�/�H�#�C�y�#�/@�/@�@�H��t�8�4�4r,z#dir_fd unavailable on this platformr)rUr��_use_fd_functionsru�bytesrRr�r�r+rr rBr�r	rxr�r)rx�
ignore_errorsrr
rr#r$�fdr*rNr�s  `        r-rr�s����*�I�I�o�t�,��	�	��U�]�	�	���?�
�
5����d�E�"�"��;�;�t�$�D��(�(�F�$�/�0��	/����-��%��(-�	�	��%��$��r�x�x�'��/��H�H�R�L��%���%�&K�L�L�	����$��B�	��b�!�!��E�F�F�"��d�*�*��%�/��"�(�(�D�.�.��/��
�(-�	�	��%��$��r�x�x�'��/��H�H�R�L���/��"�(�(�D�.�.��/��
�%���	��"�(�(�D�&���	���	��"�'�'�.�.�$�,���	�s��	E0�E�G4�H"�
E-�E(�(E-�00G1�!F8�7G1�8
G#�G�G1�G#�#
G1�/G1�4
H�>H�H�"
I�,!I�Ic��[R"U5n[RR[RR=(d S-n[RRUR
U55$�N�)rRr�rx�sep�altsepr��rstrip)rxr<s  r-�	_basenamer?sN���9�9�T�?�D�
�'�'�+�+������-�2�
.�C�
�7�7���D�K�K��,�-�-r,c���[R"SX5 Un[RR	U5(a�[X5(a;[RR
U5(d[R"X5 g[RRU[U55n[RRU5(a[SU-5e[R"X5 U$![Gai [RR
U5(aE[R"U5n[R"XC5 [R"U5 U$[RR	U5(a�[!X5(a[SU<SU<S35e[#U5(dY[R$"U[R&5(dC[R("U5(a([R*S:Xa[-SU<SU<S35e[/XUS	S
9 [1U5 U$U"X5 [R"U5 U$f=f)Nzshutil.movez$Destination path '%s' already existszCannot move a directory 'z' into itself 'z'.�darwinz%Cannot move the non-empty directory 'z ': Lacking write permission to 'T)r�r�)rUr�rRrxr�rr��renamer�r?r�rrBr�r�r�
_destinsrc�
_is_immutable�access�W_OK�listdir�platform�PermissionErrorrr)r}r~r��real_dstr�s     r-rr.s���4�I�I�m�S�&��H�	�w�w�}�}�S����S���r�w�w�~�~�c�':�':�
�I�I�c����7�7�<�<��Y�s�^�4��
�7�7�>�>�(�#�#��>��I�J�J��
�	�	�#� �,�O��+��
�7�7�>�>�#����[�[��%�F��J�J�v�(��I�I�c�N�"�O�!�W�W�]�]�3�
�
��#�#�#��(+�S�2�3�3��c�"�"��I�I�c�2�7�7�3�3��
�
�3����L�L�H�4�%�),�c�'3�4�4�
�S�-�"�
$��3�K��O�
�#�(��I�I�c�N��O�+�s �%C=�=A1I1�1CI1�I1�0I1c���[RRU5n[RRU5nUR[RR5(dU[RR-
nUR[RR5(dU[RR-
nURU5$r?)rRrxr{�endswithr<�
startswithr|s  r-rCrCps���
�'�'�/�/�#�
�C�
�'�'�/�/�#�
�C��<�<������$�$��r�w�w�{�{����<�<������$�$��r�w�w�{�{����>�>�#��r,c��[U5n[R[R/n[	US5=(a UR
U;$)Nr�)r�ry�UF_IMMUTABLE�SF_IMMUTABLErwr�)r}r��immutable_statess   r-rDrDys>��	�s��B��)�)�4�+<�+<�=���2�z�"�F�r�{�{�6F�'F�Fr,c��UcgSSKJn U"U5nUbUS$g![a gf=f![a SnN'f=f)Nr)�getgrnam�)�grprS�ImportError�KeyError)rCrS�results   r-�_get_gidrY~�^���|��� ���$������a�y���������
��������.�
+�+�=�=c��UcgSSKJn U"U5nUbUS$g![a gf=f![a SnN'f=f)Nr)�getpwnamrT)�pwdr]rVrW)rCr]rXs   r-�_get_uidr_�rZr[c	�^^^^�UcSn	OV[(a	US:XaSn	OB[(a	US:XaSn	O.[(a	US:XaSn	O[SR	U55eSSKn
U(aS	U	-OSnUS
-U-n[RRU5n
U
(aV[RRU
5(d2UbURSU
5 U(d[R"U
5 UbURS5 [T5m[T5mUUUU4S
jnU(d[U
RUSU	-5nUnUb[RRX�5nUR!UUUS9 UR#5 Ub[RR%U5nU$!UR#5 f=f)Nr;�gzip�gz�bzip2�bz2�xzzCbad value for 'compress', or compression format not supported : {0}r�.�.tar�creating %szCreating tar archivec�L>�TbTUlTUlTbTUlTUlU$r?)�gid�gname�uid�uname)�tarinforj�group�ownerrls ����r-�_set_uid_gid�#_make_tarball.<locals>._set_uid_gid�s.����?��G�K�!�G�M��?��G�K�!�G�M��r,zw|%s�r�)�_ZLIB_SUPPORTED�_BZ2_SUPPORTED�_LZMA_SUPPORTED�
ValueErrorr��tarfilerRrx�dirnamer��infor�r_rYr�r��addr r{)�	base_name�base_dir�compress�verbose�dry_runrpro�logger�root_dir�tar_compressionrx�compress_ext�archive_name�archive_dirrq�tar�arcnamerjrls     ``          @@r-�
_make_tarballr��s~��� ����	��X��/���	��H��/���	��X��-����+�+1�6�(�+;�=�	=��,4�3��(�"�L��v�%��4�L��'�'�/�/�,�/�K��2�7�7�>�>�+�6�6����K�K�
�{�3���K�K��$������*�+�
�5�/�C�
�5�/�C�����l�l�<��/�)A�B�������w�w�|�|�H�7�H�	��G�G�H�g�l�G�;��I�I�K����w�w���|�4�����	
�I�I�K�s�+F0�0Gc�\�SSKnUS-n	[RRU5n
U
(aV[RR	U
5(d2UbURSU
5 U(d[R"U
5 UbURSX�5 U(GdVURU	SURS9n[RRU5nUb[RRXq5n[RRU5nU[R:wa&URX5 UbURSU5 [R"U5GH}up�nU
nUb [RRUU5n[RRU5n[U5Hln[RRU
U5n[RRUU5nURUU5 UcMZURSU5 Mn UH�n[RRU
U5n[RRU5n[RR!U5(dMh[RRUU5nURUU5 UcM�URSU5 M� GM� SSS5 Ub[RR#U	5n	U	$!,(df   N2=f)Nr�.ziprhz#creating '%s' and adding '%s' to it�w)�compressionzadding '%s')�zipfilerRrxryr�rzr��ZipFile�ZIP_DEFLATED�normpathr��curdirrcr�relpath�sorted�isfiler{)r|r}rr�r�rpror�r��zip_filenamer��zfr�rrr�
arcdirpathrCrxs                   r-�
_make_zipfiler��sX����v�%�L��'�'�/�/�)�,�K��2�7�7�>�>�+�6�6����K�K�
�{�3���K�K��$�
�����9� �	,��
�_�_�\�3�)0�)=�)=��?�BD��g�g�&�&�x�0�G��#��7�7�<�<��;���w�w�'�'��1�H��"�)�)�#�����+��%��K�K�
�x�8�02����0A�,��9�$�
��'�!#������X�!F�J��W�W�-�-�j�9�
�"�8�,�D��7�7�<�<���6�D� �g�g�l�l�:�t�<�G��H�H�T�7�+��)����M�4�8�-�&�D��7�7�<�<���6�D��7�7�+�+�D�1�D��w�w�~�~�d�+�+�"$�'�'�,�,�z�4�"@������w�/�!�-�"�K�K�
�t�<�&�1B�?�<���w�w���|�4����A?�?�s �>EL�A<L�3L�L�
L+r�)r~Nzuncompressed tar file)r~razgzip'ed tar-file�gztarzZIP file�zip)r~rczbzip2'ed tar-file�bztar)r~rezxz'ed tar-file�xztarc��[R5VVs/sHupXS4PM
 nnnUR5 U$s snnf)NrT)�_ARCHIVE_FORMATS�items�sort)rC�registry�formatss   r-rr:sI�� �%�%�'�)�'�(6�t��q�k�"�'��)��L�L�N��N��)s�?c�(�Uc/n[U5(d[SU-5e[U[[45(d[S5eUH8n[U[[45(a[U5S:wdM/[S5e XU4[U'g)NzThe %s object is not callablez!extra_args needs to be a sequencerTz+extra_args elements are : (arg_name, value))�callable�	TypeErrorru�tupler�lenr�)rC�function�
extra_args�description�elements     r-rrDs������
��H����7�(�B�C�C��j�5�$�-�0�0��;�<�<����'�E�4�=�1�1�S��\�A�5E��I�J�J��'�K�@��T�r,c��[U	gr?)r��rCs r-rrYs
����r,c	��[R"SXX#5 [Un	XXXgS.n
U	SnU	SH	up�X�U'M Uc[
Rn[USS5nSnUb�[
R"U5Rn[R"U5(d[[RSU5eU(a[
R"U5nX*S	'Of[
R"5nUbUR!S
U5 [
R"R%U5nU(d[
R&"U5 U"X40U
D6nUb+UbUR!SU5 [
R&"U5 U$![a [	SU-5Sef=f!Ub,UbUR!SU5 [
R&"U5 ff=f)Nzshutil.make_archivezunknown archive format '%s')r�r�rpror��supports_root_dirFzNot a directoryr�zchanging into '%s'zchanging back to '%s')rUr�r�rWrwrRr�r�ryr��S_ISDIR�NotADirectoryErrorrF�ENOTDIRr��getcwd�debugrxr{�chdir)r|r�r�r}rr�rpror��format_infor�r$�arg�valr��save_cwd�stmdrDs                  r-rr\s���$�I�I�#�Y��K�K�&�v�.��!��.�F��q�>�D���N����s��#����9�9����&9�5�A���H����w�w�x� �(�(���|�|�D�!�!�$�U�]�]�4E�x�P�P���	�	�)�,�I�!)�:���y�y�{�H��!����1�8�<������	�2�I������"���	�6�v�6�����!����4�h�?��H�H�X���O��Q�K��6��?�@�d�J�K��F���!����4�h�?��H�H�X�� �s�	E<�	F�<F�1G
c��[R5VVs/sHupXSUS4PM nnnUR5 U$s snnf)Nr�)�_UNPACK_FORMATSr�r�)rCrzr�s   r-rr�sO���$�$�&�(�&�-7�D��1�g�t�A�w�'�&��(��L�L�N��N��(s�Ac���0n[R5HupEUSHnXCU'M	 M UHnXs;dM
Sn[X�X74-5e [U5(d[	S5eg)Nrz!%s is already registered for "%s"z*The registered function must be a callable)r�r�r9r�r�)	�
extensionsr�r��existing_extensionsrCrz�ext�	extension�msgs	         r-�_check_unpack_optionsr��s�����%�+�+�-�
����7�C�'+��$��.� �	��+�5�C���':�'E�'G�!G�H�
H� ��H����D�E�E�r,c�<�Uc/n[XU5 XX44[U'gr?)r�r�)rCr�r�r�r�s     r-rr�s(��"���
��*�
�;�&�*�I�O�D�r,c��[U	gr?)r�r�s r-rr�s
����r,c��[RRU5n[RRU5(d[R"U5 ggr?)rRrxryr�r�)rxrys  r-�_ensure_directoryr��s8���g�g�o�o�d�#�G�
�7�7�=�=��!�!�
���G��"r,c��SSKnURU5(d[SU-5eURU5nUR	5H�nUR
nUR
S5(dSU;aM-[RR"U/URS5Q76nU(dMf[U5 URS5(aM�URUS5n[US5n[Xx5 SSS5 SSS5 M� UR5 g!,(df   N+=f!,(df   M�=f!UR5 f=f)Nrz%s is not a zip file�/z..�rr�)r��
is_zipfiler6r��infolistrDrMrRrxr��splitr�rLr�r
r )	rD�extract_dirr�r�rzrC�
targetpath�source�targets	         r-�_unpack_zipfiler��s������h�'�'��.��9�:�:�
�/�/�(�
#�C���L�L�N�D��=�=�D����s�#�#�t�t�|�������k�D�D�J�J�s�O�D�J����j�)��=�=��%�%��X�X�d�C�(�F��Z��.�&���/�/�)�(�#�$	�	�	��/�.��)�(��	�	�	��sB�BE�E�&
D5�3D$�?D5�E�$
D2�.D5�5
E	�?E�Ersc���SSKnURU5nUR	XS9 UR5 g!URa [SU-5ef=f!UR5 f=f)Nrz/%s is not a compressed or uncompressed tar filers)rxr��TarErrorr6�
extractallr )rDr�r�rx�tarobjs     r-�_unpack_tarfiler��sv���J����h�'������+��5������
���J��=��H�J�	J�J��	����s�8�A�A�A,rgr�)r�r�z.tar.gzz.tgzz.tar.bz2z.tbz2z.tar.xzz.txzc��[R5H-upUSHnURU5(dMUs s $ M/ g)Nr)r�r�rL)rDrCrzr�s    r-�_find_unpack_formatr�s@��%�+�+�-�
���a��I�� � ��+�+���!�.�r,c� �[R"SXU5 Uc[R"5n[R"U5n[R"U5nUc0nOSU0nUb'[
UnUSnU"X40[US5DUD6 g[U5nUc[SRU55e[
USn[[
US5U-nU"X40UD6 g![a [SRU55Sef=f)Nzshutil.unpack_archiver�zUnknown unpack format '{0}'r�rTzUnknown archive format '{0}')rUr�rRr�r�r�rWrwr��dictr�r6)rDr�r�r��
filter_kwargsr�r$r�s        r-rr"s��$�I�I�%�x�f�E����i�i�k���)�)�K�(�K��y�y��"�H�
�~��
�!�6�*�
�
��	U�)�&�1�K��1�~���X�L�d�;�q�>�&:�L�m�L�%�X�.���>��:�A�A�(�K�L�L��v�&�q�)���o�f�-�a�0�1�M�A���X�-�f�-���	U��:�A�A�&�I�J�PT�T�	U�s�+	C'�'&D
�statvfs�
disk_usage�usageztotal used freezTotal space in byteszUsed space in byteszFree space in bytesc��[R"U5nURUR-nURUR-nURUR
-
UR-n[
X4U5$r?)rRr��f_bavail�f_frsize�f_blocks�f_bfree�_ntuple_diskusage)rxr��free�total�useds     r-r�r�[s^���Z�Z��
���{�{�R�[�[�(�����b�k�k�)�����b�j�j�(�B�K�K�7�� ��d�3�3r,c�R�[R"U5upX-
n[XU5$r?)r�
_getdiskusager�)rxr�r�r�s    r-r�r�ls*���&�&�t�,����|�� ��d�3�3r,�rr�c��[R"SXU5 UcUc[S5eUnUnUcSnO=[U[5(a([U5nUc[
SRU55eUcSnO=[U[5(d([U5nUc[
SRU55e[R"XXcUS9 g)Nzshutil.chownzuser and/or group must be set���zno such user: {!r}zno such group: {!r}r�)rUr�rwrur�r_�LookupErrorr��intrYrRr)rx�userrorr��_user�_groups       r-rrws����I�I�n�d�%�0��|��
��8�9�9��E�
�F��|���	�D�#�	�	������=��2�9�9�$�?�@�@��}���
��s�
#�
#��%����>��3�:�:�5�A�B�B��H�H�T�&�,�.r,c�\�[[RS5n[[RS5nUS::dUS::ao[R
"[RR55nUS::aUR=(d USnUS::aUR=(d USn[R"X45$![[4a SnN�f=f![[4a SnN�f=f![[[4a [R"U5nN�f=f)N�COLUMNSr�LINESr�)r�rR�environrWrwr!rU�
__stdout__r@�AttributeErrorrB�
terminal_size�columns�lines)�fallbackr�r��sizes    r-r!r!�s	��(��b�j�j��+�,����B�J�J�w�'�(��
�!�|�u��z�	.��'�'����(=�(=�(?�@�D�
�a�<��l�l�1�h�q�k�G��A�:��J�J�-�(�1�+�E�
���W�,�-�-��+
�j�!������

�j�!�������
�G�4�	.��#�#�H�-�D�	.�s4�C
�C%�2C=�
C"�!C"�%C:�9C:�=+D+�*D+c���[RRU5=(aA [R"X5=(a$ [RR	U5(+$r?)rRrxr�rEr�)r�r�s  r-�
_access_checkr�s?���G�G�N�N�2��
&�2�9�9�R�#6�
&��G�G�M�M�"�%�%�'r,c��U[R-(+=(d* [R"[R"U55$r?)rR�X_OKr��NeedCurrentDirectoryForExePathr�)�cmdr�s  r-�_win_path_needs_curdirr�s5������� �"�W�%K�%K����C� �&"�"r,c�^�[U[5n[RR	U5up@U(aU/nGO.Uc:[R
R
SS5nUc[R"S5nU(dgU(aJ[R"U5nUR	[R"[R55nO5[R"U5nUR	[R5n[RS:XaO[!X5(a?[R"nU(a[R"U5nUR%SU5 [RS:XGa[R&"S5=(d [(nUR	[R5nUVs/sHo�(dMUR+S5PM nnU(a&UVs/sHn[R"U5PM nnUVs/sHo�U-PM	 n	nUR-5mU[R.-(a[1U4SjU55(aU	R%SU5 OU/n	[35n
UHxn[RR5U5nX�;dM)U
R7U5 U	H8n
[RR9X�5n[;X�5(dM4Us s $ Mz g![[4a [RnGN�f=fs snfs snfs snf)N�PATH�CS_PATHrr�PATHEXTrfc3�b># �UH$nTRUR55v� M& g7fr?)rL�upper)�.0r��normcmds  �r-�	<genexpr>�which.<locals>.<genexpr>s'����&X�PW��w�'7�'7��	�	��'D�'D�PW�s�,/)rur6rRrxr�r��get�confstrr�rw�defpath�fsencode�pathsepr�rUrHrr��insert�getenv�_WIN_DEFAULT_PATHEXTr>r
r�anyr�rzr{r�r)rr�rx�	use_bytesryr��pathext_source�pathextr��files�seen�dir�normdir�thefilerCrs               @r-r r �sT����3��&�I�
�7�7�=�=��%�L�G���y���<��:�:�>�>�&�$�/�D��|�&��:�:�i�0�D�����;�;�t�$�D��:�:�b�k�k�"�*�*�5�6�D��;�;�t�$�D��:�:�b�j�j�)�D��<�<�7�"�'=�c�'H�'H��Y�Y�F�����V�,���K�K��6�"�
�|�|�w�����9�-�E�1E�� �&�&�r�z�z�2��.5�=�g�s��?�3�:�:�c�?�g��=��3:�;�7�C�r�{�{�3�'�7�G�;�&-�.�g�s�s��g��.��)�)�+���r�w�w��3�&X�PW�&X�#X�#X��L�L��C� ������5�D����'�'�"�"�3�'�����H�H�W�� ���w�w�|�|�C�1�� ��,�,��K�!�	���q'�
�3�&��:�:�D�&��8>��<��.s*�&L�
L6�L6�8 L;�M� L3�2L3)r)F)FN)rarrNNNN)rrNNNNr:)NNrrNNN)NN))r7�)hrRrUryr��collectionsrF�zlibrtrVrdru�lzmarvrCr�rrrHr�rnrwrMrYr�r�__all__rBrr"rrr6rAr9r<rOr`rlr
rr�r�rrr�r
rrrr�r�stat_resultr	rr+r�rr�supports_dir_fdr�supports_fdr�r5r�avoids_symlink_attacksr?rrCrDrYr_r�r�r�r�rrrrrr�rrr�r�r�r�r�rr��
namedtupler�r��__doc__r�r�r�rr!rr�F_OKrr r%r,r-�<module>r/sJ��
�
���������O�����N�����O��7�7�d�?��
�����7�7�g���
�
��<�<�7����G�&�{�I���B�
�+�F����/�/�0D�E���7�7�5�,�7��?����	�G�	�@�E�@�;�w�;�6��6�0��0�&�I�&��	��
 �(>�@.:��(�4�$E�R�+/�>�@+/�.�4�2�{���04��0
�+/�@�D'+��$(,�&�P
�7<�@�D!&�d�%�&+�5�.2�`�2�>�>�/�0�0�K�
(�#�<E�N�g�g�r�w�w��	�	�2�8�8�<��'�'�(�<��Z�Z�2�>�>�1�<��W�W�� ;� ;�;��
L+�T�$�L+�`!2���.�$"'�@�D�G�
�$�$LM�@D�D�L;<�@D�7�r#'�
��"&�
��
�m�0�1�%�'���
�!.�1E�0F� 2�!4��W��,�b�*�=��U���!.�1F�0G� 3�!5��W���!.�1C�0D� 0�!2��W���A�*�KL�;?�=�@	�F�$CG�')�J�,���<6:��(�h���-D�
E��h���Z�
8���
�!*�F� 3�_�b� 2� 4�O�G���!+�W� 5��� 3� 5�O�G���!*�F� 3�_�b� 0� 2�O�G���..�d�..�b�2�y����N�N�<� �#�.�.�w�8I�J��&<����#�%:����"�%:����"�
4���N�N�<� �#�.�.�w�8I�J��4�&.��t�&.�P+.�b'�
"��G�G�b�g�g�%�D�P��[.���O������N������O��s3�O,�O;�P
�,O8�7O8�;P�P�
P�P

?>