o 0¦iÚåã @sÔ dZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlmZddlmZmZeƒZej ¡D] \ZZeede<q]dZddddœd d „Zd d „Z d d„Z!dd„Z"dd„Z#dd„Z$e%edƒr‘dd„Z&ndd„Z&e%edƒrŸdd„Z'ndd„Z'dd„Z(dd „Z)d!d"„Z*d#d$„Z+d%d&„Z,d'd(„Z-d)d*„Z.d+d,„Z/d-d.„Z0d/d0„Z1d1d2„Z2d3d4„Z3d5d6„Z4d7d8„Z5d9d:„Z6dúd;d<„Z7ed=d>ƒZ8d?d@„Z9dAdB„Z:ddCœdDdE„Z;dFdG„ZdLdM„Z?dNdO„Z@dPdQ„ZAdRdS„ZBdTdU„ZCdúdVdW„ZDiZEiZFdúdXdY„ZGGdZd[„d[eHƒZIGd\d]„d]ejJƒZKd^d_„ZLd`da„ZMGdbdc„dceHƒZNGddde„deƒZOdfdg„ZPdhdi„ZQdjdk„ZRdldm„ZSdûdndo„ZTedpdqƒZUdrds„ZVedtduƒZWdvdw„ZXedxdyƒZYdzd{„ZZed|d}ƒZ[d~d„Z\dúd€d�„Z]d‚dƒ„Z^dddd„iie_d…d†„d‡d†„dˆd†„d‰d†„e]f dŠd‹„Z`e_dŒd†„d�d†„dŽd†„fd�d�„Zad‘d’„Zbd“d”„Zcd•d–„Zded—d˜ƒZed™dš„Zfed›dœƒZgdüdždŸ„Zhd d¡„Zied¢d£egjjƒZkdüd¤d¥„Zldüd¦d§„Zmd¨d©„Zndüdªd«„Zodüd¬d­„ZpeqƒZrd®d¯„Zsd°d±„Ztd²d³„Zud´dµ„Zvd¶d·„Zwerfd¸d¹„ZxdºZyd»Zzd¼Z{d½Z|d¾d¿„Z}dÀdÁ„Z~dÂZdÃZ€dÄZ�dÅZ‚dÆdÇ„ZƒdÈdÉ„Z„e…e…j†ƒZ‡e…eˆj†ƒZ‰e…eŠj‹dʃZŒe‡e‰eŒej�fZŽdËdÌ„Z�dýdÍd΄Z�dÏdЄZ‘dÑdÒ„Z’dÓdÔ„Z“dÕdÖ„Z”d×dØ„Z•dþdÚdÛ„Z–dþdÜdÝ„Z— Ù dÿdÞdß„Z˜dÙdÙddddàœdádâ„Z™Gdãdä„däƒZšGdådæ„dæƒZ›Gdçdè„dèejœƒZ�e�jžZŸe�j Z¡e�j¢Z£e�j¤Z¥e�j¦Z§eŸdée¡dêe£dëe¥dìe§díiZ¨Gdîdï„dïƒZ©Gdðdñ„dñƒZªGdòdó„dóƒZ«dÙddddôœdõdö„Z¬d÷dø„Z­e®dùk�rèe­ƒdSdS()zKa-Ping Yee z'Yury Selivanov éN)Ú attrgetter)Ú namedtupleÚ OrderedDictZCO_iF©ÚglobalsÚlocalsÚeval_strc sž t|tƒrFt|ddƒ}|r"t|dƒr"| dd¡}t|tjƒr!d}nd}d}t|ddƒ}|r=tj |d¡}|r=t|ddƒ}t t |ƒƒ} |} n2t|tj ƒr\t|ddƒ}t|dƒ}d} d} nt |ƒrqt|ddƒ}t|ddƒ}d} |} nt |›d�ƒ‚|dur~iSt|t ƒsŠt|›d�ƒ‚|sŽiS|s”t |ƒS| durµ t| d ƒr¢| j} q˜t| tjƒr¬| j} q˜ t| dƒrµ| j}ˆdur»|‰ˆdurÁ| ‰‡‡fd d „| ¡Dƒ} | S) NÚ__dict__ÚgetÚ__annotations__Ú __module__Ú __globals__z% is not a module, class, or callable.z+.__annotations__ is neither a dict nor NoneTÚ __wrapped__cs,i|]\}}|t|tƒs|nt|ˆˆƒ“qS©)Ú isinstanceÚstrÚeval)Ú.0ÚkeyÚvalue©rrrú./opt/alt/python310/lib64/python3.10/inspect.pyÚ ¯s þÿz#get_annotations..)rÚtypeÚgetattrÚhasattrr ÚtypesÚGetSetDescriptorTypeÚsysÚmodulesÚdictÚvarsÚ ModuleTypeÚcallableÚ TypeErrorÚ ValueErrorrÚ functoolsÚpartialÚfuncr Úitems) ÚobjrrrZobj_dictÚannZ obj_globalsÚ module_nameÚmoduleZ obj_localsÚunwrapZ return_valuerrrÚget_annotationsBsn ,   €             þr/cCó t|tjƒS©N)rrr"©ÚobjectrrrÚismodule¶ó r4cCó t|tƒSr1)rrr2rrrÚisclass¿ó r7cCr0r1)rrÚ MethodTyper2rrrÚismethodÇó r:cCs< t|ƒs t|ƒs t|ƒrdSt|ƒ}t|dƒot|dƒ S)NFÚ__get__Ú__set__©r7r:Ú isfunctionrr©r3ÚtprrrÚismethoddescriptorÑs  rBcCs: t|ƒs t|ƒs t|ƒrdSt|ƒ}t|dƒpt|dƒS)NFr=Ú __delete__r>r@rrrÚisdatadescriptorås rDÚMemberDescriptorTypecCr0r1)rrrEr2rrrÚismemberdescriptorõó rFcCó dS©NFrr2rrrrFýórcCr0r1)rrrr2rrrÚisgetsetdescriptorrGrKcCrHrIrr2rrrrKrJcCr0r1)rrÚ FunctionTyper2rrrr?s r?cCsF t|ƒr |j}t|ƒst |¡}t|ƒst|ƒsdSt|jj|@ƒSrI) r:Ú__func__r&Ú_unwrap_partialr?Ú_signature_is_functionlikeÚboolÚ__code__Úco_flags)ÚfÚflagrrrÚ_has_code_flag"sÿ rUcCr6r1)rUZ CO_GENERATOR©r*rrrÚisgeneratorfunction-ó rWcCr6r1)rUZ CO_COROUTINErVrrrÚiscoroutinefunction4rXrYcCr6r1)rUZCO_ASYNC_GENERATORrVrrrÚisasyncgenfunction;r8rZcCr0r1)rrÚAsyncGeneratorTyper2rrrÚ isasyncgenCó r\cCr0r1)rrÚ GeneratorTyper2rrrÚ isgeneratorGs r_cCr0r1)rrÚ CoroutineTyper2rrrÚ iscoroutineXr]racCs8 t|tjƒpt|tjƒot|jjt@ƒpt|tj j ƒSr1) rrr`r^rPÚgi_coderRZCO_ITERABLE_COROUTINEÚ collectionsÚabcÚ Awaitabler2rrrÚ isawaitable\s  þ ýrfcCr0r1)rrÚ TracebackTyper2rrrÚ istracebackcr;rhcCr0r1)rrÚ FrameTyper2rrrÚisframems rjcCr0r1)rrÚCodeTyper2rrrÚiscode{s rlcCr0r1)rrÚBuiltinFunctionTyper2rrrÚ isbuiltin”r5rncCs" t|ƒpt|ƒpt|ƒpt|ƒSr1)rnr?r:rBr2rrrÚ isroutine�sÿþýrocCs¨ t|tƒsdS|jt@rdStt|ƒtjƒsdSt|dƒr dS|j  ¡D] \}}t |ddƒr2dSq%|j D]}t |ddƒD]}t ||dƒ}t |ddƒrPdSq>q6dS)NFTÚ__abstractmethods__Ú__isabstractmethod__r) rrÚ __flags__ÚTPFLAGS_IS_ABSTRACTÚ issubclassrdÚABCMetarr r)rÚ __bases__)r3ÚnamerÚbaserrrÚ isabstract¤s*    ÿ   ÿþryc Cs t|ƒr |ft|ƒ}nd}g}tƒ}t|ƒ}z|jD]}|j ¡D]\}}t|tj ƒr2|  |¡q#qWn t y>Ynw|D]>} z t || ƒ} | |vrOt ‚Wnt yl|D]}| |jvrg|j| } nqYYqAYnw|rs|| ƒrz|  | | f¡|  | ¡qA|jdd„d�|S)NrcSs|dS)Nrr)ZpairrrrÚåózgetmembers..©r)r7ÚgetmroÚsetÚdirrvr r)rrÚDynamicClassAttributeÚappendÚAttributeErrorrÚaddÚsort) r3Z predicateÚmroÚresultsÚ processedÚnamesrxÚkÚvrrrrrÚ getmembers¼sL   €þÿ ÿ ÿ   þüü  r‹Ú Attributezname kind defining_class objectc Cs6 t|ƒ}tt|ƒƒ}tdd„|Dƒƒ}|f|}||}t|ƒ}|D]}|j ¡D]\}}t|tjƒr>|j dur>|  |¡q*q#g} t ƒ} |D]Ñ} d} d} d}| | vr·z| dkr\t dƒ‚t || ƒ} Wnt yt}zWYd}~nGd}~wwt | d| ƒ} | |vr·d} d}|D]}t || dƒ}|| ur“|}q…|D]}z| || ¡}Wn ty©Yq–w|| ur°|}q–|dur·|} |D]}| |jvrÍ|j| }| |vrË|} nq¹| durÓqG| durÙ| n|}t|ttjfƒrèd}|}n!t|ttjfƒrõd}|}nt|tƒrÿd}|}n t|ƒ�rd }nd }|   t| || |ƒ¡|  | ¡qG| S) Ncss �|] }|ttfvr|VqdSr1)rr3)rÚclsrrrÚ s€z'classify_class_attrs..r z)__dict__ is special, don't want the proxyÚ __objclass__z static methodz class methodÚpropertyÚmethodÚdata)r}rÚtuplerr r)rrr€Úfgetr�r~Ú ExceptionrÚ __getattr__r‚Ú staticmethodÚBuiltinMethodTypeÚ classmethodÚClassMethodDescriptorTyper�rorŒrƒ)r�r…ZmetamroZ class_basesZ all_basesrˆrxr‰rŠÚresultr‡rwZhomeclsZget_objZdict_objÚexcZlast_clsZsrch_clsZsrch_objr*ÚkindrrrÚclassify_class_attrsês’   €þ  €ÿ  € ÿ€  ü   ržcCó |jSr1)Ú__mro__)r�rrrr}^sr}©Ústopcs„ ˆdur dd„}n‡fdd„}|}t|ƒ|i}t ¡}||ƒr@|j}t|ƒ}||vs1t|ƒ|kr8td |¡ƒ‚|||<||ƒs |S)NcSs t|dƒS©Nr©r©rSrrrÚ _is_wrapperuó zunwrap.._is_wrappercst|dƒo ˆ|ƒ Sr£r¤r¥r¡rrr¦xsz!wrapper loop when unwrapping {!r})ÚidrÚgetrecursionlimitrÚlenr%Úformat)r(r¢r¦rSZmemoZrecursion_limitZid_funcrr¡rr.ds   ûr.cCs | ¡}t|ƒt| ¡ƒSr1)Ú expandtabsrªÚlstrip)ÚlineZexplinerrrÚ indentsizeˆsr¯cCsNtj |j¡}|dur dS|j d¡dd…D]}t||ƒ}qt|ƒs%dS|S)NÚ.éÿÿÿÿ)rrr r Ú __qualname__Úsplitrr7)r(r�rwrrrÚ _findclass�s r´c Csât|ƒr'|jD]}|tur$z|j}Wn tyYqw|dur$|SqdSt|ƒrI|jj}|j}t|ƒrEt t ||dƒdƒ|jurE|}nŠ|j }n†t |ƒrb|j}t |ƒ}|dus_t ||ƒ|uradSnmt |ƒr�|j}|j}t|ƒr}|jd||jkr}|}nR|j }nNt|tƒrž|j}|j}t |ƒ}|dus›t ||ƒ|ur�dSn1t|ƒs¦t|ƒrÍ|j}|j}t ||ƒ|urµdSt|ƒrÌt |ddƒ}t|tƒrÌ||vrÌ||SndS|jD]}zt ||ƒj}Wn tyåYqÒw|durî|SqÒdS)NrMr°Ú __slots__)r7r r3Ú__doc__r‚r:rMÚ__name__Ú__self__rÚ __class__r?r´rnr²rr�r”rBrDr�rFr )r*rxÚdocrwÚselfr�r(ÚslotsrrrÚ_finddoc—sx   ÿ€ÿ ÿ €  ÿÿr½c Csf z|j}Wn tyYdSw|dur(zt|ƒ}Wn ttfy'YdSwt|tƒs/dSt|ƒSr1)r¶r‚r½r$rrÚcleandoc)r3rºrrrÚgetdocÕs  ÿ ÿ r¿cCsú z | ¡ d¡}Wn tyYdSwtj}|dd…D]}t| ¡ƒ}|r3t|ƒ|}t||ƒ}q|r>|d ¡|d<|tjkrWtdt|ƒƒD] }|||d…||<qJ|rg|dsg|  ¡|rg|dr]|rx|dsx|  d¡|rx|drmd  |¡S)NÚ érr±) r¬r³Ú UnicodeErrorrÚmaxsizerªr­ÚminÚrangeÚpopÚjoin)rºÚlinesZmarginr®ZcontentÚindentÚirrrr¾ès0 ÿ   € (  ÿ   ÿ r¾cCsÖ t|ƒrt|ddƒr|jStd |¡ƒ‚t|ƒr>t|dƒr7tj  |j ¡}t|ddƒr.|jS|j dkr7t dƒ‚td |¡ƒ‚t |ƒrE|j }t|ƒrL|j}t|ƒrS|j}t|ƒrZ|j}t|ƒra|jStd t|ƒj¡ƒ‚)NÚ__file__z{!r} is a built-in moduler Ú__main__úsource code not availablez{!r} is a built-in classzVmodule, class, method, function, traceback, frame, or code object was expected, got {})r4rrËr$r«r7rrrr r ÚOSErrorr:rMr?rQrhÚtb_framerjÚf_coderlÚ co_filenamerr·)r3r-rrrÚgetfiles8    ÿÿrÒcCsV tj |¡}dd„tj ¡Dƒ}| ¡|D]\}}| |¡r(|d|…SqdS)NcSsg|] }t|ƒ |f‘qSr)rª)rÚsuffixrrrÚ %sÿz!getmodulename..)ÚosÚpathÚbasenameÚ importlibÚ machineryÚ all_suffixesr„Úendswith)rÖZfnameÚsuffixesZneglenrÓrrrÚ getmodulename!s ÿ  ÿrÝcsÜ t|ƒ‰tjjdd…}|tjjdd…7}t‡fdd„|Dƒƒr1tj ˆ¡dtjj d‰nt‡fdd„tjj Dƒƒr@dStj  ˆ¡rHˆSt |ˆƒ}t |ddƒdurWˆSt t |ddƒddƒdureˆSˆtjvrlˆSdS)Nc3ó�|]}ˆ |¡VqdSr1©rÛ©rÚs©ÚfilenamerrrŽ4ó€z getsourcefile..rc3rÞr1rßràrârrrŽ7räÚ __loader__Ú__spec__Úloader)rÒrØrÙÚDEBUG_BYTECODE_SUFFIXESÚOPTIMIZED_BYTECODE_SUFFIXESÚanyrÕrÖÚsplitextÚSOURCE_SUFFIXESÚEXTENSION_SUFFIXESÚexistsÚ getmodulerÚ linecacheÚcache)r3Zall_bytecode_suffixesr-rrârÚ getsourcefile-s, ÿ ÿ   ÿròcCs. |dur t|ƒp t|ƒ}tj tj |¡¡Sr1)ròrÒrÕrÖÚnormcaseÚabspath)r3Ú _filenamerrrÚ getabsfileFsröc Cs| t|ƒr|St|dƒrtj |j¡S|dur#|tvr#tj t|¡Szt||ƒ}Wn tt fy6YdSw|tvrCtj t|¡Stj  ¡  ¡D].\}}t|ƒrxt|dƒrx|j }|t  |d¡krcqJ|t |<t|ƒ}|jt|<ttj |¡<qJ|tvr…tj t|¡Stjd}t|dƒs‘dSt||jƒr£t||jƒ}||ur£|Stjd}t||jƒrºt||jƒ} | |ur¼|SdSdS)Nr rËrÌr·Úbuiltins)r4rrrr r Ú modulesbyfilerör$ÚFileNotFoundErrorÚcopyr)rËÚ_filesbymodnamer·rÕrÖÚrealpathr) r3rõÚfileÚmodnamer-rSÚmainZ mainobjectZbuiltinZ builtinobjectrrrrïRsT ÿ ÿ ÿ€       ýrïc@ó eZdZdS)ÚClassFoundExceptionN©r·r r²rrrrr�órc@s(eZdZdd„Zdd„ZeZdd„ZdS)Ú _ClassFindercCsg|_||_dSr1)ÚstackÚqualname)r»rrrrÚ__init__‡ó z_ClassFinder.__init__cCs<|j |j¡|j d¡| |¡|j ¡|j ¡dS)Nz)rr�rwÚ generic_visitrÆ©r»ÚnoderrrÚvisit_FunctionDef‹s    z_ClassFinder.visit_FunctionDefcCsb|j |j¡|jd |j¡kr%|jr|jdj}n|j}|d8}t|ƒ‚| |¡|j  ¡dS)Nr°rrÁ) rr�rwrrÇÚdecorator_listÚlinenorr rÆ)r»r Ú line_numberrrrÚvisit_ClassDef”s z_ClassFinder.visit_ClassDefN)r·r r²rr Zvisit_AsyncFunctionDefrrrrrr…s  rc Cs¾ t|ƒ}|r t |¡nt|ƒ}| d¡r| d¡stdƒ‚t||ƒ}|r.t ||j ¡}nt |¡}|s9tdƒ‚t |ƒrA|dfSt |ƒr||j }d  |¡}t |¡}t|ƒ}z | |¡Wtdƒ‚ty{}z|jd} || fWYd}~Sd}~wwt|ƒrƒ|j}t|ƒrŠ|j}t|ƒr‘|j}t|ƒr˜|j}t|ƒrÛt|dƒs¥td ƒ‚|jd } t  d ¡} | dkr×z|| } Wn t!yÄtd ƒ‚w|  "| ¡rÏ || fS| d } | dks³|| fStd ƒ‚)Nú<ú>rÍzcould not get source coderÚzcould not find class definitionÚco_firstlinenoz"could not find function definitionrÁz>^(\s*def\s)|(\s*async\s+def\s)|(.*(?rrÁ) r.r#rhrÏr4rjrÐÚco_namerE©r3rÈr"rrrÚgetsourcelinesXs ÿ rHcCs t|ƒ\}}d |¡S)Nr)rHrÇrGrrrÚ getsourcems  rIcCsT g}|jtddƒd�|D]}| ||jf¡||vr'| t||||ƒ¡q|S)Nr r·r|)r„rr�rvÚwalktree)ÚclassesÚchildrenÚparentr†ÚcrrrrJws€rJcCsœ i}g}|D]2}|jr0|jD]}||vrg||<|||vr&|| |¡|r.||vr.nqq||vr9| |¡q|D] }||vrG| |¡q| s¤d} | s¨d} t||||| || |ƒS)NF)Úfollow_wrapper_chainsÚskip_bound_argÚsigclsrzunsupported callablerÚreturn)Ú_signature_from_callableÚ Signaturer•r$Úreturn_annotationÚemptyÚ parametersÚvaluesr�rwÚ_POSITIONAL_ONLYr�ÚdefaultÚ_POSITIONAL_OR_KEYWORDÚ_VAR_POSITIONALÚ _KEYWORD_ONLYÚ _VAR_KEYWORDÚ annotationrj)r(ÚsigÚexrr]r^Ú posonlyargsr[Ú annotationsrgÚ kwdefaultsÚparamr�rwrrrrfÜsl ü €û     €   €   €  €ÿrfÚArgInfozargs varargs keywords localscCs" t|jƒ\}}}t||||jƒSr1)r_rÐr‚Úf_locals)Úframerr]r^rrrÚ getargvalues;sr…cCstt|ddƒdkrdd„}t d|t|ƒ¡St|tjƒrt|ƒSt|tƒr6|j d|fvr.|j S|j d|j St|ƒS)Nr ÚtypingcSs| ¡}| d¡S)Nztyping.)ÚgroupÚ removeprefix)rÚtextrrrÚreplGs zformatannotation..replz[\w\.]+r÷r°) rrÚsubÚreprrrÚ GenericAliasrrr r²)r{Z base_modulerŠrrrÚformatannotationEs  rŽcst|ddƒ‰‡fdd„}|S)Nr cs t|ˆƒSr1)rŽ)r{©r-rrÚ_formatannotationUr§z5formatannotationrelativeto.._formatannotation)r)r3r�rr�rÚformatannotationrelativetoSs  r‘rcCód|S©NÚ*r©rwrrrrz\r{rzcCr’©Nú**rr•rrrrz]r{cCó dt|ƒS©Nú=©rŒ©rrrrrz^r+cCr’)Nz -> r)r‰rrrrz_r{c s: ddlm} | dtdd�‡‡‡fdd„}g}|r"t|ƒt|ƒ}t|ƒD]\}}||ƒ}|r>||kr>|| |||ƒ}| |¡q&|durR| |||ƒƒ¡n|rY| d¡|rw|D]}||ƒ}|rq||vrq|| ||ƒ7}| |¡q]|dur„| | ||ƒƒ¡d d  |¡d }d ˆvr›|| ˆˆd ƒƒ7}|S) Nr)rdzc`formatargspec` is deprecated since Python 3.5. Use `signature` and the `Signature` object directlyr$racs(ˆ|ƒ}|ˆvr|dˆˆ|ƒ7}|S)Nz: r)Úargr›©rrŽÚ formatargrrÚformatargandannotationtsz-formatargspec..formatargandannotationr”ú(ú, ú)rn)rcrdrerªÚ enumerater�rÇ)rr]r^rgr[rhrrŸÚ formatvarargsÚ formatvarkwÚ formatvalueZ formatreturnsrŽrdr ÚspecsZ firstdefaultrÊr�ÚspecZ kwonlyargr›rržrÚ formatargspecYs> ý     rªcCr’r“rr•rrrrz•r{cCr’r–rr•rrrrz–r{cCr˜r™r›rœrrrrz—r+c Csˆ |||fdd„}g} tt|ƒƒD] } |  ||| ƒ¡q|r,|  ||ƒ|||ƒ¡|r;|  ||ƒ|||ƒ¡dd | ¡dS)NcSs||ƒ|||ƒSr1r)rwrrŸr§rrrÚconvertžsz formatargvalues..convertr¡r¢r£)rÅrªr�rÇ) rr]r^rrŸr¥r¦r§r«r¨rÊrrrÚformatargvalues“s ÿr¬cs”‡fdd„|Dƒ}t|ƒ}|dkr|d}n|dkr dj|Ž}ndj|dd…Ž}|dd…=d  |¡|}td |||r=d nd |dkrDd nd|fƒ‚)Ncsg|] }|ˆvrt|ƒ‘qSrr›)rrw©rtrrrÔ«sz&_missing_arguments..rÁrr$z {} and {}z , {} and {}éþÿÿÿr¢z*%s() missing %i required %s argument%s: %sÚ positionalú keyword-onlyrrá)rªr«rÇr$)Úf_nameZargnamesÚposrtrˆÚmissingráÚtailrr­rÚ_missing_argumentsªs    þÿrµc sÔt|ƒ|}t‡fdd„|Dƒƒ}|r|dk} d|f} n|r*d} d|t|ƒf} n t|ƒdk} tt|ƒƒ} d} |rOd} | |dkrCd nd||dkrKd ndf} td || | rWd nd|| |dkre|sed fƒ‚d fƒ‚) Ncsg|]}|ˆvr|‘qSrr)rr�r­rrrÔ¼sz_too_many..rÁz at least %dTz from %d to %drz7 positional argument%s (and %d keyword-only argument%s)ráz5%s() takes %s positional argument%s but %d%s %s givenZwasZwere)rªrr$) r±rZkwonlyr]ZdefcountZgivenrtZatleastZ kwonly_givenZpluralr|Z kwonly_sigÚmsgrr­rÚ _too_manyºs0    ÿÿÿÿÿr·cOsð t|ƒ}|\}}}}}} } |j} i} t|ƒr"|jdur"|jf|}t|ƒ} t|ƒ}|r0t|ƒnd}t| |ƒ}t|ƒD] }||| ||<q;|rRt||d…ƒ| |<t||ƒ}|r^i| |<|  ¡D])\}}||vr{|stt d| |fƒ‚|| ||<qb|| vr‡t d| |fƒ‚|| |<qb| |krœ|sœt | ||||| | ƒ| |krÑ|d||…}|D] }|| vr·t | |d| ƒqªt |||d…ƒD]\}}|| vrÐ||| |<qÂd}|D]}|| vrì| rè|| vrè| || |<qÕ|d7}qÕ|röt | |d| ƒ| S)Nrz*%s() got an unexpected keyword argument %rz(%s() got multiple values for argument %rTrÁF)rfr·r:r¸rªrÄrÅr“r~r)r$r·rµr¤)r(r¯Znamedr©rr]r^rgr[rhr+r±Z arg2valueZnum_posZnum_argsZ num_defaultsÚnrÊZpossible_kwargsÚkwrZreqr�r³ÚkwargrrrÚ getcallargsÏsn    ÿ ÿ   ÿ€ € €r»Ú ClosureVarsz"nonlocals globals builtins unboundc Csø t|ƒr|j}t|ƒstd |¡ƒ‚|j}|jduri}n dd„t|j|jƒDƒ}|j }|  dt j ¡}t |ƒr;|j }i}i}tƒ}|jD]/}|dvrLqEz||||<WqEtytz||||<Wntyq| |¡YnwYqEwt||||ƒS)Nú{!r} is not a Python functioncSsi|]\}}||j“qSr)Ú cell_contents)rÚvarZcellrrrr"sÿÿz"getclosurevars..Ú __builtins__)ÚNoneÚTrueÚFalse)r:rMr?r$r«rQÚ __closure__ÚzipÚ co_freevarsr r r÷r r4r~Úco_namesÚKeyErrorrƒr¼) r(ÚcodeZ nonlocal_varsZ global_nsZ builtin_nsZ global_varsZ builtin_varsZ unbound_namesrwrrrÚgetclosurevars sD  þ   ÿ€ýÿrÊÚ Tracebackz+filename lineno function code_context indexrÁcCsÚ t|ƒr |j}|j}n|j}t|ƒstd |¡ƒ‚t|ƒp!t|ƒ}|dkr_|d|d}zt |ƒ\}}Wn t yCd}}Yn wt dt |t |ƒ|ƒƒ}||||…}|d|}nd}}t|||jj||ƒS)Nz'{!r} is not a frame or traceback objectrrÁr$)rhÚ tb_linenorÏÚf_linenorjr$r«ròrÒr#rÎÚmaxrÄrªrËrÐrF)r„Úcontextrrãr'rÈr"ÚindexrrrÚ getframeinfoDs(  ÿrÑcCrŸr1)rÍ©r„rrrÚ getlinenodsrÓÚ FrameInforÒcCs6 g}|r|ft||ƒ}| t|Ž¡|j}|s|Sr1)rÑr�rÔÚf_back)r„rÏÚ framelistÚ frameinforrrÚgetouterframesksýrØcCs8 g}|r|jft||ƒ}| t|Ž¡|j}|s|Sr1)rÏrÑr�rÔÚtb_next)ÚtbrÏrÖr×rrrÚgetinnerframeswsýrÛcCs ttdƒr t d¡SdS)NÚ _getframerÁ)rrrÜrrrrÚ currentframeƒsrÝcCs tt d¡|ƒS)NrÁ)rØrrÜ©rÏrrrr‡srcCs tt ¡d|ƒS)Nr$)rÛrÚexc_inforÞrrrÚtrace‹sràcCstjd |¡S)Nr )rr r<)ÚklassrrrÚ_static_getmro”órâcCs6i}zt |d¡}Wn tyYnwt ||t¡S©Nr )r3Ú__getattribute__r‚r r Ú _sentinel)r*ÚattrZ instance_dictrrrÚ_check_instance—s ÿrèc CsFt|ƒD]}tt|ƒƒtur z|j|WStyYqwqtSr1)râÚ_shadowed_dictrrær rÈ)rárçÚentryrrrÚ _check_class s  ÿýrëcCs$zt|ƒWdStyYdSw©NFT)râr$rVrrrÚ_is_type©s   þÿríc Csltjd}t|ƒD]*}z | |¡d}Wn tyYq wt|ƒtjur/|jdkr/|j|us3|Sq t Srä) rr râr<rÈrrr·r�ræ)ráÚ dict_attrrêZ class_dictrrrré°s   ÿ  ÿréc Cs t}t|ƒs t|ƒ}t|ƒ}|tust|ƒtjurt||ƒ}n|}t||ƒ}|turC|turCtt|ƒdƒturCtt|ƒdƒturC|S|turI|S|turO|S||urvtt|ƒƒD]}tt|ƒƒturuz|j |WSt ytYqYwqY|tur||St |ƒ‚)Nr<r=) rærírrérrErèrërâr rÈr‚)r*rçrvZinstance_resultrárîZ klass_resultrêrrrÚgetattr_static¾s>  €  ÿýrïÚ GEN_CREATEDÚ GEN_RUNNINGÚ GEN_SUSPENDEDÚ GEN_CLOSEDcCó. |jrtS|jdur tS|jjdkrtStS©Nr±)Ú gi_runningrñÚgi_frameróÚf_lastirðrò)Ú generatorrrrÚgetgeneratorstateóó  rúcCs8 t|ƒs td |¡ƒ‚t|ddƒ}|dur|jjSiS)Nz{!r} is not a Python generatorr÷)r_r$r«rr÷rƒ)rùr„rrrÚgetgeneratorlocalss rüÚ CORO_CREATEDÚ CORO_RUNNINGÚCORO_SUSPENDEDÚ CORO_CLOSEDcCrôrõ)Ú cr_runningrþÚcr_framerrørýrÿ)Ú coroutinerrrÚgetcoroutinestaterûrcCs t|ddƒ}|dur|jSiS)Nr)rrƒ)rr„rrrÚgetcoroutinelocals/s  rÚ from_bytescCs8 zt||ƒ}Wn tyYdSwt|tƒs|SdSr1)rr‚rÚ_NonUserDefinedCallables)r�Z method_nameZmethrrrÚ"_signature_get_user_defined_methodKs ÿ ýrc Cs† |j}t| ¡ƒ}|jpd}|jpi}|r||}z |j|i|¤Ž}Wnty:}z d |¡} t| ƒ|‚d}~wwd} | ¡D]y\} } z|j | } Wn t yUYn4w| j t ura|  | ¡qA| j tur|| |vrud} | j| d�|| <n|  | j¡qA| j tur‰| j| d�|| <| rº| j tur¢|| jtd�}||| <| | ¡qA| j ttfvr¯| | ¡qA| j turº|  | j¡qA|j| ¡d�S)Nrz+partial object {!r} has incorrect argumentsFT)rv©r�©rs)rsrr)rÚkeywordsÚ bind_partialr$r«r%Ú argumentsrÈr�rurÆrwÚreplacerwryÚ move_to_endrzrxrt)Ú wrapped_sigr'Z extra_argsZ old_paramsÚ new_paramsZ partial_argsZpartial_keywordsZbar}r¶Ztransform_to_kwonlyÚ param_namer�Z arg_valueZ new_paramrrrÚ_signature_get_partial[sV     €þ ÿ           €rcCsn t|j ¡ƒ}|r|djttfvrtdƒ‚|dj}|ttfvr)|dd…}n|t ur1tdƒ‚|j |d�S)Nrzinvalid method signaturerÁzinvalid argument typer ) r“rsrtr�rzryr%rwrurxr)r|Úparamsr�rrrÚ_signature_bound_method§s   rcCs( t|ƒpt|ƒpt|tƒp|ttfvSr1)rnrBrrrr3rVrrrÚ_signature_is_builtinÁsÿþ ûrcCsž t|ƒr t|ƒr dSt|ddƒ}t|ddƒ}t|dtƒ}t|dtƒ}t|ddƒ}t|tjƒoNt|tƒoN|dup | d¡}|dkr| d¡}| d¡}| d¡}|d|…S)Nú,r±r£ú:ršr$)Úfind)r©r²ZcposrrrÚ_signature_get_bound_paramæs     rcCs" |s|ddfSd}d}dd„| d¡Dƒ}t|ƒj}t |¡}d}d}g}|j} d} tj} tj} t|ƒ} |D]O} | j | j }}|| kr_|dkrT|rMd}nd}| d7} q7|d kr_d}| d}q7|| krj|d krj| }q7|rzd}|| krv|d ksz| d ƒ| |ƒ|dkr†| d ƒq7d  |¡}|||fS)NcSsg|] }|r| d¡‘qS)Úascii)Úencode)rÚlrrrrÔsz6_signature_strip_non_python_syntax..rÀFrrTrÁú/ú$r£r¢ú r) r³rArBr8r�r>ÚOPÚ ERRORTOKENÚnextrÚstringrÇ)Ú signatureÚself_parameterÚlast_positional_onlyrÈrùZ token_streamZ delayed_commaZskip_next_commar‰rƒZcurrent_parameterr$r%Útrr'Úclean_signaturerrrÚ"_signature_strip_non_python_syntaxýsT   €  r-Tc sN ddl‰|j‰t|ƒ\}}}d|d}zˆ |¡}Wn ty'd}Ynwt|ˆjƒs5td ˆ¡ƒ‚|j d} g‰ˆj ‰d}i‰t ˆddƒ} | rWt j  | d¡}|rW|j‰t j  ¡‰ ‡fdd„‰‡‡‡ fdd „‰ G‡‡ fd d „d ˆjƒ‰ˆf‡‡‡‡‡‡‡‡fd d „ } t| jjƒ} t| jjƒ} tj| | dd�}|dur¡ˆj‰nˆj‰ttt|ƒƒƒD]\}\}}| ||ƒ||kr¾ˆj‰q¬| jjr͈j‰| | jjˆƒˆj‰t| jj| jj ƒD] \}}| ||ƒqÙ| jj!rñˆj"‰| | jj!ˆƒ|du�r t ˆddƒ}|du}t#|ƒ}|�r|�s |�rˆ $d¡n ˆdj%ˆjd�} | ˆd<|ˆ|j d�S)Nrzdef fooz: passú"{!r} builtin has invalid signaturer cs|jdur tdƒ‚|jS)Nz'Annotations are not currently supported)r{r%r�)r ©rrrÚ parse_namejs z&_signature_fromstr..parse_namec slzt|ˆƒ}Wnty!zt|ˆƒ}Wn tyt‚wYnwt|tttttt dƒfƒr4ˆ  |¡St‚r1) rÚ NameErrorr%rrÚintÚfloatÚbytesrPrÚConstant)rár)rÚ module_dictÚsys_module_dictrrÚ wrap_valueps  ÿÿþ z&_signature_fromstr..wrap_valuecs4eZdZ‡‡fdd„Z‡‡fdd„Z‡fdd„ZdS)z,_signature_fromstr..RewriteSymbolicscsdg}|}t|ˆjƒr| |j¡|j}t|ˆjƒs t|ˆjƒs!t‚| |j¡d t |ƒ¡}ˆ|ƒS)Nr°) rrŒr�rçrÚNamer%r¨rÇÚreversed)r»r Úar¸r©rr8rrÚvisit_Attribute~s   þ  z<_signature_fromstr..RewriteSymbolics.visit_Attributecst|jˆjƒs tƒ‚ˆ|jƒSr1)rÚctxZLoadr%r¨r r<rrÚ visit_NameŠs z7_signature_fromstr..RewriteSymbolics.visit_Namecs˜| |j¡}| |j¡}t|ˆjƒrt|ˆjƒst‚t|jˆjƒr*ˆ |j|j¡St|jˆj ƒr:ˆ |j|j¡St|jˆj ƒrJˆ |j|jB¡St‚r1) rÚleftÚrightrr5r%ÚopZAddrZSubZBitOr)r»r r@rAr/rrÚ visit_BinOp�s  z8_signature_fromstr..RewriteSymbolics.visit_BinOpN)r·r r²r=r?rCrr<rrÚRewriteSymbolics}s rDcshˆ|ƒ}|r'|tur'z ˆƒ |¡}ˆ |¡}Wnty&td ˆ¡ƒd‚wˆ ˆ|ˆ|ˆd�¡dS)Nr.©rvr{)Ú_emptyrZ literal_evalr%r«r�)Z name_nodeZ default_nodervrw)Ú ParameterrDrrrr�r*rsr0rrÚpžs   ÿz_signature_fromstr..p)Ú fillvaluer¸r ©rq)&rÚ_parameter_clsr-rÚ SyntaxErrorrZModuler%r«Úbodyrrrrrr r rúZNodeTransformerr:rrgÚ itertoolsÚ zip_longestÚPOSITIONAL_ONLYÚPOSITIONAL_OR_KEYWORDr¤rVÚvarargÚVAR_POSITIONALÚ KEYWORD_ONLYrÅr[Ú kw_defaultsrºÚ VAR_KEYWORDr4rÆr)r�r*rárlr,r)r*Zprogramr-rSr,rHrrgrArÊrwrvZ_selfZ self_isboundZ self_ismoduler) rGrDrrrr�r6r*rsr0r7r8rÚ_signature_fromstrEsrÿ  ÿ      !  €    rWcCsD t|ƒs td |¡ƒ‚t|ddƒ}|std |¡ƒ‚t||||ƒS)Nz%{!r} is not a Python builtin functionÚ__text_signature__z#no signature found for builtin {!r})rr$r«rr%rW)r�r(rlrárrrÚ_signature_from_builtinØsÿ rYc CsH d}t|ƒst|ƒrd}ntd |¡ƒ‚t|ddƒ}|r$t||||ƒS|j}|j} | j} | j } | j } | d| …} | j }| | | |…}t ||||d�}|j }|j}|rYt|ƒ}nd}g}| |}| }| d|…D]}|rotnt}| |t¡}| ||||d�¡|r‡|d8}qit| |d…ƒD]#\}}|r˜tnt}| |t¡}| ||||||d �¡|r³|d8}q�| jt@rÏ| | |}| |t¡}| |||td�¡|D]}t}|durß| |t¡}| |t¡}| |||t|d �¡qÑ| jt@�r| |}| jt@�r|d7}| |}| |t¡}| |||td�¡||| d t¡|d �S) NFTr½rXrr)r{r�rÁ)r{r�rvrn©rqÚ__validate_parameters__)r?rOr$r«rrWrKrQrTrSÚco_posonlyargcountrUr/rrrªrurwr rFr�r¤rRrWrxryrXrz)r�r(rlrrrZis_duck_functionrárGZ func_codeZ pos_countZ arg_namesZ posonly_countr¯Zkeyword_only_countZ keyword_onlyrrgr€Zpos_default_countrsZnon_default_countZ posonly_leftrwr�r{ÚoffsetrvrÐrrrÚ_signature_from_functionès’      ÿ€   þ€    ÿ    þ    ÿ þr^)rkrlrrrc Cs~ tjt||||||d�}t|ƒstd |¡ƒ‚t|tjƒr+||j ƒ}|r)t |ƒS|S|r?t |dd„d�}t|tjƒr?||ƒSz|j }Wn t yMYnw|dur`t|tƒs^td |¡ƒ‚|Sz|j} Wn t ynYn5wt| tjƒr£|| jƒ} t| | dƒ}t| j ¡ƒd} | jtjur‘|St|j ¡ƒ} | f| } |j| d �St|ƒs«t|ƒrµt||||||d �St|ƒrÀt|||d �St|tjƒrÐ||jƒ} t| |ƒSd}t|tƒ�rjt t|ƒd ƒ}|durè||ƒ}n5d}t |d ƒ}t |dƒ}d |j!vrü|}nd|j!v�r|}n|du�r |}n|du�r|}|du�r||ƒ}|du�ri|j"dd…D]}z|j#}Wn t �y;Y�q)w|�rGt$|||ƒS�q)t|j"v�ri|j%t&j%u�rb|j't&j'u�rb| (t&¡St)d |¡ƒ‚n0t|t*ƒ�sšt t|ƒd ƒ}|du�ršz||ƒ}Wnt)�y™}z d |¡}t)|ƒ|‚d}~ww|du�r¨|�r¦t |ƒS|St|tj+ƒ�r¸d |¡}t)|ƒ‚t)d |¡ƒ‚)N)rkrlrrrmrz{!r} is not a callable objectcSst|dƒp t|tjƒS)NÚ __signature__)rrrr9r¥rrrrzl s z*_signature_from_callable..r¡z1unexpected object {!r} in __signature__ attributer1rr )rlrrr)rlÚ__call__Ú__new__rr±z(no signature found for builtin type {!r}zno signature found for {!r}z,no signature found for builtin function {!r}z+callable {!r} is not supported by signature),r&r'ror#r$r«rrr9rMrr.r_r‚rpÚ_partialmethodÚ partialmethodr(rr“rsrtr�rGrSrr?rOr^rrYrrr r rXrWrr3raÚ from_callabler%rrm)r*rkrlrrrrmZ_get_signature_ofr|rcrZfirst_wrapped_paramZ sig_paramsrZcallZfactory_methodÚnewZinitrxZtext_sigr}r¶rrrroG sàú     ÿ þ  ÿ      þÿ              ÿý  ÿ€     €þ  roc@r)rNrrrrrr rrc@r)rFNrrrrrrF rrFc@s4eZdZdZdZdZdZdZdd„Ze dd „ƒZ d S) Ú_ParameterKindrrÁr$éécCó|jSr1)Ú_name_r3rrrÚ__str__ sz_ParameterKind.__str__cCst|Sr1)Ú_PARAM_NAME_MAPPINGr3rrrÚ description sz_ParameterKind.descriptionN) r·r r²rPrQrSrTrVrkr�rmrrrrrf srfzpositional-onlyzpositional or keywordzvariadic positionalr°zvariadic keywordc@s®eZdZ dZeZeZeZ e Z e Z eZeedœdd„Zdd„Zdd„Zed d „ƒZed d „ƒZed d„ƒZedd„ƒZeeeedœdd„Zdd„Zdd„Zdd„Zdd„ZdS)rG)Ú_nameÚ_kindÚ_defaultÚ _annotationrEcCszt|ƒ|_Wntytd|›d�ƒ‚w|tur/|jttfvr/d}| |jj¡}t|ƒ‚||_||_ |tur=tdƒ‚t |t ƒsNd t |ƒj ¡}t|ƒ‚|ddkrz|dd… ¡rz|jtkrnd }| |jj¡}t|ƒ‚t|_d  |dd…¡}| ¡s…td  |¡ƒ‚||_dS) Nzvalue z is not a valid Parameter.kindz({} parameters cannot have default valuesz*name is a required attribute for Parameterzname must be a str, not a {}rr°rÁzLimplicit arguments must be passed as positional or keyword arguments, not {}z implicit{}z"{!r} is not a valid parameter name)rfror%rFrxrzr«rmrprqrrrr·r$ÚisdigitrwruÚ isidentifierrn)r»rwr�rvr{r¶rrrrM s8 ÿ  ÿ zParameter.__init__cCs t|ƒ|j|jf|j|jdœfS)N©rprq)rrnrorprqr3rrrÚ __reduce__u s  ÿþzParameter.__reduce__cCó|d|_|d|_dS)Nrprqrt©r»ÚstaterrrÚ __setstate__{ ó zParameter.__setstate__cCrir1)rnr3rrrrw ózParameter.namecCrir1)rpr3rrrrvƒ r{zParameter.defaultcCrir1)rqr3rrrr{‡ r{zParameter.annotationcCrir1)ror3rrrr�‹ r{zParameter.kind)rwr�r{rvcCsN |tur|j}|tur|j}|tur|j}|tur|j}t|ƒ||||d�S)NrE)rrnrorqrpr)r»rwr�r{rvrrrr� szParameter.replacecCsŠ|j}|j}|jturd |t|jƒ¡}|jtur1|jtur(d |t|jƒ¡}n d |t|jƒ¡}|tkr;d|}|S|t krCd|}|S)Nz{}: {}z{} = {}z{}={}r”r—) r�rnrqrFr«rŽrprŒrxrz)r»r�Ú formattedrrrrk¡ s  ÿ  ýzParameter.__str__cCód |jj|¡S)Nz <{} "{}">©r«r¹r·r3rrrÚ__repr__· rãzParameter.__repr__cCst|j|j|j|jfƒSr1)Úhashrwr�r{rvr3rrrÚ__hash__º szParameter.__hash__cCsJ||urdSt|tƒs tS|j|jko$|j|jko$|j|jko$|j|jkS©NT)rrGÚNotImplementedrnrorprq©r»ÚotherrrrÚ__eq__½ s   ÿ þ ýzParameter.__eq__N)r·r r²rµrurPrwrQrxrSryrTrzrVrFrrrruryr�rwrvr{r�rrrkrr�r†rrrrrG- s6(     ÿ rGc@sfeZdZ dZdd„Zedd„ƒZedd„ƒZedd „ƒZd d „Z d d „Z dd„Z dd„Z dd„Z dS)ÚBoundArguments)r Ú _signatureÚ __weakref__cCs||_||_dSr1)r rˆ)r»r(r rrrrÛ rzBoundArguments.__init__cCrir1)rˆr3rrrr(ß r{zBoundArguments.signaturec Cs„g}|jj ¡D]5\}}|jttfvrt |ƒSz|j|}Wn ty,Yt |ƒSw|jtkr8|  |¡q|  |¡qt |ƒSr1) rˆrsr)r�rzryr rÈrxÚextendr�r“)r»rrr�r�rrrrã sò  ô   zBoundArguments.argsc Cs�i}d}|jj ¡D];\}}|s"|jttfvrd}n||jvr"d}q |s%q z|j|}Wn ty5Yq w|jtkrA| |¡q |||<q |Srì) rˆrsr)r�rzryr rÈÚupdate)r»ÚkwargsZkwargs_startedrr�r�rrrrŒú s(  ÿ   zBoundArguments.kwargsc Csœ |j}g}|jj ¡D]:\}}z | |||f¡Wq tyF|jtur+|j}n|jt ur3d}n |jt ur;i}nYq | ||f¡Yq wt |ƒ|_dS)Nr) r rˆrsr)r�rÈrvrFr�rxrzr )r»r Z new_argumentsrwr�ÚvalrrrÚapply_defaults s"    õ zBoundArguments.apply_defaultscCs2||urdSt|tƒs tS|j|jko|j|jkSr‚)rr‡rƒr(r r„rrrr†4 s   ÿzBoundArguments.__eq__cCrv)Nrˆr ©rˆr rwrrrry< rzzBoundArguments.__setstate__cCs|j|jdœS)Nr�r�r3rrrÚ __getstate__@ ózBoundArguments.__getstate__cCs@g}|j ¡D] \}}| d ||¡¡qd |jjd |¡¡S)Nz{}={!r}z <{} ({})>r¢)r r)r�r«r¹r·rÇ)r»rr�rrrrrC szBoundArguments.__repr__N)r·r r²rµrr�r(rrŒrŽr†ryr�rrrrrr‡È s    r‡c@sÞeZdZ dZeZeZeZ d+eddœdd„Z e dd„ƒZ e d d „ƒZ e dddd d œd d„ƒZedd„ƒZedd„ƒZeedœdd„Zdd„Zdd„Zdd„Zd dœdd„Zdd „Zd!d"„Zd#d$„Zd%d&„Zd'd(„Zd)d*„ZdS),rp)Ú_return_annotationÚ _parametersNTrZc Csæ |dur tƒ}n_|r_tƒ}t}d}|D]I}|j}|j} ||kr.d} |  |j|j¡} t| ƒ‚||kr6d}|}|ttfvrL|jt urJ|rId} t| ƒ‚nd}| |vrYd | ¡} t| ƒ‚||| <qn tdd„|Dƒƒ}t   |¡|_ ||_ dS)NFz7wrong parameter order: {} parameter before {} parameterz-non-default argument follows default argumentTzduplicate parameter name: {!r}css�|]}|j|fVqdSr1r•©rr�rrrrŽ™ räz%Signature.__init__..)rrur�rwr«rmr%rwrvrFrÚMappingProxyTyper“r’) r»rsrqr[rZtop_kindZ kind_defaultsr�r�rwr¶rrrrh sFÿÿ  ú   ß#  zSignature.__init__cCó tjdtdd�t||ƒS)Nz_inspect.Signature.from_function() is deprecated since Python 3.5, use Signature.from_callable()r$ra)rcrdrer^©r�r(rrrÚ from_functionž ó þ zSignature.from_functioncCr–)Nz^inspect.Signature.from_builtin() is deprecated since Python 3.5, use Signature.from_callable()r$ra)rcrdrerYr—rrrÚ from_builtinª r™zSignature.from_builtinF©Úfollow_wrappedrrrcCs t||||||d�S)N)rmrkrrr)ro)r�r*rœrrrrrrrd¶ s þzSignature.from_callablecCrir1)r“r3rrrrs¾ r{zSignature.parameterscCrir1©r’r3rrrrq r{zSignature.return_annotation)rsrqcCs2 |tur |j ¡}|tur|j}t|ƒ||d�S)NrJ)rrsrtr’r)r»rsrqrrrrÆ s ÿzSignature.replacecCs8tdd„|j ¡Dƒƒ}dd„|j ¡Dƒ}|||jfS)Ncss�|] }|jtkr|VqdSr1)r�ryr”rrrrŽÖ s € ÿÿz(Signature._hash_basis..cSsi|] }|jtkr|j|“qSr)r�ryrwr”rrrrÙ s ÿz)Signature._hash_basis..)r“rsrtrq)r»rÚ kwo_paramsrrrÚ _hash_basisÕ s zSignature._hash_basiscCs(| ¡\}}}t| ¡ƒ}t|||fƒSr1)rŸÚ frozensetrtr€)r»rržrqrrrr�Þ s zSignature.__hash__cCs*||urdSt|tƒs tS| ¡| ¡kSr‚)rrprƒrŸr„rrrr†ã s  zSignature.__eq__©r'c Cs~ i}t|j ¡ƒ}d}t|ƒ} zt|ƒ}Wn`tywzt|ƒ} Wn ty.YYn˜w| jtkr6Yn�| j|vrS| jtkrNd} | j | jd�} t | ƒd‚| f}Yns| jt ks]| j t urb| f}Ynd|ri| f}Yn]d} | j | jd�} t | ƒd‚wzt|ƒ} Wn tyŠt dƒd‚w| jt tfvr—t dƒd‚| jtkr¬|g} |  |¡t| ƒ|| j<n| j|vrÀ| jtkrÀt dj | jd�ƒd‚||| j<qd} t ||¡D]P} | jt krØ| } qÎ| jtkrÞqÎ| j} z| | ¡}Wn"t�y |�s| jtk�r| j t u�rt dj | d�ƒd‚YqÎw| jtk�rt dj | jd�ƒ‚||| <qÎ|�r9| du�r-||| j<n t dj tt|ƒƒd�ƒ‚| ||¡S) NrTzA{arg!r} parameter is positional only, but was passed as a keyword)r�z$missing a required argument: {arg!r}ztoo many positional argumentsz$multiple values for argument {arg!r}z*got an unexpected keyword argument {arg!r})rArsrtr&Ú StopIterationr�rxrwrur«r$rzrvrFryrŠr“rNÚchainrÆrÈÚ_bound_arguments_cls)r»rrŒr'r rsZ parameters_exZarg_valsZarg_valr�r¶rtZ kwargs_paramrrrrÚ_bindê s¼    ý       Û(   ÿÿÿ  ÿÿþ ºJ   ÿÿ€ù þ    ÿÿ zSignature._bindcOs | ||¡Sr1©r¥©r»rrŒrrrÚbindm rGzSignature.bindcOs |j||dd�S)NTr¡r¦r§rrrr t szSignature.bind_partialcCs t|ƒt|j ¡ƒfd|jifS©Nr’)rr“r“rtr’r3rrrru{ sþzSignature.__reduce__cCs|d|_dSr©r�rwrrrry€ r‘zSignature.__setstate__cCr})Nz<{} {}>r~r3rrrrƒ rãzSignature.__repr__c CsÀg}d}d}|j ¡D]2}t|ƒ}|j}|tkrd}n |r$| d¡d}|tkr+d}n |tkr8|r8| d¡d}| |¡q |rE| d¡d d  |¡¡}|j t ur^t |j ƒ}|d |¡7}|S)NFTr!r”z({})r¢z -> {}) rsrtrr�rur�rxryr«rÇrqrFrŽ) r»r›Zrender_pos_only_separatorZrender_kw_only_separatorr�r|r�ZrenderedZannorrrrk† s0       zSignature.__str__r1)r·r r²rµrGrKr‡r¤rFrrrr™r˜ršrdr�rsrqrrrŸr�r†r¥r¨r ruryrrkrrrrrpJ s@ ÿ6   ÿ    rpr›cCs tj|||||d�S)Nr›)rprd)r*rœrrrrrrr(´ sÿr(c Cs ddl}ddl}| ¡}|jddd�|jddddd �| ¡}|j}| d ¡\}}}z | |¡}} Wn(ty]} zd   |t | ƒj | ¡} t | t jd �t  d ¡WYd} ~ nd} ~ ww|rq| d¡} | }| D]} t|| ƒ}qi| j t jvrƒt dt jd �t  d¡|jrÙt d  |¡ƒt d  t| ƒ¡ƒt d  | j¡ƒ|| urºt d  t| jƒ¡ƒt| dƒr¹t d  | j¡ƒnzt|ƒ\}}Wn tyËYnwt d  |¡ƒt dƒdSt t|ƒƒdS)Nrr3zCThe object to be analysed. It supports the 'module:qualname' syntax)Úhelpz-dz --detailsÚ store_truez9Display info about the module rather than its source code)ÚactionrªrzFailed to import {} ({}: {}))rýr$r°z#Can't get info for builtin modules.rÁz Target: {}z Origin: {}z Cached: {}z Loader: {}Ú__path__zSubmodule search path: {}zLine: {}rÀ)ÚargparserØÚArgumentParserÚ add_argumentÚ parse_argsr3Ú partitionÚ import_moduler•r«rr·ÚprintrÚstderrÚexitr³rÚbuiltin_module_namesZdetailsròÚ __cached__rŒrårr­r#rI)r®rØÚparserrÚtargetZmod_nameZ has_attrsZattrsr*r-rœr¶ÚpartsÚpartÚ__rrrrÚ_mainº sfþþþ€û     € ÿ r¾rÌr1)F)rÁ)r)T)TNNF)¯Ú __author__rdrÚdisZcollections.abcrcÚenumÚimportlib.machineryrØrNrðrÕrrr8r>rrcr&r÷ÚoperatorrrrrZmod_dictZCOMPILER_FLAG_NAMESr)r‰rŠrsr/r4r7r:rBrDrrFrKr?rUrWrYrZr\r_rarfrhrjrlrnroryr‹rŒržr}r.r¯r´r½r¿r¾rÒrÝròrörørûrïr•rZ NodeVisitorrr#r)r*r,rErHrIrJrQrRr_r`rirjrfr‚r…rŽr‘rrªr¬rµr·r»r¼rÊrËrÑrÓÚ_fieldsrÔrØrÛrÝrràr3rærârèrërírérïrðrñròrórúrürýrþrÿrrrrr`Z_WrapperDescriptorÚallZ_MethodWrapperr2r Z_ClassMethodWrapperrmrrrrrrOrr-rWrYr^rorrFÚIntEnumrfrPrurQrwrSrxrTryrVrzrlrGr‡rpr(r¾r·rrrrÚs‚  t            ,t$ >   /D-6   ÿ ]  ù; ü < 5         0  ý L  H  ÿ` ûBû l : ÿ