grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026U iÛfø”ã@sôddlZddlmZmZddddddd gZd d „Zd d „Zdd„Zdd„Ze ƒZ Gdd„dƒZ Gdd„de ƒZ dZGdd„deƒZGdd„ded�ZGdd„deeƒZdd„ZGdd„deƒZGdd„deeƒZdd„Zdd „Zd d!„Zd"d#„ZdS)$éN)ÚMappingProxyTypeÚDynamicClassAttributeÚEnumMetaÚEnumÚIntEnumÚFlagÚIntFlagÚautoÚuniquecCst|dƒpt|dƒpt|dƒS)NÚ__get__Ú__set__Ú __delete__)Úhasattr)Úobj©rú)/opt/alt/python38/lib64/python3.8/enum.pyÚ_is_descriptor s  ÿýrcCsLt|ƒdkoJ|dd…|dd…ko.dknoJ|ddkoJ|ddkS)NéééþÿÿÿÚ__Ú_éýÿÿÿ©Úlen©ÚnamerrrÚ _is_dunders &ÿ þ ürcCsLt|ƒdkoJ|d|dko&dknoJ|dd…dkoJ|dd…dkS)NrréÿÿÿÿrérrrrrrÚ _is_sunder!s ÿþür cCsdd„}||_d|_dS)NcSstd|ƒ‚dS)Nz%r cannot be pickled)Ú TypeError©ÚselfÚprotorrrÚ_break_on_call_reduce0sz6_make_class_unpicklable.._break_on_call_reducez )Ú __reduce_ex__Ú __module__)Úclsr%rrrÚ_make_class_unpicklable,sr)c@seZdZeZdS)r N)Ú__name__r'Ú __qualname__Ú _auto_nullÚvaluerrrrr 6scs(eZdZ‡fdd„Z‡fdd„Z‡ZS)Ú _EnumDictcs&tƒ ¡g|_g|_g|_d|_dS)NF)ÚsuperÚ__init__Ú _member_namesÚ _last_valuesÚ_ignoreÚ _auto_called©r#©Ú __class__rrr0Ds  z_EnumDict.__init__csdt|ƒr”|dkrtdƒ‚|dkr<|jr.tdƒ‚t|d|ƒnV|dkr’t|tƒr`| dd¡ ¡}nt |ƒ}||_ t |ƒt |j ƒ@}|r’td |fƒ‚n¾t |ƒrª|d kr¨d }n¨||j krÂtd |ƒ‚n�||j krÎn„t|ƒ�sR||krôtd |||fƒ‚t|tƒ�r:|jtk�r4| |dt|j ƒ|jdd…¡|_d|_|j}|j  |¡|j |¡tƒ ||¡dS)N)Ú_order_Ú_create_pseudo_member_Ú_generate_next_value_Ú _missing_Ú_ignore_z(_names_ are reserved for future Enum user:z4_generate_next_value_ must be defined before membersÚ_generate_next_valuer<ú,ú z-_ignore_ cannot specify already set names: %rÚ __order__r8zAttempted to reuse key: %rz%r already defined as: %rrT)r Ú ValueErrorr4r!ÚsetattrÚ isinstanceÚstrÚreplaceÚsplitÚlistr3Úsetr1rrr r-r,r=rr2Úappendr/Ú __setitem__)r#Úkeyr-Úalreadyr6rrrJKsT  ÿÿ      ü  z_EnumDict.__setitem__)r*r'r+r0rJÚ __classcell__rrr6rr.=s r.csôeZdZedd„ƒZ‡fdd„Zdd„Zd.ddddd œd d „Zd d „Z‡fdd„Z dd„Z dd„Z dd„Z dd„Z dd„Zedd„ƒZdd„Zdd„Z‡fd d!„Zddddd œd"d#„Zd/d$d%„Zd&d'„Zed(d)„ƒZed*d+„ƒZed,d-„ƒZ‡ZS)0rcCs>| ||¡tƒ}| ||¡\}}|dk r:t|ddƒ|d<|S)Nr:)Ú_check_for_existing_membersr.Ú _get_mixins_Úgetattr)Úmetaclsr(ÚbasesÚ enum_dictÚ member_typeÚ first_enumrrrÚ __prepare__�s ÿzEnumMeta.__prepare__c sˆ dg¡ d¡ˆd}|D]}ˆ |d¡q| ||¡\‰}| ˆˆ|¡\}}} ‡fdd„ˆjDƒ} ˆjD] } ˆ| =qnˆ dd¡} t| ƒddh@} | r®td d  | ¡¡ƒ‚d ˆkr¾d ˆd <t ƒ  |||ˆ¡}g|_ i|_ ˆ|_d d „| ¡Dƒ}i|_d ˆk�r2ˆtk �r2d}t‡fdd„|Dƒƒ�s2t|ƒˆjD�]*}| |}t|tƒ�sZ|f}n|}ˆtk�rn|f}| �s�||ƒ}t|dƒ�sÆ||_n6||f|žŽ}t|dƒ�sƈtk�r¼||_n ˆ|Ž|_|j}||_||_|j|Ž|j  ¡D]"\} }|j|jk�rì|}�q�qì|j  |¡||k�r2t|||ƒ||j |<z||j|<Wntk �r`YnX�q8dD]V} | ˆk�r|�qjt|| ƒ}tˆ| dƒ}t|| dƒ}|dk �rj||k�rjt|| |ƒ�qjtdk �rà|�rØ||_ tj |_ | dk �rt| t!ƒ�r|  "dd¡ #¡} | |j k�rtdƒ‚|S)Nr<csi|]}|ˆ|“qSrr)Ú.0Úk)Ú classdictrrÚ ¯sz$EnumMeta.__new__..r8ÚmroÚzInvalid enum member name: {0}r>Ú__doc__zAn enumeration.cSs.h|]&}|j ¡D]\}}t|tƒr|’qqSr)Ú__dict__ÚitemsrCr)rWÚcrXÚvrrrÚ Ès   þz#EnumMeta.__new__..r&)Ú__getnewargs_ex__Ú__getnewargs__r&Ú __reduce__c3s|]}|ˆjkVqdS©N)r^©rWÚm)rTrrÚ ßsz#EnumMeta.__new__..Ú_value_)Ú__repr__Ú__str__Ú __format__r&r?z#member order does not match _order_)$Ú setdefaultrIÚpoprOÚ _find_new_r1rHrAÚformatÚjoinr/Ú__new__Ú_member_names_Ú _member_map_Ú _member_type_r[Ú_value2member_map_ÚobjectÚanyr)rCÚtuplerrjÚ_name_Ú __objclass__r0r_rBr!rPrÚ__new_member__rDrErF)rQr(rRrYÚignorerKrUrsÚsave_newÚuse_argsÚ enum_membersrr8Ú invalid_namesÚ enum_classÚdynamic_attributesÚmethodsÚ member_namer-ÚargsÚ enum_memberÚcanonical_memberÚ class_methodÚ obj_methodÚ enum_methodr6)rYrTrrs�s¨ÿ   ÿÿ                        zEnumMeta.__new__cCsdS)NTrr5rrrÚ__bool__3szEnumMeta.__bool__Nr©ÚmoduleÚqualnameÚtypeÚstartcCs*|dkr| ||¡S|j||||||d�S)NrŽ)rsÚ_create_)r(r-Únamesr�r�r‘r’rrrÚ__call__9s úzEnumMeta.__call__cCs:t|tƒs$tdt|ƒj|jjfƒ‚t||ƒo8|j|jkS©Nz3unsupported operand type(s) for 'in': '%s' and '%s')rCrr!r‘r+r7r{ru)r(ÚmemberrrrÚ __contains__^s ÿÿzEnumMeta.__contains__cs(||jkrtd|jƒ‚tƒ |¡dS)Nz%s: cannot delete Enum member.)ruÚAttributeErrorr*r/Ú __delattr__)r(Úattrr6rrršes zEnumMeta.__delattr__cCsddddg|jS)Nr7r]Ú __members__r'©rtr5rrrÚ__dir__ls ÿÿzEnumMeta.__dir__cCs@t|ƒrt|ƒ‚z |j|WStk r:t|ƒd‚YnXdSrf)rr™ruÚKeyError©r(rrrrÚ __getattr__rs  zEnumMeta.__getattr__cCs |j|Srf©rur rrrÚ __getitem__‚szEnumMeta.__getitem__cs‡fdd„ˆjDƒS)Nc3s|]}ˆj|VqdSrfr¢©rWr©r(rrri‰sz$EnumMeta.__iter__..r�r¥rr¥rÚ__iter__…szEnumMeta.__iter__cCs t|jƒSrf)rrtr¥rrrÚ__len__‹szEnumMeta.__len__cCs t|jƒSrf)rrur¥rrrrœŽszEnumMeta.__members__cCs d|jS)Nz )r*r¥rrrrk˜szEnumMeta.__repr__cs‡fdd„tˆjƒDƒS)Nc3s|]}ˆj|VqdSrfr¢r¤r¥rrriŸsz(EnumMeta.__reversed__..)Úreversedrtr¥rr¥rÚ __reversed__›szEnumMeta.__reversed__cs0|j di¡}||krtdƒ‚tƒ ||¡dS)NruzCannot reassign members.)r^Úgetr™r/Ú __setattr__)r(rr-Ú member_mapr6rrr«¡szEnumMeta.__setattr__c Cs~|j}|dkr|fn||f}| ||¡\} } | ||¡} t|tƒrR| dd¡ ¡}t|ttfƒrÂ|rÂt|dtƒrÂ|g} }g} t | ƒD]8\}}|   |||| dd…¡}|   |¡|  ||f¡qˆ|D].}t|tƒrä|||}}n|\}}|| |<qÆ|  |||| ¡}|dk�rPzt  d¡jd}Wn*tttfk �rN}zW5d}~XYnX|dk�rdt|ƒn||_|dk �rz||_|S)Nr>r?rrr*)r7rOrVrCrDrErFrzrGÚ enumerater:rIrsÚsysÚ _getframeÚ f_globalsr™rArŸr)r'r+)r(Ú class_namer”r�r�r‘r’rQrRrrUrYÚoriginal_namesÚ last_valuesÚcountrr-Úitemr†Ú member_valuerƒÚexcrrrr“®s<            zEnumMeta._create_csœttj|ƒ}|rt|ƒ}n|}‡fdd„| ¡Dƒ}z|jdd„d�Wn$tk rn|jdd„d�YnX||||d�}t|_| |j ¡|||<|S)Ncs g|]\}}ˆ|ƒr||f‘qSrr)rWrr-©ÚfilterrrÚ ôsþz&EnumMeta._convert_..cSs|d|dfS)Nrrr©ÚtrrrÚúóz$EnumMeta._convert_..)rKcSs|dS©Nrrr»rrrr½ýr¾)r�) Úvarsr®Úmodulesr_Úsortr!Ú_reduce_ex_by_namer&Úupdaterœ)r(rr�r¹ÚsourceÚmodule_globalsÚmembersrr¸rÚ _convert_ãs   þ zEnumMeta._convert_cOs$ddl}|jdtdd�|j||ŽS)NrzI_convert is deprecated and will be removed in 3.9, use _convert_ instead.r)Ú stacklevel)ÚwarningsÚwarnÚDeprecationWarningrÈ)r(r‡ÚkwargsrÊrrrÚ_converts ÿzEnumMeta._convertcCs<|D]2}|jD]&}t|tƒr|jrtd||jfƒ‚qqdS)Nz %s: cannot extend enumeration %r)Ú__mro__Ú issubclassrrtr!r*)r±rRÚchainÚbaserrrrN s ÿÿz$EnumMeta._check_for_existing_memberscsT|s ttfS‡fdd„}|d}t|tƒs2tdƒ‚||ƒp._find_data_typerzZnew enumerations should be created as `EnumName([mixin_type, ...] [data_type,] enum_type)`zCannot extend enumerations)rxrrÐr!rt)r±rRrÖrUrTrrÕrrOs   zEnumMeta._get_mixins_c CsŽ| dd¡}|dk }|dkrpdD]H}||fD].}t||dƒ}|ddjtjtjhkr,|}q\q,|dk r qpq tj}|tjkr€d}nd}|||fS)Nrs)r}rsFT)rªrPrsrxr) rYrTrUrsrÚmethodÚpossibleÚtargetr€rrrrpCs*   ü zEnumMeta._find_new_)N)N)r*r'r+Ú classmethodrVrsr�r•r˜ršržr¡r£r¦r§Úpropertyrœrkr©r«r“rÈrÎÚ staticmethodrNrOrprMrrr6rr‹s6 %   5 !  .c@speZdZdd„Zdd„Zedd„ƒZdd„Zd d „Zd d „Z d d„Z dd„Z dd„Z e dd„ƒZe dd„ƒZdS)rc Cst|ƒ|kr|Sz |j|WStk r0Yn:tk rh|j ¡D]}|j|krH|YSqHYnXzd}| |¡}Wn*tk r¦}z |}d}W5d}~XYnXzdt ||ƒr¼|W¢TSt d||j fƒ}|dkrä|dkrä|‚n|dk�rtd|j |fƒ}||_ |‚W5d}d}XdS)Nú%r is not a valid %szDerror in %s._missing_: returned %r instead of None or a valid member) r‘rwrŸr!ruÚvaluesrjr;Ú ExceptionrCrAr*Ú __context__)r(r-r—r·ÚresultÚeÚve_excrrrrsws@     ÿÿz Enum.__new__c Cs6t|ƒD](}z|dWStk r.YqXq|S©Nr)r¨r!)rr’r´r³Ú last_valuerrrr:¤s zEnum._generate_next_value_cCsdSrfr)r(r-rrrr;µszEnum._missing_cCsd|jj|j|jfS)Nú <%s.%s: %r>)r7r*r{rjr5rrrrk¹s ÿz Enum.__repr__cCsd|jj|jfS)Nú%s.%s)r7r*r{r5rrrrl½sz Enum.__str__cs6‡fdd„ˆj ¡Dƒdd„ˆjDƒ}dddg|S)Ncs2g|]*}|jD]}|ddkr|ˆjkr|‘qqS©rr)r^ru)rWr(rhr5rrrºÄs  ýz Enum.__dir__..cSsg|]}|ddkr|‘qSrèrrgrrrrºÉs r7r]r')r7r[r^)r#Úadded_behaviorrr5rržÀs  þûz Enum.__dir__cCsJt|ƒjtjtjfk}|jtks$|r2t}t|ƒ}n |j}|j}| ||¡Srf) r‘rlrrrvrxrDrjrm)r#Ú format_specÚstr_overriddenr(ÚvalrrrrmÌs  zEnum.__format__cCs t|jƒSrf)Úhashr{r5rrrÚ__hash__ßsz Enum.__hash__cCs|j|jffSrf©r7rjr"rrrr&âszEnum.__reduce_ex__cCs|jSrf)r{r5rrrrìsz Enum.namecCs|jSrf©rjr5rrrr-ñsz Enum.valueN)r*r'r+rsr:rÚr;rkrlržrmrîr&rrr-rrrrrqs-    )Ú metaclassc@s eZdZdS)rN)r*r'r+rrrrr÷scCs|jSrfrr"rrrrÃûsrÃc@sleZdZdd„Zedd„ƒZedd„ƒZdd„Zd d „Zd d „Z d d„Z dd„Z dd„Z dd„Z dd„ZdS)rc Csd|s|dk r|SdSt|ƒD]:}zt|ƒ}WqXWqtk rTtd|ƒd‚YqXqd|dS)NrzInvalid Flag value: %rr)r¨Ú _high_bitrßr!)rr’r´r³råÚhigh_bitrrrr:s   zFlag._generate_next_value_cCs.|}|dkr|}| |¡}|dkr*|}|Sr¿)r9)r(r-Úoriginal_valueÚpossible_memberrrrr;s zFlag._missing_cCsb|j |d¡}|dkr^t||ƒ\}}|r:td||jfƒ‚t |¡}d|_||_|j  ||¡}|S©NrÝ) rwrªÚ _decomposerAr*rxrsr{rjrn)r(r-Ú pseudo_memberrÚ extra_flagsrrrr9#s zFlag._create_pseudo_member_cCs8t||jƒs&tdt|ƒj|jjfƒ‚|j|j@|jkSr–)rCr7r!r‘r+rj©r#Úotherrrrr˜7s ÿÿzFlag.__contains__cCsV|j}|jdk r$d|j|j|jfSt||jƒ\}}d|jd dd„|Dƒ¡|jfS)Nræú|cSsg|]}t|jp|jƒ‘qSr©rDr{rjrgrrrrºHsz!Flag.__repr__..)r7r{r*rjr÷rr©r#r(rÇÚ uncoveredrrrrkAs ýz Flag.__repr__cCs€|j}|jdk r d|j|jfSt||jƒ\}}t|ƒdkr^|djdkr^d|j|djfSd|jd dd„|Dƒ¡fSdS)Nrçrrz%s.%rrücSsg|]}t|jp|jƒ‘qSrrýrgrrrrºVsz Flag.__str__..)r7r{r*r÷rjrrrrþrrrrlLs þz Flag.__str__cCs t|jƒSrf)Úboolrjr5rrrr�Ysz Flag.__bool__cCs"t||jƒstS| |j|jB¡Srf©rCr7ÚNotImplementedrjrúrrrÚ__or__\s z Flag.__or__cCs"t||jƒstS| |j|j@¡SrfrrúrrrÚ__and__as z Flag.__and__cCs"t||jƒstS| |j|jA¡SrfrrúrrrÚ__xor__fs z Flag.__xor__cCsNt|j|jƒ\}}| d¡}|jD] }||kr"|j|j@s"||B}q"| |¡Sr¿)r÷r7rj)r#rÇrÿÚinvertedrhrrrÚ __invert__ks    zFlag.__invert__N)r*r'r+r:rÚr;r9r˜rkrlr�rrrrrrrrrþs     c@sPeZdZedd„ƒZedd„ƒZdd„Zdd„Zd d „ZeZ eZ eZ d d „Z d S)rcCs*t|tƒstd||jfƒ‚| |¡}|Srö)rCÚintrAr*r9)r(r-Ú new_memberrrrr;ys  zIntFlag._missing_cCs¬|j |d¡}|dkr¨|g}t||ƒ\}}|rtt|ƒ}d|}||jkrZ||krZ| |¡|| krjd}q*||N}q*t|ƒD]*}t ||¡}d|_||_ |j  ||¡}q||S)Nrr) rwrªr÷ròrIr¨rrsr{rjrn)r(r-røÚneed_to_createrrùÚbitÚ flag_valuerrrr9ƒs( ÿ     zIntFlag._create_pseudo_member_cCs0t||jtfƒstS| |j| |¡jB¡}|Srf©rCr7rrrj)r#rûrárrrr¤szIntFlag.__or__cCs,t||jtfƒstS| |j| |¡j@¡Srfr rúrrrrªszIntFlag.__and__cCs,t||jtfƒstS| |j| |¡jA¡Srfr rúrrrr¯szIntFlag.__xor__cCs| |j¡}|Srfrï)r#rárrrr¸szIntFlag.__invert__N) r*r'r+rÚr;r9rrrÚ__ror__Ú__rand__Ú__rxor__rrrrrrts  cCs | ¡dSrä)Ú bit_length©r-rrrrò½sròcCs^g}|j ¡D]"\}}||jkr| ||jf¡q|rZd dd„|Dƒ¡}td||fƒ‚|S)Nz, cSsg|]\}}d||f‘qS)z%s -> %sr)rWÚaliasrrrrrºÍszunique..z duplicate values found in %r: %s)rœr_rrIrrrA)Ú enumerationÚ duplicatesrr—Ú alias_detailsrrrr Ãs  ÿÿcCsÔ|}|dk}|r*dd„t|j ¡ƒDƒ}ndd„t|j ¡ƒDƒ}g}|D],\}}|rJ||@|krJ| |¡||M}qJ|s–||jkr–| |j|¡|jdd„dd�t|ƒd krÌ|dj|krÌ| d¡||fS) NrcSs"g|]\}}|jdk r||f‘qSrfr©rWrarhrrrrºÞs þz_decompose..cSs*g|]"\}}|jdk st|ƒr||f‘qSrf)rÚ _power_of_tworrrrrºås þcSs|jSrfrð)rhrrrr½ñr¾z_decompose..T)rKÚreverser)rGrwr_rIrÂrr-ro)Úflagr-Ú not_coveredÚnegativeÚflags_to_checkrÇr—r¶rrrr÷Òs( þ þ    r÷cCs|dkr dS|dt|ƒkS)NrFr)ròrrrrr÷sr)r®ÚtypesrrÚ__all__rrr r)rxr,r Údictr.rr‘rrrrÃrrròr r÷rrrrrÚs>ý    LivI%