Viewing File: /opt/alt/python311/lib64/python3.11/__pycache__/shutil.cpython-311.opt-2.pyc



f	ddlZddlZddlZddlZddlZddlZ	ddlZ[dZn
#e$rdZYnwxYw	ddl	Z	[	dZ
n
#e$rdZ
YnwxYw	ddlZ[dZn
#e$rdZYnwxYwej
dkZdxZZej
dkrddlZnerddlZerdndZeedoejd	aeoeed
ZdZgdZGd
deZGddeZGddeZGddeZGddeZGddeZ GddeZ!dZ"dZ#efdZ$dtdZ%dZ&d Z'd!Z(dd"d#Z)dd"d$Z*eed%rdd"d&Z+nd'Z+dd"d(Z,dd"d)Z-dd"d*Z.d+Z/	dud,Z0dde.ddfd-Z1eej2d.rd/Z3d0Z4nd1Z3d2Z4d3Z5d4Z6ej7ejej8ej9hej:koej;ej<vo
ejej=vZ>dvdd5d6Z?e>e?_@d7ZAe.fd8ZBd9ZCd:ZDd;ZEd<ZF		dwd>ZG		dxd?ZHd@eGdAgdBdfiZIereGdCgdDdfeIdE<eHgdFdfeIdG<e
r
eGdHgdIdfeIdJ<er
eGdKgdLdfeIdM<dNZJdydPZKdQZL		dzdRZMdSZNdTZO		dydUZPdVZQdWZRdXZSddYdZZTd[geTgdBfd\geSgdFfd]ZUerd^d_geTgdDfeUdE<e
rd`dageTgdIfeUdJ<erdbdcgeTgdLfeUdM<ddZVd{ddYdeZWeedfrNeXdgejYdhdiZZdjeZj[_\dkeZj]_\dleZj^_\dmZ_n+er)eXdgejYdhdiZZdnZ_d{doZ`d|dqZadrZbejcejdzdfdsZedS)}NTFntposixiisendfilelinux
_fcopyfilez%.COM;.EXE;.BAT;.CMD;.VBS;.JS;.WS;.MSC)copyfileobjcopyfilecopymodecopystatcopycopy2copytreemovermtreeErrorSpecialFileError	ExecErrormake_archiveget_archive_formatsregister_archive_formatunregister_archive_formatget_unpack_formatsregister_unpack_formatunregister_unpack_formatunpack_archiveignore_patternschownwhichget_terminal_size
SameFileErrorceZdZdS)rN__name__
__module____qualname__-/opt/alt/python311/lib64/python3.11/shutil.pyrr=sDr'rceZdZdS)r Nr"r&r'r(r r @s??r'r ceZdZdS)rNr"r&r'r(rrCs;;r'rceZdZdS)rNr"r&r'r(rrGs55r'rceZdZdS)	ReadErrorNr"r&r'r(r-r-Js//r'r-ceZdZdS)
RegistryErrorNr"r&r'r(r/r/Ms&&r'r/ceZdZdS)_GiveupOnFastCopyNr"r&r'r(r1r1Qsr'r1c		|}|}n!#t$r}t|d}~wwxYw	tj|||dS#t
$rN}|j|_|j|_|j	tj
tjhvrt||dd}~wwxYwN)fileno	Exceptionr1rrOSErrornamefilename	filename2errnoEINVALENOTSUP)fsrcfdstflagsinfdoutfderrs      r(_fastcopy_fcopyfilerCVs%{{}}

%%%$$$% 
ue,,,,,   y	
9u}555#C(((4
 s-(,
A
AA
A&&
B>0A	B99B>c		|}|}n!#t$r}t|d}~wwxYw	tt	j|jd}n#t$rd}YnwxYwtj	dkrt|d}d}		t	j||||}|dkrdS||z
}n#t$r}|j|_
|j|_|jtjkrdat||jtjkr|d|dkr3t	j|dtjdkrt||d}~wwxYw)Niili@rTF)r4r5r1maxosfstatst_sizer6sysmaxsizeminrr7r8r9r:ENOTSOCK_USE_CP_SENDFILEENOSPClseekSEEK_CUR)r=r>r@rArB	blocksizeoffsetsents        r(_fastcopy_sendfilerTjs%{{}}

%%%$$$%.88					{W	7++	
F	;udFI>>D,qyydNFF/			9CL ICMyEN**$) ',,,yEL((t#{{rxq"+>>!CC',,,I'	s?(,
A
AA
'A66BB,C
E1BE,,E1cB	|j}|j}tt|5}	||}|snJ||kr8|d|5}||dddn#1swxYwYn||X	ddddS#1swxYwYdSr3)readintowrite
memoryview	bytearray)r=r>length
fsrc_readinto
fdst_writemvnsmvs        r(_copyfileobj_readintor`s?
MMJ	If%%	&	&	"	
b!!A
VV$sJJsOOO$$$$$$$$$$$$$$$
2																				s5 BA."B.A2	2B5A2	6BBBcj	|st}|j}|j}	||}|sdS||r3)COPY_BUFSIZEreadrW)r=r>rZ	fsrc_readr\bufs      r(rrsSG	IJi	E
3	r'ct|tjrpttjdrV	tj|tj|S#t$rYdSwxYwttjdr2	tj||S#t$rYdSwxYwtj	tj
|tj	tj
|kS)NsamestatFsamefile)
isinstancerFDirEntryhasattrpathrgstatr6rhnormcaseabspathsrcdsts  r(	_samefilerss#r{##(D(D	7##CHHJJ===			55	rw
##	7##C---			55	
GRW__S1122GRW__S1122
34s$AA::
BB&C
CCct|tjr|ntj|Sr3)rirFrjrmfns r(_statrws-"2r{33D277999Dr'ct|tjr|ntj|Sr3)rirFrj
is_symlinkrlislinkrus r(_islinkr{s3(R[99Q2==???rw~~b?Q?QQr'follow_symlinksc
F	tjd||t||r#td||d}t||gD]\}}	t
|}tj|j	r5t|tjr|j
n|}td|ztr
|dkr|j}x#t"$rYwxYw|s8t%|r)tjtj||nt+|d5}	t+|d5}t,rF	t/||t0j|cdddcdddS#t4$rYnwxYwt6r;	t9|||cdddcdddS#t4$rYnOwxYwtrD|dkr>t;||t=|t>|cdddcdddStA||dddn#1swxYwYnE#tB$r8}	tj
"|stGd||	d}	~	wwxYwdddn#1swxYwY|S)Nzshutil.copyfilez{!r} and {!r} are the same filerz`%s` is a named piperbwbzDirectory does not exist: )$rIauditrsr format	enumeraterwrmS_ISFIFOst_moderirFrjrlr_WINDOWSrHr6r{symlinkreadlinkopen_HAS_FCOPYFILErCr_COPYFILE_DATAr1rMrTr`rKrbrIsADirectoryErrorexistsFileNotFoundError)
rqrrr}	file_sizeirvstr=r>es
          r(r	r	sIc***cP=DDS#NNOOOIC:&&''2	'rB}RZ((
D *2r{ ; ;CRWW&'='BCCC
'AFFJ				D	!ws||!

2;s##S))))
#t__	
#t__,%#!/dE<PQQQ#&,,,,,,,								 1!!! D!*
#!.tT:::#&,,,,,,,								 1!!! D!"#i!mm-dD#i:V:VWWW"',,,,,,,								. d++++,,,,,,,,,,,,,,,0%


w~~c**+,N,N,NOOUVV	
5															@Js$C
C#"C#0J2IH9F'I
F

H9F

H9G)I
GH9G5H9IH9-I9H=	=IH=	IJ
J3JJJJJch	tjd|||st|rxtj|rYtjdkrtjtj}}nttdrtjtj
}}nedStjdkr@tj|r!tj|d}ttj}}||}||tj|jdS)Nzshutil.copymoderlchmodTstrict)rIrr{rFrlrzr7lstatchmodrkrrealpathrwrmS_IMODEr)rqrrr}	stat_func
chmod_funcrs      r(r
r
"sIc***
0ws||
0s0C0C
0
7d??$&HbhzII
R
"
"	$&HbizIIF
7d??rw~~c22?'""3t"44C %rx:		3BJsDL,,-----r'	listxattrc		tj||}nC#t$r6}|jtjtjtjfvrYd}~dSd}~wwxYw|D]}	tj|||}tj||||3#t$r@}|jtj	tjtjtjfvrYd}~xd}~wwxYwdSNr|)
rFrr6r:r<ENODATAr;getxattrsetxattrEPERM)rqrrr}namesrr7values       r(
_copyxattrr<s		LoFFFEE			wu}emU\JJJFFFFF			D
COOOCuoNNNNN


