[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@3.135.216.199: ~ $
�
�t�_c@s�ddlmZddlZddlZddlZddlZddlmZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZddlZddlZddlmZmZddlmZmZmZmZmZddlmZddlm Z m!Z!m"Z"m#Z#dd	l$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-dd
l.m/Z/m0Z0ej1e2�Z3e4a5e6ed�r�dZ7n9ej8j9d
�r�dZ7nej8dkr�dZ7ndZ7ej:d�Z;e;r*dej<d Z;nde;Z=e7e;Z>ej$j?�j@dd�j@dd�ZAej:d�ZBeBo�eBj9d�r�eBj@dd�ZBnd�ZCeC�ZB[CejDdejEejFB�ZGejDdejEejFB�ZHejDd�ZIejDd�ZJd ZKd!ZLe
jMd"kr0d#�ZNn	d$�ZNd%eOfd&��YZPeP�ZQd'eOfd(��YZRd)�ZSeS�ZT[Se4d*�ZUdS(+i����(tunicode_literalsN(tmessage_from_filei(t__version__tDistlibException(t	sysconfigtZipFiletfsdecodet	text_typetfilter(tInstalledDistribution(tMetadatatMETADATA_FILENAMEtWHEEL_METADATA_FILENAMEtLEGACY_METADATA_FILENAME(	tFileOperatortconvert_patht	CSVReadert	CSVWritertCachetcached_propertytget_cache_basetread_exportsttempdir(tNormalizedVersiontUnsupportedVersionErrorupypy_version_infouppujavaujyucliuipucpupy_version_nodotu%s%siupyu-u_u.uSOABIucpython-cCs|dtg}tjd�r+|jd�ntjd�rJ|jd�ntjd�dkro|jd�nd	j|�S(
NucpuPy_DEBUGudu
WITH_PYMALLOCumuPy_UNICODE_SIZEiuuu(t
VER_SUFFIXRtget_config_vartappendtjoin(tparts((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyt_derive_abi<suz
(?P<nm>[^-]+)
-(?P<vn>\d+[^-]*)
(-(?P<bn>\d+[^-]*))?
-(?P<py>\w+\d+(\.\w+\d+)*)
-(?P<bi>\w+)
-(?P<ar>\w+(\.\w+)*)
\.whl$
u7
(?P<nm>[^-]+)
-(?P<vn>\d+[^-]*)
(-(?P<bn>\d+[^-]*))?$
s
\s*#![^\r\n]*s^(\s*#!("[^"]+"|\S+))\s+(.*)$s#!pythons	#!pythonwu/cCs|S(N((to((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyt<lambda>^scCs|jtjd�S(Nu/(treplacetostsep(R((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyR `stMountercBs8eZd�Zd�Zd�Zdd�Zd�ZRS(cCsi|_i|_dS(N(t
impure_wheelstlibs(tself((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyt__init__ds	cCs!||j|<|jj|�dS(N(R%R&tupdate(R'tpathnamet
extensions((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytaddhs
cCsI|jj|�}x0|D](\}}||jkr|j|=qqWdS(N(R%tpopR&(R'R*R+tktv((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytremovelscCs"||jkr|}nd}|S(N(R&tNone(R'tfullnametpathtresult((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytfind_modulers	cCs�|tjkrtj|}nx||jkrAtd|��ntj||j|�}||_|jdd�}t|�dkr�|d|_	n|S(Nuunable to find extension for %su.ii(
tsystmodulesR&tImportErrortimptload_dynamict
__loader__trsplittlent__package__(R'R2R4R((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytload_moduleys	N(t__name__t
__module__R(R,R0R1R5R?(((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyR$cs
			tWheelcBseZdZdZdZdeed�Zed��Z	ed��Z
ed��Zed��Z
d�Zed	��Zd
�Zdd�Zd�Zd
�Zd�Zddd�Zd�Zd�Zd�Zd�Zd�Zd�Zed�Zd�Zd�Zdd�ZRS(u@
    Class to build and install from Wheel files (PEP 427).
    iusha256cCs�||_||_d|_tg|_dg|_dg|_tj�|_	|dkr{d|_d|_|j
|_nEtj|�}|r�|jd�}|d|_|djdd	�|_|d
|_|j
|_n�tjj|�\}}tj|�}|s!td|��n|r?tjj|�|_	n||_|jd�}|d|_|d|_|d
|_|djd
�|_|djd
�|_|djd
�|_dS(uB
        Initialise an instance using a (valid) filename.
        uunoneuanyudummyu0.1unmuvnu_u-ubnuInvalid name or filename: %rupyu.ubiuarN(tsignt
should_verifytbuildvertPYVERtpyvertabitarchR"tgetcwdtdirnameR1tnametversiontfilenamet	_filenametNAME_VERSION_REtmatcht	groupdictR!R3tsplittFILENAME_RERtabspath(R'RNRCtverifytmtinfoRK((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyR(�sB					


	


cCs�|jrd|j}nd}dj|j�}dj|j�}dj|j�}|jjdd�}d|j|||||fS(uJ
        Build and return a filename from the various components.
        u-uu.u_u%s-%s%s-%s-%s-%s.whl(RERRGRHRIRMR!RL(R'RERGRHRIRM((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyRN�s	cCs+tjj|j|j�}tjj|�S(N(R"R3RRKRNtisfile(R'R3((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytexists�sccsNxG|jD]<}x3|jD](}x|jD]}|||fVq*WqWq
WdS(N(RGRHRI(R'RGRHRI((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyttags�scCs\tjj|j|j�}d|j|jf}d|}tjd�}t	|d���}|j
|�}|djdd�}tg|D]}t
|�^q��}	ttg}
d}xu|
D]m}yStj||�}
|j|
��,}||�}td|�}|rPnWdQXWq�tk
r+q�Xq�W|sRtd	d
j|
���nWdQX|S(Nu%s-%su%s.dist-infouutf-8uru
Wheel-Versionu.itfileobju8Invalid wheel, because metadata is missing: looked in %su, (R"R3RRKRNRLRMtcodecst	getreaderRtget_wheel_metadataRSttupletintRR
R1t	posixpathtopenR
tKeyErrort
ValueError(R'R*tname_vertinfo_dirtwrappertzftwheel_metadatatwvtitfile_versiontfnsR4tfntmetadata_filenametbftwf((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytmetadata�s0
%

cCsud|j|jf}d|}tj|d�}|j|��(}tjd�|�}t|�}WdQXt|�S(Nu%s-%su%s.dist-infouWHEELuutf-8(	RLRMRbRRcR]R^Rtdict(R'RiRfRgRpRqRrtmessage((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyR_�s
cCsFtjj|j|j�}t|d��}|j|�}WdQX|S(Nur(R"R3RRKRNRR_(R'R*RiR4((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyRXscCstj|�}|r�|j�}|| ||}}d|j�krQt}nt}tj|�}|r�d|j�d}nd}||}||}ns|jd�}|jd�}	|dks�||	kr�d}
n&|||d!d	kr�d	}
nd}
t|
|}|S(
Ntpythonwt i����ts
s
iis
(	t
SHEBANG_RERQtendtlowertSHEBANG_PYTHONWtSHEBANG_PYTHONtSHEBANG_DETAIL_REtgroupstfind(R'tdataRWRztshebangtdata_after_shebangtshebang_pythontargstcrtlftterm((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytprocess_shebangs,	

		cCs�|dkr|j}nytt|�}Wn!tk
rNtd|��nX||�j�}tj|�j	d�j
d�}||fS(NuUnsupported hash algorithm: %rt=uascii(R1t	hash_kindtgetattrthashlibtAttributeErrorRtdigesttbase64turlsafe_b64encodetrstriptdecode(R'R�R�thasherR4((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytget_hash%s
!cCstt|�}ttjj||��}|j|ddf�t|��%}x|D]}|j|�qSWWdQXdS(Nu(tlisttto_posixR"R3trelpathRRtwriterow(R'trecordstrecord_pathtbasetptwritertrow((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytwrite_record0s
cCs�g}|\}}tt|j�}xs|D]k\}}	t|	d��}
|
j�}WdQXd|j|�}tjj|	�}
|j	|||
f�q+Wtjj
|d�}	|j||	|�ttjj
|d��}|j	||	f�dS(Nurbu%s=%suRECORD(
R�R�R�RctreadR�R"R3tgetsizeRRR�R�(R'RXtlibdirt
archive_pathsR�tdistinfoRgR�tapR�tfR�R�tsize((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyt
write_records8sc	Cs\t|dtj��A}x7|D]/\}}tjd||�|j||�qWWdQXdS(NuwuWrote %s to %s in wheel(RtzipfiletZIP_DEFLATEDtloggertdebugtwrite(R'R*R�RiR�R�((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyt	build_zipHsc"s
|dkri}ntt�fd�d&��d}|dkrgd}tg}tg}tg}n!d}tg}dg}dg}|jd	|�|_|jd
|�|_	|jd|�|_
�|}	d|j|jf}
d
|
}d|
}g}
xKd'D]C}|�kr qn�|}t
jj|�rxt
j|�D]�\}}}x�|D]�}tt
jj||��}t
jj||�}tt
jj|||��}|
j||f�|dkrb|jd�rbt|d��}|j�}WdQX|j|�}t|d��}|j|�WdQXqbqbWqLWqqW|	}d}xt
j|�D]�\}}}||kr�xUt|�D]G\}}t|�}|jd�r�t
jj||�}||=Pq�q�W|s�td��nxl|D]d}t|�jd(�rq�nt
jj||�}tt
jj||��}|
j||f�q�WqkWt
j|�}xf|D]^}|d)kr|tt
jj||��}tt
jj||��}|
j||f�q|q|Wd|p�|jdtd |g}x4|j D])\}}}|jd!|||f�qWt
jj|d�}t|d"��}|jd#j|��WdQXtt
jj|d��}|
j||f�d$�} t!|
d%| �}
|j"||f|	|
�t
jj|j#|j$�}!|j%|!|
�|!S(*u�
        Build a wheel from files in specified paths, and use any specified tags
        when determining the name of the wheel.
        cs
|�kS(N((R(tpaths(sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyR Vsupurelibuplatlibiufalseutrueunoneuanyupyveruabiuarchu%s-%su%s.datau%s.dist-infoudatauheadersuscriptsu.exeurbNuwbu
.dist-infou(.dist-info directory expected, not foundu.pycu.pyouRECORDu	INSTALLERuSHAREDuWHEELuWheel-Version: %d.%duGenerator: distlib %suRoot-Is-Purelib: %su
Tag: %s-%s-%suwu
cSs<|d}|jd�}d|kr2|d7}n||fS(Niu/u
.dist-infoi'(tcount(ttR�tn((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytsorter�s


tkey(upurelibuplatlib(udatauheadersuscripts(u.pycu.pyo(uRECORDu	INSTALLERuSHAREDuWHEEL(&R1R�RtIMPVERtABItARCHRFtgetRGRHRIRLRMR"R3tisdirtwalkRRR�R�RtendswithRcR�R�R�t	enumeratetAssertionErrortlistdirt
wheel_versionRR[tsortedR�RKRNR�("R'R�R[R�tlibkeytis_puret
default_pyvertdefault_abitdefault_archR�Rftdata_dirRgR�R�R3troottdirstfilesRoR�trpR�R�R�R�RltdnRjRGRHRIR�R*((R�sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytbuildNs�	"					





%


	cCs
|jd�S(ul
        Determine whether an archive entry should be skipped when verifying
        or installing.
        u/u/RECORD.jws(u/u/RECORD.jws(R�(R'tarcname((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyt
skip_entry�scDKs�	|j}|jd�}|jdt�}|jdt�}tjj|j|j�}d|j|j	f}	d|	}
d|	}t
j|t�}t
j|d�}
t
j|d�}tj
d	�}t|d
���}|j|
��}||�}t|�}WdQX|djd
d�}tg|D]}t|�^q(�}||jkrk|rk||j|�n|ddkr�|d}n
|d}i}|j|��D}td|��,}x"|D]}|d}|||<q�WWdQXWdQXt
j|
d�}t
j|d�}t
j|
dd�}td|�} t| _tj}!g}"tj�}#|#|_d|_z9yx�|j �D]�}$|$j}%t!|%t"�r�|%}&n|%j#d	�}&|j$|&�r�qn||&}|dr
t%|$j&�|dkr
t'd|&��n|dr�|djdd�\}'}(|j|%��}|j(�})WdQX|j)|)|'�\}*}+|+|(kr�t'd|%��q�n|r�|&j*||f�r�t+j,d|&�qn|&j*|�o�|&j-d�},|&j*|�r*|&jdd�\}*}-}.tjj||-t.|.��}/n3|&|
|fkrBqntjj|t.|&��}/|,so|j|%��}| j/||/�WdQX|"j0|/�|r|drt|/d��J}|j(�})|j)|)|'�\}*}0|0|+kr�t'd |/��nWdQXn|!r|/j-d!�ry&| j1|/d"|�}1|"j0|1�Wqlt2k
rht+j3d#d$t�qlXqqtjj4t.|%��}2tjj|#|2�}3|j|%��}| j/||3�WdQXtjj|/�\}4}2|4|_|j5|2�}5| j6|5�|"j7|5�qW|r.t+j,d%�d}6nCd}7|j8d}|d&krQt
j|d'�}8y�|j|8��}t9|�}9WdQXi}7x�d:D]�}:d*|:};|;|9kr�i|7d+|:<}<xd|9|;j:�D]O}=d,|=j;|=j<f}>|=j=r|>d-d.j|=j=�7}>n|>|<|=j<q�Wq�q�WWq�t2k
rMt+j3d/�q�XnyyX|j|��C}||�}t>j?|�jd0�}7|7r�|7jd1�}7nWdQXWnt2k
r�t+j3d2�nX|7r�|7jd3i�}?|7jd4i�}@|?s|@r�|jdd�}Atjj@|A�s3tAd5��n|A|_xF|?jB�D]8\};}=d6|;|=f}B|j5|B�}5| j6|5�qIW|@r�itd)6}CxL|@jB�D];\};}=d6|;|=f}B|j5|B|C�}5| j6|5�q�Wq�q�ntjj||�}tC|�}6tD|�}|d=|d=||d7<|6jE||�}|rZ	|"j0|�n|6jF|"|d8|�|6SWn+t2k
r�	t+jGd9�| jH��nXWdtIjJ|#�XWdQXdS(;u~
        Install a wheel to the specified paths. If kwarg ``warner`` is
        specified, it should be a callable, which will be called with two
        tuples indicating the wheel version of this software and the wheel
        version in the file, if there is a discrepancy in the versions.
        This can be used to issue any warnings to raise any exceptions.
        If kwarg ``lib_only`` is True, only the purelib/platlib files are
        installed, and the headers, scripts, data and dist-info metadata are
        not written. If kwarg ``bytecode_hashed_invalidation`` is True, written
        bytecode will try to use file-hash based invalidation (PEP-552) on
        supported interpreter versions (CPython 2.7+).

        The return value is a :class:`InstalledDistribution` instance unless
        ``options.lib_only`` is True, in which case the return value is ``None``.
        uwarnerulib_onlyubytecode_hashed_invalidationu%s-%su%s.datau%s.dist-infouWHEELuRECORDuutf-8urNu
