403 Forbidden


Disable Functions:
Path : /lib/python2.7/site-packages/pip/
File Upload :
Command :
Current File : //lib/python2.7/site-packages/pip/index.pyo

�
r2Wc@@s�dZddlmZddlZddlZddlmZddlZddlZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlmZddlmZddlmZddlmZmZmZmZmZdd	lmZmZdd
lmZddl m!Z!m"Z"m#Z#m$Z$ddl%m&Z&m'Z'm(Z(m)Z)dd
l*m+Z+m,Z,ddl-m.Z.ddl/m0Z0m1Z1m2Z2ddl3mZ4ddl5m6Z6ddl7m8Z8dddgZ9dddfdddfdddfdddfdde:fdddfgZ;ej<e=�Z>de?fd��YZ@de?fd��YZAe
jBde
jC�d �ZDd!e?fd"��YZEd#e?fd$��YZFedd%�ZGd&�ZHd'�ZId(�ZJd)�ZKed*d+�ZLdS(,s!Routines related to PyPI, indexesi(tabsolute_importN(t
namedtuple(tparse(trequest(t	ipaddress(tcached_propertytsplitexttnormalize_pathtARCHIVE_EXTENSIONStSUPPORTED_EXTENSIONS(tRemovedInPip9WarningtRemovedInPip10Warning(t
indent_log(tDistributionNotFoundtBestVersionAlreadyInstalledtInvalidWheelFilenametUnsupportedWheel(tHAS_TLStis_urltpath_to_urlturl_to_path(tWheelt	wheel_ext(tsupported_tags(thtml5libtrequeststsix(tcanonicalize_name(tSSLErrort
FormatControltfmt_ctl_handle_mutual_excludet
PackageFinderthttpst*t	localhosts127.0.0.0/8s::1/128tfiletsshtInstallationCandidatecB@sbeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�ZRS(
cC@s@||_t|�|_||_|j|j|jf|_dS(N(tprojectt
parse_versiontversiontlocationt_key(tselfR&R(R)((s-/usr/lib/python2.7/site-packages/pip/index.pyt__init__;s		cC@sdj|j|j|j�S(Ns,<InstallationCandidate({0!r}, {1!r}, {2!r})>(tformatR&R(R)(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyt__repr__AscC@s
t|j�S(N(thashR*(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyt__hash__FscC@s|j|d��S(NcS@s
||kS(N((tsto((s-/usr/lib/python2.7/site-packages/pip/index.pyt<lambda>Js(t_compare(R+tother((s-/usr/lib/python2.7/site-packages/pip/index.pyt__lt__IscC@s|j|d��S(NcS@s
||kS(N((R1R2((s-/usr/lib/python2.7/site-packages/pip/index.pyR3Ms(R4(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyt__le__LscC@s|j|d��S(NcS@s
||kS(N((R1R2((s-/usr/lib/python2.7/site-packages/pip/index.pyR3Ps(R4(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyt__eq__OscC@s|j|d��S(NcS@s
||kS(N((R1R2((s-/usr/lib/python2.7/site-packages/pip/index.pyR3Ss(R4(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyt__ge__RscC@s|j|d��S(NcS@s
||kS(N((R1R2((s-/usr/lib/python2.7/site-packages/pip/index.pyR3Vs(R4(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyt__gt__UscC@s|j|d��S(NcS@s
||kS(N((R1R2((s-/usr/lib/python2.7/site-packages/pip/index.pyR3Ys(R4(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyt__ne__XscC@s&t|t�stS||j|j�S(N(t
isinstanceR%tNotImplementedR*(R+R5tmethod((s-/usr/lib/python2.7/site-packages/pip/index.pyR4[s(t__name__t
__module__R,R.R0R6R7R8R9R:R;R4(((s-/usr/lib/python2.7/site-packages/pip/index.pyR%9s									cB@s�eZdZededdd�Zd�Zeed��Zd�Z	d�Z
d�Zd�Zd�Z
d	�Zejd
�Zd�Zd�Zd
�Zd�Zd�ZRS(s�This finds packages.

    This is meant to match easy_install's technique for looking for
    packages, by reading pages and looking for appropriate links.
    cC@se|dkrtd��ng|_xW|D]O}|jd�rjt|�}	tjj|	�rj|	}qjn|jj|�q+W||_	g|_
t�|_|p�t
t�t��|_g|r�|ngD]}
d|
df^q�|_||_||_||_tsaxRtj|j	|j�D]5}tj|�}|jdkr%tjd�Pq%q%WndS(s�Create a PackageFinder.

        :param format_control: A FormatControl object or None. Used to control
            the selection of source packages / binary packages when consulting
            the index and links.
        s>PackageFinder() missing 1 required keyword argument: 'session't~R!R sipip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.N(tNonet	TypeErrort
find_linkst
startswithRtostpathtexiststappendt
index_urlstdependency_linkstsettlogged_linksRtformat_controltsecure_originstallow_all_prereleasestprocess_dependency_linkstsessionRt	itertoolstchainturllib_parseturlparsetschemetloggertwarning(R+RDRJRPt
trusted_hostsRQRRRNtlinktnew_linkthosttparsed((s-/usr/lib/python2.7/site-packages/pip/index.pyR,is4			
		.			cC@s0|jr,tjdt�|jj|�ndS(NsXDependency Links processing has been deprecated and will be removed in a future release.(RQtwarningstwarnR
RKtextend(R+tlinks((s-/usr/lib/python2.7/site-packages/pip/index.pytadd_dependency_links�s
	c@sXg�g���fd�}x-|D]%}tjj|�}|jd�}|sX|r|rg|}nt|�}tjj|�r�|r�tjj|�}xItj|�D]}|tjj||��q�Wq|r�j	|�qqJtjj
|�r||�qJtjd|�q%t
|�r:�j	|�q%tjd|�q%W��fS(st
        Sort locations into "files" (archives) and "urls", and return
        a pair of lists (files,urls)
        c@sLt|�}tj|dt�ddkr;�j|�n
�j|�dS(Ntstrictis	text/html(Rt	mimetypest
guess_typetFalseRI(RGturl(tfilesturls(s-/usr/lib/python2.7/site-packages/pip/index.pyt	sort_path�ssfile:s:Url '%s' is ignored: it is neither a file nor a directory.sQUrl '%s' is ignored. It is either a non-existing path or lacks a specific scheme.(RFRGRHRERtisdirtrealpathtlistdirtjoinRItisfileRXRYR(t	locationst
expand_dirRkRht
is_local_pathtis_file_urlRGtitem((RiRjs-/usr/lib/python2.7/site-packages/pip/index.pyt_sort_locations�s8
	 

cC@sptt�}|jjr\t|jj�}|j�sLtd|j��n|j�}n|}|j	|fS(sL
        Function used to generate link sort key for link tuples.
        The greater the return value, the more preferred it is.
        If not finding wheels, then sorted by version only.
        If finding wheels, then the sort order is by version, then:
          1. existing installs
          2. wheels ordered via Wheel.support_index_min()
          3. source archives
        Note: it was considered to embed this logic into the Link
              comparison operators, but then different sdist links
              with the same version, would have to be considered equal
        sB%s is not a supported wheel for this platform. It can't be sorted.(
tlenRR)tis_wheelRtfilenamet	supportedRtsupport_index_minR((R+t	candidatetsupport_numtwheeltpri((s-/usr/lib/python2.7/site-packages/pip/index.pyt_candidate_sort_key�s
c	C@s�tjt|��}|j|j|jf}|djdd�d}xht|jD]Y}||dkr�|ddkr�qUny�t	j
t|dtj
�s�|ddkr�|dn|djd��}t	jt|dtj
�r�|dn|djd��}WnQtk
r`|drs|dj�|dj�krs|ddkrsqUqsnX||krsqUn|d|dkr�|ddkr�|ddk	r�qUntSW|jd|j|j�tS(	Nit+ii����R!tutf8is�The repository located at %s is not a trusted or secure host and is being ignored. If this repository is available via HTTPS it is recommended to use HTTPS instead, otherwise you may silence this warning and allow it anyways with '--trusted-host %s'.(RURVtstrRWthostnametporttrsplittSECURE_ORIGINSRORt
ip_addressR<Rt	text_typeRBtdecodet
ip_networkt
ValueErrortlowertTrueRYRg(	R+RXR)R^torigintprotocolt
secure_origintaddrtnetwork((s-/usr/lib/python2.7/site-packages/pip/index.pyt_validate_secure_origins>  

 

c@s/�fd�}g|jD]}||�^qS(s�Returns the locations found via self.index_urls

        Checks the url_name on the main (first in the list) index and
        use this url_name to produce all locations
        c@sAtj|tjt����}|jd�s=|d}n|S(Nt/(t	posixpathRoRUtquoteRtendswith(Rhtloc(tproject_name(s-/usr/lib/python2.7/site-packages/pip/index.pytmkurl_pypi_urlQs
(RJ(R+R�R�Rh((R�s-/usr/lib/python2.7/site-packages/pip/index.pyt_get_index_urls_locationsJs
c	C@s�|j|�}|j|�\}}|j|jdt�\}}|j|j�\}}d�tj|||�D�}	gtjd�|D�d�|D�d�|D��D]}
|jt|
�r�|
^q�}tj	dt
|�|�x|D]}tj	d|�q�Wt|�}
t|j
|
�}t||
|�}|jd�|jD�|�}g}xY|j||�D]E}tj	d	|j�t��!|j|j|j|��Wd
QXqsW|jd�|jD�|�}|rtj	dd
jg|D]}|jj^q���n|j|	|�}|ry|jdt�tj	dd
jg|D]}t|jj�^qT��n||||S(sFind all available InstallationCandidate for project_name

        This checks index_urls, find_links and dependency_links.
        All versions found are returned as an InstallationCandidate list.

        See _link_package_versions for details on which files are accepted
        Rrcs@s|]}t|�VqdS(N(tLink(t.0Rh((s-/usr/lib/python2.7/site-packages/pip/index.pys	<genexpr>oscs@s|]}t|�VqdS(N(R�(R�Rh((s-/usr/lib/python2.7/site-packages/pip/index.pys	<genexpr>yscs@s|]}t|�VqdS(N(R�(R�Rh((s-/usr/lib/python2.7/site-packages/pip/index.pys	<genexpr>zscs@s|]}t|�VqdS(N(R�(R�Rh((s-/usr/lib/python2.7/site-packages/pip/index.pys	<genexpr>{ss,%d location(s) to search for versions of %s:s* %scs@s|]}t|d�VqdS(s-fN(R�(R�Rh((s-/usr/lib/python2.7/site-packages/pip/index.pys	<genexpr>�ssAnalyzing links from page %sNcs@s|]}t|�VqdS(N(R�(R�Rh((s-/usr/lib/python2.7/site-packages/pip/index.pys	<genexpr>�ssdependency_links found: %ss, treversesLocal files found: %s(R�RvRDR�RKRSRTR�RXtdebugRwRtfmt_ctl_formatsRNtSearcht_package_versionst
_get_pagesRhRRaRbRoR)tsortR(R+R�tindex_locationstindex_file_loct
index_url_loctfl_file_loct
fl_url_loctdep_file_loctdep_url_loctfile_locationsR[t
url_locationsR)tcanonical_nametformatstsearchtfind_links_versionst
page_versionstpagetdependency_versionsR(t
file_versionsR|((s-/usr/lib/python2.7/site-packages/pip/index.pytfind_all_candidates`sZ	

	
	
 &)c

C@s"|j|j�}t|jjg|D]}t|j�^q%d|jrR|jnd��}g|D]!}t|j�|kre|^qe}|r�t	|d|j
�}nd}|jdk	r�t|jj�}nd}|dkr=|dkr=t
jd|djttd�|D��dt���td|��nt}	|rm|dksd|j|krmt}	n|r�|dk	r�|	r�t
jd|�nt
jd||j�dS|	r�t
jd	|djt|dt��p�d
�t�nt
jd|jdjt|dt���|jS(
s�Try to find a Link matching req

        Expects req, an InstallRequirement and upgrade, a boolean
        Returns a Link if found,
        Raises DistributionNotFound or BestVersionAlreadyInstalled otherwise
        tprereleasestkeysNCould not find a version that satisfies the requirement %s (from versions: %s)s, cs@s|]}t|j�VqdS(N(R�R((R�tc((s-/usr/lib/python2.7/site-packages/pip/index.pys	<genexpr>�ss%No matching distribution found for %ssLExisting installed version (%s) is most up-to-date and satisfies requirementsUExisting installed version (%s) satisfies requirement (most up-to-date version is %s)s=Installed version (%s) is most up-to-date (past versions: %s)tnones)Using version %s (newest of versions: %s)N(R�tnameRLt	specifiertfilterR�R(RPRBtmaxR�tsatisfied_byR'RXtcriticalRotsortedR
RgR�R�RR)(
R+treqtupgradetall_candidatesR�tcompatible_versionstapplicable_candidatestbest_candidatetinstalled_versiontbest_installed((s-/usr/lib/python2.7/site-packages/pip/index.pytfind_requirement�sd	".	
	

	cc@sct�}xS|D]K}||kr(qn|j|�|j|�}|dkrVqn|VqWdS(sp
        Yields (page, page_url) from the given locations, skipping
        locations that have errors.
        N(RLtaddt	_get_pageRB(R+RqR�tseenR)R�((s-/usr/lib/python2.7/site-packages/pip/index.pyR�s	

s-py([123]\.?[0-9]?)$cC@sqgg}}t�}xP|D]H}||kr|j|�|jrU|j|�qe|j|�qqW||S(s�
        Returns elements of links in order, non-egg links first, egg links
        second, while eliminating duplicates
        (RLR�tegg_fragmentRI(R+Rbteggstno_eggsR�R[((s-/usr/lib/python2.7/site-packages/pip/index.pyt_sort_links)s
	

	cC@sRg}xE|j|�D]4}|j||�}|dk	r|j|�qqW|S(N(R�t_link_package_versionsRBRI(R+RbR�tresultR[tv((s-/usr/lib/python2.7/site-packages/pip/index.pyR�9scC@s9||jkr5tjd||�|jj|�ndS(NsSkipping link %s; %s(RMRXR�R�(R+R[treason((s-/usr/lib/python2.7/site-packages/pip/index.pyt_log_skipped_linkAsc	C@s~d}|jr$|j}|j}nX|j�\}}|sP|j|d�dS|tkrt|j|d|�dSd|jkr�|tkr�|j|d|j�dSd|j	kr�|dkr�|j|d�dS|tkr|yt
|j�}Wn"tk
r|j|d	�dSXt
|j�|jkrP|j|d
|j�dS|j�sp|j|d�dS|j}nd|jkr�|tkr�|j|d
|j�dS|s�t||j|�}n|dkr�|j|d
|j�dS|jj|�}|rX||j� }|jd�}|tjd krX|j|d�dSntjd||�t|j||�S(s'Return an InstallationCandidate or Nones
not a fileNsunsupported archive format: %stbinarysNo binaries permitted for %stmacosx10s.zipsmacosx10 onesinvalid wheel filenameswrong project name (not %s)s%it is not compatible with this PythontsourcesNo sources permitted for %siisPython version is incorrectsFound link %s, version: %s(RBR�textRR�R	R�RtsuppliedRGRRyRRR�t	canonicalRzR(tegg_info_matchest_py_version_reR�tstarttgrouptsysRXR�R%(	R+R[R�R(tegg_infoR�R~tmatcht
py_version((s-/usr/lib/python2.7/site-packages/pip/index.pyR�Fsl		


cC@stj|d|j�S(NRR(tHTMLPagetget_pageRR(R+R[((s-/usr/lib/python2.7/site-packages/pip/index.pyR��sN(R?R@t__doc__RgRBR,RctstaticmethodRvR�R�R�R�R�R�tretcompileR�R�R�R�R�R�(((s-/usr/lib/python2.7/site-packages/pip/index.pyRbs&>	
1		G		S	c					As([a-z0-9_.]+)-([a-z0-9_.!+-]+)cC@s�|j|�}|s)tjd|�dS|dkrU|jd�}||jd�S|jd�j�}|jdd�}|j�d}|j|�r�|jd�t	|�SdSdS(sxPull the version part out of a string.

    :param egg_info: The string to parse. E.g. foo-2.1
    :param search_name: The name of the package this belongs to. None to
        infer the name. Note that this cannot unambiguously parse strings
        like foo-2-2 which might be foo, 2-2 or foo-2, 2.
    :param link: The link the string came from, for logging on failure.
    s%Could not parse version from link: %sit-t_N(
R�RXR�RBR�tindexR�treplaceRERw(R�tsearch_nameR[t_egg_info_reR�t
full_matchR�tlook_for((s-/usr/lib/python2.7/site-packages/pip/index.pyR��sR�cB@s�eZdZd
d�Zd�Zeed
d��Ze	d
d��Z
e	d��Zed��Z
ed��Zejdej�Zd	�ZRS(s'Represents one page, along with its URLcC@s�d}|rMd|krMtj|d�\}}d|krM|d}qMn||_tj|jd|dt�|_||_||_	dS(NsContent-TypetcharsettencodingtnamespaceHTMLElements(
RBtcgitparse_headertcontentRRRgR^Rhtheaders(R+R�RhR�R�tcontent_typetparams((s-/usr/lib/python2.7/site-packages/pip/index.pyR,�s			cC@s|jS(N(Rh(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyt__str__�scC@s�|dkrtd��n|j}|jdd�d}ddlm}xS|jD]H}|j�j|�rT|t	|�dkrTt
jd||�dSqTWy�|r|j}xht
D]]}|j|�r�|j|d|�}	|	j�jd	�r�Pqt
jd
||	�dSq�q�Wnt
jd|�tj|�\}}
}}}
}|dkr�tjjtj|��r�|jd
�s�|d
7}ntj|d�}t
jd|�n|j|did	d6dd6�}|j�|jjdd�}	|	j�jd	�s$t
jd
||	�dS||j|j|j�}Wn�tjk
rk}|j|||�n�tk
r�}d|}|j|||dt
j �nWtj!k
r�}|j|d||�n+tj"k
r�|j|d|�nX|SdS(Ns9get_page() missing 1 required keyword argument: 'session't#ii(t
VcsSupports+:sCannot look at %s URL %sRRs	text/htmls,Skipping page %s because of Content-Type: %ssGetting page %sR#R�s
index.htmls# file: URL is directory, getting %sR�tAcceptsmax-age=600s
Cache-ControlsContent-Typetunknowns6There was a problem confirming the ssl certificate: %stmethsconnection error: %ss	timed out(#RBRCRhtsplittpip.vcsR�tschemesR�RERwRXR�RyRR�t_get_content_typeRURVRFRGRlturllib_requestturl2pathnameturljointgettraise_for_statusR�R�Rt	HTTPErrort_handle_failRtinfotConnectionErrortTimeout(tclsR[t
skip_archivesRRRhR�RWRytbad_extR�tnetlocRGR�tquerytfragmenttresptinsttexcR�((s-/usr/lib/python2.7/site-packages/pip/index.pyR��sr	+	
!


cC@s,|dkrtj}n|d||�dS(Ns%Could not fetch URL %s: %s - skipping(RBRXR�(R[R�RhR((s-/usr/lib/python2.7/site-packages/pip/index.pyR
scC@s`tj|�\}}}}}|dkr.dS|j|dt�}|j�|jjdd�S(s;Get the Content-Type of the given url, using a HEAD requestthttpR ttallow_redirectssContent-Type(Rshttps(RUturlsplittheadR�RR�R
(RhRRRWRRGRRR((s-/usr/lib/python2.7/site-packages/pip/index.pyRs
cC@sog|jjd�D]!}|jd�dk	r|^q}|rd|djd�rd|djd�S|jSdS(Ns.//basethrefi(R^tfindallR
RBRh(R+txtbases((s-/usr/lib/python2.7/site-packages/pip/index.pytbase_url+s
!cc@snxg|jjd�D]S}|jd�r|jd�}|jtj|j|��}t||�VqqWdS(sYields all links in the pages.//aRN(R^R R
t
clean_linkRUR	R#R�(R+tanchorRRh((s-/usr/lib/python2.7/site-packages/pip/index.pyRb6ss[^a-z0-9$&+,/:;=?@.#%_\\|-]cC@s|jjd�|�S(s�Makes sure a link is fully encoded.  That is, if a ' ' shows up in
        the link, it will be rewritten to %20 (while not over-quoting
        % or other characters).cS@sdt|jd��S(Ns%%%2xi(tordR�(R�((s-/usr/lib/python2.7/site-packages/pip/index.pyR3Hs(t	_clean_retsub(R+Rh((s-/usr/lib/python2.7/site-packages/pip/index.pyR$Cs	N(R?R@R�RBR,R�tclassmethodR�R�R�R
RRR#tpropertyRbR�R�tIR'R$(((s-/usr/lib/python2.7/site-packages/pip/index.pyR��s	UR�cB@s^eZdd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d�Zd	�Ze
d
��Ze
d��Ze
d��Ze
d
��Zd�Ze
d��Ze
d��Zejd�Ze
d��Zejd�Ze
d��Zejd�Ze
d��Ze
d��Ze
d��Ze
d��Ze
d��Z RS(cC@s4|jd�rt|�}n||_||_dS(Ns\\(RERRht
comes_from(R+RhR,((s-/usr/lib/python2.7/site-packages/pip/index.pyR,Ms	cC@s.|jrd|j|jfSt|j�SdS(Ns%s (from %s)(R,RhR�(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyR�Vs	cC@sd|S(Ns	<Link %s>((R+((s-/usr/lib/python2.7/site-packages/pip/index.pyR.\scC@s#t|t�stS|j|jkS(N(R<R�R=Rh(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyR8_scC@s#t|t�stS|j|jkS(N(R<R�R=Rh(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyR;dscC@s#t|t�stS|j|jkS(N(R<R�R=Rh(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyR6iscC@s#t|t�stS|j|jkS(N(R<R�R=Rh(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyR7nscC@s#t|t�stS|j|jkS(N(R<R�R=Rh(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyR:sscC@s#t|t�stS|j|jkS(N(R<R�R=Rh(R+R5((s-/usr/lib/python2.7/site-packages/pip/index.pyR9xscC@s
t|j�S(N(R/Rh(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyR0}scC@sRtj|j�\}}}}}tj|jd��p<|}tj|�}|S(NR�(RURRhR�tbasenametrstriptunquote(R+R�RRGR�((s-/usr/lib/python2.7/site-packages/pip/index.pyRy�s!cC@stj|j�dS(Ni(RURRh(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyRW�scC@stj|j�dS(Ni(RURRh(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyR�scC@stjtj|j�d�S(Ni(RUR/RRh(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyRG�scC@sttj|jjd���S(NR�(RR�R-RGR.(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyR�scC@s|j�dS(Ni(R(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyR��scC@s=tj|j�\}}}}}tj||||df�S(N(RURRht
urlunsplitRB(R+RWRRGRR((s-/usr/lib/python2.7/site-packages/pip/index.pyturl_without_fragment�s!s[#&]egg=([^&]*)cC@s,|jj|j�}|sdS|jd�S(Ni(t_egg_fragment_reR�RhRBR�(R+R�((s-/usr/lib/python2.7/site-packages/pip/index.pyR��ss[#&]subdirectory=([^&]*)cC@s,|jj|j�}|sdS|jd�S(Ni(t_subdirectory_fragment_reR�RhRBR�(R+R�((s-/usr/lib/python2.7/site-packages/pip/index.pytsubdirectory_fragment�ss2(sha1|sha224|sha384|sha256|sha512|md5)=([a-f0-9]+)cC@s,|jj|j�}|r(|jd�SdS(Ni(t_hash_reR�RhR�RB(R+R�((s-/usr/lib/python2.7/site-packages/pip/index.pyR/�s
cC@s,|jj|j�}|r(|jd�SdS(Ni(R5R�RhR�RB(R+R�((s-/usr/lib/python2.7/site-packages/pip/index.pyt	hash_name�s
cC@s0tj|jjdd�djdd�d�S(NR�iit?(R�R-RhR(R+((s-/usr/lib/python2.7/site-packages/pip/index.pytshow_url�scC@s
|jtkS(N(R�R(R+((s-/usr/lib/python2.7/site-packages/pip/index.pyRx�scC@s*ddlm}|j|jkr&tStS(s�
        Determines if this points to an actual artifact (e.g. a tarball) or if
        it points to an "abstract" thing like a path or a VCS location.
        i(tvcs(RR9RWtall_schemesRgR�(R+R9((s-/usr/lib/python2.7/site-packages/pip/index.pytis_artifact�sN(!R?R@RBR,R�R.R8R;R6R7R:R9R0R*RyRWRRGRR�R1R�R�R2R�R3R4R5R/R6R8RxR;(((s-/usr/lib/python2.7/site-packages/pip/index.pyR�Ks8												sno_binary only_binarycC@s�|jd�}xUd|krf|j�|j�|jd�||jd�d4d|krdSqWxP|D]H}|dkr�|j�qnnt|�}|j|�|j|�qnWdS(Nt,s:all:is:none:(RtclearR�R�Rtdiscard(tvaluettargetR5tnewR�((s-/usr/lib/python2.7/site-packages/pip/index.pyR�s





cC@s�tddg�}||jkr1|jd�n]||jkrP|jd�n>d|jkro|jd�nd|jkr�|jd�nt|�S(NR�R�s:all:(RLtonly_binaryR>t	no_binaryt	frozenset(tfmt_ctlR�R�((s-/usr/lib/python2.7/site-packages/pip/index.pyR��scC@std|j|j�dS(Ns:all:(RRCRB(RE((s-/usr/lib/python2.7/site-packages/pip/index.pytfmt_ctl_no_binaryscC@s$t|�tjdtdd�dS(Nsf--no-use-wheel is deprecated and will be removed in the future.  Please use --no-binary :all: instead.t
stackleveli(RFR_R`R(RE((s-/usr/lib/python2.7/site-packages/pip/index.pytfmt_ctl_no_use_wheel	s

R�ssupplied canonical formats(MR�t
__future__RtloggingR�tcollectionsRRSR�RFR�ReR�R_tpip._vendor.six.moves.urllibRRURRt
pip.compatRt	pip.utilsRRRRR	tpip.utils.deprecationR
Rtpip.utils.loggingRtpip.exceptionsR
RRRtpip.downloadRRRRt	pip.wheelRRtpip.pep425tagsRtpip._vendorRRRtpip._vendor.packaging.versionR'tpip._vendor.packaging.utilsRtpip._vendor.requests.exceptionsRt__all__RBR�t	getLoggerR?RXtobjectR%RR�R+R�R�R�RRR�RFRHR�(((s-/usr/lib/python2.7/site-packages/pip/index.pyt<module>s^("")��-��
		
		

404 Not Found
[ LogOut ]