75;
u}#(<#11111111
			s,
A+AA"/B
C6CCcdSr3r&argskwargss  r(rrTr'c
	tjd||dddd
|p.t|otj|}|r
fd}n
fd}t
|tjr||}n|d||}tj	|j
}|d||j|jf|t||||d	}tjd
krF|rAtj|r!tj|d}nd
}	||||n#t $rYnwxYwt#|drr	|d||j|dS#t&$rF}dD]7}	t#t(|	r |jt+t(|	krn8Yd}~dSd}~wwxYwdS)Nzshutil.copystat)nsr}cdSr3r&)rr}rs   r(_nopzcopystat.<locals>._noperr'c0tt|Sr3)getattrrF)r7rs r(lookupzcopystat.<locals>.lookupls2tT***r'cTtt|}|tjvr|SSr3)rrFsupports_follow_symlinks)r7rvrs  r(rzcopystat.<locals>.lookupqs,T4((BR000	Kr'r|rmutimerrTrc"tj|dSr3)rFrrs  r(_chmodzcopystat.<locals>._chmods$r'st_flagschflags)
EOPNOTSUPPr<)rIrr{rFrlrzrirjrmrrst_atime_nsst_mtime_nsrr7rNotImplementedErrorrkrr6r:r)rqrrr}followrrmoderwhyrBrs          @r(rrWs
Ic***T





JWS\\%IbgnnS6I6I JF
	+	+	+	+	+	+
					#r{##9
XXfX
-
-
VVF^^C
8
8
8<
##DFF7OOCR^R^<    sC0000
VG__F	w$	 w~~c""
9g&&s4&88
 
 
 

sD&11111


	

r:	FF9c2;GGGGGG			.

5#&&39s8K8K+K+KEEEEEE	s*E$$
E10E1F##
G3-;G..G3c	tj|r=tj|tj|}t|||t
||||Sr)rFrlisdirjoinbasenamer	r
rqrrr}s   r(rrss

w}}S7gll3 0 0 5 566S#7777S#7777Jr'c	tj|r=tj|tj|}t|||t
||||Sr)rFrlrrrr	rrs   r(r
r
ss	
w}}S7gll3 0 0 5 566S#7777S#7777Jr'c	fd}|S)Ncg}D]*}|tj||+t|Sr3)extendfnmatchfilterset)rlr
ignored_namespatternpatternss    r(_ignore_patternsz)ignore_patterns.<locals>._ignore_patternssJ
	A	AG  w!?!?@@@@=!!!r'r&)rrs` r(rrs)&"""""
