grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026o ®û|j…'ã@sèdZddlZdd„ZeeƒZedd„ƒZeejƒZeejƒZ eej ƒZ dd„Z ee ƒƒZ d d „ZeeƒƒZd d „ZeƒZeeƒZe ¡d d„ZeƒZeeƒZGdd„dƒZeeƒjƒZeeƒZegjƒZeejƒZeeƒjƒZ ee!j"ƒZ#ee$jdƒZ%eeƒZ&ze'‚e'y�e (¡dZ)ee)ƒZ*ee)j+ƒZ,dZ)[)YnweejƒZ-eej.ƒZ/[[[[[[d$dd„Z0dd„Z1d%dd„Z2dd„Z3Gdd„dƒZ4Gdd„dƒZ5d d!„Z6ee7e8ƒZ9ee8e!BƒZ:ee;ƒZƒZ?d"d#„e@ƒDƒZAdS)&zO Define names for built-in types that aren't directly accessible as a builtin. éNcCódS©N©rrrú,/opt/alt/python310/lib64/python3.10/types.pyÚ_f órcCrrrrrrrÚ rrcsd‰‡fdd„}|jdS)Nécrrrr©ÚarrÚfrz_cell_factory..fr)Ú __closure__)r rr rÚ _cell_factorys  rccs �dVdS)Nr rrrrrÚ_gó€ rcÃs�dSrrrrrrÚ_cs€rcCs �dVdSrrrrrrÚ_ag"rrc@seZdZdd„ZdS)Ú_CcCrrr©ÚselfrrrÚ_m(rz_C._mN)Ú__name__Ú __module__Ú __qualname__rrrrrr's rÚfromkeysércCsNt|ƒ}t|||ƒ\}}}|dur||ƒ||ur||d<||||fi|¤ŽS)zBCreate a class object dynamically using the appropriate metaclass.NÚ__orig_bases__)Ú resolve_basesÚ prepare_class)ÚnameÚbasesÚkwdsÚ exec_bodyÚresolved_basesÚmetaÚnsrrrÚ new_classEsr&cCsœt|ƒ}d}d}t|ƒD]9\}}t|tƒrt|tƒsq t|dƒs!q | |¡}d}t|tƒs1tdƒ‚||||||d…<|t |ƒd7}q |sJ|St|ƒS)z8Resolve MRO entries dynamically as specified by PEP 560.FrÚ__mro_entries__Tz#__mro_entries__ must return a tupler ) ÚlistÚ enumerateÚ isinstanceÚtypeÚ GenericAliasÚhasattrr'ÚtupleÚ TypeErrorÚlen)r Ú new_basesÚupdatedÚshiftÚiÚbaseÚnew_baserrrrOs"   rcCs‚|duri}nt|ƒ}d|vr| d¡}n |rt|dƒ}nt}t|tƒr*t||ƒ}t|dƒr:|j||fi|¤Ž}ni}|||fS)azCall the __prepare__ method of the appropriate metaclass. Returns (metaclass, namespace, kwds) as a 3-tuple *metaclass* is the appropriate metaclass *namespace* is the prepared class namespace *kwds* is an updated copy of the passed in kwds argument with any 'metaclass' entry removed. If no kwds argument is passed in, this will be an empty dict. NÚ metaclassrÚ __prepare__)ÚdictÚpopr+r*Ú_calculate_metar-r8)rr r!r$r%rrrrds      rcCs<|}|D]}t|ƒ}t||ƒrqt||ƒr|}qtdƒ‚|S)z%Calculate the most derived metaclass.zxmetaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases)r+Ú issubclassr/)r$r Úwinnerr5Ú base_metarrrr;„s  r;c@sLeZdZdZddd„Zddd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dS)ÚDynamicClassAttributea×Route attribute access on a class to __getattr__. This is a descriptor, used to define attributes that act differently when accessed through an instance and through a class. Instance access remains normal, but access to an attribute through a class will be routed to the class's __getattr__ method; this is done by raising AttributeError. This allows one to have properties active on an instance, and have virtual attributes on the class with the same name. (Enum used this between Python versions 3.4 - 3.9 .) Subclass from this to use a different method of accessing virtual atributes and still be treated properly by the inspect module. (Enum uses this since Python 3.10 .) NcCs>||_||_||_|p |j|_|du|_tt|ddƒƒ|_dS)NÚ__isabstractmethod__F)ÚfgetÚfsetÚfdelÚ__doc__Ú overwrite_docÚboolÚgetattrr@)rrArBrCÚdocrrrÚ__init__¦s   zDynamicClassAttribute.__init__cCs4|dur |jr |Stƒ‚|jdurtdƒ‚| |¡S)Nzunreadable attribute)r@ÚAttributeErrorrA)rÚinstanceÚ ownerclassrrrÚ__get__°s  zDynamicClassAttribute.__get__cCs"|jdur tdƒ‚| ||¡dS)Nzcan't set attribute)rBrJ)rrKÚvaluerrrÚ__set__¹s zDynamicClassAttribute.__set__cCs |jdur tdƒ‚| |¡dS)Nzcan't delete attribute)rCrJ)rrKrrrÚ __delete__¾s z DynamicClassAttribute.__delete__cCs8|jr|jnd}t|ƒ||j|j|p|jƒ}|j|_|Sr)rErDr+rBrC)rrAÚfdocÚresultrrrÚgetterÃszDynamicClassAttribute.gettercCs$t|ƒ|j||j|jƒ}|j|_|Sr)r+rArCrDrE)rrBrRrrrÚsetterÉózDynamicClassAttribute.settercCs$t|ƒ|j|j||jƒ}|j|_|Sr)r+rArBrDrE)rrCrRrrrÚdeleterÎrUzDynamicClassAttribute.deleter)NNNNr) rrrrDrIrMrOrPrSrTrVrrrrr?•s    r?c@s€eZdZdd„Zdd„Zdd„Zdd„Zed d „ƒZed d „ƒZ ed d„ƒZ edd„ƒZ eZ e Z e Ze Zdd„Zdd„ZeZdS)Ú_GeneratorWrappercCs2||_|jtu|_t|ddƒ|_t|ddƒ|_dS)Nrr)Ú_GeneratorWrapper__wrappedÚ __class__Ú GeneratorTypeÚ_GeneratorWrapper__isgenrGrr)rÚgenrrrrIÖs z_GeneratorWrapper.__init__cCs |j |¡Sr)rXÚsend)rÚvalrrrr]Ûs z_GeneratorWrapper.sendcGs|jj|g|¢RŽSr)rXÚthrow)rÚtpÚrestrrrr_Ýsz_GeneratorWrapper.throwcCs |j ¡Sr)rXÚcloserrrrrbßó z_GeneratorWrapper.closecCó|jjSr)rXÚgi_coderrrrreáóz_GeneratorWrapper.gi_codecCrdr)rXÚgi_framerrrrrgärfz_GeneratorWrapper.gi_framecCrdr)rXÚ gi_runningrrrrrhçrfz_GeneratorWrapper.gi_runningcCrdr)rXÚ gi_yieldfromrrrrriêrfz_GeneratorWrapper.gi_yieldfromcCs t|jƒSr)ÚnextrXrrrrÚ__next__ñrcz_GeneratorWrapper.__next__cCs|jr|jS|Sr)r[rXrrrrÚ__iter__ósz_GeneratorWrapper.__iter__N)rrrrIr]r_rbÚpropertyrergrhriÚcr_codeÚcr_frameÚ cr_runningÚcr_awaitrkrlÚ __await__rrrrrWÔs(    rWcs’tˆƒstdƒ‚ˆjtur3tˆddƒjtur3ˆjj}|d@r ˆS|d@r3ˆj}|j|jdBd�ˆ_ˆSddl }ddl ‰|  ˆ¡‡‡fd d „ƒ}|S) z2Convert regular generator function to a coroutine.z$types.coroutine() expects a callableÚ__code__Ni€é é)Úco_flagsrcsVˆ|i|¤Ž}|jtus|jtur|jjd@r|St|ˆjƒr)t|ˆjƒs)t|ƒS|S)Nru) rYÚ CoroutineTyperZrervr*Ú GeneratorÚ CoroutinerW)ÚargsÚkwargsÚcoro©Ú_collections_abcÚfuncrrÚwrappeds   ÿzcoroutine..wrapped) Úcallabler/rYÚ FunctionTyperGÚCodeTypersrvÚreplaceÚ functoolsr~Úwraps)rrvÚcor…r€rr}rÚ coroutineùs  rˆcCs g|] }|dd…dkr|‘qS)Nr Ú_r)Ú.0ÚnrrrÚ 3s rŒ)rNN)rN)BrDÚsysrr+r‚Ú LambdaTypersrƒÚ__dict__ÚMappingProxyTypeÚimplementationÚSimpleNamespacerÚCellTyperrZrrwrbrÚAsyncGeneratorTyperrÚ MethodTyper0ÚBuiltinFunctionTypeÚappendÚBuiltinMethodTypeÚobjectrIÚWrapperDescriptorTypeÚ__str__ÚMethodWrapperTypeÚstrÚjoinÚMethodDescriptorTyper9ÚClassMethodDescriptorTypeÚ ModuleTyper/Úexc_infoÚtbÚ TracebackTypeÚtb_frameÚ FrameTypeÚGetSetDescriptorTypeÚ __globals__ÚMemberDescriptorTyper&rrr;r?rWrˆr(Úintr,Ú UnionTypeÚEllipsisÚ EllipsisTypeÚNoneTypeÚNotImplementedÚNotImplementedTypeÚglobalsÚ__all__rrrrÚsh               ü      ?% 3