߆Xj}(dZddlmZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl m Z m Z ddlmZmZmZddlmZmZddlmZddlmZdd lmZmZmZdd lmZdd lm Z er(dd l!m"Z"dd l#m$Z$m%Z%m&Z&ddl'm(Z(ddl)m*Z*ddl+m,Z,ddl-m.Z.ej^e0Z1djdZ2 dkdZ3Gdde4Z5Gdde5Z6Gdde5Z7Gdde5Z8Gdde8Z9Gdde6Z:Gd d!e6Z;Gd"d#e5Z<Gd$d%e8Z=Gd&d'e8Z>Gd(d)e8Z?Gd*d+e8Z@Gd,d-e5ZAGd.d/e5ZBGd0d1e5ZCGd2d3e5ZDGd4d5e5ZEGd6d7e8ZFGd8d9e8ZGGd:d;e8ZHGd<d=e8ZIGd>d?e8ZJGd@dAe6e8ZKGdBdCe6e8ZLGdDdEe8ZMGdFdGe8ZNGdHdIeNZOGdJdKeNZPGdLdMeNZQGdNdOeNZRGdPdQeNZSGdRdSe8ZTGdTdUe7ZUdVe jdWZWGdXdYe6ZXGdZd[e6ZYGd\d]e6ZZGd^d_e6Z[Gd`dae6Z\Gdbdce6Z]Gdddee6Z^Gdfdge6Z_Gdhdie6Z`y)lzExceptions used throughout package. This module MUST NOT try to import from anything within `pip._internal` to operate. This is expected to be importable from any/all files within the subpackage and, thus, should not depend on them. ) annotationsN)IterableIterator)chaingroupbyrepeat) TYPE_CHECKINGLiteral)InvalidRequirement)InvalidVersion)ConsoleConsoleOptions RenderResult)escape)Text)_Hash)PreparedRequestRequestResponse)BaseDistribution)Link) _FileDownload)InstallRequirementc2tjd|duS)Nz^[a-z]+(-[a-z]+)*$)rematch)ss l/mnt/ssd/data/Dropbox/adrian/vault-secondbrain/venv/lib/python3.12/site-packages/pip/_internal/exceptions.py_is_kebab_caser,s 88)1 -T 99ct|tr|}n|j|}|j|d|jd|dj|j dzS)Nignore)overflow T) allow_blank) isinstancer render_strjoinsplit)rconsoleprefixindenttexts r_prefix_with_indentr.0ss!T!!!$   fx  87;M;M VH ) hasattrr:rr<messagecontextr= hint_stmtr>super__init__ __class__r2) selfr<r:rCrDrEr=r>rHs rrGzDiagnosticPipError.__init__Rs  4- N/N N-Ii(O*OO( "  ""  1T^^445R7GqIJr c d|jjd|jd|jd|jd|j d|j d S)Nr@z (reference=z , message=z , context=z , note_stmt=z , hint_stmt=z)>)rHr2r:rCrDr=rErIs r__repr__zDiagnosticPipError.__repr__psl''()*+||&'||&'*+*    r c#K|jdk(rdnd}d|d|jd|jdd|jso|jGt |j |d|d d|d  t |j|d|d d|d  nHt |j |dd n,|j |jd|j|j |jd|j t |j |dd |jt |j|dd |jdd|jyyw)Nr;redyellow[z bold]z [/]: [bold]z[/]u]×[/] u]│[/] )r+r,u ]╰─>[/] z] [/] u [red]×[/] z z[magenta bold]note[/]: z z[cyan bold]hint[/]: zLink: ) r<r: ascii_onlyrDr.rCr=rEr>)rIr*optionscolours r__rich_console__z#DiagnosticPipError.__rich_console__{s ))w.H& {+dnn5ESII!!||')LLvhg.vhh/  *LLvhl3vhh/ *LL( ,, ||'ll" >> %)CH >> %%0   >> %%-   99 H499+& & !sE.E0)r<zLiteral['error', 'warning']r: str | NonerCz str | TextrDstr | Text | NonerErWr=rWr>rVreturnNonerXr9)r*r rSrrXr) r2r3r4r5__annotations__rGrLrU __classcell__rHs@rr8r8EsN -4 $(,K*K K  K # K%K%KK K<  :':' :'  :'r r8ceZdZdZy)ConfigurationErrorz"General exception in configurationNr1r6r rr_r_s,r r_ceZdZdZy)InstallationErrorz%General exception during installationNr1r6r rraras/r rac4eZdZdZ dfd ZxZS)FailedToPrepareCandidatea Raised when we fail to prepare a candidate (i.e. fetch and generate metadata). This is intentionally not a diagnostic error, since the output will be presented above this error, when this occurs. This should instead present information to the user. cvt|d|d|j||_||_||_y)NzFailed to build 'z' when )rFrGlower package_namerequirement_chain failed_step)rIrfrgrhrHs rrGz!FailedToPrepareCandidate.__init__sB ,\N'+BSBSBUAVWX(!2&r )rfr9rgr9rhr9rXrY)r2r3r4r5rGr\r]s@rrcrcs2'"'7:'IL' ''r rcc(eZdZdZdZdfd ZxZS)MissingPyProjectBuildRequireszNRaised when pyproject.toml has `build-system`, but no `build-system.requires`.z'missing-pyproject-build-system-requirescht|dt|tddtdy)NCan not process zrThis package has an invalid pyproject.toml file. The [build-system] table is missing the mandatory `requires` key.;This is an issue with the package mentioned above, not pip.+See PEP 518 for the detailed specification.rCrDr=rErFrGrr)rIpackagerHs rrGz&MissingPyProjectBuildRequires.__init__sA &vg&78TTHI  r )rqr9rXrYr2r3r4r5r:rGr\r]s@rrjrjsX9I   r rjc(eZdZdZdZdfd ZxZS)InvalidPyProjectBuildRequiresz>Raised when pyproject.toml an invalid `build-system.requires`.z'invalid-pyproject-build-system-requirescnt|dt|td|dtdy)NrlzKThis package has an invalid `build-system.requires` key in pyproject.toml. rmrnrorp)rIrqreasonrHs rrGz&InvalidPyProjectBuildRequires.__init__sJ &vg&78$$*8-THI  r )rqr9rvr9rXrYrrr]s@rrtrtsH9I   r rtc,eZdZdZ ddZddZy)NoneMetadataErrora4Raised when accessing a Distribution's "METADATA" or "PKG-INFO". This signifies an inconsistency, when the Distribution claims to have the metadata file (if not, raise ``FileNotFoundError`` instead), but is not actually able to produce its content. This may be due to permission errors. c ||_||_y)z :param dist: A Distribution object. :param metadata_name: The name of the metadata being accessed (can be "METADATA" or "PKG-INFO"). N)dist metadata_name)rIrzr{s rrGzNoneMetadataError.__init__s *r c:d|jd|jS)NzNone z" metadata found for distribution: )r{rzrKs r__str__zNoneMetadataError.__str__ s#t))**LTYYKXXr N)rzrr{r9rXrYrZr2r3r4r5rGr}r6r rrxrxs. + + +  +Yr rxceZdZdZddZy)UserInstallationInvalidzBA --user install is requested on an environment without user site.cy)Nz$User base directory is not specifiedr6rKs rr}zUserInstallationInvalid.__str__s5r NrZ)r2r3r4r5r}r6r rrrs L6r rceZdZddZy)InvalidSchemeCombinationcxdjd|jddD}d|d|jddS)N, c32K|]}t|ywN)r9).0as r z3InvalidSchemeCombination.__str__..s:a3q6:sz Cannot set z and z together)r(args)rIbefores rr}z InvalidSchemeCombination.__str__s=:499Sb>::VHE$))B- BBr NrZ)r2r3r4r}r6r rrrsCr rceZdZdZy)DistributionNotFoundzCRaised when a distribution cannot be found to satisfy a requirementNr1r6r rrrsMr rceZdZdZy)RequirementsFileParseErrorzDRaised when a general error occurs parsing a requirements file line.Nr1r6r rrr#sNr rceZdZdZy)BestVersionAlreadyInstalledzNRaised when the most up-to-date version of a package is already installed.Nr1r6r rrr'sr rceZdZdZy) BadCommandz0Raised when virtualenv or a command is not foundNr1r6r rrr,s:r rceZdZdZy) CommandErrorz7Raised when there is an error in command-line argumentsNr1r6r rrr0sAr rceZdZdZy)PreviousBuildDirErrorz:Raised when there's a previous conflicting build directoryNr1r6r rrr4sDr rc@eZdZdZ d dfd ZddZxZS)NetworkConnectionErrorzHTTP connection errorc||_||_||_|j3|js't|dr|jj|_t||||y)zc Initialize NetworkConnectionError with `request` and `response` objects. Nrequest)responser error_msgrBrFrG)rIrrrrHs rrGzNetworkConnectionError.__init__;sW!  " MM %LL),==00DL Hg6r c,t|jSr)r9rrKs rr}zNetworkConnectionError.__str__Ps4>>""r )NN)rr9rzResponse | Nonerz Request | PreparedRequest | NonerXrYrZr2r3r4r5rGr}r\r]s@rrr8s> %)48 77"72 7  7*#r rceZdZdZy)InvalidWheelFilenamezInvalid wheel filename.Nr1r6r rrrTs!r rceZdZdZy)UnsupportedWheelzUnsupported wheel.Nr1r6r rrrXsr rc eZdZdZddZddZy) InvalidWheelzInvalid (e.g. corrupt) wheel.c ||_||_yr)locationname)rIrrs rrGzInvalidWheel.__init___s   r c<d|jd|jdS)NzWheel 'z ' located at z is invalid.)rrrKs rr}zInvalidWheel.__str__cs =|LLr N)rr9rr9rZr~r6r rrr\s'Mr rc4eZdZdZ ddZddZy)MetadataInconsistentaBuilt metadata contains inconsistent information. This is raised when the metadata contains values (e.g. name and version) that do not match the information previously obtained from sdist filename, user-supplied ``#egg=`` value, or an install requirement name. c<||_||_||_||_yrireqfieldf_valm_val)rIrrrrs rrGzMetadataInconsistent.__init__os     r cnd|jd|jd|jd|jS)N Requested z has inconsistent z : expected z, but metadata has rrKs rr}zMetadataInconsistent.__str__ws= #5djj\B ~%8 H r N) rrrr9rr9rr9rXrYrZr~r6r rrrgs9&/2;>GJ  r rc eZdZdZddZddZy)MetadataInvalidzMetadata is invalid.c ||_||_yrrr;)rIrr;s rrGzMetadataInvalid.__init__s  r c:d|jd|jS)Nrz has invalid metadata: rrKs rr}zMetadataInvalid.__str__sDII;&=djj\JJr N)rrr;r9rXrYrZr~r6r rrr~sKr rc@eZdZdZdZ dfd ZddZxZS)InstallationSubprocessErrorzA subprocess call failed.zsubprocess-exited-with-errorc(| td}nStjdt|dtdj|ztjdz}t|dt |d||dd ||_||_y) NzNo available output.z[red][z lines of output][/] rQz[red]\[end of output][/]z[green]z)[/] did not run successfully. exit code: zNThis error originates from a subprocess, and is likely not a problem with pip.rCrDrEr=) r from_markuplenr(rFrGrcommand_description exit_code)rIrr output_lines output_promptrHs rrGz$InstallationSubprocessError.__init__s   !78M  6#l*;)<?@  &!4567'[*"$  $7 "r c8|jd|jS)Nz exited with )rrrKs rr}z#InstallationSubprocessError.__str__s**+=8HIIr )rr9rintrlist[str] | NonerXrYrZ)r2r3r4r5r:rGr}r\r]s@rrrs?#.I#!# # ' #  #@Jr rc4eZdZdZ dfd ZddZxZS)MetadataGenerationFailedzmetadata-generation-failedc>t|dt|ddy)Nz4Encountered error while generating package metadata.zSee above for details.rmr)rFrGr)rIpackage_detailsrHs rrGz!MetadataGenerationFailed.__init__s( J?+.S  r cy)Nzmetadata generation failedr6rKs rr}z MetadataGenerationFailed.__str__s+r )rr9rXrYrZ)r2r3r4r:rGr}r\r]s@rrrs&,I       ,r rc0eZdZdZddZddZd dZd dZy) HashErrorsz:Multiple HashError instances rolled into one for reportingcg|_yr)errorsrKs rrGzHashErrors.__init__s ') r c:|jj|yr)rappend)rIr;s rrzHashErrors.appends 5!r c g}|jjdt|jdD]8\}}|j|j|j d|D:|rdj |Sy)Nc|jSr)orderes rz$HashErrors.__str__..s qwwr )keyc|jSrr]rs rrz$HashErrors.__str__..s r c3<K|]}|jywr)body)rrs rrz%HashErrors.__str__..s9a9sr$rQ)rsortrrheadextendr()rIlinescls errors_of_clss rr}zHashErrors.__str__sv ./")$++7L"M : C LL " LL9=9 9 : 99U# #r c,t|jSr)boolrrKs r__bool__zHashErrors.__bool__sDKK  r NrXrY)r; HashErrorrXrYrZ)rXr)r2r3r4r5rGrr}rr6r rrrsD*"!r rcJeZdZUdZdZded<dZdZded<d d Zd d Z d d Z y) ra A failure to verify a package against known-good hashes :cvar order: An int sorting hash exception classes by difficulty of recovery (lower being harder), so the user doesn't bother fretting about unpinned packages when he has deeper issues, like VCS dependencies, to deal with. Also keeps error reports in a deterministic order. :cvar head: A section heading for display above potentially many exceptions of this kind :ivar req: The InstallRequirement that triggered this error. This is pasted on after the exception is instantiated, because it's not typically available earlier. NInstallRequirement | NonereqrQrrrc(d|jS)a=Return a summary of me for display under the heading. This default implementation simply prints a description of the triggering requirement. :param req: The InstallRequirement that provoked this error, with its link already populated by the resolver's _populate_link().  )_requirement_namerKs rrzHashError.bodysd,,./00r c@|jd|jS)Nr$)rrrKs rr}zHashError.__str__s))Btyy{m,,r cH|jrt|jSdS)zReturn a description of the requirement that triggered me. This default implementation returns long description of the req, with line numbers unknown package)rr9rKs rrzHashError._requirement_names!%s488}?.??r rZ) r2r3r4r5rr[rrrr}rr6r rrrs2 &*C ") DE3O 1-@r rceZdZdZdZdZy)VcsHashUnsupporteduA hash was provided for a version-control-system-based requirement, but we don't have a method for hashing those.rzlCan't verify hashes for these requirements because we don't have a way to hash version control repositories:Nr2r3r4r5rrr6r rrr s1 E ; r rceZdZdZdZdZy)DirectoryUrlHashUnsupportedrzUCan't verify hashes for these file:// requirements because they point to directories:Nrr6r rrrs1 E  r rc(eZdZdZdZdZddZddZy) HashMissingz2A hash was needed for a requirement but is absent.awHashes are required in --require-hashes mode, but they are missing from some requirements. Here is a list of those requirements along with the hashes their downloaded archives actually had. Add lines like these to your requirements files to prevent tampering. (If you did not enable --require-hashes manually, note that it turns on automatically when any package has a hash.)c||_y)zq :param gotten_hash: The hash of the (possibly malicious) archive we just downloaded N) gotten_hash)rIrs rrGzHashMissing.__init__.s 'r cddlm}d}|jrC|jjr|jjnt |jdd}dj |xsd||jS)Nr) FAVORITE_HASHrz {} --hash={}:{}r)pip._internal.utils.hashesrr is_direct original_linkgetattrformatr)rIrrqs rrzHashMissing.body5sn< 88 88%%&&TXXud3 %++  ((-9I9I  r N)rr9rXrYrZ)r2r3r4r5rrrGrr6r rrr s< E  ' r rceZdZdZdZdZy) HashUnpinnedzPA requirement had a hash specified but was not pinned to a specific version.zaIn --require-hashes mode, all requirements must have their versions pinned with ==. These do not:Nrr6r rrrJs E 1 r rc0eZdZdZdZdZddZd dZd dZy) HashMismatchz Distribution file hash values don't match. :ivar package_name: The name of the package that triggered the hash mismatch. Feel free to write to this after the exception is raise to improve its error message. zTHESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE. If you have updated the package versions, please update the hashes. Otherwise, examine the package contents carefully; someone may have tampered with them.c ||_||_y)z :param allowed: A dict of algorithm names pointing to lists of allowed hex digests :param gots: A dict of algorithm names pointing to hashes we actually got from the files under suspicion N)allowedgots)rIr r s rrGzHashMismatch.__init__gs  r cJd|jd|jS)Nr: )r_hash_comparisonrKs rrzHashMismatch.bodyqs)d,,./s43H3H3J2KLLr cdd}g}|jjD]W\}}|||jfd|D|jd|j|j dYdj |S)aE Return a comparison of actual and expected hash values. Example:: Expected sha256 abcdeabcdeabcdeabcdeabcdeabcdeabcdeabcdeabcde or 123451234512345123451234512345123451234512345 Got bcdefbcdefbcdefbcdefbcdefbcdefbcdefbcdefbcdef c.t|gtdS)Nz or)rr) hash_names r hash_then_orz3HashMismatch._hash_comparison..hash_then_ors)fX&67 7r c3@K|]}dtd|yw)z Expected  N)next)rrr+s rrz0HashMismatch._hash_comparison..s#Ua-d6l^1QC@Usz Got r$)rr9rXz chain[str])r itemsrrr  hexdigestr()rIrrr expectedsr+s @rrzHashMismatch._hash_comparisonts 8 $(LL$6$6$8  Iy!),F LLU9U U LL*499Y+?+I+I+K*LBO   yyr N)r zdict[str, list[str]]r zdict[str, _Hash]rXrYrZ) r2r3r4r5rrrGrrr6r rrrUs( E / M r rceZdZdZy)UnsupportedPythonVersionzMUnsupported python version according to Requires-Python package metadata.Nr1r6r rrrsr rcBeZdZdZ d dfd ZddZxZS)!ConfigurationFileCouldNotBeLoadedz8When there are errors while loading a configuration filecNt||||_||_||_yr)rFrGrvfnamer;)rIrvrr;rHs rrGz*ConfigurationFileCouldNotBeLoaded.__init__s'    r c|jd|jd}n|jJd|jd}d|j|S)Nz in .z. r$zConfiguration file )rr;rv)rI message_parts rr}z)ConfigurationFileCouldNotBeLoaded.__str__sU :: !!$**Q/L::) ))  B/L$T[[M,@@r )zcould not be loadedNN)rvr9rrVr;zconfigparser.Error | NonerXrYrZrr]s@rrrsBB, +/   )   Ar rzThe Python environment under z is managed externally, and may not be manipulated by the user. Please use specific tooling from the distributor of the Python installation to interact with this environment instead. cTeZdZdZdZdfd ZeddZe ddZ xZ S) ExternallyManagedEnvironmentaPThe current environment is externally managed. This is raised when the current environment is externally managed, as defined by `PEP 668`_. The ``EXTERNALLY-MANAGED`` configuration is checked and displayed when the error is bubbled up to the user. :param error: The error message read from ``EXTERNALLY-MANAGED``. zexternally-managed-environmentcx|tt}n t|}t| d|dtdy)Nz&This environment is externally managedzIf you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.z+See PEP 668 for the detailed specification.ro)r!_DEFAULT_EXTERNALLY_MANAGED_ERRORrFrG)rIr;rDrHs rrGz%ExternallyManagedEnvironment.__init__sE =<=G5kG <J HI  r c#K tj}tj|\}}|-d|dD]!}|j |\}}}|sd|#dy#t$rd}YAwxYww)NzError-)-_Error)locale LC_MESSAGES getlocaleAttributeError partition)categorylangr)seprfounds r#_iter_externally_managed_error_keysz@ExternallyManagedEnvironment._iter_externally_managed_error_keyss 1))H&&x0GD!  4&/ !! (#'>>##6 qvh''  (   $#D $s(A1A A A1 A.+A1-A..A1ctjd} |j|d|d}|jD]1}t j t 5|||cdddcS |dS#1swYFxYw#t $rYtttjf$r6ddl m }tj|}tjd||YqwxYw) N) interpolationzutf-8)encodingzexternally-managedr)VERBOSEzFailed to read %s)exc_info) configparser ConfigParserreadr4 contextlibsuppressKeyErrorOSErrorUnicodeDecodeError ParsingErrorpip._internal.utils._logr8logger isEnabledForwarning)rconfigparsersectionrr8r9s r from_configz(ExternallyManagedEnvironment.from_configs **> K KKK 112G>>@ -((2-ws|,-- -4y--  +\-F-FG K 8**73H NN.N J  Ks7AB  A=' B 3B =B B C'AC'&C')r;rVrXrY)rXz Iterator[str])rGzpathlib.Path | strrXr$) r2r3r4r5r:rG staticmethodr4 classmethodrJr\r]s@rr$r$sN1I "*" &r r$c$eZdZdZdfd ZxZS)UninstallMissingRecordzuninstall-no-record-filec|j}|r|dk(r7|jd|j}tjdd|df}ntd|d}t |td|d |jd | y) Npipz==z,You might be able to recover from this via: z)pip install --ignore-installed --no-deps greenzThe package was installed by z3. You should check if it can uninstall the package.Cannot uninstall zAThe package's contents are unknown: no RECORD file was found for r!rCrDrE) installerraw_nameversionrassemblerFrG)rI distributionrTdephintrHs rrGzUninstallMissingRecord.__init__s ** I.!**+2l.B.B-CDC==>Consider using --resume-retries to enable download resumption.zDownload failed z(because not enough bytes were received ()zURL: z4This is an issue with network connectivity, not pip.r) pip._internal.utils.miscrjsizebytes_received reattemptsrrFrGr> redacted_url)rIdownloadrjdownload_status retry_statusrZrCrHs rrGz IncompleteDownloadError.__init__Is8}}(((82234Ak(--6P5Q R    #H$7$7!$;#=2.0.0' instead of just 'package'. z_https://pip.pypa.io/en/stable/topics/dependency-resolution/#handling-resolution-too-deep-errors)rCrDrEr>)rFrG)rIrHs rrGzResolutionTooDeepError.__init__js) B?Ls  r rrrr]s@rrvrvesR%I   r rvc$eZdZdZdfd ZxZS)InstallWheelBuildErrorzfailed-wheel-build-for-installcVt|ddjd|Ddy)NzIFailed to build installable wheels for some pyproject.toml based projectsrc34K|]}|jywr)r)rrs rrz2InstallWheelBuildError.__init__..s5aff5srS)rFrGr()rIfailedrHs rrGzInstallWheelBuildError.__init__|s1 0II5f55  r )r}zlist[InstallRequirement]rXrYr\r]s@rryryys0I  r ryc$eZdZdZdfd ZxZS)InvalidEggFragmentzinvalid-egg-fragmentc d}d|vsd|vsd|vrd}d|vr d|vr|dz }|sd }t|d t|d d tt|d t|y)NrQrA=r@zIVersion specifiers are silently ignored for URL references. Remove them. rP]z@Try using the Direct URL requirement syntax: 'name[extra] @ URL'z/Egg fragments can only be a valid project name.zThe 'z' egg fragment is invalidzfrom ''rS)rFrGrr9)rIr>fragmentrZrHs rrGzInvalidEggFragment.__init__s (?cXo   (?sh V VDDD F8,--FGVCI./q1Tl  r )r>rrr9rXrYr\r]s@rrrs&I  r rc<eZdZdZdZ dfd ZxZS)BuildDependencyInstallErrorz3Raised when build dependencies cannot be installed.zfailed-build-dependency-installct|trd}nd}| td}nt|tr|jd|nA|j dj t j|jtjddj |dd t|d d fdj |d }td d}|r|td|z }t|1||d|y)Nz&This is likely not a problem with pip.zmpip crashed unexpectedly. Please file an issue on pip's issue tracker: https://github.com/pypa/pip/issues/newzSee above for more details.zERROR: rQz Installing rr$rPz lines of output] rN)z [end of output]rNz!Cannot install build dependenciesrQz for r) r&r0rrrr( tracebackformat_exception splitlinesrWrrFrG) rIr build_reqscause log_linesnoterDrCrHs rrGz$BuildDependencyInstallError.__init__s eX &;DB   89G%*  75'!23  GGI66u=>IIKmmchhz2326S^$$78%@ )$, G:GD  teC5M* *G W  r ) rrrz Iterable[str]r ExceptionrrrXrYrrr]s@rrrsE=1I( &( "(  ( $ (  ( ( r r)rr9rXr) rz Text | strr*r r+r9r,r9rXr)ar5 __future__rr:r=r+loggingpathlibrsysrcollections.abcrr itertoolsrrrtypingr r "pip._vendor.packaging.requirementsr pip._vendor.packaging.versionr pip._vendor.rich.consoler rrpip._vendor.rich.markuprpip._vendor.rich.textrhashlibrpip._vendor.requests.modelsrrrpip._internal.metadatarpip._internal.models.linkrpip._internal.network.downloadrpip._internal.req.req_installr getLoggerr2rDrr.rr0r8r_rarcrjrtrxrrrrrrrrrrrrrrrrrrrrrrrrrr+r&r$rNr^rarhrvryrrr6r rrs#  .,,)A8JJ*&NN7.<@   8 $ :)) )  )  )  )"yp'p'l--00'0'" $6 " $6 "YY86/6C0C N,NO!2O( ;;B8BEHE#X#8","(M$M , .K'K&J"46G&JR,13D,&!"!.+@!+@\)' )' T97 97 t0 A(:A.)!jj\*%!F#5FR / 6  /   0 < 0 D / (  /   + .- "4- r