r'c
|)|tj|d|D}nd}tj||g}	|tup|tu}
|D]}|j|vr
tj||j}tj||j}
|
r|n|}	|}|r=tjdkr-|	d}|j
tjkrd}|rtj|}|r)tj
||
t||
|ntj|s|r|rt#||
|||||nC|||
n6|rt#||
|||||n|||
#t$$r+}|	|jdYd}~d}~wt*$r0}|	||
t/|fYd}~d}~wwxYw	t||nM#t*$r@}t1|dd%|	||t/|fYd}~nd}~wwxYw|	rt%|	|S)	Ncg|]	}|j
Sr&r7).0xs  r(
<listcomp>z_copytree.<locals>.<listcomp>s/H/H/H1/H/H/Hr'r&)exist_okrFr|rwinerror)rFfspathmakedirsr
rr7rlrryrmst_reparse_tagIO_REPARSE_TAG_MOUNT_POINTrrrris_dirrrrrr6appendstrr)entriesrqrrsymlinksignore
copy_functionignore_dangling_symlinks
dirs_exist_okrerrorsuse_srcentrysrcentrysrcnamedstnamesrcobjryrlinktorBrs                    r(	_copytreers9
ry~~/H/H/H/H/HII


Km,,,,
F E)B]d-BL,8,8=M))',,sHM22',,sHM22)6w&	8!,,..J
'bgoo!

