hyb
2025-12-23 10f3a1daddfbc7fa3dd2069197d83e8b6ef19176
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
Ë
ñúhÅoãóž—dZddlmZddlZddlZddlZddlmZddlm    Z    ddl
m Z ddl m Z ddlmZdd    lmZdd
lmZdd lmZdd lmZmZmZmZmZmZmZdd lmZddl m!Z!m"Z"ddl#m$Z$ddl%m&Z&ddl'm(Z(ddl)m*Z*ddl+m,Z,m-Z-ddl.m/Z/ddl0m1Z1ddl2m3Z3ddl4m5Z5ddl6m7Z7m8Z8ddl9m:Z:m;Z;ddl<m=Z=ddl>m?Z?m@Z@mAZAmBZBddlCmDZDddlEmFZFddlGmHZHe rddlImJZJe5eK«ZL                                                d*d „ZMd+d!„ZNe    Gd"„d#««ZO        d,                                    d-d$„ZP    d,                            d.d%„ZQ        d,                                                    d/d&„ZR    d0                                    d1d'„ZSGd(„d)«ZTy)2z(Prepares a distribution for installationé)Ú annotationsN)ÚIterable)Ú    dataclass)ÚPath)Ú TYPE_CHECKING)Úcanonicalize_name)ÚBuildEnvironmentInstaller)Ú)make_distribution_for_install_requirement)ÚInstalledDistribution)ÚDirectoryUrlHashUnsupportedÚ HashMismatchÚ HashUnpinnedÚInstallationErrorÚMetadataInconsistentÚNetworkConnectionErrorÚVcsHashUnsupported)Ú PackageFinder)ÚBaseDistributionÚget_metadata_distribution)Ú ArchiveInfo)ÚLink)ÚWheel)Ú
Downloader)ÚHTTPRangeRequestUnsupportedÚdist_from_wheel_url)Ú
PipSession)Ú BuildTracker)ÚInstallRequirement)Ú    getLogger)Údirect_url_for_editableÚdirect_url_from_link)ÚHashesÚ MissingHashes)Ú
indent_log)Ú display_pathÚ    hash_fileÚhide_urlÚredact_auth_from_requirement)Ú TempDirectory)Ú unpack_file)Úvcs)ÚBarTypecó—t|«}|j}|>|j||«5|j|||«ddd«|j    «S|j    «S#1swY|j    «SxYw)z(Prepare a distribution for installation.N)r
Úbuild_tracker_idÚtrackÚprepare_distribution_metadatar)ÚreqÚ build_trackerÚbuild_env_installerÚbuild_isolationÚcheck_build_depsÚ abstract_distÚ
tracker_ids       úSH:\Change_password\venv_build\Lib\site-packages\pip/_internal/operations/prepare.pyÚ_get_prepared_distributionr9As…€ô>¸cÓB€MØ×/Ñ/€JØÐØ ×  Ñ    jÓ 1ñ    Ø × 7Ñ 7Ø# _Ð6Fô ÷    ð × 2Ñ 2Ó 4Ð4ˆ=× 2Ñ 2Ó 4Ð4÷        ð × 2Ñ 2Ó 4Ð4ús ¬A(Á(Bcó˜—tj|j«}|€J‚|j|t    |j
«|¬«y)N)ÚurlÚ    verbosity)r+Úget_backend_for_schemeÚschemeÚunpackr'r;)ÚlinkÚlocationr<Ú vcs_backends    r8Úunpack_vcs_linkrCSs@€Ü×,Ñ,¨T¯[©[Ó9€KØ Ð "Ð"Ð "Ø×ѐx¤X¨d¯h©hÓ%7À9ÐÕMócó.—eZdZUded<dZded<dd„Zy)ÚFileÚstrÚpathNú
str | NoneÚ content_typecóŒ—|j€)    tj|j«d|_yy#t$rYywxYw)Nr)rJÚ    mimetypesÚ
guess_typerHÚOSError)Úselfs r8Ú __post_init__zFile.__post_init__^sH€Ø × Ñ Ð $ð Ü$-×$8Ñ$8¸¿¹Ó$CÀAÑ$FÕ!ð     %øô
ò Ùð úsŽ'7·    AÁA)ÚreturnÚNone)Ú__name__Ú
__module__Ú __qualname__Ú__annotations__rJrP©rDr8rFrFYs…à
ƒIØ#€L*Ó#ôrDrFcó¶—tdd¬«}d}|r t|||«}|r|}d}n)|||j«\}}|r|j|«t    ||«S)Nr?T©ÚkindÚglobally_managed)r)Ú_check_download_dirrHÚcheck_against_pathrF)r@ÚdownloadÚ download_dirÚhashesÚtemp_dirÚalready_downloaded_pathÚ    from_pathrJs        r8Ú get_http_urlrdhsj€ô  (¸TÔB€Hà"ÐÙÜ"5°d¸LÈ&Ó"QÐáØ+ˆ    Ø‰ ñ#+¨4°·±Ó"?ш    <Ù Ø × %Ñ % iÔ 0ä     ˜<Ó (Ð(rDcó„—d}|r t|||«}|r|}n |j}|r|j|«t|d«S)z'Get file and optionally check its hash.N)r\Ú    file_pathr]rF)r@r_r`rbrcs     r8Ú get_file_urlrg€sM€ð
#ÐÙÜ"5°d¸LÈ&Ó"QÐáØ+‰    à—N‘Nˆ    ñØ×!Ñ! )Ô,Ü     ˜4Ó  Ð rDcó—|jrt|||¬«y|j«rJ‚|jrt    |||¬«}nt ||||¬«}|j s!t|j||j«|S)a_Unpack link into location, downloading if required.
 
    :param hashes: A Hashes object, one of whose embedded hashes must match,
        or HashMismatch will be raised. If the Hashes is empty, no matches are
        required, and unhashable types of requirements (like VCS ones, which
        would ordinarily raise HashUnsupported) are allowed.
    )r<N©r`)
Úis_vcsrCÚis_existing_dirÚis_filergrdÚis_wheelr*rHrJ)r@rAr^r<r_r`Úfiles       r8Ú
unpack_urlro˜s€ð  ‡{‚{ܘ˜h°)Õ<Øà×#Ñ#Ô%Ð%Ð %ð ‡|‚|ܘD ,°vÔ>‰ôØ Ø Ø Øô    
ˆð =Š=ܐD—I‘I˜x¨×):Ñ):Ô;à €KrDcój—tjj||j«}tjj    |«syt
j d|«|r    |j|«|S|S#t$r0|rt
jd|«tj|«YywxYw)zCheck download_dir for previously downloaded file with correct hash
    If a correct file is found return its path else None
    NzFile was already downloaded %sz;Previously-downloaded file %s has bad hash. Re-downloading.) ÚosrHÚjoinÚfilenameÚexistsÚloggerÚinfor]r ÚwarningÚunlink)r@r_r`Úwarn_on_hash_mismatchÚ download_paths     r8r\r\Ãsš€ô—G‘G—L‘L ¨t¯}©}Ó=€Mä 7‰7>‰>˜-Ô (Øô ‡KKÐ0°-Ô@Ù ð        Ø × %Ñ % mÔ 4ð Ј=Ðøôò    Ù$Ü—‘ØQØ!ôô I‰ImÔ $Ùð    úsÁ$A9Á96B2Â1B2có>‡—eZdZdZ                                                                                                                                        dˆfd„ Zdd„Z                        dd„Zdd„Z                dd„Z                dd„Z                    dd„Z
    d                    dd    „Z     d                    dd
„Z     d                    dd „Z                         dd „Zdd „Z                dd„Z                        dd„ZˆxZS)ÚRequirementPreparerzPrepares a Requirementcó&•—t‰|«||_||_||_||_t ||    |«|_|
|_||_    ||_
||_ ||_ | |_ | |_| |_||_||_i|_d|_y)N)Úr~)ÚsuperÚ__init__Úsrc_dirÚ    build_dirr2Ú_sessionrÚ    _downloadÚfinderr_r4r3r5Úrequire_hashesÚ use_user_siteÚuse_lazy_wheelr<Úlegacy_resolverÚ _downloadedÚ_previous_requirement_header)rOr‚r_rr4Úbuild_isolation_installerr5r2ÚsessionÚ progress_barr…r†r‡Ú
lazy_wheelr<r‰Úresume_retriesÚ    __class__s                 €r8r€zRequirementPreparer.__init__äs¯ø€ô(    ‰ÑÔàˆŒ Ø"ˆŒØ*ˆÔ؈Œ Ü# G¨\¸>ÓJˆŒØˆŒ ð)ˆÔð /ˆÔØ#<ˆÔ ð!1ˆÔð-ˆÔð+ˆÔð)ˆÔð#ˆŒð /ˆÔð,.ˆÔð-5ˆÕ)rDcóΗ|jjr7|js+d}tt    |jj
««}n.d}|j rt|j «n
t|«}|j rX|jrLt|jt«r |j}n|jj«}|r    |d|›dz }||f|jk7r||f|_ tj||«|jr>t«5tjd|jj«ddd«yy#1swYyxYw)z3Provide context for the requirement being prepared.z Processing %sz Collecting %sz (from ú)zUsing cached %sN)r@rlÚis_wheel_from_cacherGr%rfr1r(Ú
comes_fromÚ
isinstancercr‹rurvr$rs)rOr1ÚmessageÚ informationr•s     r8Ú_log_preparing_linkz'RequirementPreparer._log_preparing_link!s€à 8‰8× Ò  C×$;Ò$;Ø%ˆGÜœl¨3¯8©8×+=Ñ+=Ó>Ó?‰Kà%ˆGØCFÇ7Â7Ô6°s·w±wÔ?ÔPSÐTWÓPXˆKð 7Š7s—~’~ܘ#Ÿ.™.¬#Ô.Ø),¯©‘
à Ÿ^™^×5Ñ5Ó7
ÙØ ¨¨ °AÐ6Ñ6 à [Ð ! T×%FÑ%FÒ FØ18¸+Ð0FˆDÔ -Ü K‰K˜ Ô -à × "Ò "Ü“ñ BÜ— ‘ Ð-¨s¯x©x×/@Ñ/@ÔA÷ Bð Bð #÷ Bð Bús Ä&+EÅE$có—|jjry|jJ‚|jj«r|jj|_y|j |j d|¬«|j«y)z1Ensure source_dir of a linked InstallRequirement.NT)Ú
autodeleteÚparallel_builds)r@rmÚ
source_dirrkrfÚensure_has_source_dirr‚Úensure_pristine_source_checkout)rOr1rœs   r8Ú_ensure_link_req_src_dirz,RequirementPreparer._ensure_link_req_src_dir<sz€ð
8‰8× Ò ð Ø~‰~Ð%Ð%Ð%Ø 8‰8× #Ñ #Ô %à ŸX™X×/Ñ/ˆCŒNØ ð     ×!Ñ!Ø N‰NØØ+ð    "ô    
ð
     ×+Ñ+Õ-rDcóF—|js|jd¬«S|jjr
t    «‚|jj «r
t «‚|js|js
t«‚|jd¬«xs
t«S)NT)Útrust_internetF) r†r`r@rjrrkr Ú    is_directÚ    is_pinnedrr#©rOr1s  r8Ú_get_linked_req_hashesz*RequirementPreparer._get_linked_req_hashesSs~€ð ×"Ò"Ø—:‘:¨T:Ó2Ð 2ð 8‰8?Š?Ü$Ó&Ð &Ø 8‰8× #Ñ #Ô %Ü-Ó/Ð /ð}Š} S§]¢]Ü“.Ð  ð z‰z¨ˆzÓ/ÒB´=³?ÐBrDcóæ—|jrtjd«y|jrtjd«y|j    |«xs|j |j «S)Nz9Metadata-only fetching is not used in the legacy resolverz?Metadata-only fetching is not used as hash checking is required)r‰ruÚdebugr†Ú$_fetch_metadata_using_link_data_attrÚ _fetch_metadata_using_lazy_wheelr@r¥s  r8Ú_fetch_metadata_onlyz(RequirementPreparer._fetch_metadata_onlyssk€ð × Ò Ü L‰LØKô ðØ × Ò Ü L‰LØQô ðà×8Ñ8Ø ó
ò=à × 2Ñ 2°3·8±8Ó <ð    =rDcóŒ—|jj«}|€y|j€J‚tj    d|j|«t ||j |j«¬«}t|jd«5}|j«}ddd«t|jj|jj«}t|j«t|jj«k7r,t!|d|jj|j«‚|S#1swYŒ¡xYw)zGFetch metadata from the data-dist-info-metadata attribute, if possible.Nz/Obtaining dependency information for %s from %sriÚrbÚName)r@Ú metadata_linkr1ruÚverboserdr„Ú    as_hashesÚopenrHÚreadrrsÚnamerÚraw_namer)rOr1r¯Ú metadata_fileÚfÚmetadata_contentsÚ metadata_dists       r8r©z8RequirementPreparer._fetch_metadata_using_link_data_attr†s€ð Ÿ™×.Ñ.Ó0ˆ Ø Ð  ØØw‰wÐ"Ð"Ð"܏‰Ø =Ø G‰GØ ô    
ô %Ø Ø N‰NØ ×*Ñ*Ó,ô
ˆ ô
-×$Ñ$ dÓ +ð    )¨qØ !§¡£Ð ÷    )ô2Ø Ø H‰H× Ñ Ø G‰GL‰Ló
ˆ ô ˜]×3Ñ3Ó 4Ô8IÈ#Ï'É'Ï,É,Ó8WÒ WÜ&ؐV˜SŸW™WŸ\™\¨=×+AÑ+Aóð ðÐ÷%    )ð    )ús     D:Ä:EcóÈ—|jsy|js |jstj    d|«yt |j «}t|j«}tjd||j«|jjdd«d}    t|||j«S#t$rtj    d|«YywxYw)z-Fetch metadata using lazy wheel, if possible.Nz=Lazy wheel is not used as %r does not point to a remote wheelz+Obtaining dependency information from %s %sú#érz"%s does not support range requests)rˆrlrmrur¨rrsrr´rvÚversionr;Úsplitrrƒr)rOr@Úwheelr´r;s     r8rªz4RequirementPreparer._fetch_metadata_using_lazy_wheel¯s½€ð ×"Ò"ØØ <Š<˜tŸ}š}Ü L‰LØOØô ðäd—m‘mÓ$ˆÜ  §¡Ó,ˆÜ ‰ Ø 9Ø Ø M‰Mô    
ð
h‰hn‰n˜S !Ó$ QÑ'ˆð    Ü& t¨S°$·-±-Ó@Ð @øÜ*ò    Ü L‰LÐ=¸sÔ CÙð    úsÂ(B?Â?C!àC!cóø—tdd¬«j}i}|D]}|jsJ‚|||j<Œ!|jj    |j «|«}|D]u\}\}}    t jd||«||}||_||j|jj<|jrŒ\|jt|««Œw|D]}|j||«Œy)z>Download any requirements which were only fetched by metadata.r?TrYzDownloading link %s to %sN)r)rHr@r„ÚbatchÚkeysrur¨Úlocal_file_pathrŠr;rmÚneeds_unpacked_archiverÚ_prepare_linked_requirement)
rOÚpartially_downloaded_reqsrœraÚlinks_to_fully_downloadr1Úbatch_downloadr@ÚfilepathÚ_s
          r8Ú_complete_partial_requirementsz2RequirementPreparer._complete_partial_requirementsÌs€ô! hÀÔF×KÑKˆð