Wheel-Versionu.iuRoot-Is-Purelibutrueupurelibuplatlibtstreamiuuscriptstdry_runiusize mismatch for %su=udigest mismatch for %sulib_only: skipping %su.exeu/urbudigest mismatch on write for %su.pythashed_invalidationuByte-compilation failedtexc_infoulib_only: returning Noneu1.0uentry_points.txtuconsoleuguiu
%s_scriptsuwrap_%su%s:%su [%s]u,uAUnable to read legacy script metadata, so cannot generate scriptsu
extensionsupython.commandsu8Unable to read JSON metadata, so cannot generate scriptsuwrap_consoleuwrap_guiuValid script path not specifiedu%s = %sulibuprefixuinstallation failed.(uconsoleugui(KR�R�tFalseR"R3RRKRNRLRMRbR
R]R^RRcRRSR`RaR�RRtTruetrecordR6tdont_write_bytecodettempfiletmkdtempt
source_dirR1t
target_dirtinfolistt
isinstanceRR�R�tstrt	file_sizeRR�R�t
startswithR�R�R�Rtcopy_streamRtbyte_compilet	Exceptiontwarningtbasenametmaketset_executable_modetextendRXRtvaluestprefixtsuffixtflagstjsontloadR�RetitemsR	Rttwrite_shared_locationstwrite_installed_filest	exceptiontrollbacktshutiltrmtree(DR'R�tmakertkwargsR�twarnertlib_onlytbc_hashed_invalidationR*RfR�Rgt
metadata_nametwheel_metadata_nametrecord_nameRhRitbwfRrRuRkRlRmR�R�RqtreaderR�R�tdata_pfxtinfo_pfxt
script_pfxtfileoptbctoutfilestworkdirtzinfoR�t	u_arcnametkindtvalueR�t_R�t	is_scripttwhereR�toutfilet	newdigesttpycRotworknameR�t	filenamestdisttcommandsteptepdataR�R.tdR/tstconsole_scriptstgui_scriptst
script_dirtscripttoptions((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytinstall�sH	

%



	
				
#

"
	
	

	


	

	




cCsKtdkrGtjjt�td�dtjd �}t	|�antS(Nudylib-cacheu%s.%si(
tcacheR1R"R3RRR�R6tversion_infoR(R'R�((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyt_get_dylib_cache�s
c
Cs�tjj|j|j�}d|j|jf}d|}tj|d�}tj	d�}g}t
|d��w}y\|j|��G}||�}	tj
|	�}
|j�}|j|�}tjj|j|�}
tjj|
�s�tj|
�nx�|
j�D]�\}}tjj|
t|��}tjj|�sHt}nQtj|�j}tjj|�}|j|�}tj|j�}||k}|r�|j||
�n|j||f�qWWdQXWntk
r�nXWdQX|S(Nu%s-%su%s.dist-infou
EXTENSIONSuutf-8ur( R"R3RRKRNRLRMRbR]R^RRcR�R�R!t
prefix_to_dirR�R�tmakedirsR�RRZR�tstattst_mtimetdatetimet
fromtimestamptgetinfot	date_timetextractRRd(R'R*RfRgR�RhR4RiRqRrR+RR�t
cache_baseRLR�tdestR*t	file_timeRXt
wheel_time((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyt_get_extensions�s>
	!

cCs
t|�S(uM
        Determine if a wheel is compatible with the running system.
        (t
is_compatible(R'((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyR0�scCstS(uP
        Determine if a wheel is asserted as mountable by its metadata.
        (R�(R'((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytis_mountable�scCs
tjjtjj|j|j��}|j�sLd|}t|��n|j�sqd|}t|��n|t	jkr�t
jd|�ns|r�t	jj|�nt	jj
d|�|j�}|rtt	jkr�t	jjt�ntj||�ndS(Nu)Wheel %s not compatible with this Python.u$Wheel %s is marked as not mountable.u%s already in pathi(R"R3RURRKRNR0RR1R6R�R�RtinsertR/t_hookt	meta_pathR,(R'RR*tmsgR+((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytmount�s"'

cCs�tjjtjj|j|j��}|tjkrItjd|�n]tjj	|�|t
jkrxt
j	|�nt
js�t
tjkr�tjj	t
�q�ndS(Nu%s not in path(
R"R3RURRKRNR6R�R�R0R3R%R4(R'R*((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytunmounts'	cCs�tjj|j|j�}d|j|jf}d|}d|}tj|t�}tj|d�}tj|d�}t	j
d�}t|d��}	|	j|��}
||
�}t
|�}WdQX|djd	d
�}
tg|
D]}t|�^q��}i}|	j|��D}td|��,}x"|D]}|d}|||<q8WWdQXWdQXxK|	j�D]=}|j}t|t�r�|}n|jd�}|jd
�}d|kr�td|��n|j|�r�qon||}|dr(t|j�|dkr(td|��n|d
ro|d
jdd
�\}}|	j|��}|j�}WdQX|j||�\}}||kr�td|��q�qoqoWWdQXdS(Nu%s-%su%s.datau%s.dist-infouWHEELuRECORDuutf-8uru
Wheel-Versionu.iR�iu/u..uinvalid entry in wheel: %riusize mismatch for %su=udigest mismatch for %s(R"R3RRKRNRLRMRbR
R]R^RRcRRSR`RaRR�R�RR�RR�R�R�R�R�(R'R*RfR�RgR�R�R�RhRiR�RrRuRkRlRmR�RqR�R�R�RR�RR	R
R�RR�((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyRVsV

%

		

#

c
Ks�d�}d�}tjj|j|j�}d|j|jf}d|}tj|d�}	t��(}
t	|d���}i}x�|j
�D]�}
|
j}t|t�r�|}n|j
d�}||	kr�q�nd|kr�td	|��n|j|
|
�tjj|
t|��}|||<q�WWd
QX|||�\}}|||�}|r�|||�\}}|r�||kr�|||�n|d
kr�tjddd
dd|
�\}}tj|�n=tjj|�s�td|��ntjj||j�}t|j��}tjj|
|�}||f}|j||
|�|j||�|d
kr�tj||�q�nWd
QX|S(u�
        Update the contents of a wheel in a generic way. The modifier should
        be a callable which expects a dictionary argument: its keys are
        archive-entry paths, and its values are absolute filesystem paths
        where the contents the corresponding archive entries can be found. The
        modifier is free to change the contents of the files pointed to, add
        new entries and remove entries, before returning. This method will
        extract the entire contents of the wheel to a temporary location, call
        the modifier, and then use the passed (and possibly updated)
        dictionary to write a new wheel. If ``dest_dir`` is specified, the new
        wheel is written there -- otherwise, the original wheel is overwritten.

        The modifier should return True if it updated the wheel, else False.
        This method returns the same value the modifier returns.
        cSshd}}d|tf}||kr3d|}n||kr^||}td|�j}n||fS(Nu%s/%su%s/PKG-INFOR3(R1R
R
RM(tpath_mapRgRMR3R�((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytget_versionYs


c	Ss&d}y�t|�}|jd�}|dkr=d|}ngg||djd�D]}t|�^qU}|dcd7<d|| djd�|D��f}Wn!tk
r�tjd	|�nX|r"t	d
|�}||_
|jt�}|j
d
|d|�tjd||�ndS(
Nu-iu%s+1iu.i����u%s+%scss|]}t|�VqdS(N(R�(t.0Rl((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pys	<genexpr>nsu0Cannot update non-compliant (PEP-440) version %rR3tlegacyuVersion updated from %r to %r(R1RR�RSRaRRR�R�R
RMR�R
R�(	RMR3tupdatedR/RlRRtmdR;((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytupdate_versioncs(
0
!
		u%s-%su%s.dist-infouRECORDuruutf-8u..uinvalid entry in wheel: %rNR�u.whlR�u
wheel-update-tdiruNot a directory: %r(R"R3RRKRNRLRMRbRRR�R�RR�RR*RR1R�tmkstemptcloseR�R�R�R�R�R�tcopyfile(R'tmodifiertdest_dirR�R9R>R*RfRgR�RRiR8RR�RR3toriginal_versionRtmodifiedtcurrent_versiontfdtnewpathR�R�RX((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyR)HsX	
	
		
(iiN( R@RAt__doc__R�R�R1R�R(tpropertyRNRZR[RRsR_RXR�R�R�R�R�R�R�RR!R/R0R1R6R7RVR)(((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyRB�s4) 						t		�			"				8cCs�tg}td}xGttjdddd�D](}|jdj|t|�g��q1Wg}xLtj�D]>\}}}|j	d�rp|j|j
dd�d�qpqpW|j�tdkr�|j
dt�n|jd�g}tg}tjd	kr=tjd
t�}|r=|j�\}	}}}
t|�}|
g}|
dkrg|jd
�n|
dkr�|jd�n|
dkr�|jd�n|
dkr�|jd�n|
dkr�|jd�nx`|dkr6x@|D]8}d|	|||f}
|
tkr�|j|
�q�q�W|d8}q�Wq=nxH|D]@}x7|D]/}
|jdjt|df�||
f�qQWqDWxwt|�D]i\}}|jdjt|f�ddf�|dkr�|jdjt|df�ddf�q�q�Wxwt|�D]i\}}|jdjd|f�ddf�|dkr|jdjd|df�ddf�qqWt|�S(uG
    Return (pyver, abi, arch) tuples compatible with this Python.
    iii����uu.abiu.iunoneudarwinu(\w+)_(\d+)_(\d+)_(\w+)$ui386uppcufatux86_64ufat3uppc64ufat64uintelu	universalu%s_%s_%s_%suanyupy(ui386uppc(ui386uppcux86_64(uppc64ux86_64(ui386ux86_64(ui386ux86_64uinteluppcuppc64(RtrangeR6R RRR�R9tget_suffixesR�RStsortR�R2R�tplatformtreRQRRat
IMP_PREFIXR�tset(tversionstmajortminortabisR�RR4tarchesRWRLRItmatchesRQRRHRlRM((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pytcompatible_tags�s`	
$&$

		


1%0%0cCs�t|t�st|�}nt}|dkr9t}nxN|D]F\}}}||jkr@||jkr@||jkr@t}Pq@q@W|S(N(	R�RBR�R1tCOMPATIBLE_TAGSRGRHRIR�(twheelR[R4tverRHRI((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyR0�s	-(Vt
__future__RR�R]R&tdistutils.utilt	distutilstemailRR�R9R�tloggingR"RbRPR�R6R�R�RxRRtcompatRRRRRtdatabaseR	RsR
RRR
tutilRRRRRRRRRRMRRt	getLoggerR@R�R1RthasattrRQROR�RRR RFR�tget_platformR!R�R�Rtcompilet
IGNORECASEtVERBOSERTRPRyR~R}R|R#R�tobjectR$R3RBRYRZR0(((sJ/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/distlib/wheel.pyt<module>s�("@			

'				#	���'	>	

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
_backport Folder 0755
.__init__.pyo.40009 File 1.39 KB 0644
.database.pyo.40009 File 49.89 KB 0644
.index.pyo.40009 File 19.83 KB 0644
.resources.pyo.40009 File 14.16 KB 0644
.scripts.pyo.40009 File 13.3 KB 0644
__init__.py File 581 B 0644
__init__.pyc File 1.39 KB 0644
__init__.pyo File 1.39 KB 0644
compat.py File 40.44 KB 0644
compat.pyc File 40.08 KB 0644
compat.pyo File 40.03 KB 0644
database.py File 49.86 KB 0644
database.pyc File 49.89 KB 0644
database.pyo File 49.89 KB 0644
index.py File 20.57 KB 0644
index.pyc File 19.83 KB 0644
index.pyo File 19.83 KB 0644
locators.py File 50.88 KB 0644
locators.pyc File 46.28 KB 0644
locators.pyo File 46.22 KB 0644
manifest.py File 14.46 KB 0644
manifest.pyc File 12.12 KB 0644
manifest.pyo File 11.96 KB 0644
markers.py File 4.28 KB 0644
markers.pyc File 6.31 KB 0644
markers.pyo File 6.27 KB 0644
metadata.py File 38.05 KB 0644
metadata.pyc File 34.58 KB 0644
metadata.pyo File 34.49 KB 0644
resources.py File 10.51 KB 0644
resources.pyc File 14.16 KB 0644
resources.pyo File 14.16 KB 0644
scripts.py File 16.78 KB 0644
scripts.pyc File 13.3 KB 0644
scripts.pyo File 13.3 KB 0644
t32.exe File 94.5 KB 0644
t64.exe File 103.5 KB 0644
util.py File 58.44 KB 0644
util.pyc File 61.69 KB 0644
util.pyo File 61.21 KB 0644
version.py File 22.84 KB 0644
version.pyc File 26.54 KB 0644
version.pyo File 26.46 KB 0644
w32.exe File 88 KB 0644
w64.exe File 97.5 KB 0644
wheel.py File 40.18 KB 0644
wheel.pyc File 32.03 KB 0644
wheel.pyo File 31.95 KB 0644