e
<<'4+JJJ!&J
/W--7Jvw///VW(lKKKKK7>>&11!6N! ((7 (F!.0H!.0000&
fg6666""
/(FM1=BBBB
fg...	'	'	'MM#(1+&&&&&&&&	8	8	8MM7GSXX677777777	80c0003
D))1MM3SXX.///0FmmJsD8B5G/A-G
I( H
I%III  
J**6J%%J*c
	tjd||tj|5}t	|}dddn#1swxYwYt||||||||S)Nzshutil.copytree)rrqrrrrrrr)rIrrFscandirlistr)	rqrrrrrrritrrs	         r(rrs%LIc***	CCs))W#3"-.F#02222sAAAst_file_attributesc	|d}tj|jo)|jtjzo|jtjkS#t$rYdSwxYwNFr|)rmS_ISDIRrrFILE_ATTRIBUTE_REPARSE_POINTrrr6)entryrs  r(
_rmtree_isdirrFs	E22BL,,K&)JJJ&$*II2K
L			55	sAA
A)(A)c	tj|}tj|jp(|jtjzo|jtjkS#t$rYdSwxYw)NF)
rFrrmS_ISLNKrrrrrr6)rlrs  r(_rmtree_islinkrOsu	$BL,,K&)JJJ&$*II
L			55	sAA
A&%A&cR	|dS#t$rYdSwxYwr)rr6)rs r(rrXs=	<<<666			55	s
&&c@tj|Sr3)rFrlrz)rls r(rr^sw~~d###r'cF	tj|5}t|}dddn#1swxYwYn:#t$r-|tj|t	jg}YnwxYw|D]}|j}t|rs	|rtdn=#t$r0|tjj	|t	jYvwxYwt||	tj|#t$r+|tj|t	jYwxYw	tj|dS#t$r,|tj|t	jYdSwxYw)N%Cannot call rmtree on a symbolic link)
rFrrr6rIexc_inforlrryrz_rmtree_unsafeunlinkrmdir)rlonerror
scandir_itrrfullnames      r(rrbs
Z

	':&&G	'	'	'	'	'	'	'	'	'	'	'	'	'	'	'
D#,..111==:	=
##%%K""IJJJ	K



#,..AAA

8W----
=	(####
=
=
=	8S\^^<<<<<
=0
000$//////0s]>2>6>6>4A54A5#B777C10C1D2EEE**2F F c
	tj|5}t|}dddn#1swxYwYnG#t$r:}||_|tj|tjYd}~dSd}~wwxYw|D]e}tj||j	}	|
