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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
Ë
ñúhôJãó$—UdZddlmZddlZddlZddlZddlZddlZddl    Z    ddl
Z
ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlmZmZmZddlmZmZmZmZddlmZmZddlm Z!ddl"m#Z#m$Z$dd    l"m%Z&dd
l'm(Z(m)Z)dd l*m+Z+dd l,m-Z-dd l.m/Z/ddl0m1Z1ddl2m3Z3ddl4m5Z5ddl6m7Z7ddl8m9Z9ddl:m;Z;ddl<m=Z=ddl>m?Z?m@Z@ddlAmBZBerddlCmDZDddlEmFZFddlGmHZHe    j’eJ«ZKeLeMeMeeeNeMffZOej de/¬«gd¢ZQdeRd<dZSd2d „ZTejªd!¬"«d3d#„«ZVGd$„d%e$«ZWGd&„d'«ZXGd(„d)eXe&«Z%Gd*„d+eXe!«Z Gd,„d-e%«ZYGd.„d/e «ZZGd0„d1ej¶«Z\y)4zhPipSession and supporting code, containing all pip-specific
network request configuration and behavior.
é)Ú annotationsN)Ú    GeneratorÚMappingÚSequence)Ú TYPE_CHECKINGÚAnyÚOptionalÚUnion)ÚrequestsÚurllib3)ÚCacheControlAdapter)ÚDEFAULT_POOLBLOCKÚ BaseAdapter)Ú HTTPAdapter)ÚPreparedRequestÚResponse)ÚCaseInsensitiveDict)ÚConnectionPool)ÚInsecureRequestWarning)Ú __version__)Úget_default_environment)ÚLink)ÚMultiDomainBasicAuth)Ú SafeFileCache)Úhas_tls)Úlibc_ver)Úbuild_url_from_netlocÚ parse_netloc)Ú url_to_path)Ú
SSLContext)Ú PoolManager)Ú ProxyManagerÚignore)Úcategory))ÚhttpsÚ*r&)r&Ú    localhostr&)r&z 127.0.0.0/8r&)r&z::1/128r&)Úfiler&N)Ússhr&r&zlist[SecureOrigin]ÚSECURE_ORIGINS)Ú BUILD_BUILDIDÚBUILD_IDÚCIÚ    PIP_IS_CIcó.—td„tD««S)z?
    Return whether it looks like pip is running under CI.
    c3ó@K—|]}|tjv–—Œy­w©N)ÚosÚenviron)Ú.0Únames  úPH:\Change_password\venv_build\Lib\site-packages\pip/_internal/network/session.pyú    <genexpr>z looks_like_ci.<locals>.<genexpr>isèø€ÒG dˆt”r—z‘zÔ!ÑGùs‚)ÚanyÚCI_ENVIRONMENT_VARIABLES©ór6Ú looks_like_cir<bs€ô ÑGÔ.FÔGÓ GÐGr;é)Úmaxsizec
