a [dg @sddlmZddlZddlZddlZz ddlZWneyFdZYn0ejddkr|ddlmZe fZ e Z ddl mZddlZddlZddlmZddlmZmZmZmZmZdd lmZmZmZm Z m!Z!m"Z"m#Z#d d Zddl$Z$dd l$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-er$dd l$m.Z.ddl/Z/ddl0Z0ddl1Z2ddl3m3Z3ddl4Z4e5Z5ddl6m7Z8ddl6m9Z:da;ddZ<nddl=mZe>fZ e>Z ddl=m?ZddlZddlZddlZddl@mZmZmZmd?Zod@dAZiYn0zddBlpmqZqWn eyddBlrmqZqYn0ejddCdDkr&e3jsZsn ddElpmsZszddFltmuZuWn`eyddGltmvZvzddHlwmxZyWneydedJdKZyYn0GdLdMdMevZuYn0zddNlzm{Z{WnDeyzddNl|m{Z{WneydfdOdPZ{Yn0Yn0zddQltm}Z}WneyzddRl~mZWn eyJddRlmZYn0zddSlmZmZmZWneyxYn0GdTdUdUeZ}Yn0zddVlmZmZWnteyemdWejZdXdYZGdZd[d[eZdgd\d]ZGd^d_d_eZGd`dadaeZGdbdcdceQZYn0dS)h)absolute_importN)StringIO)FileType)shutil)urlparse urlunparseurljoinurlsplit urlunsplit) urlretrievequoteunquote url2pathname pathname2urlContentTooShortError splittypecCst|tr|d}t|S)Nutf-8) isinstanceunicodeencode_quote)srD/usr/local/lib/python3.9/site-packages/pip/_vendor/distlib/compat.pyrs  r) RequesturlopenURLError HTTPErrorHTTPBasicAuthHandlerHTTPPasswordMgr HTTPHandlerHTTPRedirectHandler build_opener) HTTPSHandler) HTMLParser)ifilter) ifilterfalsecCs<tdurddl}|dat|}|r4|ddSd|fS)Nrz ^(.*)@(.*)$r) _userprogrecompilematchgroup)hostr+r-rrr splituser4s   r0) TextIOWrapper) rr r r0rrr r r) rr rrrr r!r"r#r$)rrr) filterfalse)match_hostnameCertificateErrorc@s eZdZdS)r4N)__name__ __module__ __qualname__rrrrr4^sr4c Csg}|s dS|d}|d|dd}}|d}||krNtdt||sb||kS|dkrv|dn>|ds|dr|t|n|t| d d |D]}|t|qt d d |d tj } | |S)NF.rr*z,too many wildcards in certificate DNS name: z[^.]+zxn--z\*z[^.]*z\Az\.z\Z)splitcountr4reprlowerappend startswithr+escapereplacer,join IGNORECASEr-) ZdnhostnameZ max_wildcardsZpatspartsZleftmost remainderZ wildcardsfragpatrrr_dnsname_matchbs*    rIcCs|s tdg}|dd}|D]*\}}|dkr t||r@dS||q |s|ddD]6}|D],\}}|dkrdt||rdS||qdq\t|dkrtd|d tt|fn*t|dkrtd ||d fntd dS) Nztempty or no certificate, match_hostname needs a SSL socket or SSL context with either CERT_OPTIONAL or CERT_REQUIREDZsubjectAltNamerZDNSZsubjectZ commonNamerz&hostname %r doesn't match either of %s, zhostname %r doesn't match %rrz=no appropriate commonName or subjectAltName fields were found) ValueErrorgetrIr>lenr4rBmapr<)ZcertrDZdnsnamesZsankeyvaluesubrrrr3s2         r3)SimpleNamespacec@seZdZddZdS) ContainercKs|j|dSN__dict__update)selfkwargsrrr__init__szContainer.__init__N)r5r6r7rZrrrrrSsrS)whichc s"dd}tjr&||r"SdS|dur>tjdtj}|sFdS|tj}tj dkrtj |vrt| dtj tjddtj}t fdd |Drg}q‡fd d |D}ng}t }|D]P}tj|}||vr|||D](} tj|| } || |r| SqqdS) NcSs&tj|o$t||o$tj| SrT)ospathexistsaccessisdir)fnmoderrr _access_checks zwhich.._access_checkPATHwin32rPATHEXTc3s |]}|VqdSrT)r=endswith.0extcmdrr zwhich..csg|] }|qSrrrirlrr rozwhich..)r\r]dirnameenvironrLdefpathr:pathsepsysplatformcurdirinsertanysetnormcaseaddrB) rmrbr]rcpathextfilesseendirnormdirthefilenamerrlrr[s8         r[)ZipFile __enter__) ZipExtFilec@s$eZdZddZddZddZdS)rcCs|j|jdSrTrU)rXbaserrrrZszZipExtFile.__init__cCs|SrTrrXrrrrszZipExtFile.__enter__cGs |dSrTcloserXexc_inforrr__exit__szZipExtFile.__exit__N)r5r6r7rZrrrrrrrsrc@s$eZdZddZddZddZdS)rcCs|SrTrrrrrr"szZipFile.__enter__cGs |dSrTrrrrrr%szZipFile.__exit__cOs tj|g|Ri|}t|SrT) BaseZipFileopenr)rXargsrYrrrrr)sz ZipFile.openN)r5r6r7rrrrrrrr!sr)python_implementationcCs0dtjvrdStjdkrdStjdr,dSdS)NZPyPyjavaZJythonZ IronPythonZCPython)ruversionr\rr?rrrrr0s   r) sysconfig)CallablecCs t|tSrT)rr)objrrrcallableDsrrmbcsstrictsurrogateescapecCs:t|tr|St|tr$|ttStdt|jdSNzexpect bytes or str, not %s) rbytes text_typer _fsencoding _fserrors TypeErrortyper5filenamerrrfsencodeXs   rcCs:t|tr|St|tr$|ttStdt|jdSr) rrrdecoderrrrr5rrrrfsdecodeas   r)detect_encoding)BOM_UTF8lookupzcoding[:=]\s*([-\w.]+)cCsH|dddd}|dks*|dr.dS|dvs@|drDdS|S) N _-rzutf-8-)zlatin-1 iso-8859-1z iso-latin-1)zlatin-1-z iso-8859-1-z iso-latin-1-r)r=rAr?)orig_encencrrr_get_normal_namersrcsz jjWnty"dYn0dd}d}fdd}fdd}|}|trnd|dd}d }|sz|gfS||}|r||gfS|}|s||gfS||}|r|||gfS|||gfS) NFrcs"zWStyYdS0dS)Nro) StopIterationr)readlinerr read_or_stops z%detect_encoding..read_or_stopcsz|d}Wn2ty@d}dur4d|}t|Yn0t|}|sTdSt|d}z t|}Wn8tydurd|}n d|}t|Yn0r|j dkrԈdurd}n d}t||d 7}|S) Nrz'invalid or missing encoding declarationz {} for {!r}rzunknown encoding: zunknown encoding for {!r}: {}zencoding problem: utf-8z encoding problem for {!r}: utf-8z-sig) rUnicodeDecodeErrorformat SyntaxError cookie_refindallrr LookupErrorr)line line_stringmsgmatchesencodingcodec) bom_foundrrr find_cookies8         z$detect_encoding..find_cookieTrz utf-8-sig)__self__rAttributeErrorr?r)rrdefaultrrfirstsecondr)rrrrr}s4    &     r)r@r))r)unescape)ChainMap)MutableMapping)recursive_repr...csfdd}|S)NcsLtfdd}td|_td|_td|_tdi|_|S)Nc sLt|tf}|vrS|z|}W|n |0|SrT)id get_identr|discard)rXrOresult) fillvalue repr_running user_functionrrwrappers  z=_recursive_repr..decorating_function..wrapperr6__doc__r5__annotations__)rzgetattrr6rr5r)rrr)rrrdecorating_functions   z,_recursive_repr..decorating_functionr)rrrrr_recursive_reprs rc@seZdZddZddZddZd&dd Zd d Zd d ZddZ ddZ e ddZ e ddZddZeZddZeddZddZddZd d!Zd"d#Zd$d%ZdS)'rcGst|p ig|_dSrT)listmaps)rXrrrrrZszChainMap.__init__cCs t|dSrT)KeyErrorrXrOrrr __missing__szChainMap.__missing__c Cs8|jD]&}z||WSty*Yq0q||SrT)rrr)rXrOmappingrrr __getitem__s   zChainMap.__getitem__NcCs||vr||S|SrTrrXrOrrrrrL%sz ChainMap.getcCsttj|jSrT)rMrzunionrrrrr__len__(szChainMap.__len__cCsttj|jSrT)iterrzrrrrrr__iter__+szChainMap.__iter__cstfdd|jDS)Nc3s|]}|vVqdSrTr)rjmrOrrrn/roz(ChainMap.__contains__..ryrrrrr __contains__.szChainMap.__contains__cCs t|jSrTrrrrr__bool__1szChainMap.__bool__cCsd|dtt|jS)Nz{0.__class__.__name__}({1})rJ)rrBrNr<rrrrr__repr__4szChainMap.__repr__cGs|tj|g|RSrT)dictfromkeys)clsiterablerrrrr9szChainMap.fromkeyscCs&|j|jdg|jddRSNrr) __class__rcopyrrrrr>sz ChainMap.copycCs|jig|jRSrTrrrrrr new_childDszChainMap.new_childcCs|j|jddS)NrrrrrrparentsHszChainMap.parentscCs||jd|<dSNr)r)rXrOrPrrr __setitem__MszChainMap.__setitem__cCs6z|jd|=Wn ty0td|Yn0dSNrz(Key not found in the first mapping: {!r})rrrrrrr __delitem__Ps zChainMap.__delitem__cCs0z|jdWSty*tdYn0dS)Nrz#No keys found in the first mapping.)rpopitemrrrrrrVs zChainMap.popitemcGs@z|jdj|g|RWSty:td|Yn0dSr)rpoprr)rXrOrrrrr]s z ChainMap.popcCs|jddSr)rclearrrrrrdszChainMap.clear)N)r5r6r7rZrrrLrrrrrr classmethodrr__copy__rpropertyrrrrrrrrrrrs,     r)cache_from_sourcecCs"|dur d}|rd}nd}||S)NFcor)r]debug_overridesuffixrrrrns r) OrderedDict)r)KeysView ValuesView ItemsViewc@seZdZddZejfddZejfddZddZd d Zd d Z d5ddZ ddZ ddZ ddZ ddZddZddZddZeZeZefddZd6d!d"Zd7d#d$Zd%d&Zd'd(Zed8d)d*Zd+d,Zd-d.Zd/d0Zd1d2Zd3d4Z d S)9rcOspt|dkrtdt|z |jWn4tyZg|_}||dg|dd<i|_Yn0|j|i|dS)Nrz$expected at most 1 arguments, got %d)rMr_OrderedDict__rootr_OrderedDict__map_OrderedDict__update)rXrkwdsrootrrrrZs     zOrderedDict.__init__cCsF||vr6|j}|d}|||g|d<|d<|j|<||||dSr)r r )rXrOrPZ dict_setitemrlastrrrrs  zOrderedDict.__setitem__cCs0||||j|\}}}||d<||d<dS)Nrr)r r)rXrOZ dict_delitem link_prev link_nextrrrrs zOrderedDict.__delitem__ccs.|j}|d}||ur*|dV|d}qdS)Nrr)r rXrZcurrrrrrs  zOrderedDict.__iter__ccs.|j}|d}||ur*|dV|d}qdS)Nrr)rrrrr __reversed__s  zOrderedDict.__reversed__cCsbz@|jD]}|dd=q |j}||dg|dd<|jWntyRYn0t|dSrT)r  itervaluesr rrr)rXZnoderrrrrs  zOrderedDict.clearTcCs||s td|j}|r8|d}|d}||d<||d<n |d}|d}||d<||d<|d}|j|=t||}||fS)Nzdictionary is emptyrrr))rr r rr)rXrrlinkrrrOrPrrrrs   zOrderedDict.popitemcCst|SrT)rrrrrkeysszOrderedDict.keyscsfddDS)Ncsg|] }|qSrrrjrOrrrrproz&OrderedDict.values..rrrrrvaluesszOrderedDict.valuescsfddDS)Ncsg|]}||fqSrrrrrrrproz%OrderedDict.items..rrrrritemsszOrderedDict.itemscCst|SrT)rrrrriterkeysszOrderedDict.iterkeysccs|D]}||VqdSrTrrXkrrrrszOrderedDict.itervaluesccs|D]}|||fVqdSrTrrrrr iteritemsszOrderedDict.iteritemscOst|dkr tdt|fn |s,td|d}d}t|dkrL|d}t|trn|D]}||||<qZnszOrderedDict.__repr__csXfddD}t}ttD]}||dq(|rLj|f|fSj|ffS)Ncsg|]}||gqSrrrjrrrrrpNroz*OrderedDict.__reduce__..)varsrrrr)rXr inst_dictrrrr __reduce__Ls zOrderedDict.__reduce__cCs ||SrT)rrrrrrVszOrderedDict.copycCs|}|D] }|||<q |SrTr)rrrPdrOrrrrZs zOrderedDict.fromkeyscCs6t|tr*t|t|ko(||kSt||SrT)rrrMrr__eq__rXr rrrr)es  zOrderedDict.__eq__cCs ||k SrTrr*rrr__ne__nszOrderedDict.__ne__cCst|SrT)rrrrrviewkeyssszOrderedDict.viewkeyscCst|SrT)rrrrr viewvalueswszOrderedDict.viewvaluescCst|SrT)r rrrr viewitems{szOrderedDict.viewitems)T)N)N)N)!r5r6r7rZrrrrrrrrrrrrrrWr objectr!rr"rr'rrrr)r+r,r-r.rrrrrs8         r)BaseConfigurator valid_identz^[a-z_][a-z0-9_]*$cCst|}|std|dS)Nz!Not a valid Python identifier: %rT) IDENTIFIERr-rK)rrrrrr1s  r1c@seZdZddZdddZdS)ConvertingDictcCsJt||}|j|}||urF|||<t|tttfvrF||_||_ |SrT) rr configuratorconvertrr3ConvertingListConvertingTupleparentrOrXrOrPrrrrrs   zConvertingDict.__getitem__NcCsLt|||}|j|}||urH|||<t|tttfvrH||_||_ |SrT) rrLr4r5rr3r6r7r8rOrXrOrrPrrrrrLs  zConvertingDict.get)N)r5r6r7rrLrrrrr3s r3cCsDt|||}|j|}||ur@t|tttfvr@||_||_ |SrT) rrr4r5rr3r6r7r8rOr:rrrrs  rc@seZdZddZdddZdS)r6cCsJt||}|j|}||urF|||<t|tttfvrF||_||_ |SrT) rrr4r5rr3r6r7r8rOr9rrrrs   zConvertingList.__getitem__cCs<t||}|j|}||ur8t|tttfvr8||_|SrT) rrr4r5rr3r6r7r8)rXidxrPrrrrrs   zConvertingList.popN)r;)r5r6r7rrrrrrr6s r6c@seZdZddZdS)r7cCsBt||}|j|}||ur>t|tttfvr>||_||_ |SrT) tuplerr4r5rr3r6r7r8rOr9rrrrs   zConvertingTuple.__getitem__N)r5r6r7rrrrrr7sr7c@seZdZedZedZedZedZedZ dddZ e e Z d d Zd d Zd dZddZddZddZddZdS)r0z%^(?P[a-z]+)://(?P.*)$z ^\s*(\w+)\s*z^\.\s*(\w+)\s*z^\[\s*(\w+)\s*\]\s*z^\d+$ ext_convert cfg_convert)rkZcfgcCst||_||j_dSrT)r3configr4)rXr@rrrrZs zBaseConfigurator.__init__c Cs|d}|d}z\||}|D]F}|d|7}zt||}Wq$tyh||t||}Yq$0q$|WStytdd\}}td||f}|||_ |_ |Yn0dS)Nr8rrzCannot resolve %r: %s) r:rimporterrr ImportErrorrurrK __cause__ __traceback__) rXrrusedfoundrGetbvrrrresolves"       zBaseConfigurator.resolvecCs ||SrT)rJrXrPrrrr> szBaseConfigurator.ext_convertcCs|}|j|}|dur&td|n||d}|j|d}|r|j|}|rn||d}nb|j|}|r|d}|j|s||}n0zt |}||}Wnt y||}Yn0|r||d}qHtd||fqH|S)NzUnable to convert %rrzUnable to convert %r at %r) WORD_PATTERNr-rKendr@groups DOT_PATTERN INDEX_PATTERN DIGIT_PATTERNintr)rXrPrestrr(r<nrrrr?s4        zBaseConfigurator.cfg_convertcCst|ts$t|tr$t|}||_nt|tsHt|trHt|}||_nzt|tslt|trlt|}||_nVt|tr|j |}|r| }|d}|j |d}|r|d}t||}||}|S)Nprefixr)rr3rr4r6rr7r= string_typesCONVERT_PATTERNr- groupdictvalue_convertersrLr)rXrPrr(rU converterrrrrr52s,    zBaseConfigurator.convertcsrd}t|s||}dd}tfddD}|fi|}|rn|D]\}}t|||qX|S)Nz()r8cs g|]}t|r||fqSr)r1r$r@rrrpUroz5BaseConfigurator.configure_custom..)rrrJrrsetattr)rXr@rZpropsrYrrrPrr[rconfigure_customNs   z!BaseConfigurator.configure_customcCst|trt|}|SrT)rrr=rKrrras_tuple\s zBaseConfigurator.as_tupleN)r5r6r7r+r,rWrLrOrPrQrY staticmethod __import__rArZrJr>r?r5r]r^rrrrr0s      "r0)r)r)N)N)Z __future__rr\r+ruZsslrB version_infor basestringrVrrtypesrZ file_type __builtin__builtins ConfigParser configparserZ _backportrrr r r r urllibr rrrrrrrurllib2rrrrr r!r"r#r$r%httplib xmlrpclibQueuequeuer&htmlentitydefsZ raw_input itertoolsr'filterr(r2r*r0iostrr1 urllib.parseZurllib.requestZ urllib.errorZ http.clientclientZrequest xmlrpc.clientZ html.parserZ html.entitiesZentitiesinputr3r4rKrIrRrSr/r[F_OKX_OKzipfilerrrrZBaseZipExtFilervrrr NameErrorcollections.abcrrrrgetfilesystemencodingrrtokenizercodecsrrr,rrZhtmlr@Zcgir collectionsrrreprlibrrimportlib.utilrZimprthreadrr# dummy_thread_abcollrrr rZlogging.configr0r1Ir2r3rrr6r=r7rrrrs,       $,      ,0        2+A              [   b w