d}|ri	|d}	tj|	j
}nK#t$r+|tj|tjYwxYwn#t$rd}YnwxYw|rP	tj|j	tjtjz|}
d}	tj|	tj|
rt)|
||	tj|
n:#t$r-d}|tj|tjYnwxYwd}	tj|j	|n#t$r+|tj|tjYnQwxYw	td#t$r0|tjj|tjYnwxYw|sP	tj|
G#t$r,|tj|tjY|wxYw#|sN	tj|
w#t$r+|tj|tjYwwxYwwxYw#t$r,|tj|tjYwxYw	tj|j	|.#t$r,|tj|tjYcwxYwdS)NFr|dir_fdTr)rFrrr6r8rIrrlrr7rrmrrrrO_RDONLY
O_NONBLOCKrgrG_rmtree_safe_fdcloserrzr)topfdrlrrrrBrrrorig_stdirfddirfd_closeds            r(rrs
Z

	'*:&&G	'	'	'	'	'	'	'	'	'	'	'	'	'	'	'
D#,..1116=6=7<<ej11	\\%\88F
#jjj??G!\'/::FFGBHh???H	
			FFF	(	="
H
BK"-,GPUVVV$Hw''%AAN'xAAAHHUOOOO&HHH+/L#GBHhGGGGGH(,HHUZ>>>>>&HHH#GBHhGGGGGHN#*+1#2#22&NNN#GBGNHclnnMMMMMN(HHHUOOOO&HHH#GBHhGGGGGHH<HHHUOOOO&HHH#GBHhGGGGGHH7
;
;
;3<>>:::::
;B
=	%*U33333
=
=
=	8S\^^<<<<<
=k6=6=s>2>6>6>
B/A==B0D2	/C992D.-D.2EE5M>AL	GL	4HL	
HL	H0/L	02I%"L	$I%%L	)I887J2/L	1J22L	8K2LL	M
L"!M"2M	MM	M2NNN552O+*O+rc		tjd|||rd}n|d}trt|trtj|}	tj||}n9#t$r,|t
j|tj	YdSwxYw	tj
|t
jt
jz|}d}n9#t$r,|t
j
|tj	YdSwxYw	t
j
|tj|rt!|||	tj|n:#t$$r-d}|t
j|tj	YnwxYwd}	tj||n#t$$r+|t
j|tj	YnQwxYw	t%d#t$$r0|t
j
j|tj	YnwxYw|sP	tj|dS#t$$r,|t
j|tj	YdSwxYwdS#|sN	tj|w#t$$r+|t
j|tj	YwwxYwwxYw|t+d	t-|rt%dn>#t$$r1|t
j
j|tj	YdSwxYwt/||S)	Nz
shutil.rmtreecdSr3r&rs r(rzrmtree.<locals>.onerrorsDr'cr3r&rs r(rzrmtree.<locals>.onerrorsr'rFTrz#dir_fd unavailable on this platform)rIr_use_fd_functionsribytesrFfsdecoderr5rrr
rrlrgrGrr
r6rrzrrr)rl
ignore_errorsrr	rfd	fd_closeds       r(rrsIotV,,,								6-dE""	%;t$$D	htF333GG			GBHdCLNN333FF		r{R]:6JJJBII			GBGT3<>>222FF		<w"66
BD'222<HRLLLL<<< $IGBHdCLNN;;;;;<!	<HT&11111<<<GBHdCLNN;;;;;<B!"IJJJBBBGBGND#,..AAAAAB
<<HRLLLLL<<<GBHdCLNN;;;;;;<
<
<9
<<HRLLLL<<<GBHdCLNN;;;;;<
<%&KLLL	d##
GEFFF
G			GBGND#,..999FF	dG,,,sA,,2B"!B"&0C2D
D
AJE*)J*4F!J F!!J'F>=J>2G30J2G33J7H7I=J?IJI2JJK)J0/K)02K%"K)$K%%K)>L7MMc	tj|}tjjtjjpdz}tj||SN)rFrrlsepaltseprrstrip)rlrs  r(	_basenamer"sO9T??D
'+-2
.C
7DKK,,---r'c	tjd|||}tj|rt||r6tj|stj||dStj|t|}tj
|rtd|z	tj||n^#t$rPtj|r>tj
|}tj||tj|ntj|rt!||rtd|d|dt#|sCtj|tjs:tj|r&tjdkrt-d|d|dt/|||d	
t1|n |||tj|YnwxYw|S)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)rr)rIrrFrlrrsrzrenamerr"rrr6rrr
_destinsrc
_is_immutableaccessW_OKlistdirplatformPermissionErrorrr)rqrrrreal_dstrs     r(rr+sJ2ImS#&&&H	w}}SKS#	rw~~c':':	
Ic3F7<<Ys^^44
7>>(##	K>IJJJ
	#x    
7>>#	[%%FJvx(((IcNNNN
W]]3

	#s##
