????

Your IP : 216.73.216.152


Current Path : /lib/python2.7/site-packages/pip/_vendor/packaging/
Upload File :
Current File : //lib/python2.7/site-packages/pip/_vendor/packaging/version.pyc

�
}�\]c@`snddlmZmZmZddlZddlZddlZddlmZddddd	gZ	ej
d
ddd
dddg�Zd�Zde
fd��YZdefd��YZdefd��YZejdej�Zidd6dd6dd6dd6dd
6Zd�Zd�ZdZdefd ��YZd!�Zejd"�Zd#�Zd$�ZdS(%i(tabsolute_importtdivisiontprint_functionNi(tInfinitytparsetVersiont
LegacyVersiontInvalidVersiontVERSION_PATTERNt_VersiontepochtreleasetdevtpretposttlocalcC`s-yt|�SWntk
r(t|�SXdS(s�
    Parse the given version string and return either a :class:`Version` object
    or a :class:`LegacyVersion` object depending on if the given version is
    a valid PEP 440 version or a legacy version.
    N(RRR(tversion((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyRs
cB`seZdZRS(sF
    An invalid version was found, users should refer to PEP 440.
    (t__name__t
__module__t__doc__(((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR!st_BaseVersioncB`sPeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	RS(cC`s
t|j�S(N(thasht_key(tself((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__hash__(scC`s|j|d��S(NcS`s
||kS(N((tsto((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt<lambda>,s(t_compare(Rtother((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__lt__+scC`s|j|d��S(NcS`s
||kS(N((RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR/s(R(RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__le__.scC`s|j|d��S(NcS`s
||kS(N((RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR2s(R(RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__eq__1scC`s|j|d��S(NcS`s
||kS(N((RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR5s(R(RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__ge__4scC`s|j|d��S(NcS`s
||kS(N((RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR8s(R(RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__gt__7scC`s|j|d��S(NcS`s
||kS(N((RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR;s(R(RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__ne__:scC`s&t|t�stS||j|j�S(N(t
isinstanceRtNotImplementedR(RRtmethod((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR=s(
RRRRRR R!R"R#R(((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR's							cB`s�eZd�Zd�Zd�Zed��Zed��Zed��Zed��Z	ed��Z
ed��Zed	��Zed
��Z
ed��Zed��Zed
��ZRS(cC`s%t|�|_t|j�|_dS(N(tstrt_versiont_legacy_cmpkeyR(RR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__init__EscC`s|jS(N(R((R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__str__IscC`sdjtt|���S(Ns<LegacyVersion({0})>(tformattreprR'(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt__repr__LscC`s|jS(N(R((R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pytpublicOscC`s|jS(N(R((R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pytbase_versionSscC`sdS(Ni����((R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR
WscC`sdS(N(tNone(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR[scC`sdS(N(R1(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR
_scC`sdS(N(R1(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyRcscC`sdS(N(R1(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyRgscC`sdS(N(R1(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyRkscC`stS(N(tFalse(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt
is_prereleaseoscC`stS(N(R2(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pytis_postreleasesscC`stS(N(R2(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt
is_devreleasews(RRR*R+R.tpropertyR/R0R
RR
RRRR3R4R5(((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyRDs			s(\d+ | [a-z]+ | \.| -)tctpreviewsfinal-t-trct@cc`sxxltj|�D][}tj||�}|s|dkrAqn|d dkrb|jd�Vqd|VqWdVdS(Nt.it
0123456789it*s*final(t_legacy_version_component_retsplitt_legacy_version_replacement_maptgettzfill(Rtpart((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt_parse_version_parts�s
cC`s�d}g}x�t|j��D]�}|jd�r�|dkrjx'|rf|ddkrf|j�qCWnx'|r�|ddkr�|j�qmWn|j|�qWt|�}||fS(Ni����R>s*finals*final-t00000000(REtlowert
startswithtpoptappendttuple(RR
tpartsRD((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR)�ss�
    v?
    (?:
        (?:(?P<epoch>[0-9]+)!)?                           # epoch
        (?P<release>[0-9]+(?:\.[0-9]+)*)                  # release segment
        (?P<pre>                                          # pre-release
            [-_\.]?
            (?P<pre_l>(a|b|c|rc|alpha|beta|pre|preview))
            [-_\.]?
            (?P<pre_n>[0-9]+)?
        )?
        (?P<post>                                         # post release
            (?:-(?P<post_n1>[0-9]+))
            |
            (?:
                [-_\.]?
                (?P<post_l>post|rev|r)
                [-_\.]?
                (?P<post_n2>[0-9]+)?
            )
        )?
        (?P<dev>                                          # dev release
            [-_\.]?
            (?P<dev_l>dev)
            [-_\.]?
            (?P<dev_n>[0-9]+)?
        )?
    )
    (?:\+(?P<local>[a-z0-9]+(?:[-_\.][a-z0-9]+)*))?       # local version
cB`s�eZejdedejejB�Zd�Zd�Z	d�Z
ed��Zed��Z
ed��Zed��Zed	��Zed
��Zed��Zed��Zed
��Zed��Zed��ZRS(s^\s*s\s*$cC`s[|jj|�}|s0tdj|���ntd|jd�rZt|jd��nddtd�|jd�jd�D��dt	|jd�|jd	��d
t	|jd�|jd�p�|jd
��dt	|jd�|jd��dt
|jd���|_t|jj
|jj|jj|jj|jj|jj�|_dS(NsInvalid version: '{0}'R
iRcs`s|]}t|�VqdS(N(tint(t.0ti((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pys	<genexpr>�sR<R
tpre_ltpre_nRtpost_ltpost_n1tpost_n2Rtdev_ltdev_nR(t_regextsearchRR,R	tgroupRMRKR@t_parse_letter_versiont_parse_local_versionR(t_cmpkeyR
RR
RRRR(RRtmatch((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR*�s$*(!-!					cC`sdjtt|���S(Ns<Version({0})>(R,R-R'(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR.�scC`sg}|jdkr1|jdj|j��n|jdjd�|jD���|jdk	r�|jdjd�|jD���n|jdk	r�|jdj|j��n|jdk	r�|jdj|j��n|j	dk	r
|jd	j|j	��ndj|�S(
Nis{0}!R<cs`s|]}t|�VqdS(N(R'(RNtx((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pys	<genexpr>stcs`s|]}t|�VqdS(N(R'(RNR^((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pys	<genexpr>ss.post{0}s.dev{0}s+{0}(
R
RJR,tjoinRR
R1RRR(RRL((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR+�s#&cC`s
|jjS(N(R(R
(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR
scC`s
|jjS(N(R(R(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyRscC`s
|jjS(N(R(R
(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR
scC`s|jjr|jjdSdS(Ni(R(RR1(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR scC`s|jjr|jjdSdS(Ni(R(RR1(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR$scC`s1|jjr)djd�|jjD��SdSdS(NR<cs`s|]}t|�VqdS(N(R'(RNR^((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pys	<genexpr>+s(R(RR`R1(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR(scC`st|�jdd�dS(Nt+ii(R'R@(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR//scC`sag}|jdkr1|jdj|j��n|jdjd�|jD���dj|�S(Nis{0}!R<cs`s|]}t|�VqdS(N(R'(RNR^((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pys	<genexpr><sR_(R
RJR,R`R(RRL((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR03s
#cC`s|jdk	p|jdk	S(N(RR1R
(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR3@scC`s
|jdk	S(N(RR1(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR4DscC`s
|jdk	S(N(RR1(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR5Hs(RRtretcompileRtVERBOSEt
IGNORECASERWR*R.R+R6R
RR
RRRR/R0R3R4R5(((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR�s$			
cC`s�|r�|dkrd}n|j�}|dkr<d}n?|dkrQd}n*|d
krfd	}n|dkr{d}n|t|�fS|r�|r�d}|t|�fSdS(NitalphatatbetatbR7R
R8R:trevtrR(R7sprespreview(srevRk(R1RGRM(tlettertnumber((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyRZMs 					
s[\._-]cC`s-|dk	r)td�tj|�D��SdS(sR
    Takes a string like abc.1.twelve and turns it into ("abc", 1, "twelve").
    cs`s3|])}|j�s!|j�n	t|�VqdS(N(tisdigitRGRM(RNRD((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pys	<genexpr>usN(R1RKt_local_version_separatorsR@(R((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR[oscC`s�ttttjd�t|�����}|dkr[|dkr[|dk	r[t}n|dkrpt}n|dkr�t}n|dkr�t}n|dkr�t}ntd�|D��}||||||fS(NcS`s
|dkS(Ni((R^((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR�scs`s7|]-}t|t�r$|dfn
t|fVqdS(R_N(R$RMR(RNRO((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pys	<genexpr>�s(RKtreversedtlistt	itertoolst	dropwhileR1R(R
RR
RRR((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyR\zs*$
	
	
	(t
__future__RRRtcollectionsRrRbt_structuresRt__all__t
namedtupleR	Rt
ValueErrorRtobjectRRRcRdR?RARER)RRRZRoR[R\(((s</tmp/pip-install-ewDPok/pip/pip/_vendor/packaging/version.pyt<module>s4	8
		:x