CEÐØ,ò    4ˆCØ—8’8ˆO8Ø03Ð # C§H¡HÒ -ð    4ðŸ™×-Ñ-Ð.E×.JÑ.JÓ.LÈhÓWˆØ#1ò    ;Ñ ˆD‘-8˜QÜ L‰LÐ4°d¸HÔ EØ)¨$Ñ/ˆCð#+ˆCÔ ð.6ˆD× Ñ ˜SŸX™XŸ\™\Ñ *ð —<“<Ø×*Ñ*¬4°«>Õ:ð    ;ð&-ò    CˆCØ × ,Ñ ,¨S°/Õ Bñ    CrDcó—|jsJ‚|j|«t«5d}|jU|jjr?|j |«}t |j|j||j ¬«}|$||j|jj<n%|j|«}|d|_ |cddd«S|j||«cddd«S#1swYyxYw)z3Prepare a requirement to be obtained from req.link.N)ryT) r@r™r$r_rmr¦r\r”rŠr;r«Úneeds_more_preparationrÅ)rOr1rœrfr`r¹s      r8Úprepare_linked_requirementz.RequirementPreparer.prepare_linked_requirementõsö€ðxŠxˆˆxØ × Ñ  Ô%Ü ‹\ñ    JðˆIØ× Ñ Ð,°·±×1BÒ1BØ×4Ñ4°SÓ9Ü/Ø—H‘HØ×%Ñ%Øð/2×.EÑ.EÐ*Eô     ðÐ$à1:× Ñ  §¡§¡Ò.ð!%× 9Ñ 9¸#Ó > Ø Ð,Ø15CÔ.Ø(÷7    Jñ    Jð<×3Ñ3°C¸ÓI÷=    J÷    Jò    JúsªB%C4ÃC4Ã4C=cóò—|Dcgc]}|jsŒ|‘Œ}}|D]…}|j€Œ|jjsŒ'|j    |«}t |j|j|«}|€Œ\||j |jj<d|_Œ‡g}|D]2}|jr|j|«Œ!|j||«Œ4|j||¬«ycc}w)z,Prepare linked requirements more, if needed.NF)rœ) rÍr_r@rmr¦r\rŠr;ÚappendrÅrË)rOÚreqsrœr1r`rfrÆs       r8Ú prepare_linked_requirements_morez4RequirementPreparer.prepare_linked_requirements_moresö€ð $ÖB˜ s×'AÓ'A’ÐBˆÐBØò    7ˆCà× Ñ Ñ,°·±×1BÓ1BØ×4Ñ4°SÓ9Ü/°·±¸$×:KÑ:KÈVÓT    ØÑ(Ø5>D×$Ñ$ S§X¡X§\¡\Ñ2Ø16CÕ.ð    7ð?AÐ!Øò    GˆCØ×)Ò)Ø)×0Ñ0°Õ5à×0Ñ0°°oÕFð        Gð     ×+Ñ+Ø %Ø+ð    ,õ    
ùò+Cs
…C4—C4c    óØ—|jsJ‚|j}|j|«}|rÞ|jrÒ|j€J‚|jsJ‚|j
sJ‚t |jjt«rR|jjjr2|j|jjj«rd}n2tjd«|j|_|j}|j||«|j«rd}n‹|j |j"vr:    t%||j&|j(|j*|j,|«}n9|j"|j }|r|j3|«t5|d¬«}|j€³|j6rJ‚t9||j&«|_t |jjt«rf|jjjsF|rDt;|j<«dj?«}d|›|jj_ |r|j<|_!tE||jF|jH|jJ|jL«}    |    S#t.$r}t1d|›d|›d|›«‚d}~wwxYw)NzyThe hashes of the source archive found in cache entry don't match, ignoring cached built wheel and re-downloading source.zCould not install requirement z because of HTTP error z     for URL )rJrzsha256=)'r@r¦r”Ú download_informrlr–rvrr`Ú
has_one_ofrurwÚcached_wheel_source_linkr rkr;rŠrorr„r<r_rrr]rFÚeditabler!r&rHÚ    hexdigestÚhashrÃr9r2r3r4r5)
rOr1rœr@r`Ú
local_fileÚexcrfrÙÚdists
          r8rÅz/RequirementPreparer._prepare_linked_requirement9s‘€ðxŠxˆˆx؏x‰xˆà×,Ñ,¨SÓ1ˆá c×-Ò-Ø×$Ñ$Ð0Ð 0Ð0Ø—=’=Ð  =Ø—<’<Ð <ô˜3×,Ñ,×1Ñ1´;Ô?Ø×%Ñ%×*Ñ*×1Ò1Ø×%Ñ% c×&7Ñ&7×&<Ñ&<×&CÑ&CÔDð ‘ä—‘ð1ôð
×7Ñ7”Ø—x‘xà ×%Ñ% c¨?Ô;à × Ñ Ô !؉JØ X‰X˜T×-Ñ-Ñ -ð Ü'ØØ—N‘NØ—N‘NØ—N‘NØ×%Ñ%Øó ‘
ð×(Ñ(¨¯©Ñ2ˆIÙØ×)Ñ)¨)Ô4ܘi°dÔ;ˆJð × Ñ Ð $ð—|’|Ð #Ð#Ü 4°T¸3¿>¹>Ó JˆCÔ ô ˜3×,Ñ,×1Ñ1´;Ô?Ø×)Ñ)×.Ñ.×5Ò5Ùä  §¡Ó1°!Ñ4×>Ñ>Ó@ð18¸°vÐ.>×!Ñ!×&Ñ&Ô+ñ Ø",§/¡/ˆCÔ ä)Ø Ø × Ñ Ø × $Ñ $Ø ×  Ñ  Ø × !Ñ !ó 
ˆðˆ øôW*ò Ü'Ø4°S°Eð:Ø ˜E ¨4¨&ð2óðûð úsÅ
8KË    K)ËK$Ë$K)cón—|j€J‚|j€J‚|j}|js|j«r(|jr|j |j«y|j«rt jd|«y|j€ytjj|j|j«}tjj|«sBtj|j|«t!|«}t j#d|«yy)NzENot copying link to destination directory since it is a directory: %szSaved %s)r_r@rjrkr×Úarchiverur¨rÃrqrHrrrsrtÚshutilÚcopyr%rv)rOr1r@Údownload_locationrzs     r8Úsave_linked_requirementz+RequirementPreparer.save_linked_requirement•sñ€Ø× Ñ Ð,Ð,Ð,؏x‰xÐ#Ð#Ð#؏x‰xˆØ ;Š;˜4×/Ñ/Ô1°c·l²là K‰K˜×)Ñ)Ô *Ø à × Ñ Ô !Ü L‰Lð.àô ð
Ø × Ñ Ð &à äŸG™GŸL™L¨×):Ñ):¸D¿M¹MÓJÐ܏w‰w~‰~Ð/Ô0Ü K‰K˜×+Ñ+Ð->Ô ?Ü(Ð):Ó;ˆMÜ K‰K˜
 MÕ 2ð1rDcó—|jsJd«‚tjd|«t«5|jrt d|›d«‚|j |j«|j«|jsJ‚t|j«|_ t||j|j|j |j"«}|j%|j&«ddd«|S#1swYSxYw)z Prepare an editable requirement.z-cannot prepare a non-editable req as editablez Obtaining %szThe editable requirement zT cannot be installed when requiring hashes, because there is no single file to hash.N)r×rurvr$r†rržrÚupdate_editablerr Úunpacked_source_directoryrÔr9r2r3r4r5Úcheck_if_existsr‡)rOr1rÜs   r8Úprepare_editable_requirementz0RequirementPreparer.prepare_editable_requirement¯sô€ð
|Š|ÐLÐLÓLˆ|ä ‰ N CÔ(ä ‹\ñ    4Ø×"Ò"Ü'Ø/°¨uð5ðóðð
× %Ñ % d§l¡lÔ 3Ø × Ñ Ô !Ø—>’>Ð !>Ü 7¸×8UÑ8UÓ VˆCÔ ä-ØØ×"Ñ"Ø×(Ñ(Ø×$Ñ$Ø×%Ñ%ó ˆDð × Ñ  × 2Ñ 2Ô 3÷)    4ð,ˆ ÷-    4ð,ˆ ús ´CC?Ã?D    có`—|jsJd«‚|€Jd|j›«‚tjd|||jj«t    «5|j
rtj d«t|«j«cddd«S#1swYyxYw)z)Prepare an already-installed requirement.z(req should have been satisfied but isn'tNz?did not get skip reason skipped but req.satisfied_by is set to zRequirement %s: %s (%s)z§Since it is already installed, we are trusting this package without checking its hash. To ensure a completely repeatable environment, install into an empty virtualenv.)    Ú satisfied_byrurvr½r$r†r¨r r)rOr1Ú skip_reasons   r8Úprepare_installed_requirementz1RequirementPreparer.prepare_installed_requirementÐs²€ð ×ÒÐKÐ!KÓKÐØÐ&ð    
ð Ø×)Ñ)Ð*ð ,ó    
Ð&ô     ‰ Ø % {°C¸×9IÑ9I×9QÑ9Qô    
ô‹\ñ    JØ×"Ò"Ü— ‘ ð(ôô )¨Ó-×GÑGÓI÷    J÷    Jò    Jús Á :B$Â$B-)"r‚rGr_rIrrGr4ÚboolrŒr    r5rìr2rrrrŽr,r…rr†rìr‡rìrrìr<Úintr‰rìrrírQrR)r1rrQrR)r1rrœrìrQrR)r1rrQr")r1rrQúBaseDistribution | None)r@rrQrî)F)rÆúIterable[InstallRequirement]rœrìrQrR)r1rrœrìrQr)rÑrïrœrìrQrR)r1rrQr)r1rrêrGrQr)rSrTrUÚ__doc__r€r™r r¦r«r©rªrËrÎrÒrÅrârçrëÚ __classcell__)r‘s@r8r|r|ásø„Ù ð;5ðð;5ð!ð    ;5ð
ð ;5ð ð ;5ð$=ð;5ðð;5ð$ð;5ðð;5ðð;5ðð;5ðð;5ðð;5ðð;5ð ð!;5ð"ð#;5ð$ð%;5ð&
õ';5ózBð6.Ø%ð.Ø8<ð.à     ó.ó.Cð@=à ð=ð
!ó=ð&'à ð'ð
!ó'ðRàðð
!óð@!&ð'Cà#?ð'Cðð'Cð
ó    'CðT@Eð$JØ%ð$JØ8<ð$Jà    ó$JðNKPð
Ø0ð
ØCGð
à     ó
ð<ZØ%ðZØ8<ðZà    óZóx3ð4à ðð
óðBJà ðJððJð
÷    JrDr|) r1rr2rr3r    r4rìr5rìrQr)r@rrArGr<rírQrR)NN)
r@rr^rr_rIr`ú Hashes | NonerQrF)r@rr_rIr`ròrQrF)r@rrArGr^rr<rír_rIr`ròrQz File | None)T)
r@rr_rGr`ròryrìrQrI)UrðÚ
__future__rrLrqrßÚcollections.abcrÚ dataclassesrÚpathlibrÚtypingrÚpip._vendor.packaging.utilsrÚpip._internal.build_envr    Úpip._internal.distributionsr
Ú%pip._internal.distributions.installedr Úpip._internal.exceptionsr r rrrrrÚ"pip._internal.index.package_finderrÚpip._internal.metadatarrÚpip._internal.models.direct_urlrÚpip._internal.models.linkrÚpip._internal.models.wheelrÚpip._internal.network.downloadrÚ pip._internal.network.lazy_wheelrrÚpip._internal.network.sessionrÚ,pip._internal.operations.build.build_trackerrÚpip._internal.req.req_installrÚpip._internal.utils._logrÚ&pip._internal.utils.direct_url_helpersr r!Úpip._internal.utils.hashesr"r#Úpip._internal.utils.loggingr$Úpip._internal.utils.miscr%r&r'r(Úpip._internal.utils.temp_dirr)Úpip._internal.utils.unpackingr*Úpip._internal.vcsr+Úpip._internal.cli.progress_barsr,rSrur9rCrFrdrgror\r|rWrDr8ú<module>rsïðÙ.õ#ãÛ    Û Ý$Ý!ÝÝ å9å=ÝQÝG÷÷ñõ=ßNÝ7Ý*Ý,Ý5÷õ5ÝEÝ<Ý.÷÷=Ý2÷óõ 7Ý5Ý!áÝ7á    8Ó    €ð5Ø    ð5àð5ð3ð5ðð    5ð
ð 5ð ó 5ó$Nð  ÷ ð ó ð ð" $Ø ð    )Ø
ð)àð)ðð)ð ð    )ð
 
ó )ð2JNð!Ø
ð!Ø(ð!Ø9Fð!à    ó!ð: $Ø ð (Ø
ð(àð(ðð(ðð    (ð
ð (ð ð (ðó(ð^#'ð    Ø
ðàðð ðð ð    ð
ó ÷<EJòEJrD