3e(+SSS2333c""
4Ic2733
48:
3
4LH44%o),ccc'3444
S(-"
$
$
$
$3KKKKM#x(((IcNNN)*OsC55EIIctj|}tj|}|tjjs|tjjz
}|tjjs|tjjz
}||Sr3)rFrlroendswithr
startswithrps  r(r&r&ms
'//#

C
'//#

C<<$$rw{<<$$rw{>>#r'ct|}tjtjg}t	|do|j|vS)Nr)rwrmUF_IMMUTABLESF_IMMUTABLErkr)rqrimmutable_statess   r(r'r'vs;	sB)4+<=2z""Fr{6F'FFr'c	|dS	ddlm}n#t$rYdSwxYw	||}n#t$rd}YnwxYw||dSdS)Nr)getgrnam)grpr6ImportErrorKeyError)r7r6results   r(_get_gidr<{,|t       tt$
ay4
,;;c	|dS	ddlm}n#t$rYdSwxYw	||}n#t$rd}YnwxYw||dSdS)Nr)getpwnamr7)pwdr@r9r:)r7r@r;s   r(_get_uidrBr=r>gzipc		|d}	nRtr	|dkrd}	nBtr	|dkrd}	n2tr	|dkrd}	n"td|ddl}
|rd	|	znd}|d
z|z}tj|}
|
rMtj	|
s.||
d|
|st
j|
||
dttfd
}|s|
|d|	z}|}| tj||}	|||||n#|wxYw|tj|}|S)NrrCgzbzip2bz2xzzCbad value for 'compress', or compression format not supported : {0}r..tarcreating %szCreating tar archivecH|_|_|_|_|Sr3)gidgnameuiduname)tarinforMgroupownerrOs r(_set_uid_gidz#_make_tarball.<locals>._set_uid_gids.?GK!GM?GK!GMr'zw|%sr)_ZLIB_SUPPORTED_BZ2_SUPPORTED_LZMA_SUPPORTED
ValueErrorrtarfilerFrldirnamerinforrBr<rraddr
ro)	base_namebase_dircompressverbosedry_runrSrRloggerroot_dirtar_compressionrZcompress_extarchive_namearchive_dirrTtararcnamerMrOs     ``          @@r(
_make_tarballrks
	=X//	=H//	=X--++16(+;+;==	=NNN,4<3(("Lv%4L'//,//K%27>>+66%KK
{333	%K$$$*+++
5//C
5//Cll</)ABBw||Hh77H	GGHglG;;;IIKKKKCIIKKKKw|44sF

F c:	ddl}|dz}	tj|}
|
rMtj|
s.||d|
|stj|
||d|	||se||	d|j5}tj	|}| tj
||}tj	|}|tjkr.|||||d|tj
|D]{\}
}}|
}| tj||}tj	|}t|D]p}tj
|
|}tj
||}|||||d|q|D]}tj
|
|}tj	|}tj|rNtj
||}|||||d|}	dddn#1swxYwY|tj|	}	|	S)Nr.ziprKz#creating '%s' and adding '%s' to itw)compressionzadding '%s')zipfilerFrlr[rr\rZipFileZIP_DEFLATEDnormpathrcurdirrWwalkrelpathsortedisfilero)r^r_rarbrcrSrRrdrpzip_filenamerhzfrjdirpathdirnames	filenames
arcdirpathr7rls                   r(
_make_zipfilers%
NNNv%L'//),,K%27>>+66%KK
{333	%K$$$
9 (	,	,	,=
__\3)0)=??	=BDg&&x00G#7<<(;;w''11H")##7+++%KK
x888020A0A
=
=,9$
'!#X!F!FJW--j99
"8,,99D7<<66D gll:t<<GHHT7+++)M4888%==D7<<66D7++D11Dw~~d++="$',,z4"@"@w///!-"KK
t<<<=
=	=	=	=	=	=	=	=	=	=	=	=	=	=	=	=<w|44s2H0K//K36K3ri)r`Nzuncompressed tar file)r`rCzgzip'ed tar-filegztarzZIP filezip)r`rFzbzip2'ed tar-filebztar)r`rHzxz'ed tar-filexztarcv	dtD}||S)Nc(g|]\}}||dfS)r7r&)rr7registrys   r(rz'get_archive_formats.<locals>.<listcomp>:s1)))~tXhqk")))r')_ARCHIVE_FORMATSitemssortformatss r(rr5sC))%%'')))GLLNNNNr'rcJ	|g}t|std|zt|ttfstd|D]@}t|ttfrt|dkrtdA|||dft|<dS)NzThe %s object is not callablez!extra_args needs to be a sequencer7z+extra_args elements are : (arg_name, value)F)callable	TypeErrorrituplerlenr)r7function
extra_argsdescriptionelements     r(rr?s
HD7(BCCCj5$-00=;<<<KK'E4=11	KS\\A5E5EIJJJ6F'
KGTr'ct|=dSr3)rrs r(rrTsr'c	t	tjd||||	t|}	n!#t$rt	d|zdwxYw||||d}
|	d}|	dD]
\}}
|
|
|<|t
j}|	d}d}|tj|j}tj	|sttjd||rtj
|}||
d<n`tj}||d	|t
j|}|stj|	|||fi|
}|,||d
|tj|n4#|-||d
|tj|wwxYw|S)Nzshutil.make_archivezunknown archive format '%s')rbrcrSrRrzNot a directoryrdzchanging into '%s'zchanging back to '%s')rIrrr:rYrFrtrmrrNotADirectoryErrorr:ENOTDIRrgetcwddebugrlrochdir)r^rrdr_rarbrSrRrcformat_inforfuncargvalsupports_root_dirsave_cwdstmdr8s                  r(rrWs I#Y(KKKK&v.KKK6?@@dJK!Fu..Fq>DNSs9#AHwx  (|D!!	Q$U]4ExPPP
	#	),,I!)F:y{{H!18<<<	22I
#"""4	866v66!4h???HX!4h???HX 
Os
)A
F1F5cv	dtD}||S)Nc6g|]\}}||d|dfS)rrr&)rr7r\s   r(rz&get_unpack_formats.<locals>.<listcomp>s7(((JD$d1gtAw'(((r')_UNPACK_FORMATSrrrs r(rrsC
(($$&&(((GLLNNNNr'c	i}tD]\}}|dD]}|||<|D]"}||vrd}t||||fz#t|st	ddS)Nrz!%s is already registered for "%s"z*The registered function must be a callable)rrr/rr)	
extensionsrrexisting_extensionsr7r\ext	extensionmsgs	         r(_check_unpack_optionsrs5%++--,,
d7	,	,C'+$$	, HH	+++5Cy':9'E'G!GHH
H,
HFDEEEFFr'cN	|g}t|||||||ft|<dSr3)rr)r7rrrrs     r(rrs?
*h
;;;&*kIODr'c	t|=dSr3)rrs r(rrs4r'c	tj|}tj|stj|dSdSr3)rFrlr[rr)rlr[s  r(_ensure_directoryrsN;good##G
7==!!
Gr'c	ddl}||std|z||}	|D]}|j}|dsd|vr#tjj	|g|
dR}|sPt||dsf|
|d5}t|d5}t||dddn#1swxYwYdddn#1swxYwY	|dS#|wxYw)Nrz%s is not a zip file/z..rr)rp
is_zipfiler-rqinfolistr8r0rFrlrsplitrr/rrr
)	r8extract_dirrprr\r7
targetpathsourcetargets	         r(_unpack_zipfilersNNNh'';.9:::
//(
#
#CLLNN	0	0D=Ds##
tt||kDDJJsOODDDJ
j)))==%%
0XXdC((0FZ..028///000000000000000000000000000000	0$					sUBE	!D&2DD&DD&DD&E	&D*	*E	-D*	.E		ErUc	ddl}	||}n #|j$rtd|zwxYw	||||dS#|wxYw)Nrz/%s is not a compressed or uncompressed tar filerU)rZrTarErrorr-
extractallr
)r8rrrZtarobjs     r(_unpack_tarfilersNNNJh''JJJ=HJJ	JJ+f555s:A++BrJrm)rirz.tar.gzz.tgzz.tar.bz2z.tbz2z.tar.xzz.txzctD]+\}}|dD]}||r|ccS,dS)Nr)rrr/)r8r7r\rs    r(_find_unpack_formatrsh%++--
da		I  ++

	4r'c~	tjd||||tj}tj|}tj|}|i}nd|i}|i	t
|}n1#t$r$td|dwxYw|d}|||fit|d|dSt|}|"td|t
|d}tt
|d|z}|||fi|dS)Nzshutil.unpack_archiverzUnknown unpack format '{0}'rr7zUnknown archive format '{0}')rIrrFrrrr:rYrdictrr-)r8rrr
filter_kwargsrrrs        r(rrst"I%xfEEEikk)K((Ky""H
~

!6*

	U)&1KK	U	U	U:AA&IIJJPTT	U1~X{LLd;q>&:&:LmLLLLL%X..>:AA(KKLLLv&q)of-a011MAX{--f-----s"
A00.Bstatvfs
disk_usageusageztotal used freezTotal space in byteszUsed space in byteszFree space in bytesc	tj|}|j|jz}|j|jz}|j|jz
|jz}t
|||Sr3)rFrf_bavailf_frsizef_blocksf_bfree_ntuple_diskusage)rlrfreetotaluseds     r(rrVs[	
Z

{R[(bk)bj(BK7 d333r'c^	tj|\}}||z
}t|||Sr3)r
_getdiskusager)rlrrrs    r(rrgs8	
&t,,tt| d333r'c	tjd|||||td|}|}|d}nHt|tr3t|}|"t
d||d}nHt|ts3t|}|"t
d|tj|||dS)Nzshutil.chownzuser and/or group must be setzno such user: {!r}zno such group: {!r})rIrrYrirrBLookupErrorrintr<rFr)rluserrR_user_groups     r(rrrs
IndD%000|
8999E
F|	D#		A=299$??@@@}
s
#
#C%>3::5AABBBHT5&!!!!!r'PcJ		ttjd}n#ttf$rd}YnwxYw	ttjd}n#ttf$rd}YnwxYw|dks|dkr	tjtj}n1#tttf$rtj|}YnwxYw|dkr|jp|d}|dkr|j
p|d}tj||fS)NCOLUMNSrLINESr)rrFenvironr:rYrrI
__stdout__r4AttributeErrorr6
terminal_sizecolumnslines)fallbackrrsizes    r(rrsI&bj+,,j!BJw'((j!!||uzz	.'(=(=(?(?@@DD
G4	.	.	.#H--DDD	.a<<l1hqkGA::J-(1+E
We,---s/#99AA32A30B44+C"!C"ctj|o4tj||otj|Sr3)rFrlrr(r)rvrs  r(
_access_checkrsDGNN2
&29R#6#6
&GMM"%%%'r'c	tjrt|rSdSt	t
}|[tjdd}|9	tjd}n##ttf$rtj}YnwxYw|sdS|rFtj|}|
tjtj}n3tj|}|
tj}t jdkrtj}|rtj|}||vr|d|tjdpt*}d|
tjD}|rd|D}t-fd|Drg}nfd	|D}ng}t/}|D]u}	tj|	}
|
|vrP||
|D]8}tj|	|}t||r|ccS9vdS)
NPATHCS_PATHwin32rPATHEXTcg|]}||Sr&r&rrs  r(rzwhich.<locals>.<listcomp>sJJJ3cJ3JJJr'c6g|]}tj|Sr&)rFfsencoders  r(rzwhich.<locals>.<listcomp>s";;;Cr{3'';;;r'c3K|]=}|V>dSr3)lowerr/rrcmds  r(	<genexpr>zwhich.<locals>.<genexpr>sADDSsyy{{##CIIKK00DDDDDDr'cg|]}|zSr&r&rs  r(rzwhich.<locals>.<listcomp>s2223S3Y222r')rFrlr[rrirrgetconfstrrrYdefpathrrpathseprrIr+rtinsertgetenv_WIN_DEFAULT_PATHEXTanyrrnr]r)
rrrl	use_bytesrtpathext_sourcepathextfilesseendirnormdirthefiler7s
`            r(rrs
wsd##	Jt3&&I|z~~fd++<
"z),,"J/
"
"
"z
"t&{4  zz"+bj1122{4  zz"*%%
|w	)[((FKK6"""9--E1EJJ."6"6rz"B"BJJJ	<;;7;;;G
DDDDGDDDDD	3EEE2222'222EE55D  '""3''$HHW 
 
 w||C11 t,, KKKKK 4s0BB%$B%)r)F)FN)rCrrNNNN)rrNNNNr)NNrrNNN)NN)r)frFrIrmrcollectionsr:zlibrVr9rGrWlzmarXr7rrrrbrkr+r0rMrr__all__r6rr rrr-r5r/r1rCrTr`rrsrwr{r	r
rrrr
rrrstat_resultrrrrrrrsupports_dir_fdrsupports_fdrrravoids_symlink_attacksr"rr&r'r<rBrkrrrrrrrrrrrrrrrrr
namedtuplerr__doc__rrrrrrF_OKX_OKrr&r'r(<module>rs	
			



KKKOOOOOJJJNNNNNKKKOOOOO7d?
7gLLLL

III&5{{I72z**Os|/F/Fw/O/O7775,77?					G			@@@@@E@@@;;;;;w;;;6666666600000000&&&&&I&&&	
   (>>>@.:&444$EEERRR+/>>>>>@+/.....272{
040


+/HHHHHT'+$(,"


7<@@@@D!&d%&+5.2.2.2.2`72>/00$$$$000>>=>=>=@grw	28<'(<Z2>1<W ;;
M-dM-M-M-M-M-b!2...$"'@@@@DGGG
$$LM@DDDDDL;<@D7777~
m01%t-
D!.1E0F 2D!:W,b*dCU;!.1F0G 3T!;W8!.1C0D 0$!8WHHHH*KL;?====@			FFF$CG')JJJJ,<6:(h-D
EhZ
8
4!*F 3_b 2 4OG5!+W 5 3 5OG2!*F 3_b 0 2OG..d..........b72y!4NN<   ..w8IJJ&<#%:"%:"
4
4
4
4
4NN<   ..w8IJJ444""""@+.+.+.+.b'''
Gbg%DNNNNNNs-#--9AAAAA
Back to Directory File Manager