ó ïRec @s‚dZddlZddlZddlmZddlmZdddd d d d d gZeje ƒZ d e fd„ƒYZ de fd„ƒYZde fd„ƒYZejdƒZd„ZeZdefd„ƒYZd„Zdefd„ƒYZejdƒdfejdƒdfejdƒdfejdƒdfejdƒd fejd!ƒd fejd"ƒd#fejd$ƒd%fejd&ƒd'fejd(ƒd)ff Zejd*ƒdfejd+ƒdfejd,ƒd#fejd"ƒd#fejd-ƒdffZejd.ƒZd/„Zd0„Zejd1ejƒZid2d36d2d46d5d66d2d76d8d96dd6dd#6Zd:„Z defd;„ƒYZ!d efd<„ƒYZ"ejd=ejƒZ#d>„Z$d?„Z%d efd@„ƒYZ&d efdA„ƒYZ'dBe fdC„ƒYZ(ie(eeeƒdD6e(e e"dE„ƒdF6e(e%e'eƒdG6Z)e)dDe)dHt‚t|ƒdksVt‚dS(Ni(tstript_stringtparset_partst isinstancettupletAssertionErrortlen(tselftstparts((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__init__scCstdƒ‚dS(Nsplease implement in a subclass(tNotImplementedError(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR%scCs5t|ƒt|ƒkr1td||fƒ‚ndS(Nscannot compare %r and %r(ttypet TypeError(Rtother((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt_check_compatible(scCs|j|ƒ|j|jkS(N(RR(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__eq__,s cCs|j|ƒ S(N(R(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__ne__0scCs|j|ƒ|j|jkS(N(RR(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__lt__3s cCs|j|ƒp|j|ƒ S(N(R!R(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__gt__7scCs|j|ƒp|j|ƒS(N(R!R(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__le__:scCs|j|ƒp|j|ƒS(N(R"R(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__ge__=scCs t|jƒS(N(thashR(R((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__hash__AscCsd|jj|jfS(Ns%s('%s')(t __class__R R(R((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__repr__DscCs|jS(N(R(R((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt__str__GscCstdƒ‚dS(NsPlease implement in subclasses.(R(R((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt is_prereleaseJs(R R RRRRR R!R"R#R$R&R(R)tpropertyR*(((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR s            tMatchercBsÄeZdZid„d6d„d6d„d6d„d6d„d 6d „d 6d „d 6d„d6Zd„Zd„Zd„Zed„ƒZ d„Z d„Z d„Z d„Z d„Zd„ZRS(cCs ||kS(N((tvtctp((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pytTttcCs||kp||kS(N((R-R.R/((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR0VR1s<=cCs||kp||kS(N((R-R.R/((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR0WR1s>=cCs ||kS(N((R-R.R/((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR0XR1s==cCs ||kS(N((R-R.R/((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR0YR1s===cCs||kp||kS(N((R-R.R/((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR0[R1s~=cCs ||kS(N((R-R.R/((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR0\R1s!=cCs t|ƒS(N(R(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRascCs1|jdkrtdƒ‚n|jƒ|_}|j|ƒ}|sYtd|ƒ‚n|j|_|jjƒ|_g}|j rx•|j D]‡\}}|j dƒrë|dkrÊtd|ƒ‚n|d t }}|j|ƒn|j|ƒt }}|j |||fƒqWnt|ƒ|_dS( NsPlease specify a version classs Not valid: %rs.*s==s!=s#'.*' not allowed for %r constraintsiþÿÿÿ(s==s!=(t version_classtNonet ValueErrorRRRtnametlowertkeyt constraintstendswithtTruetFalsetappendRR(RRtrtclisttoptvntprefix((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRds(    cCs¶t|tƒr!|j|ƒ}nxŽ|jD]ƒ\}}}|jj|ƒ}t|tƒrmt||ƒ}n|s˜d||jjf}t |ƒ‚n||||ƒs+t Sq+Wt S(sÉ Check if the provided version matches the constraints. :param version: The version to match against this instance. :type version: String or :class:`Version` instance. s%r not implemented for %s( RRR4Rt _operatorstgettgetattrR'R RR=R<(Rtversiontoperatort constraintRCtftmsg((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pytmatchscCsJd}t|jƒdkrF|jdddkrF|jdd}n|S(Niis==s===(s==s===(R5RR(Rtresult((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt exact_version–s,cCsGt|ƒt|ƒks*|j|jkrCtd||fƒ‚ndS(Nscannot compare %s and %s(RR7R(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRs*cCs/|j|ƒ|j|jko.|j|jkS(N(RR9R(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR¡s cCs|j|ƒ S(N(R(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR ¥scCst|jƒt|jƒS(N(R%R9R(R((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR&©scCsd|jj|jfS(Ns%s(%r)(R'R R(R((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR(¬scCs|jS(N(R(R((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR)¯sN(R R R5R4RDRRRLR+RNRRR R&R(R)(((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR,Os(                sk^v?(\d+!)?(\d+(\.\d+)*)((a|b|c|rc)(\d+))?(\.(post)(\d+))?(\.(dev)(\d+))?(\+([a-zA-Z\d]+(\.[a-zA-Z\d]+)?))?$c CsK|jƒ}tj|ƒ}|s4td|ƒ‚n|jƒ}td„|djdƒDƒƒ}x0t|ƒdkr•|ddkr•|d }qfW|ds©d}nt|dƒ}|dd!}|d d !}|d d !}|d }|dkrÿd}n|dt|dƒf}|dkr.d}n|dt|dƒf}|dkr]d}n|dt|dƒf}|dkrŒd}nfg} xQ|jdƒD]@} | j ƒrÉdt| ƒf} n d| f} | j | ƒq¢Wt| ƒ}|s| r|rd}qd}n|s&d}n|s5d}n||||||fS(NsNot a valid version: %scss|]}t|ƒVqdS(N(tint(t.0R-((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pys ¾sit.iÿÿÿÿiiiii i i i tatzt_tfinal(NN((NN((NN(((RRiÿÿÿÿ(RS(RT(RU( RtPEP440_VERSION_RERLRtgroupsRtsplitRROR5tisdigitR>( RtmRWtnumstepochtpretposttdevtlocalRtpart((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt _pep_440_key¸sT  #%                      cBsAeZdZd„ZedddddgƒZed„ƒZRS(sIA rational version. Good: 1.2 # equivalent to "1.2.0" 1.2.0 1.2a1 1.2.3a2 1.2.3b1 1.2.3c1 1.2.3.4 TODO: fill this out Bad: 1 # minimum two numbers 1.2a # release level must have a release serial 1.2.3b cCsQt|ƒ}tj|ƒ}|jƒ}td„|djdƒDƒƒ|_|S(Ncss|]}t|ƒVqdS(N(RO(RPR-((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pys siRQ(t_normalized_keyRVRLRWRRXt_release_clause(RRRMRZRW((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR s   &RRtbR.trcR_cst‡fd†ˆjDƒƒS(Nc3s(|]}|r|dˆjkVqdS(iN(t PREREL_TAGS(RPtt(R(sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pys s(tanyR(R((RsŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR*s(R R R RtsetRgR+R*(((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRøs cCsUt|ƒ}t|ƒ}||kr(tS|j|ƒs;tSt|ƒ}||dkS(NRQ(tstrR<t startswithR=R(txtytn((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt _match_prefixs    cBseZeZidd6dd6dd6dd6dd 6d d 6d d 6dd6Zd„Zd„Zd„Zd„Zd„Z d„Z d„Z d„Z d„Z RS(t_match_compatibles~=t _match_ltR2t _match_gtR3t _match_les<=t _match_ges>=t _match_eqs==t_match_arbitrarys===t _match_nes!=cCsx|r"d|ko|jd}n|jd o:|jd}|rn|jjddƒd}|j|ƒ}n||fS(Nt+iÿÿÿÿii(RRRXR4(RRGRIRCt strip_localR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt _adjust_local6scCsj|j|||ƒ\}}||kr+tS|j}djg|D]}t|ƒ^qAƒ}t||ƒ S(NRQ(R{R=RdtjoinRkRp(RRGRIRCtrelease_clausetitpfx((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRrDs   (cCsj|j|||ƒ\}}||kr+tS|j}djg|D]}t|ƒ^qAƒ}t||ƒ S(NRQ(R{R=RdR|RkRp(RRGRIRCR}R~R((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRsLs   (cCs%|j|||ƒ\}}||kS(N(R{(RRGRIRC((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRtTscCs%|j|||ƒ\}}||kS(N(R{(RRGRIRC((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRuXscCsC|j|||ƒ\}}|s0||k}nt||ƒ}|S(N(R{Rp(RRGRIRCRM((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRv\s cCst|ƒt|ƒkS(N(Rk(RRGRIRC((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRwdscCsD|j|||ƒ\}}|s0||k}nt||ƒ }|S(N(R{Rp(RRGRIRCRM((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRxgs cCs˜|j|||ƒ\}}||kr+tS||kr;tS|j}t|ƒdkrc|d }ndjg|D]}t|ƒ^qpƒ}t||ƒS(NiiÿÿÿÿRQ(R{R<R=RdRR|RkRp(RRGRIRCR}R~R((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyRqos    ((R R RR4RDR{RrRsRtRuRvRwRxRq(((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR's&         s[.+-]$R1s^[.](\d)s0.\1s^[.-]s ^\((.*)\)$s\1s^v(ersion)?\s*(\d+)s\2s^r(ev)?\s*(\d+)s[.]{2,}RQs\b(alfa|apha)\btalphas\b(pre-alpha|prealpha)\bs pre.alphas \(beta\)$tbetas ^[:~._+-]+s [,*")([\]]s[~:+_ -]s\.$s (\d+(\.\d+)*)c Csé|jƒjƒ}x&tD]\}}|j||ƒ}qW|sJd}ntj|ƒ}|snd}|}nû|jƒdjdƒ}g|D]}t|ƒ^qŽ}x#t |ƒdkrË|j dƒq©Wt |ƒdkrñ||j ƒ}nDdj g|dD]}t |ƒ^qƒ||j ƒ}|d }dj g|D]}t |ƒ^qBƒ}|jƒ}|r›x)tD]\}}|j||ƒ}qvWn|sª|}n&d|kr¼dnd}|||}t|ƒsåd}n|S( s€ Try to suggest a semantic form for a version for which _suggest_normalized_version couldn't come up with anything. s0.0.0iRQiR_t-RyN(RR8t _REPLACEMENTStsubt_NUMERIC_PREFIXRLRWRXRORR>tendR|Rkt_SUFFIX_REPLACEMENTSt is_semverR5( RRMtpattreplRZRCtsuffixR~tsep((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt_suggest_semantic_version–s:  : (    cCs yt|ƒ|SWntk r%nX|jƒ}xSd2d3d4d5d6d7d8d9d:d;d<d=d>d?d@fD]\}}|j||ƒ}qfWtjdd|ƒ}tjdd|ƒ}tjdd|ƒ}tjdd|ƒ}tjdd|ƒ}|jdƒr |d }ntjd!d|ƒ}tjd"d#|ƒ}tjd$d%|ƒ}tjd&d|ƒ}tjd'd(|ƒ}tjd)d(|ƒ}tjd*d |ƒ}tjd+d,|ƒ}tjd-d%|ƒ}tjd.d/|ƒ}tjd0d1|ƒ}yt|ƒWntk rdA}nX|S(BsèSuggest a normalized version close to the given version string. If you have a version string that isn't rational (i.e. NormalizedVersion doesn't like it) then you might be able to get an equivalent (or close) rational version from this function. This does a number of simple normalizations to the given string, based on observation of versions currently in use on PyPI. Given a dump of those version during PyCon 2009, 4287 of them: - 2312 (53.93%) match NormalizedVersion without change with the automatic suggestion - 3474 (81.04%) match when using this suggestion method @param s {str} An irrational version string. @returns A rational version string, or None, if couldn't determine one. s-alphaRRs-betaReR€RRfR.s-finalR1s-pres-releases.releases-stableRyRQRTt s.finalRUspre$tpre0sdev$tdev0s([abc]|rc)[\-\.](\d+)$s\1\2s[\-\.](dev)[\-\.]?r?(\d+)$s.\1\2s[.~]?([abc])\.?s\1R-is\b0+(\d+)(?!\d)s (\d+[abc])$s\g<1>0s\.?(dev-r|dev\.r)\.?(\d+)$s.dev\2s-(a|b|c)(\d+)$s[\.\-](dev|devel)$s.dev0s(?![\.\-])dev$s(final|stable)$s\.?(r|-|-r)\.?(\d+)$s.post\2s\.?(dev|git|bzr)\.?(\d+)$s\.?(pre|preview|-c)(\d+)$sc\g<2>sp(\d+)$s.post\1(s-alphaRR(s-betaRe(R€RR(RRe(RfR.(s-finalR1(s-preR.(s-releaseR1(s.releaseR1(s-stableR1(RyRQ(RTRQ(RŽR1(s.finalR1(RUR1N(RcRR8treplacetreR„RlR5(RtrstorigRŠ((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt_suggest_normalized_versionÄsH           s([a-z]+|\d+|[\.-])R.R]tpreviewsfinal-R‚Rft@R_cCs¬d„}g}x||ƒD]‚}|jdƒr‘|dkrgx'|rc|ddkrc|jƒq@Wnx'|r|ddkr|jƒqjWn|j|ƒqWt|ƒS(NcSs›g}xtj|jƒƒD]j}tj||ƒ}|rd|d koUdknrl|jdƒ}n d|}|j|ƒqqW|jdƒ|S(Nt0it9it*s*final(t _VERSION_PARTRXR8t_VERSION_REPLACEREtzfillR>(RRMR/((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt get_partsCs   Ršs*finaliÿÿÿÿs*final-t00000000(RltpopR>R(RRžRMR/((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyt _legacy_keyBs  cBs eZd„Zed„ƒZRS(cCs t|ƒS(N(R¡(RR((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR]scCsRt}xE|jD]:}t|tƒr|jdƒr|dkrt}PqqW|S(NRšs*final(R=RRRRlR<(RRMRm((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR*`s (R R RR+R*(((sŠ/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/distlib/version.pyR\s cBs?eZeZeejƒZded s€   1d =$ W  . r       #