ó¼—dtdœtj«dtj«idœ}|dddk(rtj«|dd<n©|dddk(rStj
}|j d    k(r|d
d }d j|Dcgc] }t|«‘Œc}«|dd<nK|ddd k(rtj«|dd<n%|dddk(rtj«|dd<tjjd«rddl
m }|j«|j«|j«f}tt!d„t#gd¢|«««}tt!d„t#ddgt%««««}|r||d<|r||d<tjjd«r4tj&«drdtj&«ddœ|d<tj(«r'tj(«|j+di«d<tj,«r'tj,«|j+di«d<tj.«rtj.«|d<t1«rdd
l}|j4|d<t7«j9d«}|t|j«|d<t;j<d «`    t?j@d d!gt>jBd"¬#«}    |    jd$«r&|    jEd%«d&jG«|d'<    tK«rd(nd
|d)<tLjNjQd*«}
|
|
|d+<d,jS|tUjV|d-d(¬.«¬/«Scc}w#tH$rYŒpwxYw)0z6
    Return a string representing the user agent.
    Úpip)r5Úversionr5)Ú    installerÚpythonÚimplementationrDÚCPythonrAÚPyPyÚfinalNéú.ÚJythonÚ
IronPythonÚlinuxr)Údistrocó —|dS©Nr=r:©Úxs r6ú<lambda>zuser_agent.<locals>.<lambda>ó
€˜!˜A™$€r;)r5rAÚidcó —|dSrOr:rPs r6rRzuser_agent.<locals>.<lambda>•rSr;ÚlibÚlibcrMÚdarwinÚmacOSÚsystemÚreleaseÚcpuÚopenssl_versionÚ
setuptoolsÚsetuptools_versionÚrustcz    --versiongà?)ÚstderrÚtimeoutsrustc ó r=Ú rustc_versionTÚciÚPIP_USER_AGENT_USER_DATAÚ    user_dataz9{data[installer][name]}/{data[installer][version]} {json})ú,ú:)Ú
separatorsÚ    sort_keys)ÚdataÚjson),rÚplatformÚpython_versionÚpython_implementationÚsysÚpypy_version_infoÚ releaselevelÚjoinÚstrÚ
startswithÚ pip._vendorrMr5rAÚcodenameÚdictÚfilterÚziprÚmac_verrZÚ
setdefaultr[ÚmachinerÚ_sslÚOPENSSL_VERSIONrÚget_distributionÚshutilÚwhichÚ
subprocessÚ check_outputÚSTDOUTÚsplitÚdecodeÚ    Exceptionr<r2r3ÚgetÚformatrmÚdumps) rlrrrQrMÚlinux_distributionÚ distro_infosrWÚsslÚsetuptools_distÚ rustc_outputrgs            r6Ú
user_agentr’ls”€ð $´ Ñ<Ü×)Ñ)Ó+à ”H×2Ñ2Ó4ð
ñ€Dð РјfÑ%¨Ò2Ü,4×,CÑ,CÓ,EˆÐ јyÒ)Ø     ÐÑ     Ñ    '¨6Ò    1Ü×1Ñ1ÐØ × )Ñ )¨WÒ 4Ø 1°"°1Р5Ð Ø,/¯H©HØ.Ö /˜ŒSVÒ /ó-
ˆÐ јyÒ)ð
ÐÑ     Ñ    '¨8Ò    3ä,4×,CÑ,CÓ,EˆÐ јyÒ)Ø     ÐÑ     Ñ    '¨<Ò    7ä,4×,CÑ,CÓ,EˆÐ јyÑ)ä
‡||×јwÔ'Ý&à#Ÿ[™[›]¨F¯N©NÓ,<¸f¿o¹oÓ>OÐOÐÜ'+Ü ÙÜÒ-Ð/AÓBó ó(
ˆ ô Ü ÙܐU˜IÐ&¬«
Ó3ó ó
ˆñ Ø#'ˆL˜Ñ  Ù Ø)ˆD‰Nä
‡||×јxÔ(¬X×-=Ñ-=Ó-?ÀÒ-BØ")´h×6FÑ6FÓ6HÈÑ6KÑLˆˆX‰ä‡ÔÜ08·±Ó0Aˆ‰˜ "Ó% fÑ-ä×ÑÔÜ3;×3CÑ3CÓ3Eˆ‰˜ "Ó% iÑ0ä×ÑÔÜ×&Ñ&Ó(ˆˆU‰ ä„yÛà"%×"5Ñ"5ˆÐ Ñä-Ó/×@Ñ@ÀÓN€OØÐ"Ü%(¨×)@Ñ)@Ó%AˆÐ !Ñ"ä ‡||GÓÐ(ð     MÜ%×2Ñ2ؘ+Ð&¬z×/@Ñ/@È#ôˆLð ×&Ñ& yÔ1ð)5×(:Ñ(:¸4Ó(@ÀÑ(C×(JÑ(JÓ(L_Ò%ô 'œ‘¨d€DˆJä—
‘
—‘Ð9Ó:€IØÐØ%ˆˆ[Ñà F× MÑ MØ Ü Z‰Z˜¨¸tÔ Dð Nó ðùòY 0øôrò    Ù ð    úsÂO
Ì (OÏ    OÏOcóB—eZdZ                    d                                                    dd„Zdd„Zy)ÚLocalFSAdapterNcó —t|j«}t«}d|_|j|_    t    j
|«}    t jj|    jd¬«}
tj|«dxsd} t| |    j|
dœ«|_t|d«|_|j j"|_|S#t$$rc} d|_t'| «j(|_t-j.|j*›d    | ›j1««|_Yd} ~ |Sd} ~ wwxYw)
NéÈT)Úusegmtrz
text/plain)z Content-TypezContent-Lengthz Last-ModifiedÚrbi”z: )rÚurlrÚ status_coder2ÚstatÚemailÚutilsÚ
formatdateÚst_mtimeÚ    mimetypesÚ
guess_typerÚst_sizeÚheadersÚopenÚrawÚcloseÚOSErrorÚtypeÚ__name__ÚreasonÚioÚBytesIOÚencode) ÚselfÚrequestÚstreamrbÚverifyÚcertÚproxiesÚpathnameÚrespÚstatsÚmodifiedÚ content_typeÚexcs              r6ÚsendzLocalFSAdapter.sendÓs€ô˜wŸ{™{Ó+ˆä‹zˆØˆÔØ—;‘;ˆŒð    (Ü—G‘G˜HÓ%ˆEô—{‘{×-Ñ-¨e¯n©nÀTÐ-ÓJˆHÜ$×/Ñ/°Ó9¸!Ñ<ÒLÀ ˆLÜ.à$0Ø&+§m¡mØ%-ñóˆDŒLô˜H dÓ+ˆDŒHØŸ™Ÿ™ˆDŒJàˆ øô)ò    Dð #ˆDÔ Ü˜s›)×,Ñ,ˆDŒKÜ—z‘z T§[¡[ M°°C°5Ð"9×"@Ñ"@Ó"BÓCˆDHˆHðˆ ûð)    Dús¹C!Ã!    E Ã*AEÅE có—yr1r:)r®s r6r¦zLocalFSAdapter.closeús€Ø r;)FNTNN)r¯rr°Úboolrbz"float | tuple[float, float] | Noner±ú
bool | strr²ústr | tuple[str, str] | Noner³zMapping[str, str] | NoneÚreturnr)r¿ÚNone)r©Ú
__module__Ú __qualname__rºr¦r:r;r6r”r”Òsb„ðØ6:Ø!Ø-1Ø,0ð%à ð%ðð%ð4ð    %ð
ð %ð +ð %ð*ð%ð
ó%ôN r;r”cób‡—eZdZdZddœ                    dˆfd„Zef                                    dˆfd„ Zd    ˆfd„ ZˆxZS)
Ú_SSLContextAdapterMixina#Mixin to add the ``ssl_context`` constructor argument to HTTP adapters.
 
    The additional argument is forwarded directly to the pool manager. This allows us
    to dynamically decide what SSL store to use at runtime, which is used to implement
    the optional ``truststore`` backend.
    N)Ú ssl_contextc ó2•—||_t‰|di|¤Žy)Nr:)Ú _ssl_contextÚsuperÚ__init__)r®rÅÚkwargsÚ    __class__s   €r6rÉz _SSLContextAdapterMixin.__init__sø€ð (ˆÔÜ ‰ÑÑ"˜6Ó"r;c óz•—|j|jd|j«t‰| d|||dœ|¤ŽS)NrÅ)Ú connectionsr>Úblockr:)rÇr}rÈÚinit_poolmanager)r®rÍr>rÎÚ pool_kwargsrËs     €r6rÏz(_SSLContextAdapterMixin.init_poolmanagersQø€ð × Ñ Ð (Ø × "Ñ " =°$×2CÑ2CÔ D܉wÑ'ð
Ø#ØØñ
ðñ    
ð    
r;c ót•—|j|jd|j«t‰| |fi|¤ŽS)NrÅ)rÇr}rÈÚproxy_manager_for)r®ÚproxyÚ proxy_kwargsrËs   €r6rÒz)_SSLContextAdapterMixin.proxy_manager_fors<ø€ð × Ñ Ð (Ø × #Ñ # M°4×3DÑ3DÔ E܉wÑ(¨Ñ?°,Ñ?Ð?r;)rÅúSSLContext | NonerÊrr¿rÀ)
rÍÚintr>rÖrÎr¼rÐrr¿r!)rÓrurÔrr¿r")    r©rÁrÂÚ__doc__rÉrrÏrÒÚ __classcell__©rËs@r6rÄrÄþsvø„ñð*.ñ#ð'ð#ðð    #ð
 
õ #ð(ð    
àð
ðð
ðð    
ð
ð 
ð
õ 
÷ @ñ@r;rÄcó —eZdZy)rN©r©rÁrÂr:r;r6rr'ó„Ør;rcó —eZdZy)r NrÛr:r;r6r r +rÜr;r có4‡—eZdZ                                        dˆfd„ ZˆxZS)ÚInsecureHTTPAdaptercó,•—t‰|||d|¬«y©NF)Úconnr™r±r²©rÈÚ cert_verify©r®râr™r±r²rËs     €r6räzInsecureHTTPAdapter.cert_verify0óø€ô    ‰Ñ ¨3°uÀ4ÐÕHr;©
rârr™rur±r½r²r¾r¿rÀ©r©rÁrÂrärØrÙs@r6rßrß/óDø„ðIàðIððIðð    Ið
+ð Ið
÷ IñIr;rßcó4‡—eZdZ                                        dˆfd„ ZˆxZS)ÚInsecureCacheControlAdaptercó,•—t‰|||d|¬«yrárãrås     €r6räz'InsecureCacheControlAdapter.cert_verify;rær;rçrèrÙs@r6rërë:rér;rëc󚇗eZdZUdZded<ddddddœ                                                            d ˆfd„Zdd„Z    d                            dd    „Zdd
„Zdd „Z    dˆfd „ Z
ˆxZ S)Ú
PipSessionNz
int | Nonerbrr:)ÚretriesÚcacheÚ trusted_hostsÚ
index_urlsrÅcó•—t‰ ||i|¤Žg|_d|_t    «|j
d<t |¬«|_tj|gd¢d¬«}t|¬«}|r3tt|«||¬«}    tt|«|¬    «|_nt||¬
«}    ||_|j!d |    «|j!d |«|j!d t#««|D]}
|j%|
d¬«Œy)zj
        :param trusted_hosts: Domains not to emit warnings for when not using
            HTTPS.
        Nz
User-Agent)rò)iôiöi÷iigÐ?)ÚtotalÚstatus_forcelistÚbackoff_factor)Ú max_retries)rðr÷rÅ)rðr÷)r÷rÅzhttps://zhttp://zfile://T)Úsuppress_logging)rÈrÉÚpip_trusted_originsÚ    pip_proxyr’r£rÚauthr ÚRetryrßr rrëÚ_trusted_host_adapterrÚmountr”Úadd_trusted_host) r®rïrðrñròrÅÚargsrÊÚinsecure_adapterÚsecure_adapterÚhostrËs            €r6rÉzPipSession.__init__Hsø€ô    ‰Ñ˜$Ð) &Ò)ðBDˆÔ ØˆŒô&0£\ˆ ‰ \Ñ"ô)°JÔ?ˆŒ    ô—-‘-ðò7ð ô
ˆô,/¸7ÔCÐñ Ü0Ü# EÓ*Ø#Ø'ôˆNô
*EÜ# EÓ*Ø#ô*ˆDÕ &ô
)°WÈ+ÔVˆNØ)9ˆDÔ &à 
‰
:˜~Ô.Ø 
‰
9Ð.Ô/ð     
‰
9œnÓ.Ô/à!ò    ?ˆDØ × !Ñ ! $¸Ð !Õ >ñ    ?r;có&—||j_y)zn
        :param new_index_urls: New index urls to update the authentication
            handler with.
        N)rûrò)r®Únew_index_urlss  r6Úupdate_index_urlszPipSession.update_index_urls™s€ð
 .ˆ    ‰    Õr;có6—|s%d|›}|    |d|›dz }tj|«t|«\}}|€td|›«‚||f|jvr|jj ||f«|j t|d¬«dz|j«|j t|«dz|j«|sS|j t|d¬«d    z|j«|j t|«d    z|j«yy)
        :param host: It is okay to provide a host that has previously been
            added.
        :param source: An optional source string, for logging where the host
            string came from.
        zadding trusted host: Nz (from ú)z+Trusted host URL must include a host part: Úhttp)Úschemeú/ri)    ÚloggerÚinforÚ
ValueErrorrùÚappendrþrrý)r®rÚsourcerøÚmsgÚ parsed_hostÚ parsed_ports       r6rÿzPipSession.add_trusted_host s€ñ Ø)¨$¨Ð2ˆCØÐ!ؘ  ¨Ð*Ñ*Ü K‰K˜Ô ä#/°Ó#5Ñ ˆ [Ø Ð ÜÐJÈ4È(ÐSÓTÐ TØ ˜Ð %¨T×-EÑ-EÑ EØ × $Ñ $× +Ñ +¨[¸+Ð,FÔ Gà 
‰
Ü ! $¨vÔ 6¸Ñ <¸d×>XÑ>Xô    
ð     
‰
Ô(¨Ó.°Ñ4°d×6PÑ6PÔQÙØ J‰JÜ% d°6Ô:¸SÑ@Ø×*Ñ*ô ð
J‰JÔ,¨TÓ2°SÑ8¸$×:TÑ:TÕ Uð r;c#ójK—tEd{–—†|jD]\}}d||€dn|f–—Œy7Œ$­w)Nr&)r*rù)r®rÚports   r6Úiter_secure_originszPipSession.iter_secure_originsÁs@èø€Ü!×!Ð!Ø×2Ñ2ò    =‰JˆD$ؘ T \™c°tÐ<Ó <ñ    =ð    "ús ‚
3Œ1%3có6—tjjt|««}|j|j
|j }}}|jdd«d}|j«D]U}|\}}}    ||k7r|dk7rŒ    tj|xsd«}
tj|«} |
| vrŒH||    k7r|    dk7r|    ŒUytjd||«y#t$r-|r(|j«|j«k7r|dk7rYŒ£YŒ]wxYw)    Nú+r=éÿÿÿÿr&ÚTzõThe repository located at %s is not a trusted or secure host and is being ignored. If this repository is available via HTTPS we recommend you use HTTPS instead, otherwise you may silence this warning and allow it anyway with '--trusted-host %s'.F)ÚurllibÚparseÚurlparserur
ÚhostnamerÚrsplitrÚ    ipaddressÚ
ip_addressÚ
ip_networkrÚlowerr Úwarning) r®ÚlocationÚparsedÚorigin_protocolÚ origin_hostÚ origin_portÚ secure_originÚsecure_protocolÚ secure_hostÚ secure_portÚaddrÚnetworks             r6Úis_secure_originzPipSession.is_secure_originÆs@€ä—‘×&Ñ&¤s¨8£}Ó5ˆà M‰MØ O‰OØ K‰Kð'2˜ˆð*×0Ñ0°°aÓ8¸Ñ<ˆð
"×5Ñ5Ó7ò!    ˆMØ8EÑ 5ˆO˜[¨+Ø /Ò1°oÈÒ6LØð Ü ×+Ñ+¨KÒ,=¸2Ó>Ü#×.Ñ.¨{Ó;ð˜wÑ&Øð˜{Ò*Ø 3Ò&ØÐ+àñðC!    ôL    ‰ð Ið Ø ô     
ðøôOò ñ Ø#×)Ñ)Ó+¨{×/@Ñ/@Ó/BÒBØ# sÒ*áùð úsÂ.C"Ã"1DÄDc󜕗|jd|j«|jd|j«t‰|||g|¢­i|¤ŽS)Nrbr³)r}rbr³rÈr¯)r®Úmethodr™rrÊrËs     €r6r¯zPipSession.request    sHø€à×ј) T§\¡\Ô2à×ј) T§\¡\Ô2ô‰w‰˜v sÐ<¨TÒ<°VÑ<Ð<r;)rrrïrÖrðú
str | Nonerñz Sequence[str]ròzlist[str] | NonerÅrÕrÊrr¿rÀ)rz    list[str]r¿rÀ)NF)rrurr3rør¼r¿rÀ)r¿z#Generator[SecureOrigin, None, None])r%rr¿r¼)
r2rur™rurrrÊrr¿r) r©rÁrÂrbÚ__annotations__rÉrrÿrr0r¯rØrÙs@r6rîrîEsÈø…Ø€GˆZÓð
Ø Ø')Ø'+Ø)-ñO?àðO?ððO?ðð    O?ð
%ð O?ð %ð O?ð'ðO?ððO?ð
õO?ób.ðNSðVØðVØ!+ðVØFJðVà     óVóB=ó
A÷F=ñ=r;rî)r¿r¼)r¿ru)]r×Ú
__future__rÚ email.utilsrœÚ    functoolsr«r rmÚloggingr r2rnr‚r„rqÚ urllib.parserÚwarningsÚcollections.abcrrrÚtypingrrr    r
rwr r Úpip._vendor.cachecontrolr Ú_BaseCacheControlAdapterÚpip._vendor.requests.adaptersrrrÚ_BaseHTTPAdapterÚpip._vendor.requests.modelsrrÚpip._vendor.requests.structuresrÚ"pip._vendor.urllib3.connectionpoolrÚpip._vendor.urllib3.exceptionsrr@rÚpip._internal.metadatarÚpip._internal.models.linkrÚpip._internal.network.authrÚpip._internal.network.cacherÚpip._internal.utils.compatrÚpip._internal.utils.glibcrÚpip._internal.utils.miscrrÚpip._internal.utils.urlsrrr Úpip._vendor.urllib3.poolmanagerr!Ú pip._vendor.urllib3.proxymanagerr"Ú    getLoggerr©r ÚtuplerurÖÚ SecureOriginÚfilterwarningsr*r4r9r<Ú    lru_cacher’r”rÄrßrëÚSessionrîr:r;r6ú<module>rUsðòõ#ãÛÛ    ÛÛ ÛÛÛ    ÛÛ ÛÛ
ÛÛß8Ñ8÷ó÷*ÝTßHÝIßAÝ?Ý=ÝAåÝ:Ý*Ý;Ý5õ/Ý.ßHÝ0áÝå;Ý=ð
ˆ×    Ñ    ˜8Ó    $€àS˜#˜x¨¨c°3¨h©Ñ8Ð8Ñ9€ ð€×јÐ+AÕBò
&€Ð"ó
ð(    ÐóHð€×јQÔòbó ðbôJ) [ô) ÷X&@ñ&@ôR    Ð)Ð+;ô    ô    Ð1Ð3Kô    ôI˜+ôIôIÐ"5ôIôK=×!Ñ!õK=r;