403 Forbidden


Disable Functions:
Path : /lib/python2.7/site-packages/pip/utils/
File Upload :
Command :
Current File : //lib/python2.7/site-packages/pip/utils/__init__.pyc

�
r2Wc@@s�ddlmZddlmZddlZddlZddlZddlZddlZ	ddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZddlZddlmZddlmZmZmZddlmZmZmZmZmZddlm Z ddl!m"Z"dd	l#m$Z$dd
l%m&Z&e$ruddlm'Z(nddlm(Z(d
ddddddddddddddddddd d!d"d#d$d%gZ)e	j*e+�Z,dhZ-diZ.djZ/dkZ0e/e-e0e.Z1e/e0Z2yddl3Z3e2e-7Z2Wne4k
rSe,j5d2�nXyddl6Z6e2e.7Z2Wne4k
r�e,j5d3�nXd4�Z7d5�Z8d6�Z9e&d7d8d9d:�e:d;��Z;d<�Z<d=�Z=d>d?�Z>d@�Z?dA�Z@dB�ZAdC�ZBdD�ZCdE�ZDejEdF�ZFdG�ZGdH�ZHeIdI�ZJdJ�ZKdK�ZLdL�ZMdM�ZNdN�ZOdO�ZPdP�ZQeIeeIe:e:dQ�ZRdR�ZSdS�ZTdT�ZUdU�ZVeIdV�ZWdW�ZXdX�ZYdY�ZZeIddZe	j\dddd[�Z]d\�Z^d]�Z_d^e`fd_��YZad`e(fda��YZbejcdb��Zddc�Zedde`fde��YZfdf�Zgdg�ZhdS(li(tabsolute_import(tdequeN(tInstallationError(tconsole_to_strt
expandusertstdlib_pkgs(t
site_packagest	user_sitetrunning_under_virtualenvtvirtualenv_no_globaltwrite_delete_marker_file(t
pkg_resources(tinput(tPY2(tretry(tBytesIO(tStringIOtrmtreetdisplay_patht
backup_dirtasktsplitexttformat_sizetis_installable_dirtis_svn_paget
file_contentstsplit_leading_dirthas_leading_dirtnormalize_pathtrenamestget_terminal_sizetget_progt
unzip_filet
untar_filetunpack_filetcall_subprocesstcaptured_stdouttremove_tracebackst
ensure_dirtARCHIVE_EXTENSIONStSUPPORTED_EXTENSIONStget_installed_versions.tar.bz2s.tbzs.tar.xzs.txzs.tlzs.tar.lzs	.tar.lzmas.zips.whls.tar.gzs.tgzs.tarsbz2 module is not availableslzma module is not availablecO@s5yt|�SWn tk
r0|||��nXdS(N(t
__import__tImportError(tpkg_or_module_stringt
ExceptionTypetargstkwargs((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytimport_or_raiseIs
cC@sCytj|�Wn+tk
r>}|jtjkr?�q?nXdS(s os.path.makedirs without EEXIST.N(tostmakedirstOSErrorterrnotEEXIST(tpathte((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR&Ps
cC@sOy.tjjtjd�dkr-dtjSWntttfk
rJnXdS(Nis__main__.pys-cs	%s -m piptpip(s__main__.pys-c(	R1R6tbasenametsystargvt
executabletAttributeErrort	TypeErrort
IndexError(((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyRYststop_max_delayi�t
wait_fixedi�cC@stj|d|dt�dS(Nt
ignore_errorstonerror(tshutilRtrmtree_errorhandler(tdirRB((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyRcscC@sAtj|�jtj@r:tj|tj�||�dS�dS(s�On Windows, the files in .svn are read-only, so when rmtree() tries to
    remove them, an exception is thrown.  We catch that here, remove the
    read-only attribute, and hopefully continue without problems.N(R1tstattst_modetS_IREADtchmodtS_IWRITE(tfuncR6texc_info((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyREis

cC@s�tjjtjj|��}tjddkrd|jtj�d�}|jtj	�d�}n|j
tj�tjj�r�d|t
tj��}n|S(sTGives the display value for a given path, making it relative to cwd
    if possible.iitreplacet.(R1R6tnormcasetabspathR:tversion_infotdecodetgetfilesystemencodingtencodetgetdefaultencodingt
startswithtgetcwdtseptlen(R6((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyRxss.bakcC@sKd}|}x4tjj||�rB|d7}|t|�}qW||S(s\Figure out the name of a directory to back up the given dir to
    (adding .bak, .bak2, etc)i(R1R6texistststr(RFtexttnt	extension((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�s
cC@sCx3tjjdd�j�D]}||kr|SqWt||�S(NtPIP_EXISTS_ACTIONt(R1tenvirontgettsplitR(tmessagetoptionstaction((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytask_path_exists�s"cC@sxxqtjjd�r(td|��nt|�}|j�j�}||krmd|dj|�fGHq|SqdS(s@Ask the message interactively, with the given possible responsestPIP_NO_INPUTs7No input was expected ($PIP_NO_INPUT set); question: %ss<Your response (%r) was not one of the expected responses: %ss, N(R1RbRct	ExceptionRtstriptlowertjoin(ReRftresponse((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�s
cC@sX|dkrd|ddS|d	kr4d|dS|dkrLd|dSd|SdS(
Ni�s%.1fMBg@�@i
s%ikBs%.1fkBs%ibytesi@Bi'((tbytes((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�scC@sEtjj|�stStjj|d�}tjj|�rAtStS(s@Return True if `path` is a directory containing a setup.py file.ssetup.py(R1R6tisdirtFalseRmtisfiletTrue(R6tsetup_py((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�scC@s(tjd|�o'tjd|tj�S(sT
    Returns true if the page appears to be the index page of an svn repository
    s<title>[^<]*Revision \d+:s#Powered by (?:<a[^>]*?>)?Subversion(tretsearchtI(thtml((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�scC@s/t|d��}|j�jd�SWdQXdS(Ntrbsutf-8(topentreadRS(tfilenametfp((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�scc@s/x(tr*|j|�}|s"Pn|VqWdS(s7Yield pieces of data from a file-like object until EOF.N(RsR{(tfiletsizetchunk((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytread_chunks�s
	cC@s�|jd�jd�}d|krjd|krN|jd�|jd�ksZd|krj|jdd�Sd|kr�|jdd�S|dfSdS(Nt/s\iRa(tlstriptfindRd(R6((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�s6cC@s\d}xO|D]G}t|�\}}|s/tS|dkrD|}q
||kr
tSq
WtS(syReturns true if all the paths have the same leading path name
    (i.e., everything is in one subdirectory in an archive)N(tNoneRRqRs(tpathst
common_prefixR6tprefixtrest((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�s
	cC@sIt|�}|r'tjj|�}ntjj|�}tjj|�S(sN
    Convert a path to its canonical, case-normalized, absolute version.

    (RR1R6trealpathRQRP(R6tresolve_symlinks((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�s
cC@sOtj|�\}}|j�jd�rE|d|}|d }n||fS(s,Like os.path.splitext, but take off .tar toos.tari����(t	posixpathRRltendswith(R6tbaseR]((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�s

cC@s�tjj|�\}}|rG|rGtjj|�rGtj|�ntj||�tjj|�\}}|r�|r�ytj|�Wq�tk
r�q�XndS(s7Like os.renames(), but handles renaming across devices.N(	R1R6RdR[R2RDtmovet
removedirsR3(toldtnewtheadttail((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyRs
cC@s)t�s
tSt|�jttj��S(s�
    Return True if path is within sys.prefix, if we're running in a virtualenv.

    If we're not in a virtualenv, all paths are considered "local."

    (RRsRRWR:R�(R6((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytis_locals	cC@stt|��S(s�
    Return True if given Distribution object is installed locally
    (i.e. within current virtualenv).

    Always True if we're not in a virtualenv.

    (R�t
dist_location(tdist((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt
dist_is_local!scC@s%tt|��}|jtt��S(sF
    Return True if given Distribution is installed in user site.
    (RR�RWR(R�t	norm_path((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytdist_in_usersite,scC@stt|��jtt��S(se
    Return True if given Distribution is installed in
    distutils.sysconfig.get_python_lib().
    (RR�RWR(R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytdist_in_site_packages4scC@sJxCtjD]8}tjj||jd�}tjj|�r
tSq
WtS(s$Is distribution an editable install?s	.egg-link(R:R6R1Rmtproject_nameRrRsRq(R�t	path_itemtegg_link((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytdist_is_editable>s
c
C@s�|rt}n	d�}|r*d�}n	d�}|rEd�}n	d�}|r]t}n	d�}gtjD]K}	||	�rp|	j|krp||	�rp||	�rp||	�rp|	^qpS(s�
    Return a list of installed Distribution objects.

    If ``local_only`` is True (default), only return installations
    local to the current virtualenv, if in a virtualenv.

    ``skip`` argument is an iterable of lower-case project names to
    ignore; defaults to stdlib_pkgs

    If ``editables`` is False, don't report editables.

    If ``editables_only`` is True , only report editables.

    If ``user_only`` is True , only report installations in the user
    site directory.

    cS@stS(N(Rs(td((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt
local_test`scS@stS(N(Rs(R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt
editable_testdscS@st|�S(N(R�(R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�gscS@s
t|�S(N(R�(R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyteditables_only_testkscS@stS(N(Rs(R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�nscS@stS(N(Rs(R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt	user_testts(R�R�Rtworking_settkey(
t
local_onlytskiptinclude_editablesteditables_onlyt	user_onlyR�R�R�R�R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytget_installed_distributionsGs$						cC@s�g}t�rNt�r(|jt�qq|jt�trq|jt�qqn#trd|jt�n|jt�x@|D]8}tjj||j�d}tjj	|�rx|SqxWdS(s
    Return the path for the .egg-link file if it exists, otherwise, None.

    There's 3 scenarios:
    1) not in a virtualenv
       try to find in site.USER_SITE, then site_packages
    2) in a no-global virtualenv
       try to find in site_packages
    3) in a yes-global virtualenv
       try to find in site_packages, then site.USER_SITE
       (don't look in global location)

    For #1 and #3, there could be odd cases, where there's an egg-link in 2
    locations.

    This method will just return the first one found.
    s	.egg-linkN(
RR	tappendRRR1R6RmR�Rr(R�tsitestsitetegglink((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt
egg_link_path�s		


cC@st|�}|r|S|jS(s�
    Get the site-packages location of this distribution. Generally
    this is dist.location, except in the case of develop-installed
    packages, where dist.location is the source code location, and we
    want to know where the egg-link file is.

    (R�tlocation(R�R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR��scC@s�d�}|d�p*|d�p*|d�}|sxy8tjtj�tj�}||�}tj|�WqxqxXn|s�tjjdd�tjjdd�f}nt|d�t|d�fS(	slReturns a tuple (x, y) representing the width(x) and the height(x)
    in characters of the terminal window.cS@skyLddl}ddl}ddl}|jd|j||jd��}WndSX|dkrgdS|S(Nithht1234(ii(tfcntlttermioststructtunpacktioctlt
TIOCGWINSZR�(tfdR�R�R�tcr((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytioctl_GWINSZ�siiitLINESitCOLUMNSiP(R1RztctermidtO_RDONLYtcloseRbRctint(R�R�R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR�s	$-cC@s tjd�}tj|�|S(sBGet the current umask which involves having to set it temporarily.i(R1tumask(tmask((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt
current_umask�s
c
C@s~t|�t|d�}zStj|dt�}t|j��oF|}x|j�D]}|j}|j	|�}|}	|r�t
|�d}	ntjj
||	�}	tjj|	�}
|	jd�s�|	jd�r�t|	�qVt|
�t|	d�}z|j|�Wd|j�|jd?}|rftj|�rf|d	@rftj|	d
t�d	B�nXqVWWd|j�XdS(s�
    Unzip the file (with path `filename`) to the destination `location`.  All
    files are written based on system defaults and umask (i.e. permissions are
    not preserved), except that regular file members with any execute
    permissions (user, group, or world) have "chmod +x" applied after being
    written. Note that for windows, any execute changes using os.chmod are
    no-ops per the python docs.
    Ryt
allowZip64iR�s\twbNiiIi�(R&RztzipfiletZipFileRsRtnamelisttinfolistR|R{RR1R6RmtdirnameR�twriteR�t
external_attrRGtS_ISREGRJR�(
R|R�tflattentzipfptziptleadingtinfotnametdatatfnRFR}tmode((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR �s0	
	



'c	C@s�t|�|j�jd�s4|j�jd�r=d}np|j�jt�r[d}nR|j�jt�ryd}n4|j�jd�r�d}ntjd|�d	}tj||�}z�t	g|j
�D]}|jd
kr�|j^q��}x�|j
�D]�}|j}|d
kr'qn|r@t|�d}nt
jj||�}|j�rnt|�q|j�r�y|j||�Wq�tk
r�}tjd||j|�qq�Xqy|j|�}	Wn5ttfk
r
}tjd||j|�qnXtt
jj|��t|d
��}
tj|	|
�WdQX|	j�|j||�|jd@rt
j|dt�dB�qqWWd|j�XdS(s�
    Untar the file (with path `filename`) to the destination `location`.
    All files are written based on system defaults and umask (i.e. permissions
    are not preserved), except that regular file members with any execute
    permissions (user, group, or world) have "chmod +x" applied after being
    written.  Note that for windows, any execute changes using os.chmod are
    no-ops per the python docs.
    s.gzs.tgzsr:gzsr:bz2sr:xzs.tartrs-Cannot determine compression type for file %ssr:*tpax_global_headeris/In the tar file %s the member %s is invalid: %sR�NiIi�(R&RlR�tBZ2_EXTENSIONSt
XZ_EXTENSIONStloggertwarningttarfileRzRt
getmembersR�RR1R6RmRptissymt_extract_memberRjtextractfiletKeyErrorR=R�RDtcopyfileobjR�tutimeR�RJR�(R|R�R�ttartmemberR�R�R6texcR}tdestfp((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR!sb	
*				
!	



&cC@s(tjj|�}|dksB|j�jt�sBtj|�rbt||d|jd��n�|dks�t	j
|�s�|j�jttt
�r�t||�nz|r�|jd�r�tt|��r�ddlm}|d|j�j|�n&tjd	|||�td
|��dS(Nsapplication/zipR�s.whlsapplication/x-gzips	text/htmli(t
Subversionssvn+sZCannot unpack file %s (downloaded from %s, content-type: %s); cannot detect archive formats%Cannot determine archive format of %s(R1R6R�RlR�tZIP_EXTENSIONSR�t
is_zipfileR R�t
is_tarfiletTAR_EXTENSIONSR�R�R!RWRRtpip.vcs.subversionR�turlR�R�tcriticalR(R|R�tcontent_typetlinkR�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR"Os,
cC@s8d}tj|d|�}tr%|Stjdd|�S(NsR(?:\W+File "(?:.*)", line (?:.*)\W+(?:.*)\W+\^\W+)?Syntax(?:Error|Warning): (?:.*)Ras\*\*\* Error compiling (?:.*)(RutsubR
(toutputtpattern((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR%ps
traisecC@s|rd}n	tj}|dkr�g}	xd|D]\}
d|
ksgd|
ksgd|
ksgd|
kr�d|
jdd�}
n|	j|
�q1Wdj|	�}ntj|d|�tj	j
�}|r�|j|�ny4tj|dtj
d	dd
|d|d|�}Wn)tk
r:}
tjd
|
|��nX|dk	r�g}x�tr�t|jj��}|suPn|j�}|j|d�tj�tjkr�tj|�qP|dk	rP|j�qPqPWn|j�|dk	r|jr|jd�q|jd�n|jr�|dkr�tj�tjkrt|rttjd|�tjdj|�d�ntd||j|f��q�|dkr�tjd||j|�q�|dkr�q�t dt!|���n|s�t"dj|��SdS(Nt s
t"t's"%s"s\"sRunning command %ststderrtstdintstdouttcwdtenvs#Error %s while executing command %sterrortdoneR�s Complete output from command %s:Ras)
----------------------------------------s,Command "%s" failed with error code %s in %stwarns$Command "%s" had error code %s in %stignoresInvalid value: on_returncode=%s(#R�t
subprocesstPIPERNR�RmR�tlogR1RbtcopytupdatetPopentSTDOUTRjR�RsRR�treadlinetrstriptgetEffectiveLeveltstd_loggingtDEBUGtdebugtspintwaitt
returncodetfinishR�RR�t
ValueErrortreprR%(tcmdtshow_stdoutRt
on_returncodet
command_leveltcommand_desct
extra_environtspinnerR�t	cmd_partstpartRtprocR�t
all_outputtline((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR#{sz		
0
	
		
cC@s�t|d��}|j�}WdQXdtjt�dg}x9|D]1}y|j|�}Wntk
rrqCnXPqCWt|�tks�t	�|S(sRReturn the contents of *filename*.

    Try to decode the file contents with utf-8, the preferred system encoding
    (e.g., cp1252 on some Windows machines), and latin1, in that order.
    Decoding a byte string with latin1 will never raise an error. In the worst
    case, the returned string will contain some garbage characters.

    RyNsutf-8tlatin1(
RzR{tlocaletgetpreferredencodingRqRStUnicodeDecodeErrorttypeRotAssertionError(R|R}R�t	encodingstenc((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytread_text_file�s	

cC@stj|�t|�dS(N(R1R2R
(t	build_dir((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt_make_build_dir�s
tFakeFilecB@s)eZdZd�Zd�Zd�ZRS(sQWrap a list of lines in an object with readline() to make
    ConfigParser happy.cC@sd�|D�|_dS(Ncs@s|]}|VqdS(N((t.0tl((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pys	<genexpr>�s(t_gen(tselftlines((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt__init__�scC@sLy3yt|j�SWntk
r1|jj�SXWntk
rGdSXdS(NRa(tnextR3t	NameErrort
StopIteration(R4((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR
s

cC@s|jS(N(R3(R4((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt__iter__	s(t__name__t
__module__t__doc__R6R
R:(((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR0�s			t
StreamWrappercB@s&eZed��Zed��ZRS(cC@s||_|�S(N(torig_stream(tclsR?((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytfrom_streams	cC@s
|jjS(N(R?tencoding(R4((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyRBs(R;R<tclassmethodRAtpropertyRB(((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR>
scc@sRtt|�}tt|tj|��ztt|�VWdtt||�XdS(s�Return a context manager used by captured_stdout/stdin/stderr
    that temporarily replaces the sys stream *stream_name* with a StringIO.

    Taken from Lib/support/__init__.py in the CPython repo.
    N(tgetattrR:tsetattrR>RA(tstream_nametorig_stdout((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytcaptured_outputs
cC@s
td�S(s�Capture the output of sys.stdout:

       with captured_stdout() as stdout:
           print('hello')
       self.assertEqual(stdout.getvalue(), 'hello
')

    Taken from Lib/support/__init__.py in the CPython repo.
    R�(RI(((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR$)s	tcached_propertycB@s eZdZd�Zd�ZRS(s�A property that is only computed once per instance and then replaces
       itself with an ordinary attribute. Deleting the attribute resets the
       property.

       Source: https://github.com/bottlepy/bottle/blob/0.11.5/bottle.py#L175
    cC@st|d�|_||_dS(NR=(RER=RL(R4RL((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR6=scC@s4|dkr|S|j|�}|j|jj<|S(N(R�RLt__dict__R;(R4tobjR@tvalue((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt__get__As (R;R<R=R6RN(((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyRJ5s	cC@s>tjj|�}tj�}|j|�}|r:|jSdS(sCGet the installed version of dist_name avoiding pkg_resources cacheN(RtRequirementtparset
WorkingSetR�tversionR�(t	dist_nametreqR�R�((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyR)IscC@st|dd�dS(sConsume an iterable at C speed.tmaxleniN(R(titerator((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pytconsumeZs(s.tar.bz2s.tbz(s.tar.xzs.txzs.tlzs.tar.lzs	.tar.lzma(s.zips.whl(s.tar.gzs.tgzs.tar(it
__future__RtcollectionsRt
contextlibR4tioR&tloggingRRuR1R�RDRGRR:R�R�tpip.exceptionsRt
pip.compatRRRt
pip.locationsRRRR	R
tpip._vendorRtpip._vendor.six.movesRtpip._vendor.sixR
tpip._vendor.retryingRRRt__all__t	getLoggerR;R�R�R�R�R�R'R(tbz2R+RtlzmaR0R&RRqRRERRRhRRRRRtDEFAULT_BUFFER_SIZER�RRRsRRRR�R�R�R�R�R�R�R�RR�R R!R"R%R�RR#R-R/tobjectR0R>tcontextmanagerRIR$RJR)RW(((s6/usr/lib/python2.7/site-packages/pip/utils/__init__.pyt<module>s�(				


				
						
					
							
		5	%			+	L	!		_		
		

404 Not Found
[ LogOut ]