grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026a XC?hÛÍã @sºdZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl Z ddl Z ddl Z ddlZddlZddlZddlZddlZddlZddlmZddlmZmZeƒZej ¡D]\ZZeede<q¸dZdd„Zd d „Z d d „Z!d d„Z"dd„Z#e$edƒ�rdd„Z%ndd„Z%e$edƒ�r.dd„Z&ndd„Z&dd„Z'dd„Z(dd„Z)dd „Z*d!d"„Z+d#d$„Z,d%d&„Z-d'd(„Z.d)d*„Z/d+d,„Z0d-d.„Z1d/d0„Z2d1d2„Z3d3d4„Z4d5d6„Z5d÷d7d8„Z6ed9d:ƒZ7d;d<„Z8d=d>„Z9dd?œd@dA„Z:dBdC„Z;dDdE„ZdJdK„Z?dLdM„Z@dNdO„ZAdPdQ„ZBdødRdS„ZCiZDiZEdùdTdU„ZFGdVdW„dWeGƒZHGdXdY„dYejIƒZJdZd[„ZKd\d]„ZLGd^d_„d_eGƒZMGd`da„daƒZNdbdc„ZOddde„ZPdfdg„ZQdhdi„ZRdúdkdl„ZSedmdnƒZTdodp„ZUedqdrƒZVdsdt„ZWedudvƒZXdwdx„ZYedydzƒZZd{d|„Z[dûd}d~„Z\dd€„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�„Z`dŽd�„Zad�d‘„Zbd’d“„Zced”d•ƒZdd–d—„Zeed˜d™ƒZfdüd›dœ„Zgd�dž„ZhedŸd efjiƒZjdýd¡d¢„Zkdþd£d¤„Zld¥d¦„Zmdÿd§d¨„Zn�dd©dª„ZoepƒZqd«d¬„Zrd­d®„Zsd¯d°„Ztd±d²„Zud³d´„Zveqfdµd¶„Zwd·Zxd¸Zyd¹ZzdºZ{d»d¼„Z|d½d¾„Z}d¿Z~dÀZdÁ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Ž�ddÊdË„Z�dÌdÍ„Z�dÎdÏ„Z‘dÐdÑ„Z’dÒdÓ„Z“dÔdÕ„Z”�dd×dØ„Z•�ddÙdÚ„Z–�ddÛdÜ„Z—dÖdÖdÝœ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Ödñœdòdó„Z«dôdõ„Z¬e­dök�r¶e¬ƒdS()zKa-Ping Yee z'Yury Selivanov éN)Ú attrgetter)Ú namedtupleÚ OrderedDictZCO_icCs t|tjƒS©N)Ú isinstanceÚtypesÚ ModuleType©Úobject©r ú,/opt/alt/python39/lib64/python3.9/inspect.pyÚismodule@sr cCs t|tƒSr)rÚtyper r r r ÚisclassIsrcCs t|tjƒSr)rrÚ MethodTyper r r r ÚismethodQsrcCs:t|ƒst|ƒst|ƒrdSt|ƒ}t|dƒo8t|dƒ S)NFÚ__get__Ú__set__©rrÚ isfunctionrÚhasattr©r Útpr r r Úismethoddescriptor[srcCs8t|ƒst|ƒst|ƒrdSt|ƒ}t|dƒp6t|dƒS)NFrÚ __delete__rrr r r ÚisdatadescriptorosrÚMemberDescriptorTypecCs t|tjƒSr)rrrr r r r ÚismemberdescriptorsrcCsdS©NFr r r r r r‡sÚGetSetDescriptorTypecCs t|tjƒSr)rrrr r r r Úisgetsetdescriptor�sr cCsdSrr r r r r r ˜scCs t|tjƒSr)rrÚ FunctionTyper r r r rŸs rcCs6t|ƒr|j}qt |¡}t|ƒs&dSt|jj|@ƒSr)rÚ__func__Ú functoolsÚ_unwrap_partialrÚboolÚ__code__Úco_flags)ÚfÚflagr r r Ú_has_code_flag¬s  r*cCs t|tƒSr)r*Z CO_GENERATOR©Úobjr r r Úisgeneratorfunction·sr-cCs t|tƒSr)r*Z CO_COROUTINEr+r r r Úiscoroutinefunction¾sr.cCs t|tƒSr)r*ZCO_ASYNC_GENERATORr+r r r ÚisasyncgenfunctionÅsr/cCs t|tjƒSr)rrÚAsyncGeneratorTyper r r r Ú isasyncgenÍsr1cCs t|tjƒSr)rrÚ GeneratorTyper r r r Ú isgeneratorÑsr3cCs t|tjƒSr)rrÚ CoroutineTyper r r r Ú iscoroutineâsr5cCs6t|tjƒp4t|tjƒr(t|jjt@ƒp4t|tj j ƒSr) rrr4r2r%Úgi_coder'ZCO_ITERABLE_COROUTINEÚ collectionsÚabcÚ Awaitabler r r r Ú isawaitableæs   þ ýr:cCs t|tjƒSr)rrÚ TracebackTyper r r r Ú istracebackísr<cCs t|tjƒSr)rrÚ FrameTyper r r r Úisframe÷s r>cCs t|tjƒSr)rrÚCodeTyper r r r Úiscodesr@cCs t|tjƒSr)rrÚBuiltinFunctionTyper r r r Ú isbuiltinsrBcCs t|ƒpt|ƒpt|ƒpt|ƒSr)rBrrrr r r r Ú isroutine'sÿþýrCcCs¦t|tƒsdS|jt@rdStt|ƒtjƒs0dSt|dƒr>dS|j  ¡D]\}}t |ddƒrHdSqH|j D]6}t |ddƒD]$}t ||dƒ}t |ddƒrzdSqzqjdS)NFTÚ__abstractmethods__Ú__isabstractmethod__r ) rrÚ __flags__ÚTPFLAGS_IS_ABSTRACTÚ issubclassr8ÚABCMetarÚ__dict__ÚitemsÚgetattrÚ __bases__)r ÚnameÚvalueÚbaser r r Ú isabstract.s"        rQc Cst|ƒr|ft|ƒ}nd}g}tƒ}t|ƒ}z:|jD].}|j ¡D]\}}t|tj ƒrD|  |¡qDq6Wnt yzYn0|D]|} zt || ƒ} | |vrœt ‚Wn8t yÖ|D]}| |jvr°|j| } qÒq°Yq€Yn0|rä|| ƒrò|  | | f¡|  | ¡q€|jdd„d�|S)Nr cSs|dS)Nrr )Zpairr r r Úoózgetmembers..©Úkey)rÚgetmroÚsetÚdirrMrJrKrrÚDynamicClassAttributeÚappendÚAttributeErrorrLÚaddÚsort) r Z predicateÚmroÚresultsÚ processedÚnamesrPÚkÚvrUrOr r r Ú getmembersFs:          rdÚ Attributezname kind defining_class objectc CsTt|ƒ}tt|ƒƒ}tdd„|Dƒƒ}|f|}||}t|ƒ}|D].}|j ¡D]\}}t|tjƒrR|  |¡qRqDg} t ƒ} |D�]Ê} d} d} d}| | v�rzz| dkr°t dƒ‚t || ƒ} Wn$t yà}z WYd}~n¢d}~00t | d| ƒ} | |v�rzd} d}|D] }t || dƒ}|| u�r|}�q|D]@}z|  || ¡}Wnt�yXY�q*Yn0|| u�r*|}�q*|du�rz|} |D]0}| |jv�r~|j| }| |v�r¦|} �q°�q~| du�r¼q‚| du�rÊ| n|}t|ttjfƒ�rêd}|}nFt|ttjfƒ�rd}|}n*t|tƒ�rd}|}nt|ƒ�r,d }nd }|   t| || |ƒ¡|  | ¡q‚| S) Ncss|]}|ttfvr|VqdSr)rr )Ú.0Úclsr r r Ú ‘rSz'classify_class_attrs..rJz)__dict__ is special, don't want the proxyÚ __objclass__z static methodz class methodÚpropertyÚmethodÚdata)rVrÚtuplerXrJrKrrrYrZrWÚ ExceptionrLÚ __getattr__r[Ú staticmethodÚBuiltinMethodTypeÚ classmethodÚClassMethodDescriptorTyperjrCrer\)rgr^ZmetamroZ class_basesZ all_basesrarPrbrcÚresultr`rNZhomeclsZget_objZdict_objÚexcZlast_clsZsrch_clsZsrch_objr,Úkindr r r Úclassify_class_attrsts€                    rwcCs|jSr)Ú__mro__)rgr r r rVèsrV©Ústopcs|ˆdurdd„}n ‡fdd„}|}t|ƒ|i}t ¡}||ƒrx|j}t|ƒ}||vs`t|ƒ|krntd |¡ƒ‚|||<q6|S)NcSs t|dƒS©NÚ __wrapped__©r©r(r r r Ú _is_wrapperÿszunwrap.._is_wrappercst|dƒoˆ|ƒ Sr{r}r~ryr r rsz!wrapper loop when unwrapping {!r})ÚidÚsysÚgetrecursionlimitr|ÚlenÚ ValueErrorÚformat)Úfuncrzrr(ÚmemoZrecursion_limitZid_funcr ryr Úunwrapîs    rˆcCs| ¡}t|ƒt| ¡ƒSr)Ú expandtabsrƒÚlstrip)ÚlineZexpliner r r Ú indentsizesrŒcCsNtj |j¡}|durdS|j d¡dd…D]}t||ƒ}q.t|ƒsJdS|S)NÚ.éÿÿÿÿ)r�ÚmodulesÚgetÚ __module__Ú __qualname__ÚsplitrLr)r†rgrNr r r Ú _findclasss r”c Cs t|ƒrR|jD]>}|turz |j}Wnty:YqYn0|dur|SqdSt|ƒr˜|jj}|j}t|ƒrŽt t ||dƒdƒ|jurŽ|}n|j }�n$t |ƒrÊ|j}t |ƒ}|dusÄt ||ƒ|urÈdSnòt |ƒ�r|j}|j}t|ƒ�r|jd||jk�r|}n|j }n®t|tƒ�rN|j}|j}t |ƒ}|du�sHt ||ƒ|u�r¼dSnnt|ƒ�sbt|ƒ�r¸|j}|j}t ||ƒ|u�r‚dSt|ƒ�r¼t |ddƒ}t|tƒ�r¼||v�r¼||SndS|jD]D}zt ||ƒj}Wnt�yðY�qÂYn0|du�rÂ|S�qÂdS)Nr"r�Ú __slots__)rrxr Ú__doc__r[rr"Ú__name__Ú__self__rLÚ __class__rr”rBr’rrjÚfgetrrrirÚdict)r,rPÚdocrNÚselfrgr†Úslotsr r r Ú_finddoc!sn     ÿ   ÿ        rŸc Csdz |j}WntyYdS0|durNz t|ƒ}WnttfyLYdS0t|tƒs\dSt|ƒSr)r–r[rŸÚ TypeErrorrÚstrÚcleandoc)r rœr r r Úgetdoc_s    r£cCsèz| ¡ d¡}Wnty&YdS0tj}|dd…D]*}t| ¡ƒ}|r:t|ƒ|}t||ƒ}q:|rz|d ¡|d<|tjkr¬tdt|ƒƒD]}|||d…||<q’|rÂ|dsÂ|  ¡q¬|rÚ|dsÚ|  d¡qÂd  |¡SdS)NÚ érrŽ) r‰r“Ú UnicodeErrorr�ÚmaxsizerƒrŠÚminÚrangeÚpopÚjoin)rœÚlinesZmarginr‹ZcontentÚindentÚir r r r¢rs&     (    r¢cCsÆt|ƒr(t|ddƒr|jStd |¡ƒ‚t|ƒrht|dƒrZtj  |j ¡}t|ddƒrZ|jStd |¡ƒ‚t |ƒrv|j }t |ƒr„|j}t|ƒr’|j}t|ƒr |j}t|ƒr®|jStd t|ƒj¡ƒ‚dS)NÚ__file__z{!r} is a built-in moduler‘z{!r} is a built-in classzVmodule, class, method, function, traceback, frame, or code object was expected, got {})r rLr¯r r…rrr�r�r�r‘rr"rr&r<Útb_framer>Úf_coder@Ú co_filenamerr—)r Úmoduler r r Úgetfile�s.   þr´cCsTtj |¡}dd„tj ¡Dƒ}| ¡|D]"\}}| |¡r,|d|…Sq,dS)NcSsg|]}t|ƒ |f‘qSr )rƒ)rfÚsuffixr r r Ú ­sÿz!getmodulename..)ÚosÚpathÚbasenameÚ importlibÚ machineryÚ all_suffixesr]Úendswith)r¸ZfnameÚsuffixesZneglenrµr r r Ú getmodulename©s ÿ  r¿csºt|ƒ‰tjjdd…}|tjjdd…7}t‡fdd„|Dƒƒr`tj ˆ¡dtjj d‰nt‡fdd„tjj Dƒƒr~dStj  ˆ¡rŽˆSt t |ˆƒddƒdur¨ˆSˆtjvr¶ˆSdS)Nc3s|]}ˆ |¡VqdSr©r½©rfÚs©Úfilenamer r rh¼rSz getsourcefile..rc3s|]}ˆ |¡VqdSrrÀrÁrÃr r rh¿rSÚ __loader__)r´rºr»ÚDEBUG_BYTECODE_SUFFIXESÚOPTIMIZED_BYTECODE_SUFFIXESÚanyr·r¸ÚsplitextÚSOURCE_SUFFIXESÚEXTENSION_SUFFIXESÚexistsrLÚ getmoduleÚ linecacheÚcache)r Zall_bytecode_suffixesr rÃr Ú getsourcefileµs" ÿ ÿ  rÐcCs,|durt|ƒpt|ƒ}tj tj |¡¡Sr)rÐr´r·r¸ÚnormcaseÚabspath)r Ú _filenamer r r Ú getabsfileËsrÔc Cs‚t|ƒr |St|dƒr$tj |j¡S|durD|tvrDtj t|¡Szt||ƒ}Wntt fyjYdS0|tvr„tj t|¡Stj  ¡  ¡D]\\}}t|ƒr’t|dƒr’|j }|t  |d¡krÄq’|t |<t|ƒ}|jt|<ttj |¡<q’|tv�r tj t|¡Stjd}t|dƒ�s$dSt||jƒ�rLt||jƒ}||u�rL|Stjd}t||jƒ�r~t||jƒ} | |u�r~|SdS)Nr‘r¯Ú__main__r—Úbuiltins)r rr�r�r�r‘Ú modulesbyfilerÔr ÚFileNotFoundErrorÚcopyrKr¯Ú_filesbymodnamer—r·r¸ÚrealpathrL) r rÓÚfileÚmodnamer³r(ÚmainZ mainobjectZbuiltinZ builtinobjectr r r rÍ×sJ ÿ  ÿ        rÍc@s eZdZdS)ÚClassFoundExceptionN©r—r‘r’r r r r rßsrßc@s(eZdZdd„Zdd„ZeZdd„ZdS)Ú _ClassFindercCsg|_||_dSr)ÚstackÚqualname)r�rãr r r Ú__init__ sz_ClassFinder.__init__cCs<|j |j¡|j d¡| |¡|j ¡|j ¡dS)Nz)rârZrNÚ generic_visitrª©r�Únoder r r Úvisit_FunctionDefs    z_ClassFinder.visit_FunctionDefcCsb|j |j¡|jd |j¡krJ|jr4|jdj}n|j}|d8}t|ƒ‚| |¡|j  ¡dS)Nr�rr¥) rârZrNrãr«Údecorator_listÚlinenorßrårª)r�rçÚ line_numberr r r Úvisit_ClassDefs z_ClassFinder.visit_ClassDefN)r—r‘r’rärèZvisit_AsyncFunctionDefrìr r r r rá srác CsÐt|ƒ}|rt |¡n$t|ƒ}| d¡r4| d¡szsource code not availablezcould 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)|(.*(?r±r@rrðÚreÚcompileÚ IndexErrorÚmatch) r rÜr³r¬rãÚsourceZtreeZ class_finderÚerëÚlnumZpatr‹r r r Ú findsource)s`                   rc Cs,zt|ƒ\}}Wnttfy(YdS0t|ƒrêd}|rR|ddd…dkrRd}|t|ƒkrx|| ¡dvrx|d}qR|t|ƒkræ||dd…dkræg}|}|t|ƒkrÜ||dd…dkrÜ| || ¡¡|d}q d |¡S�n>|dk�r(t ||ƒ}|d}|dk�r(||  ¡dd…dk�r(t ||ƒ|k�r(|| ¡  ¡g}|dk�rÎ|d}|| ¡  ¡}|dd…dk�rÎt ||ƒ|k�rÎ|g|dd…<|d}|dk�rº�qÎ|| ¡  ¡}�qr|�rö|d ¡dk�rög|dd…<�qÎ|�r|d ¡dk�rg|dd…<�qöd |¡SdS) Nréz#!r¥)rïú#rrïrŽ) rrór r rƒÚstriprZr‰r«rŒrŠ)r r¬rÿÚstartZcommentsÚendr­Zcommentr r r Ú getcommentsmsH      $ÿ $rc@s eZdZdS)Ú EndOfBlockNràr r r r ršrSrc@seZdZdd„Zdd„ZdS)Ú BlockFindercCs4d|_d|_d|_d|_d|_d|_d|_d|_dS)NrFr¥)r­ÚislambdaÚstartedÚpasslineÚ indecoratorÚdecoratorhasargsÚlastÚ body_col0©r�r r r räžszBlockFinder.__init__cCsr|jsB|jsB|dkrd|_n|dvr8|dkr2d|_d|_d|_�n,|dkrZ|jrVd|_�n|dkrv|jrtd|_d|_nø|tjkr®d|_|d|_|jršt‚|jr¬|js¬d|_nÀ|jr¶n¸|tj krî|j durÚ|jrÚ|d |_ |j d |_ d|_n€|tj k�r|j d |_ |j dk�rnt‚nV|tj k�rL|j du�rn|d |j k�rn|d|_n"|j dk�rn|tj tjfv�rnt‚dS) Nú@T)ÚdefÚclassÚlambdarú(ú)Frr¥)r r r r r ÚtokenizeÚNEWLINErrÚINDENTrr­ÚDEDENTÚCOMMENTÚNL)r�rÚtokenZsrowcolZerowcolr‹r r r Ú tokeneater¨sL              zBlockFinder.tokeneaterN)r—r‘r’rärr r r r rœs rc CsTtƒ}z(t t|ƒj¡}|D]}|j|ŽqWnttfyDYn0|d|j…Sr) rrÚgenerate_tokensÚiterÚ__next__rrÚIndentationErrorr)r¬Z blockfinderÚtokensZ_tokenr r r ÚgetblockÚsr$cCsbt|ƒ}t|ƒ\}}t|ƒr"|j}t|ƒs>t|ƒrF|jjdkrF|dfSt||d…ƒ|dfSdS)Nzrr¥) rˆrr<r°r r>r±Úco_namer$©r r¬rÿr r r Úgetsourcelinesås ÿ ÿr'cCst|ƒ\}}d |¡S)Nrï)r'r«r&r r r Ú getsourceús r(cCsRg}|jtddƒd�|D]2}| ||jf¡||vr| t||||ƒ¡q|S)Nr‘r—rT)r]rrZrMÚwalktree)ÚclassesÚchildrenÚparentr_Úcr r r r)sr)FcCsši}g}|D]d}|jr^|jD]>}||vr0g||<|||vrJ|| |¡|r||vrqpqq ||vr | |¡q |D]}||vrv| |¡qvt||dƒSr)rMrZr))r*Úuniquer+Úrootsr-r,r r r Ú getclasstrees     r0Ú Argumentszargs, varargs, varkwc Cs t|ƒstd |¡ƒ‚|j}|j}|j}t|d|…ƒ}t||||…ƒ}d}||7}d}|jt@rx|j|}|d}d}|jt @r�|j|}t ||||ƒS)Nz{!r} is not a code objectrr¥) r@r r…Ú co_varnamesÚ co_argcountÚco_kwonlyargcountÚlistr'Ú CO_VARARGSÚCO_VARKEYWORDSr1) ÚcoraÚnargsZnkwargsrøÚ kwonlyargsÚstepÚvarargsÚvarkwr r r Úgetargs+s"    r>ÚArgSpeczargs varargs keywords defaultscCsDtjdtdd�t|ƒ\}}}}}}}|s.|r6tdƒ‚t||||ƒS)Nzhinspect.getargspec() is deprecated since Python 3.0, use inspect.signature() or inspect.getfullargspec()r©Ú stacklevelzgFunction has keyword-only parameters or annotations, use inspect.signature() API which can support them)ÚwarningsÚwarnÚDeprecationWarningÚgetfullargspecr„r?)r†rør<r=Údefaultsr:ÚkwonlydefaultsÚannr r r Ú getargspecHsþÿrIÚ FullArgSpeczGargs, varargs, varkw, defaults, kwonlyargs, kwonlydefaults, annotationsc Cszzt|ddtd�}Wn.tyB}ztdƒ|‚WYd}~n d}~00g}d}d}g}g}i}d} i} |j|jurz|j|d<|j ¡D]È} | j} | j } | t urÀ|  | ¡| j | jur¾| | j f7} nv| t urì|  | ¡| j | jurê| | j f7} nJ| turú| }n<| tu�r(|  | ¡| j | ju�r6| j | | <n| tu�r6| }| j| jur„| j|| <q„| �sXd} | �sbd} t||||| || |ƒS)NF©Úfollow_wrapper_chainsÚskip_bound_argÚsigclszunsupported callabler Úreturn)Ú_signature_from_callableÚ Signaturernr Úreturn_annotationÚemptyÚ parametersÚvaluesrvrNÚ_POSITIONAL_ONLYrZÚdefaultÚ_POSITIONAL_OR_KEYWORDÚ_VAR_POSITIONALÚ _KEYWORD_ONLYÚ _VAR_KEYWORDÚ annotationrJ)r†ÚsigÚexrør<r=Ú posonlyargsr:Ú annotationsrFÚ kwdefaultsÚparamrvrNr r r rEis\ý              ÿrEÚArgInfozargs varargs keywords localscCs t|jƒ\}}}t||||jƒSr)r>r±rcÚf_locals)Úframerør<r=r r r Ú getargvaluesÇsrfcCsjt|ddƒdkr t|ƒ dd¡St|tjƒr4t|ƒSt|tƒrb|jd|fvrR|j S|jd|j St|ƒS)Nr‘Útypingztyping.rïrÖr�) rLÚreprÚreplacerrÚ GenericAliasr¡rr‘r’)r\Z base_moduler r r ÚformatannotationÑs  rkcst|ddƒ‰‡fdd„}|S)Nr‘cs t|ˆƒSr)rk)r\©r³r r Ú_formatannotationÞsz5formatannotationrelativeto.._formatannotation)rL)r rmr rlr ÚformatannotationrelativetoÜs  rnr cCsd|S©NÚ*r ©rNr r r rRårSrRcCsd|S©Nú**r rqr r r rRærScCs dt|ƒS©Nú=©rh©rOr r r rRçrScCsd|S)Nz -> r )Útextr r r rRèrSc s<ddlm} | dtdd�‡‡‡fdd„}g}|rBt|ƒt|ƒ}t|ƒD]:\}}||ƒ}|rz||krz|| |||ƒ}| |¡qJ|dur¢| |||ƒƒ¡n|r°| d¡|rì|D]2}||ƒ}|rà||vrà|| ||ƒ7}| |¡q¸|du�r| | ||ƒƒ¡d d  |¡d }d ˆv�r8|| ˆˆd ƒƒ7}|S) Nr)rCzc`formatargspec` is deprecated since Python 3.5. Use `signature` and the `Signature` object directlyrr@cs(ˆ|ƒ}|ˆvr$|dˆˆ|ƒ7}|S)Nz: r )Úargrt©r`rkÚ formatargr r Úformatargandannotationýsz-formatargspec..formatargandannotationrprú, rrO)rBrCrDrƒÚ enumeraterZr«)rør<r=rFr:rGr`r{Ú formatvarargsÚ formatvarkwÚ formatvalueZ formatreturnsrkrCr|ÚspecsZ firstdefaultr®ryÚspecZ kwonlyargrtr rzr Ú formatargspecâs< ý       r„cCsd|Sror rqr r r rRrScCsd|Srrr rqr r r rRrScCs dt|ƒSrtrvrwr r r rR rSc Cs†|||fdd„}g} tt|ƒƒD]} |  ||| ƒ¡q |rV|  ||ƒ|||ƒ¡|rt|  ||ƒ|||ƒ¡dd | ¡dS)NcSs||ƒ|||ƒSrr )rNÚlocalsr{r�r r r Úconvert'sz formatargvalues..convertrr}r)r©rƒrZr«) rør<r=r…r{rr€r�r†r‚r®r r r Úformatargvaluess ÿ r‡cs˜‡fdd„|Dƒ}t|ƒ}|dkr,|d}n>|dkr@dj|Ž}n*dj|dd…Ž}|dd…=d  |¡|}td |||rzd nd |dkrˆd nd|fƒ‚dS)Ncsg|]}|ˆvrt|ƒ‘qSr rv)rfrN©rUr r r¶4rSz&_missing_arguments..r¥rrz {} and {}z , {} and {}éþÿÿÿr}z*%s() missing %i required %s argument%s: %sÚ positionalú keyword-onlyrïrÂ)rƒr…r«r )Úf_nameZargnamesÚposrUraÚmissingrÂÚtailr rˆr Ú_missing_arguments3s    þÿr�c sÒt|ƒ|}t‡fdd„|Dƒƒ}|r:|dk} d|f} n2|rTd} d|t|ƒf} nt|ƒdk} tt|ƒƒ} d} |ržd} | |dkr†d nd||dkr–d ndf} td || | r®d nd|| |dkrÄ|sÄd nd fƒ‚dS) Ncsg|]}|ˆvr|‘qSr r )rfryrˆr r r¶ErSz_too_many..r¥z at least %dTz from %d to %drïz7 positional argument%s (and %d keyword-only argument%s)rÂz5%s() takes %s positional argument%s but %d%s %s givenZwasZwere)rƒr¡r ) rŒrøZkwonlyr<ZdefcountZgivenrUZatleastZ kwonly_givenZpluralr]Z kwonly_sigÚmsgr rˆr Ú _too_manyCs*    ÿÿÿr’cOst|ƒ}|\}}}}}} } |j} i} t|ƒrB|jdurB|jf|}t|ƒ} t|ƒ}|r^t|ƒnd}t| |ƒ}t|ƒD]}||| ||<qt|r¢t||d…ƒ| |<t||ƒ}|rºi| |<|  ¡D]T\}}||vrô|sæt d| |fƒ‚|| ||<qÂ|| v�rt d| |fƒ‚|| |<qÂ| |k�r<|�s«sÿz"getclosurevars..Ú __builtins__)ÚNoneÚTrueÚFalse)rr"rr r…r&Ú __closure__ÚzipÚ co_freevarsÚ __globals__r�rÖrJr rWÚco_namesÚKeyErrorr\r—) r†ÚcodeZ nonlocal_varsZ global_nsZ builtin_nsZ global_varsZ builtin_varsZ unbound_namesrNr r r Úgetclosurevars–s<   þ   ÿr§Ú Tracebackz+filename lineno function code_context indexr¥cCsØt|ƒr|j}|j}n|j}t|ƒs2td |¡ƒ‚t|ƒp@t|ƒ}|dkr¼|d|d}zt |ƒ\}}Wnt y„d}}YqÄ0t dt |t |ƒ|ƒƒ}||||…}|d|}nd}}t|||jj||ƒS)Nz'{!r} is not a frame or traceback objectrr¥r)r<Ú tb_linenor°Úf_linenor>r r…rÐr´rróÚmaxr¨rƒr¨r±r%)reÚcontextrêrÄrr¬rÿÚindexr r r Ú getframeinfoÍs$ r®cCs|jSr)rª©rer r r Ú getlinenoísr°Ú FrameInfor¯cCs2g}|r.|ft||ƒ}| t|Ž¡|j}q|Sr)r®rZr±Úf_back)rer¬Ú framelistÚ frameinfor r r Úgetouterframesôs rµcCs4g}|r0|jft||ƒ}| t|Ž¡|j}q|Sr)r°r®rZr±Útb_next)Útbr¬r³r´r r r Úgetinnerframess r¸cCsttdƒrt d¡SdS)NÚ _getframer¥)rr�r¹r r r r Ú currentframe srºcCstt d¡|ƒS)Nr¥)rµr�r¹©r¬r r r râsrâcCstt ¡d|ƒS)Nr)r¸r�Úexc_infor»r r r Útracesr½cCstjd |¡S)Nrx)rrJr)Úklassr r r Ú_static_getmrosr¿cCs6i}zt |d¡}Wnty&Yn0t ||t¡S©NrJ)r Ú__getattribute__r[r›r�Ú _sentinel)r,ÚattrZ instance_dictr r r Ú_check_instance s  rÄc CsFt|ƒD]8}tt|ƒƒturz|j|WSty>Yq0qtSr)r¿Ú_shadowed_dictrrÂrJr¥)r¾rÃÚentryr r r Ú _check_class)s  rÇcCs&z t|ƒWnty YdS0dS©NFT)r¿r r+r r r Ú_is_type2s   rÉc Csltjd}t|ƒD]T}z| |¡d}Wnty:Yq0t|ƒtjur^|jdkr^|j|us|Sqt SrÀ) rrJr¿rr¥rrr—rirÂ)r¾Ú dict_attrrÆZ class_dictr r r rÅ9s   ÿþ rÅc Cst}t|ƒs>t|ƒ}t|ƒ}|tus2t|ƒtjurBt||ƒ}n|}t||ƒ}|tur„|tur„tt|ƒdƒtur„tt|ƒdƒtur„|S|tur�|S|turœ|S||urêtt|ƒƒD]8}tt|ƒƒtur°z|j |WSt yæYq°0q°|turö|St |ƒ‚dS)Nrr) rÂrÉrrÅrrrÄrÇr¿rJr¥r[)r,rÃrWZinstance_resultr¾rÊZ klass_resultrÆr r r Úgetattr_staticGs:  ÿ  ÿ rËÚ GEN_CREATEDÚ GEN_RUNNINGÚ GEN_SUSPENDEDÚ GEN_CLOSEDcCs,|jr tS|jdurtS|jjdkr(tStS©NrŽ)Ú gi_runningrÍÚgi_framerÏÚf_lastirÌrÎ)Ú generatorr r r Úgetgeneratorstate|s   rÕcCs:t|ƒstd |¡ƒ‚t|ddƒ}|dur2|jjSiSdS)Nz{!r} is not a Python generatorrÒ)r3r r…rLrÒrd)rÔrer r r ÚgetgeneratorlocalsŽs  rÖÚ CORO_CREATEDÚ CORO_RUNNINGÚCORO_SUSPENDEDÚ CORO_CLOSEDcCs,|jr tS|jdurtS|jjdkr(tStSrÐ)Ú cr_runningrØÚcr_framerÚrÓr×rÙ)Ú coroutiner r r Úgetcoroutinestate¦s   rÞcCs"t|ddƒ}|dur|jSiSdS)NrÜ)rLrd)rÝrer r r Úgetcoroutinelocals¸s rßÚ from_bytescCs6zt||ƒ}Wnty"YdS0t|tƒs2|SdSr)rLr[rÚ_NonUserDefinedCallables)rgZ method_nameZmethr r r Ú"_signature_get_user_defined_methodÔs   râc Cs˜|j}t| ¡ƒ}|jpd}|jp$i}|r2||}z|j|i|¤Ž}Wn8ty~}z d |¡} t| ƒ|‚WYd}~n d}~00d} | ¡D]ú\} } z|j | } Wnt y´Ynl0| j t urÌ|  | ¡qŒ| j tu�r| |vröd} | j| d�|| <n|  | j¡qŒ| j tu�r | j| d�|| <| rŒ| j tu�rT|| jtd�}||| <| | ¡qŒ| j ttfv�rp| | ¡qŒ| j turŒ|  | j¡qŒ|j| ¡d�S)Nr z+partial object {!r} has incorrect argumentsFT)rW©rv©rT)rTrrKrøÚkeywordsÚ bind_partialr r…r„Ú argumentsr¥rvrVrªrXrirNrZÚ move_to_endr[rYrU)Ú wrapped_sigÚpartialZ extra_argsZ old_paramsÚ new_paramsZ partial_argsZpartial_keywordsZbar^r‘Ztransform_to_kwonlyÚ param_namerbZ arg_valueZ new_paramr r r Ú_signature_get_partialäsL                rícCslt|j ¡ƒ}|r$|djttfvr,tdƒ‚|dj}|ttfvrP|dd…}n|t ur`tdƒ‚|j |d�S)Nrzinvalid method signaturer¥zinvalid argument typerä) rmrTrUrvr[rZr„rXrVrYri)r]Úparamsrvr r r Ú_signature_bound_method0s  rïcCs&t|ƒp$t|ƒp$t|tƒp$|ttfvSr)rBrrrárr r+r r r Ú_signature_is_builtinJsÿþ ûrðcCs”t|ƒrt|ƒrdSt|ddƒ}t|ddƒ}t|dtƒ}t|dtƒ}t|ddƒ}t|tjƒo’t|tƒo’|dusxt|tƒo’|dusŠt|t ƒo’t|t ƒS)NFr—r&Ú __defaults__Ú__kwdefaults__Ú__annotations__) ÚcallablerrLÚ_voidrrr?r¡rmr›)r,rNr¦rFrar`r r r Ú_signature_is_functionlikeVs       ÿþýüröcCs<| d¡}|dkr| d¡}| d¡}| d¡}|d|…S)Nú,rŽrú:rur)Úfind)rƒr�Zcposr r r Ú_signature_get_bound_paramos    rúcCs |s|ddfSd}d}dd„| d¡Dƒ}t|ƒj}t |¡}d}d}g}|j} d} tj} tj} t|ƒ} |D]ž} | j | j }}|| kr¼|dkr¦|r˜d}qld}| d7} ql|d kr¼d}| d}ql|| krÒ|d krÒ| }ql|ròd}|| krê|d ksò| d ƒ| |ƒ|dkrl| d ƒqld  |¡}|||fS)NcSsg|]}| d¡‘qS)Úascii)Úencode)rfÚlr r r r¶™rSz6_signature_strip_non_python_syntax..r¤Frr÷Tr¥ú/ú$rr}ú rï) r“r r!rrZrÚOPÚ ERRORTOKENÚnextrÚstringr«)Ú signatureÚself_parameterÚlast_positional_onlyr¬rÔZ token_streamZ delayed_commaZskip_next_commarxr\Zcurrent_parameterrrÚtrrÚclean_signaturer r r Ú"_signature_strip_non_python_syntax†sP      r Tc s^ddl‰|j‰t|ƒ\}}}d|d}zˆ |¡}WntyLd}Yn0t|ˆjƒshtd |¡ƒ‚|j d} g‰ˆj ‰t ƒ‰d}i‰t |ddƒ} | r²t j | d¡}|r²|j‰t j ¡‰ ‡fdd„‰‡‡‡ fdd „‰ G‡‡ fd d „d ˆjƒ‰ˆf‡‡‡‡‡‡‡‡fd d „ } t| jjƒ} t| jjƒ} tj| | dd�}|du�rHˆj‰nˆj‰ttt|ƒƒƒD](\}\}}| ||ƒ||k�r^ˆj‰�q^| jj�r¦ˆj‰| | jjˆƒˆj‰t| jj | jj!ƒD]\}}| ||ƒ�q¾| jj"�ròˆj#‰| | jj"ˆƒ|du�rPt |ddƒ}|du}t$|ƒ}|�r6|�s*|�r6ˆ %d¡nˆdj&ˆjd�} | ˆd<|ˆ|j d�S)Nrzdef fooz: passz"{!r} builtin has invalid signaturer‘cs|jdurtdƒ‚|jS)Nz'Annotations are not currently supported)r\r„ry)rç)rõr r Ú parse_nameôs z&_signature_fromstr..parse_namec sxzt|ˆƒ}Wn:tyHzt|ˆƒ}WntyBtƒ‚Yn0Yn0t|tttttt dƒfƒrnˆ  |¡Stƒ‚dSr) ÚevalÚ NameErrorÚ RuntimeErrorrr¡ÚintÚfloatÚbytesr%rZConstant)rÂrO)rõÚ module_dictÚsys_module_dictr r Ú wrap_valueús   z&_signature_fromstr..wrap_valuecs(eZdZ‡‡fdd„Z‡‡fdd„ZdS)z,_signature_fromstr..RewriteSymbolicscs\g}|}t|ˆjƒr(| |j¡|j}qt|ˆjƒs:tƒ‚| |j¡d t |ƒ¡}ˆ|ƒS)Nr�) rrerZrÃrOÚNamerr€r«Úreversed)r�rçÚar“rO©rõrr r Úvisit_Attributes    z<_signature_fromstr..RewriteSymbolics.visit_Attributecst|jˆjƒstƒ‚ˆ|jƒSr)rÚctxZLoadr„r€rærr r Ú visit_Namesz7_signature_fromstr..RewriteSymbolics.visit_NameN)r—r‘r’rrr rr r ÚRewriteSymbolicss rcsˆˆ|ƒ}|ˆurdS|rn|turnzˆƒ |¡}ˆ |¡}WntyPˆ}Yn0|ˆur^dS|ˆurj|n|}ˆ ˆ|ˆ|ˆd�¡dS©N©rWr\)Ú_emptyr÷Z literal_evalr„rZ)Z name_nodeZ default_noderWrNÚo)Ú ParameterrrõrSÚinvalidrvrTr r r Úps    z_signature_fromstr..p)Ú fillvaluer˜rã©rR)'rõÚ_parameter_clsr röÚ SyntaxErrorrZModuler„r…ÚbodyrSr rLr�r�r�rJrÙZNodeTransformerrrørFÚ itertoolsÚ zip_longestÚPOSITIONAL_ONLYÚPOSITIONAL_OR_KEYWORDr~r5ÚvarargÚVAR_POSITIONALÚ KEYWORD_ONLYr¡r:Ú kw_defaultsr•Ú VAR_KEYWORDr rªri)rgr,rÂrMr rrZprogramr³r(Z module_namer#rørFr r®rNrWZ_selfZ self_isboundZ self_ismoduler ) r!rrõrSr"rvrrTr rrr Ú_signature_fromstrÎsnÿ                    r2cCsBt|ƒstd |¡ƒ‚t|ddƒ}|s4td |¡ƒ‚t||||ƒS)Nz%{!r} is not a Python builtin functionÚ__text_signature__z#no signature found for builtin {!r})rðr r…rLr„r2)rgr†rMrÂr r r Ú_signature_from_builtinXsÿ r4c CsHd}t|ƒs(t|ƒrd}ntd |¡ƒ‚t|ddƒ}|rFt||||ƒS|j}|j}|j}|j }|j } |d|…} |j } |||| …} |j } |j }|j}|r¦t|ƒ}nd}g}||}| }| d|…D]<}|rÒtnt}|  |t¡}| ||||d�¡|rÆ|d8}qÆt| |d…ƒD]L\}}|�r&tnt}|  |t¡}| ||||||d�¡|�r|d8}�q|jt@�rš||| }|  |t¡}| |||td�¡| D]B}t}|du�r¼| |t¡}|  |t¡}| |||t|d�¡�qž|jt@�r2|| }|jt@�r |d7}||}|  |t¡}| |||td�¡|||  d t¡|d �S) NFTr˜r3r)r\rvr¥)r\rvrWrO©rRÚ__validate_parameters__)rrör r…rLr2r&r&r3r2Úco_posonlyargcountr4rórñròrƒrVrXr�rrZr~r'r6rYrZr7r[)rgr†rMZis_duck_functionrÂr!Z func_codeÚ pos_countÚ arg_namesZ posonly_countrŠZkeyword_only_countZ keyword_onlyr`rFraZpos_default_countrTZnon_default_countZ posonly_leftrNrvr\ÚoffsetrWr­r r r Ú_signature_from_functionhsŒ      ÿ   þ     ÿ    þ     ÿ þr;)rLrMc CsŽtjt|||d�}t|ƒs(td |¡ƒ‚t|tjƒrN||j ƒ}|rJt |ƒS|S|rvt |dd„d�}t|tjƒrv||ƒSz |j }Wnt y’Yn&0|dur¸t|tƒs´td |¡ƒ‚|Sz |j}Wnt yÔYnn0t|tjƒ�rB||jƒ}t||dƒ}t|j ¡ƒd}|jtju�r|St|j ¡ƒ} |f| } |j| d �St|ƒ�sVt|ƒ�rdt|||d �St|ƒ�r|t|||d �St|tjƒ�rž||jƒ}t||ƒSd}t|tƒ�rÔt t|ƒd ƒ} | du�rÐ|| ƒ}nld} t |d ƒ} t |d ƒ}d |j!v�rú| } n0d |j!v�r |} n| du�r| } n|du�r*|} | du�r<|| ƒ}|du�r@|j"dd…D]<}z |j#}Wnt �yvYn0|�rTt$|||ƒS�qTt|j"v�r@|j%t&j%u�rÄ|j't&j'u�rÄ| (t&¡St)d |¡ƒ‚nlt|t*ƒ�s@t t|ƒd ƒ} | du�r@z || ƒ}Wn:t)�y>}z d |¡}t)|ƒ|‚WYd}~n d}~00|du�r\|�rXt |ƒS|St|tj+ƒ�r|d |¡}t)|ƒ‚t)d |¡ƒ‚dS)NrKz{!r} is not a callable objectcSs t|dƒS)NÚ __signature__r}r~r r r rRãrSz*_signature_from_callable..ryz1unexpected object {!r} in __signature__ attributerrrä)rMÚ__call__Ú__new__rärŽ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êrPrôr r…rrrr"rïrˆr<r[rQÚ_partialmethodÚ partialmethodr†rírmrTrUrvr!r.rirrör;rðr4rrârJrxr3r2rär r>Ú from_callabler„rárA)r,rLrMrNZ_get_signature_ofr]r@réZfirst_wrapped_paramZ sig_paramsrëZcallZfactory_methodÚnewÚinitrPZtext_sigr^r‘r r r rPÆsÌ ý      ÿÿ      ÿ ÿ                ÿ ÿ       rPc@s eZdZdS)rõNràr r r r rõ} srõc@s eZdZdS)rNràr r r r r� src@s4eZdZdZdZdZdZdZdd„Ze dd „ƒZ d S) Ú_ParameterKindrr¥réécCs|jSr)Ú_name_rr r r Ú__str__Œ sz_ParameterKind.__str__cCst|Sr)Ú_PARAM_NAME_MAPPINGrr r r Ú description� sz_ParameterKind.descriptionN) r—r‘r’r+r,r.r/r1rHrjrJr r r r rD… srDzpositional-onlyzpositional or keywordzvariadic positionalr‹zvariadic keywordc@s¬eZdZdZeZeZeZ e Z e Z eZeedœdd„Zdd„Zdd„Zed d „ƒZed d „ƒZed d„ƒZedd„ƒZeeeedœdd„Zdd„Zdd„Zdd„Zdd„ZdS)r!)Ú_nameÚ_kindÚ_defaultÚ _annotationrcCszt|ƒ|_Wn"ty0td|›d�ƒ‚Yn0|turb|jttfvrbd}| |jj¡}t|ƒ‚||_||_ |tur~tdƒ‚t |t ƒs d t |ƒj ¡}t|ƒ‚|ddkrø|dd… ¡rø|jtkràd }| |jj¡}t|ƒ‚t|_d  |dd…¡}| ¡�std  |¡ƒ‚||_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)rDrLr„rrYr[r…rJrMrNrr¡rr—r ÚisdigitrXrVÚ isidentifierrK)r�rNrvrWr\r‘r r r rä s6   ÿ zParameter.__init__cCs t|ƒ|j|jf|j|jdœfS)N©rMrN)rrKrLrMrNrr r r Ú __reduce__ê s  ÿþzParameter.__reduce__cCs|d|_|d|_dS)NrMrNrQ©r�Ústater r r Ú __setstate__ð s zParameter.__setstate__cCs|jSr)rKrr r r rNô szParameter.namecCs|jSr)rMrr r r rWø szParameter.defaultcCs|jSr)rNrr r r r\ü szParameter.annotationcCs|jSr)rLrr r r rv szParameter.kind)rNrvr\rWcCsL|tur|j}|tur|j}|tur*|j}|tur8|j}t|ƒ||||d�Sr)rõrKrLrNrMr)r�rNrvr\rWr r r ri szParameter.replacecCsˆ|j}|j}|jtur(d |t|jƒ¡}|jturb|jturPd |t|jƒ¡}nd |t|jƒ¡}|tkrtd|}n|t kr„d|}|S)Nz{}: {}z{} = {}z{}={}rprs) rvrKrNrr…rkrMrhrYr[)r�rvÚ formattedr r r rH s ÿ   zParameter.__str__cCsd |jj|¡S)Nz <{} "{}">©r…r™r—rr r r Ú__repr__, szParameter.__repr__cCst|j|j|j|jfƒSr)ÚhashrNrvr\rWrr r r Ú__hash__/ szParameter.__hash__cCsJ||ur dSt|tƒstS|j|jkoH|j|jkoH|j|jkoH|j|jkS©NT)rr!ÚNotImplementedrKrLrMrN©r�Úotherr r r Ú__eq__2 s   ÿ þ ýzParameter.__eq__N)r—r‘r’r•rVr+rXr,rYr.rZr/r[r1rrSrärRrUrjrNrWr\rvrõrirHrXrZr_r r r r r!¢ s2(    ÿ r!c@sdeZdZdZdd„Zedd„ƒZedd„ƒZedd „ƒZd d „Z d d „Z dd„Z dd„Z dd„Z dS)ÚBoundArguments)rçÚ _signatureÚ __weakref__cCs||_||_dSr)rçra)r�rrçr r r räP szBoundArguments.__init__cCs|jSr)rarr r r rT szBoundArguments.signaturec Cs|g}|jj ¡D]b\}}|jttfvr*qtz|j|}WntyPYqtYq0|jtkrh|  |¡q|  |¡qt |ƒSr) rarTrKrvr[rZrçr¥rYÚextendrZrm)r�rørìrbryr r r røX s     zBoundArguments.argsc Cs�i}d}|jj ¡D]v\}}|sD|jttfvr4d}n||jvrDd}q|sJqz|j|}WntyjYq0|jtkr‚| |¡q|||<q|SrÈ) rarTrKrvr[rZrçr¥Úupdate)r�ÚkwargsZkwargs_startedrìrbryr r r reo s&     zBoundArguments.kwargsc Csœ|j}g}|jj ¡D]v\}}z| |||f¡WqtyŠ|jturT|j}n$|jt urdd}n|jt urti}nYq| ||f¡Yq0qt |ƒ|_dS)Nr ) rçrarTrKrZr¥rWrrvrYr[r›)r�rçZ new_argumentsrNrbÚvalr r r Úapply_defaults� s     zBoundArguments.apply_defaultscCs2||ur dSt|tƒstS|j|jko0|j|jkSr[)rr`r\rrçr]r r r r_© s   ÿzBoundArguments.__eq__cCs|d|_|d|_dS)Nrarç©rarçrSr r r rU± s zBoundArguments.__setstate__cCs|j|jdœS)Nrhrhrr r r Ú __getstate__µ szBoundArguments.__getstate__cCs@g}|j ¡D]\}}| d ||¡¡qd |jjd |¡¡S)Nz{}={!r}z <{} ({})>r})rçrKrZr…r™r—r«)r�røryrOr r r rX¸ szBoundArguments.__repr__N)r—r‘r’r•rärjrrørergr_rUrirXr r r r r`= s   r`c@sÖeZdZdZeZeZeZ d+eddœdd„Z e dd„ƒZ e d d „ƒZ e dd œd d „ƒZedd„ƒZedd„ƒZeedœdd„Zdd„Zdd„Zdd„Zddœdd„Zdd „Zd!d"„Zd#d$„Zd%d&„Zd'd(„Zd)d*„ZdS),rQ)Ú_return_annotationÚ _parametersNTr5c Csæ|durtƒ}nÀ|r¾tƒ}t}d}|D]”}|j}|j} ||kr\d} |  |j|j¡} t| ƒ‚n||krld}|}|ttfvr˜|jt ur”|r˜d} t| ƒ‚nd}| |vr²d | ¡} t| ƒ‚||| <q&ntdd„|Dƒƒ}t   |¡|_ ||_ dS)NFz7wrong parameter order: {} parameter before {} parameterz-non-default argument follows default argumentTzduplicate parameter name: {!r}css|]}|j|fVqdSrrq©rfrbr r r rh rSz%Signature.__init__..)rrVrvrNr…rJr„rXrWrrÚMappingProxyTyperkrj) r�rTrRr6rîZtop_kindZ kind_defaultsrbrvrNr‘r r r räÝ s@ÿÿ       zSignature.__init__cCstjdtdd�t||ƒS)Nz_inspect.Signature.from_function() is deprecated since Python 3.5, use Signature.from_callable()rr@)rBrCrDr;©rgr†r r r Ú from_function sþzSignature.from_functioncCstjdtdd�t||ƒS)Nz^inspect.Signature.from_builtin() is deprecated since Python 3.5, use Signature.from_callable()rr@)rBrCrDr4rnr r r Ú from_builtin sþzSignature.from_builtin©Úfollow_wrappedcCst|||d�S)N)rNrL)rP)rgr,rrr r r rA+ sÿzSignature.from_callablecCs|jSr)rkrr r r rT1 szSignature.parameterscCs|jSr©rjrr r r rR5 szSignature.return_annotation)rTrRcCs0|tur|j ¡}|tur |j}t|ƒ||d�S)Nr%)rõrTrUrjr)r�rTrRr r r ri9 s ÿzSignature.replacecCs8tdd„|j ¡Dƒƒ}dd„|j ¡Dƒ}|||jfS)Ncss|]}|jtkr|VqdSr)rvrZrlr r r rhI s ÿz(Signature._hash_basis..cSsi|]}|jtkr|j|“qSr )rvrZrNrlr r r r›L s ÿz)Signature._hash_basis..)rmrTrUrR)r�rîÚ kwo_paramsr r r Ú _hash_basisH szSignature._hash_basiscCs(| ¡\}}}t| ¡ƒ}t|||fƒSr)ruÚ frozensetrUrY)r�rîrtrRr r r rZQ s zSignature.__hash__cCs*||ur dSt|tƒstS| ¡| ¡kSr[)rrQr\rur]r r r r_V s  zSignature.__eq__F©rêc Cs°i}t|j ¡ƒ}d}t|ƒ}z t|ƒ}WnÜt�yz t|ƒ} Wnty`YY�q´Yn¢0| jtkrtY�q´nŽ| j|vr²| jtkr¤d} | j | jd�} t | ƒd‚| f}Y�q´nP| jt ksÆ| j t urÔ| f}Y�q´n.|ræ| f}Y�q´nd} | j | jd�} t | ƒd‚Yq0z t|ƒ} Wnt�y2t dƒd‚Yq0| jt tfv�rNt dƒd‚| jtk�r||g} |  |¡t| ƒ|| j<�q´| j|v�r¨| jtk�r¨t dj | jd�ƒd‚||| j<qd} t ||¡D]ª} | jt k�rÜ| } �qÄ| jtk�rì�qÄ| j} z| | ¡}WnDt�yD|�s@| jtk�r@| j t u�r@t dj | d�ƒd‚Yn(0| jtk�rdt dj | jd�ƒ‚||| <�qÄ|�r¤| du�rŒ||| j<nt dj tt|ƒƒd�ƒ‚| ||¡S)Nr zA{arg!r} parameter is positional only, but was passed as a keyword)ryz$missing a required argument: {arg!r}ztoo many positional argumentsz$multiple values for argument {arg!r}z*got an unexpected keyword argument {arg!r})r rTrUrÚ StopIterationrvrYrNrVr…r r[rWrrZrcrmr)Úchainrªr¥Ú_bound_arguments_cls)r�rørerêrçrTZ parameters_exZarg_valsZarg_valrbr‘rUZ kwargs_paramrìr r r Ú_bind] s°        ÿ ÿÿ  ÿÿþ   ÿÿÿ þ    ÿÿzSignature._bindcOs | ||¡Sr©r{©r�rører r r Úbindà szSignature.bindcOs|j||dd�S)NTrwr|r}r r r ræç szSignature.bind_partialcCs t|ƒt|j ¡ƒfd|jifS©Nrj)rrmrkrUrjrr r r rRî sþzSignature.__reduce__cCs|d|_dSrrsrSr r r rUó szSignature.__setstate__cCsd |jj|¡S)Nz<{} {}>rWrr r r rXö szSignature.__repr__c CsÀg}d}d}|j ¡D]d}t|ƒ}|j}|tkr6d}n|rH| d¡d}|tkrVd}n|tkrp|rp| d¡d}| |¡q|rŠ| d¡d d  |¡¡}|j t ur¼t |j ƒ}|d |¡7}|S)NFTrþrpz({})r}z -> {}) rTrUr¡rvrVrZrYrZr…r«rRrrk) r�rtZrender_pos_only_separatorZrender_kw_only_separatorrbrVrvZrenderedZannor r r rHù s0       zSignature.__str__)N)r—r‘r’r•r!r&r`rzrrSrärrrorprArjrTrRrõrirurZr_r{r~rærRrUrXrHr r r r rQ¿ s:ÿ 6     rQrqcCstj||d�S)Nrq)rQrA)r,rrr r r r' src CsÈddl}ddl}| ¡}|jddd�|jddddd �| ¡}|j}| d ¡\}}}z| |¡}} WnPty¸} z8d   |t | ƒj | ¡} t | t jd �t  d ¡WYd} ~ n d} ~ 00|rà| d¡} | }| D]} t|| ƒ}qÐ| j t jv�rt dt jd �t  d¡|j�r¸t d  |¡ƒt d  t| ƒ¡ƒt d  | j¡ƒ|| u�rzt d  t| jƒ¡ƒt| dƒ�r®t d  | j¡ƒn4zt|ƒ\}}Wnt�yžYn0t d  |¡ƒt dƒn t t|ƒƒdS)Nrr zCThe 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€røzFailed to import {} ({}: {}))rÜrr�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_argsr Ú partitionÚ import_modulernr…rr—Úprintr�ÚstderrÚexitr“rLÚbuiltin_module_namesZdetailsrÐÚ __cached__rhrÅrrƒrr()r„rºÚparserrøÚtargetZmod_nameZ has_attrsÚattrsr,r³rur‘ÚpartsÚpartÚ__rêr r r Ú_main, s\þþþ       r•rÕ)N)N)N)F)N)r¥)r¥)r¥)r¥)r¥)r )T)T)T)®Ú __author__r8rõÚdisÚcollections.abcr7ÚenumÚimportlib.machineryrºr)rÎr·rùr�rrrrBr#rÖÚoperatorrrrÚglobalsZmod_dictZCOMPILER_FLAG_NAMESrKrbrcrGr rrrrrrr rr*r-r.r/r1r3r5r:r<r>r@rBrCrQrdrerwrVrˆrŒr”rŸr£r¢r´r¿rÐrÔr×rÚrÍrnrßZ NodeVisitorrárrrrr$r'r(r)r0r1r>r?rIrJrErcrfrkrnr¡r„r‡r�r’r–r—r§r¨r®r°Ú_fieldsr±rµr¸rºrâr½r rÂr¿rÄrÇrÉrÅrËrÌrÍrÎrÏrÕrÖr×rØrÙrÚrÞrßrr=Z_WrapperDescriptorÚallZ_MethodWrapperrrJZ_ClassMethodWrapperrArárârírïrðrörúr r2r4r;rPrõrÚIntEnumrDr+rVr,rXr.rYr/rZr1r[rIr!r`rQrr•r—r r r r Úsp            , t$ >   /D->     ÿ\  ù ;ü < 5        0  ý L H   _þ 8û j: