grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026+ ÿÐ/qyPï ãóÈ€Rt^RIt^RIt^RIt^RIt^RIt^RIt.R#Ot!RR]P4t ] !4t Rt R$t !RR4t]!R%R&4t!RR4tR tR tR t!R R ]4tRR/RltRRRR/RltRtRtRtRRRRRRR] P8/RltRtRtRt Rt!]PDR,PFt$R t%!R!R"]PL4t'R#)'z3Helpers for introspecting and wrapping annotations.NÚFormatÚ ForwardRefcó&€]tRt^t^t^t^t^tRtR#)r©N) Ú__name__Ú __module__Ú __qualname__Ú__firstlineno__ÚVALUEÚVALUE_WITH_FAKE_GLOBALSÚ FORWARDREFÚSTRINGÚ__static_attributes__róÚ4/opt/alt/python314/lib64/python3.14/annotationlib.pyrrs†Ø €EØÐØ€JØ „Frz!name '{name:.200}' is not definedc óÔa€]tRt^6toRt]tRRRRRRRR/R ltR tR RR RR RRRR] P/Rlt ] 3Rlt ]R4t]R4t]R4tRtRtRtRtRtRtVtR#)ra—Wrapper that holds a forward reference. Constructor arguments: * arg: a string representing the code to be evaluated. * module: the module where the forward reference was created. Must be a string, not a module object. * owner: The owning object (module, class, or function). * is_argument: Does nothing, retained for compatibility. * is_class: True if the forward reference was created in class scope. ÚmoduleNÚownerÚ is_argumentTÚis_classFcóà€\V\4'g\RV: 24hWnW@nWPnW nW0nRVnRVn RVn RVn RVn RVn R#)z*Forward reference must be a string -- got N)Ú isinstanceÚstrÚ TypeErrorÚ__arg__Ú__forward_is_argument__Ú__forward_is_class__Ú__forward_module__Ú __owner__Ú __globals__Ú__cell__Ú__extra_names__Ú__code__Ú __ast_node__Ú__resolved_str_cache__)ÚselfÚargrrrrs&&$$$$rÚ__init__ÚForwardRef.__init__Est€ô˜#œs×#Ò#ÜÐHÈÉÐPÓQÐ QàŒ Ø'2Ô$Ø$,Ô!Ø"(ÔØŒð ˆÔðˆŒ Ø#ˆÔðˆŒ Ø ˆÔØ&*ˆÖ#rcó€\R4h)zCannot subclass ForwardRef©r)ÚclsÚargsÚkwdss"*,rÚ__init_subclass__ÚForwardRef.__init_subclass__ds€ÜÐ4Ó5Ð5rÚglobalsÚlocalsÚ type_paramsÚformatc óæ€T;\P8XdVP#;\P8XdRpM#\P8XdRpM \ V4h\ VP\P4'dVPP#Vf VPpVfDVPe6\\P P#VPR4RR4pVf VP$pVf®\ V\&4'dL\VRR4pV'd6\P P#VR4pV'd\VRR4pML\ V\P(4'd\VRR4pM\+V4'd\VRR4pVf/pVfVe\VRR4pVf4/p\ V\&4'dVP-\/V44MAVf3\ VP\04'gVP2'd \1V4pVe&VFp VP5V P6V 4K! \ VP\04'dBVPP94F#wr«V Pp VP5W¬4K% VP2'dVP-VP24VP:p V P=4'dŠ\>P@!V 4'gnWÒ9d W-,#WÑ9d W,#\C\DV 4'd\\DV 4#V'dV#\G\HPKV R7V R7hVPLp\OWáVR 7# \dEL5i;i \dEK:i;i \Pd T'ghMi;i\S/\DPTCTCTCTTTPVTR 7p\OYáTR 7pTPYTP4T# \PdTu#i;i) zxEvaluate the forward reference and return the value. If the forward reference cannot be evaluated, raise an exception. FTNÚ__dict__rrÚ__type_params__)Úname)r0r1©r0rrr3)-rr Ú__resolved_str__r r ÚNotImplementedErrorrr ÚtypesÚCellTypeÚ cell_contentsÚ ValueErrorrrÚgetattrÚsysÚmodulesÚgetrÚtypeÚ ModuleTypeÚcallableÚupdateÚvarsÚdictr!Ú setdefaultrÚitemsÚ__forward_arg__Ú isidentifierÚkeywordÚ iskeywordÚhasattrÚbuiltinsÚ NameErrorÚ_NAME_ERROR_MSGr3Ú__forward_code__ÚevalÚ ExceptionÚ_StringifierDictr5rÚ transmogrify)r%r0r1r2rr3Úis_forwardref_formatÚ module_namerÚparamÚ cell_nameÚcellÚ cell_valuer&ÚcodeÚ new_localsÚresults&$$$$$ rÚevaluateÚForwardRef.evaluategs±€ðØ”—–Ù×,Ñ,Ð,Ø”—–Ù',Ñ$Ü×"Ö"Ø'+Ñ$ØÜ)¨&Ó1Ð1Ü �d—m‘m¤U§^¡^× 4Ò 4ð Ø—}‘}×2Ñ2Ð2ð Š=Ø—N‘NˆEà Š?˜t×6Ñ6ÒBÜÜ— ‘ —‘ × 7Ñ 7¸Ó>À ÈDóˆGð Š?Ø×&Ñ&ˆGØ Š?ܘ%¤×&Ò&Ü% e¨\¸4Ó@� ßÜ Ÿ[™[Ÿ_™_¨[¸$Ó?�FßÜ")¨&°*¸dÓ"C˜øÜ˜E¤5×#3Ñ#3×4Ò4Ü! %¨°TÓ:‘ܘ%—’Ü! %¨¸Ó=�ð Š?؈Gà Ò  5Ò#4Ü! %Ð):¸DÓAˆKà Š>؈Fܘ%¤×&Ò&Ø— ‘ œd 5›kÔ*øà Ò #ܘ$Ÿ-™-¬×.Ò.Ø×#×#Ð#ô˜&“\ˆFð Ò "Û$�Ø×!Ñ! %§.¡.°%Ö8ñ%ô �d—m‘m¤T× *Ò *Ø#'§=¡=×#6Ñ#6Ö#8‘� ð=Ø!%×!3Ñ!3�Jð×%Ñ% iÖ<ñ $9ð × × Ð Ø �M‰M˜$×.Ñ.Ô /à×"Ñ"ˆØ × Ñ × Ò ¤g×&7Ò&7¸×&<Ò&<ØŒ}Ø•{Ð"ؔؕ|Ð#Üœ 3×'Ò'Üœx¨Ó-Ð-ß%Ø� ä¤× 6Ñ 6¸CÐ 6Ó @ÀsÔKÐKà×(Ñ(ˆDð ܘD¸&ÔAÐAøô_ô Úð ûôp"ôÛðûô0ô ß+Øñ,ð úô *Ø:”8×$Ñ$Ð:¨Ð:°6Ð:ØØØ×2Ñ2Øô ˆJð ܘd¸JÔG�ð×'Ñ'¨¯ © Ô6Ø� øô ô Ø’ ð úsN OÊ5 OÎ; O-Ï OÏOÏ O*Ï)O*Ï-PÐPÐPÐ6 Q Ñ Q0Ñ/Q0có €^RIp^RIpV\JdVPR4RpVP RRRR7VP VVVVVR7#) éNztyping.ForwardRef._evaluatezForwardRef._evaluatez¢{name} is a private API and is retained for compatibility, but will be removed in Python 3.16. Use ForwardRef.evaluate() or typing.evaluate_forward_ref() instead.)Úremove)r0r1r2Ú_recursive_guardr)éé)ÚtypingÚwarningsÚ _sentinelÚ._deprecation_warning_for_no_type_params_passedÚ _deprecatedÚevaluate_forward_ref)r%ÚglobalnsÚlocalnsr2Úrecursive_guardrirjs&&&&$ rÚ _evaluateÚForwardRef._evaluateåsp€ÛÛà œ)Ó #Ø × AÑ AØ-ô ðˆKØ×ÑØ "ð càð ô ð ×*Ñ*Ø ØØØ#Ø,ð +ó ð rcóÊ€VPe VP#VPe2\P!VP4VnVP#\ R4h)NzDAttempted to access '__forward_arg__' on an uninitialized ForwardRef)rr#ÚastÚunparseÚAssertionError©r%s&rrKÚForwardRef.__forward_arg__üsR€à �<‰<Ò #Ø—<‘<Ð Ø × Ñ Ò (ÜŸ;š; t×'8Ñ'8Ó9ˆDŒLØ—<‘<Ð ÜØ Ró ð rcó*€VPf{VPpVPpV'dU\V4p\P !VRR7P pVPV4p\P!V4pWnVP#)NrT©Úmode) r$rKr!Ú_ExtraNameFixerruÚparseÚbodyÚvisitrv)r%Ú resolved_strÚnamesÚvisitorÚast_exprÚnodes& rr9ÚForwardRef.__resolved_str__sw€ð × &Ñ &Ò .Ø×/Ñ/ˆLØ×(Ñ(ˆEçÜ)¨%Ó0�ÜŸ9š9 \¸Ô?×DÑD�Ø—}‘} XÓ.�Ü"Ÿ{š{¨4Ó0� à*6Ô 'à×*Ñ*Ð*rcóÚ€VPe VP#VPp\\V4RR4VnVP# \d\ RT: 24hi;i)NzrTz/Forward reference must be an expression -- got )r"rKÚcompileÚ_rewrite_star_unpackÚ SyntaxError)r%r&s& rrSÚForwardRef.__forward_code__sp€à �=‰=Ò $Ø—=‘=Ð Ø×"Ñ"ˆð YÜ#Ô$8¸Ó$=¸zÈ6ÓRˆDŒMð�}‰}Ðøôô YÜÐ OÐPSÉwÐWÓXÐ Xð Yús ¨AÁA*c óF€\V\4'g\#VPVP8H;'EdÙVPVP8H;'Ed·VP VP J;'Ed–VP VP 8H;'Edt\VP\4'd’\VP\4'drVPP4UUu/uFwr#V\V4bK uppVPP4UUu/uFwr#V\V4bK upp8HMVPVPJ;'d£VPVP8H;'d‚VP'd-\\VPP444MRVP'd-\\VPP444MR8H#uuppiuuppi©N)rrÚNotImplementedrKrrrr rHrJÚidrr!ÚtupleÚsorted)r%Úotherr7r\s&& rÚ__eq__ÚForwardRef.__eq__$s·€Ü˜%¤×,Ò,Ü!Ð !à × Ñ  E×$9Ñ$9Ñ 9÷ ñ Ø×'Ñ'¨5×+CÑ+CÑC÷ ñ ð× Ñ  E×$5Ñ$5Ð5÷  ñ ð ×)Ñ)¨U×-GÑ-GÑG÷  ñ ô˜dŸm™m¬T×2Ò2´zÀ%Ç.Á.ÔRV×7WÒ7Wð37·-±-×2EÑ2EÔ2GÔHÑ2G¡J D�”r˜$“x’Ñ2GÒHØ5:·^±^×5IÑ5IÔ5KÔLÑ5K¡z t�Dœ"˜T›(’NÑ5KÒLòMð—]‘] e§n¡nÐ4÷ ð ð—‘ %§/¡/Ñ1÷ ð ðAE×@T×@TÐ@T””v˜d×2Ñ2×8Ñ8Ó:Ó;Ô<ÐZ^ØAF×AV×AVÐAV””v˜e×3Ñ3×9Ñ9Ó;Ó<Ô=Ð\`ñbð! ùóIùÛLs ÄHÄ8Hcó,€\VPVP\VP4VP \ VP\4'dL\\VPP4UUu.uFwrV\V43NK upp44M\VP43VPVP'd2\\VPP44434#R34#uuppir�)ÚhashrKrr�rrrr rHr�r‘rJrr!)r%r7r\s& rÚ__hash__ÚForwardRef.__hash__<så€ÜØ × Ñ Ø × #Ñ #Ü ˆt×ÑÓ Ø × %Ñ %ô˜dŸm™m¬T×2Ò2ô”fÀÇÁ×ATÑATÔAVÔWÑAV±:°4˜t¤R¨£XÓ.ÑAVÒWÓXÔYÜ8:¸4¿=¹=Ó8Ið ð �N‰NØ;?×;O×;OÐ;OŒE”&˜×-Ñ-×3Ñ3Ó5Ó6Ó 7ð  ó  ð ðVZð  ó  ð ùó XsÂDcó2€\PW3,#r�©r;Ú UnionType©r%r’s&&rÚ__or__ÚForwardRef.__or__Js€Ü�‰˜t˜{Õ+Ð+rcó2€\PW3,#r�ršrœs&&rÚ__ror__ÚForwardRef.__ror__Ms€Ü�‰˜u˜{Õ+Ð+rcóD€.pVPe VPRVP: 24VP'dVPR4VPe VPRVP: 24RVP: RP V4 R2#)Nz , module=z, is_class=Truez, owner=z ForwardRef(ÚÚ))rÚappendrrr9Újoin)r%Úextras& rÚ__repr__ÚForwardRef.__repr__Ps‹€ØˆØ × "Ñ "Ò .Ø �L‰L˜9 T×%<Ñ%<Ñ$?Ð@Ô AØ × $× $Ð $Ø �L‰LÐ*Ô +Ø �>‰>Ò %Ø �L‰L˜8 D§N¡NÑ#5Ð6Ô 7ؘT×2Ñ2Ñ5°b·g±g¸e³nÐ5EÀQÐGÐGr) rr#r r"r!rrrrrr$)rrrr Ú__doc__Ú_SLOTSÚ __slots__r'r.rr rarkrrÚpropertyrKr9rSr“r—r�r r¨rÚ__classdictcell__©Ú __classdict__s@rrr6sìø‡€ñ ð€Ið+ðð +ð ð +ð ð +ðô+ò>6ð|ðð|ðð |ð ð |ð ð |ð�|‰|ô|ð|8Aô ð.ñ óð ðñ+óð+ð"ñóðò ò0  ò,ò,÷HðHrcóþa€]tRtRto]tRRR/RlltRtRtRt RRlt R t R t R t R tR tRtRtV3RlRlt]!]P(!44t]!]P,!44t]!]P0!44t]!]P4!44t]!]P8!44t]!]P<!44t]!]P@!44t!]!]PD!44t#]!]PH!44t%]!]PL!44t']!]PP!44t)]!]PT!44t+]!]PX!44t-AV3RlRlt.].!]P(!44t/].!]P,!44t0].!]P0!44t1].!]P4!44t2].!]P8!44t3].!]P<!44t4].!]P@!44t5].!]PD!44t6].!]PH!44t7].!]PL!44t8].!]PP!44t9].!]PT!44t:].!]PX!44t;A.Rt<]] \2\P8\4\P:\6\P</\V4,p V !V 4V3#VPP?4p\P !VR7Wá/3#)©r�N©Úvalue) rr²r#rruÚNamer!rCÚ _TemplateÚ_template_to_astr¶r3rr ÚintÚfloatÚboolÚcomplexÚConstantrHrJÚ_Stringifier__convert_to_astrFr¥ÚDictÚlistr�ÚsetÚListÚTupleÚSetÚcreate_unique_name)r%r’r³ÚkeysÚvaluesÚkeyr¼Únew_keyÚnew_extra_namesÚ new_valueÚeltsÚeltÚnew_eltÚ ast_classr7s&& rÚ__convert_to_astÚ_Stringifier.__convert_to_ast~s$€Ü �eœ\× *Ò *ܘ%×,Ñ,¬c×2Ò2Ü—x’x 5×#5Ñ#5Ô6¸×8MÑ8MÐMÐMØ×%Ñ% u×'<Ñ'<Ð<Ð <Ü �%‹[œIÓ %Ü# EÓ*¨DÐ0Ð 0ð × %Ñ %× ,Ñ ,´· ± Ô =ØŠ}Ü�E‹{œs¤C¬´´gÐ>Ô>ä—<’< eÔ,¨dÐ2Ð 2Ü �%‹[œDÓ ØˆK؈D؈FØ#Ÿk™kžm‘ �Ø+/×+@Ñ+@ÀÓ+EÑ(�Ø"Ò.Ø×&Ñ& Ô7Ø— ‘ ˜GÔ$Ø-1×-BÑ-BÀ5Ó-IÑ*� Ø"Ò.Ø×&Ñ& Ô7Ø— ‘ ˜iÖ(ñ,ô—8’8˜DÓ)¨;Ð6Ð 6Ü �%‹[œT¤5¬#Ð.Ô .؈K؈DÛ�Ø+/×+@Ñ+@ÀÓ+EÑ(�Ø"Ò.Ø×&Ñ& Ô7Ø— ‘ ˜GÖ$ñ ô œsŸx™x¬´· ± ¼3ÄÇÁÐHÌÈeËÕUˆIÙ˜T“? KÐ/Ð /à×,Ñ,×?Ñ?ÓAˆDÜ—8’8˜tÔ$ t mÐ3Ð 3rcóüaa€\V\4'dU/oVV3Rlp\P!V!VP4V!VP 4V!VP 4R7S3#SPV4#)cód<€VfR#SPV4wrVeSPV4V#r�)rÅrF)ÚobjÚnew_objrÑr³r%s& €€rÚconvÚ3_Stringifier.__convert_to_ast_getitem..conv­s7ø€Ø’;ÙØ+/×+@Ñ+@ÀÓ+EÑ(�Ø"Ò.Ø×&Ñ& Ô7Ø�r)ÚlowerÚupperÚstep)rÚsliceruÚSliceÚstartÚstoprárÅ)r%r’rÝr³sf& @rÚ__convert_to_ast_getitemÚ%_Stringifier.__convert_to_ast_getitem©snù€Ü �eœU× #Ò #؈Kö ô—9’9Ù˜5Ÿ;™;Ó'Ù˜5Ÿ:™:Ó&Ù˜%Ÿ*™*Ó%ôðð ð ð ×(Ñ(¨Ó/Ð /rcóx€VPp\V\4'd\P!VR7#V#©rº)r#rrrur½)r%r…s& rÚ __get_astÚ_Stringifier.__get_ast½s.€Ø× Ñ ˆÜ �dœC× Ò Ü—8’8˜tÔ$Ð $؈ rc óV€/pVPeVPVP4VeVPV4\TVPVPVP VP T;'gRR7pVP PPV4V#)N)r·r³) r!rFr²rrrr¶Ú stringifiersr¥)r%r…r³rÑÚ stringifiers&&& rÚ __make_newÚ_Stringifier.__make_newÃs—€ØˆØ × Ñ Ò +Ø × "Ñ " 4×#7Ñ#7Ô 8Ø Ò "Ø × "Ñ " ;Ô /Ü"Ø Ø × Ñ Ø �N‰NØ × %Ñ %Ø!×6Ñ6Ø'×/Ð/¨4ô  ˆ ð ×!Ñ!×.Ñ.×5Ñ5°kÔBØÐrcó€\V4#r�rºrxs&rr—Ú_Stringifier.__hash__Ös €Ü�$‹xˆrcó€VPR8Xd\h\V\4'd^/p.pVF<pVP V4wrVVeVP V4VP V4K> \P!V4pMVP V4wr\V\P4'gQ\V44hVP\P!VP4V4V4#r¯)r#ÚKeyErrorrr�Ú$_Stringifier__convert_to_ast_getitemrFr¥rurÊrµÚreprÚ_Stringifier__make_newÚ SubscriptÚ_Stringifier__get_ast)r%r’r³rÓrÔrÕrÑs&& rÚ __getitem__Ú_Stringifier.__getitem__ÙsЀð × Ñ  Ô /܈NÜ �eœU× #Ò #؈K؈DÛ�Ø+/×+HÑ+HÈÓ+MÑ(�Ø"Ò.Ø×&Ñ& Ô7Ø— ‘ ˜GÖ$ñ ô —I’I˜d“O‰Eà!%×!>Ñ!>¸uÓ!EÑ ˆEܘ%¤§¡×)Ò)Ð6¬4°«;Ó6Ð)Ø�‰œsŸ}š}¨T¯^©^Ó-=¸uÓEÀ{ÓSÐSrcój€VP\P!VP4V44#r�)r÷ruÚ Attributerù)r%Úattrs&&rÚ __getattr__Ú_Stringifier.__getattr__ìs#€Ø�‰œsŸ}š}¨T¯^©^Ó-=¸tÓDÓEÐErcóÈ€/p.pVF<pVPV4wrgVeVPV4VPV4K> .pVP4FRwršVPV 4wr·VeVPV4VP\P !W›44KT VP \P!VP4WH4V4#r�) rÅrFr¥rJrurMr÷ÚCallrù) r%r,Úkwargsr³Úast_argsr&Únew_argrÑÚ ast_kwargsrÏr¼rÒs &*, rÚ__call__Ú_Stringifier.__call__ïsƀ؈ ؈ۈCØ'+×'<Ñ'<¸SÓ'AÑ $ˆGØÒ*Ø×"Ñ" ?Ô3Ø �O‰O˜GÖ $ñ ð ˆ Ø Ÿ,™,ž.‰JˆCØ)-×)>Ñ)>¸uÓ)EÑ &ˆIØÒ*Ø×"Ñ" ?Ô3Ø × Ñ œcŸkšk¨#Ó9Ö :ñ )ð �‰œsŸxšx¨¯©Ó(8¸(ÓOÐQ\Ó]Ð]rc#óx"€VP\P!VP444x€R#5ir�)r÷ruÚStarredrùrxs&rÚ__iter__Ú_Stringifier.__iter__ÿs$逨�o‰oœcŸkšk¨$¯.©.Ó*:Ó;Ó<Ô<ùs‚8:cóš€\VP\4'd VP#\P!VP4#r�)rr#rrurvrxs&rr¨Ú_Stringifier.__repr__s6€Ü �d×'Ñ'¬× -Ò -Ø×$Ñ$Ð $Ü�{Š{˜4×,Ñ,Ó-Ð-rcó€\R4h)z8Cannot stringify annotation containing string formattingr*)r%Ú format_specs&&rÚ __format__Ú_Stringifier.__format__s€ÜÐRÓSÐSrcó4<€V^8„dQhRS[P/#©éÚop©rurµ)r3r°s"€rÚ __annotate__Ú_Stringifier.__annotate__ sø€÷ñ™Ÿ™ñrcóa€V3RlpV#)có–<€VPV4wr#VP\P!VP 4SV4V4#r�©rÅr÷ruÚBinOprù©r%r’Úrhsr³rs&& €rÚbinopÚ'_Stringifier._make_binop..binop s@ø€Ø#×4Ñ4°UÓ;Ñ ˆCØ—?‘?Ü— ’ ˜$Ÿ.™.Ó*¨B°Ó4°kóð rr)rr sf rÚ _make_binopÚ_Stringifier._make_binop sø€õ ð ˆ rcó4<€V^8„dQhRS[P/#rr)r3r°s"€rrr#sø€÷ñ™Ÿ™ñrcóa€V3RlpV#)có–<€VPV4wr#VP\P!VSVP 44V4#r�r)r%r’Ú new_otherr³rs&& €rÚrbinopÚ)_Stringifier._make_rbinop..rbinop$s@ø€Ø%)×%:Ñ%:¸5Ó%AÑ "ˆIØ—?‘?Ü— ’ ˜) R¨¯©Ó)9Ó:¸Kóð rr)rr(sf rÚ _make_rbinopÚ_Stringifier._make_rbinop#sø€õ ð ˆ rcóa€V3RlpV#)cóœ<€VPV4wr#VP\P!VP 4S.V.R7V4#))ÚleftÚopsÚ comparators)rÅr÷ruÚComparerùrs&& €rÚcompareÚ+_Stringifier._make_compare..compare=sLø€Ø#×4Ñ4°UÓ;Ñ ˆCØ—?‘?Ü— ’ ØŸ™Ó)ؘØ!$ ôð ó ð rr)rr2sf rÚ _make_compareÚ_Stringifier._make_compare<sø€õ ðˆrcóa€V3RlpV#)cól<€VP\P!SVP444#r�)r÷ruÚUnaryOprù)r%rs&€rÚunary_opÚ-_Stringifier._make_unary_op..unary_opTs$ø€Ø—?‘?¤3§;¢;¨r°4·>±>Ó3CÓ#DÓEÐ Err)rr9sf rÚ_make_unary_opÚ_Stringifier._make_unary_opSsø€õ Fðˆr) rr#r r"r!rrrrrr$r¶)NNFNr�)Rrrrr r«r¬r'rÅrõrùr÷r—rúrÿrr r¨rr"ruÚAddÚ__add__ÚSubÚ__sub__ÚMultÚ__mul__ÚMatMultÚ __matmul__ÚDivÚ __truediv__ÚModÚ__mod__ÚLShiftÚ __lshift__ÚRShiftÚ __rshift__ÚBitOrr�ÚBitXorÚ__xor__ÚBitAndÚ__and__ÚFloorDivÚ __floordiv__ÚPowÚ__pow__r*Ú__radd__Ú__rsub__Ú__rmul__Ú __rmatmul__Ú __rtruediv__Ú__rmod__Ú __rlshift__Ú __rrshift__r Ú__rxor__Ú__rand__Ú __rfloordiv__Ú__rpow__r4ÚLtÚ__lt__ÚLtEÚ__le__ÚEqr“ÚNotEqÚ__ne__ÚGtÚ__gt__ÚGtEÚ__ge__r;ÚInvertÚ __invert__ÚUAddÚ__pos__ÚUSubÚ__neg__rr®r¯s@rr²r²^s¹ø‡€ð€Iñ+ðõ+ò6)4òV0ò(ô ò&òTò&Fò^ò =ò.ò T÷ðñ˜#Ÿ'š'›)Ó$€GÙ˜#Ÿ'š'›)Ó$€GÙ˜#Ÿ(š(›*Ó%€GÙ˜SŸ[š[›]Ó+€JÙ˜cŸgšg›iÓ(€KÙ˜#Ÿ'š'›)Ó$€GÙ˜SŸZšZ›\Ó*€JÙ˜SŸZšZ›\Ó*€JÙ ˜Ÿš›Ó %€FÙ˜#Ÿ*š*›,Ó'€GÙ˜#Ÿ*š*›,Ó'€GÙ˜sŸ|š|›~Ó.€LÙ˜#Ÿ'š'›)Ó$€Gà÷ðñ˜CŸGšG›IÓ&€HÙ˜CŸGšG›IÓ&€HÙ˜CŸHšH›JÓ'€HÙ˜sŸ{š{›}Ó-€KÙ §¢£ Ó*€LÙ˜CŸGšG›IÓ&€HÙ˜sŸzšz›|Ó,€KÙ˜sŸzšz›|Ó,€KÙ˜3Ÿ9š9›;Ó'€GÙ˜CŸJšJ›LÓ)€HÙ˜CŸJšJ›LÓ)€HÙ  §¢£Ó0€MÙ˜CŸGšG›IÓ&€Hàò ñ˜3Ÿ6š6›8Ó $€FÙ ˜3Ÿ7š7›9Ó %€FÙ ˜3Ÿ6š6›8Ó $€FÙ ˜3Ÿ9š9›;Ó '€FÙ ˜3Ÿ6š6›8Ó $€FÙ ˜3Ÿ7š7›9Ó %€Fàòñ   § ¢ £ Ó-€JÙ˜SŸXšX›ZÓ(€GÙ˜SŸXšX›ZÓ(€Gærr²c ó`€.pVFùpV\Rc;e+wVP\P!VR74K9\P!\P !RR7\P!VP R7\P!VPR7\P!VPR7\P!VPR7.R7pVPV4Kû \P!\P !RR7V.R7#)z3Convert a `template` instance to a non-literal AST.rr»Ú Interpolationrº)Úfuncr,ÚTemplate)rur,Úkeywords) rr¥rurÄrr½r¼Ú expressionÚ conversionr)Útemplater,ÚpartÚinterps& rÚ_template_to_ast_constructorr}`sÃ€à €DÛˆØÜ—Ø— ‘ œCŸLšL¨tÔ4Ö5ðàÜŸšÜŸš _Ô5äŸ š ¨4¯:©:Ô6ÜŸ š ¨4¯?©?Ô;ÜŸ š ¨4¯?©?Ô;ÜŸ š ¨4×+;Ñ+;Ô<ð ô�ð— ‘ ˜FÖ#ñô �8Š8œŸš ZÔ0°tÀbÔ IÐIrc óö€.p^pVFÙpV\Rc;e+wVP\P!VR74K9\P!VP W,VP 'd\VP 4MRVP'd"\P!VPR7MRR7pVPV4V^, pKÛ \P!VR7#)z8Convert a `template` instance to a t-string literal AST.rNr»)rr¼ryr)rÎéÿÿÿÿ) rr¥rurÄrtrxryÚordrÚ TemplateStr)rzÚparsedrÎÚ interp_countr{r|s&& rÚ_template_to_ast_literalr„usº€à €FØ€LÛˆØÜ—Ø— ‘ œcŸlšl°Ô6Ö7ðàÜ×*Ò*ØŸ™Ø Õ.Ø7;··°œs 4§?¡?Ô3ÈBà×'×'Ð'ô!$§ ¢ °4×3CÑ3CÕ Dàô �ð— ‘ ˜fÔ%Ø Õ!’ ñô �?Š? &Ô )Ð)rcó„€\;QJd&RVP4F 'gK RM RM!RVP44'd \V4#\;QJd.RVP4FNK 5M!RVP44p\ Y4# \d\T4u#i;i)zAMake a best-effort conversion of a `template` instance to an AST.c3óZ"€TF!qPP4R8Hx€K# R#5i)r£N)rxÚstrip©Ú.0r{s& rÚ Ú#_template_to_ast..‘s"é€Ð MÑ5L¨T�?‰?× Ñ Ó " bÖ (Ó5Lùs‚)+TFc3ó‚"€TF5p\P!RVP R2RR7Px€K7 R#5i)Ú(r¤rTr{N)rur~rxrrˆs& rrŠr‹–s6é€ð á/�ô �IŠI˜˜$Ÿ/™/Ð*¨!Ð,°6Ô :× ?Ö ?Û/ùs‚=?)ÚanyÚinterpolationsr}r�rŠr„)rzr‚s& rr¿r¿‹s €÷  ƒsÑ M°X×5LÒ5LÓ M‡s‡s‚sÑ M°X×5LÒ5LÓ M×MÒMÜ+¨HÓ5Ð5ð6ç”ñ à ×/Ò/ó —‘ñ à ×/Ò/ó ó ˆô $ HÓ 5Ð5øô ô6Ü+¨HÓ5Ò5ð6úsÁ B&Á&5B&Â&B?Â>B?cóTaa€]tRtRtoRRRRRR/V3RlltRtR tR tR tVt V;t #) rVi r0NrrFcó~<€\SV`V4WnW nW0nW@n.Vn^VnWPnR#)éN) Úsuperr'Ú namespacer0rrríÚnext_idr3)r%r”r0rrr3Ú __class__s&&$$$$€rr'Ú_StringifierDict.__init__¡s8ø€Ü ‰Ñ˜Ô#Ø"ŒØŒ ØŒ Ø Œ ØˆÔØˆŒ ØŽ rcó˜€\VVPVPVPVR7pVPP V4V#))r0rrr·)r²r0rrrír¥)r%rÏÚfwdrefs&& rÚ __missing__Ú_StringifierDict.__missing__«sB€ÜØ Ø—L‘LØ—*‘*Ø—]‘]Ø!ô  ˆð ×Ñ× Ñ  Ô(؈ rcóø€VPFip\VnRVn\ VP \ 4'dVP VnRVnVfKSVPeKcWnKk R#r�) rírr–r¶rr#rrr )r%Ú cell_dictrÛs&& rrWÚ_StringifierDict.transmogrify¶s]€Ø×$Ô$ˆCÜ&ˆCŒMØ'+ˆCÔ $ܘ#×*Ñ*¬C×0Ò0Ø!×.Ñ.�” Ø#'�Ô ØÔ$¨¯©Ô)=Ø(– ó%rcóX€RVP R2pV;P^, unV#)Ú__annotationlib_name_Ú__)r•)r%r7s& rrÌÚ#_StringifierDict.create_unique_nameÀs'€Ø& t§|¡| n°BÐ7ˆØ � Š ˜Õ� ؈ r)r3r0rr”r•rrí) rrrr r'ršrWrÌrr®Ú __classcell__)r–r°s@@rrVrV s3ù‡€ð¨Tð¸ðÈ÷ò ò)÷òrrVrcó€\WVRR7#)z¨Call an evaluate function. Evaluate functions are normally generated for the value of type aliases and the bounds, constraints, and defaults of type parameter objects. T)rÚ _is_evaluate)Úcall_annotate_function)rar3rs&&$rÚcall_evaluate_functionr§Æs€ô " (¸%ÈdÔ SÐSrr¥Fc ó„€V\P8Xd \R4hV!V4# \dMi;iT\P8XEdT!\P4M< \d#\ T!\P 44u#\dMi;i\/TR7p\T\4p\YYTRR7wrg\P!TPTTTPTP R7pT!\P4p T'd \#T 4#T P%4U U u/uFwr«T \#T 4bK up p #uup p iT\P&8XEd/TP(CTP*Cp \T\4p\T TP*TTTR7p\YYTRR7wrm\P!TPTTTPTP R7pT!\P4pTP-T 4T# \dT!\P 4u#\dMi;i\/TP*TTTR7p\YYTRR7wrm\P!TPTTTPTP R7pT!\P4pTP-T 4T'd9\T\.4'd!TP1\P&R7#T#TP%4U U u/uF>wr«T \T \.4'd!T P1\P&R7MT bK@ up p #uup p iT\P 8Xd \3R4h\R T: 24h) aZCall an __annotate__ function. __annotate__ functions are normally generated by the compiler to defer the evaluation of annotations. They can be called with any of the format arguments in the Format enum, but compiler-generated __annotate__ functions only support the VALUE format. This function provides additional functionality to call __annotate__ functions with the FORWARDREF and STRING formats. *annotate* must be an __annotate__ function, which takes a single argument and returns a dict of annotations. *format* must be a member of the Format enum or one of the corresponding integer values. *owner* can be the object that owns the annotations (i.e., the module, class, or function that the __annotate__ function derives from). With the FORWARDREF format, it is used to provide better evaluation capabilities on the generated ForwardRef objects. ú;The VALUE_WITH_FAKE_GLOBALS format is for internal use only)r3F)Úallow_evaluation)ÚclosureÚargdefsÚ kwdefaultsr8Tz/annotate function does not support VALUE formatzInvalid format: )rr r>r:r Úannotations_to_stringr rUrVrrCÚ_build_closurer;Ú FunctionTyper"Ú __defaults__Ú__kwdefaults__Ú_stringify_singlerJr Ú __builtins__rrWrraÚ RuntimeError)Úannotater3rr¥r0rr«Ú_ruÚannosrÏÚvalr”r�r`s&&$$ rr¦r¦Îs‚€ð(”×/Ñ/Ô/ÜÐVÓWÐWð Ù˜ÓÐøÜ ô Ù ð úà ”—‘Õð Ù ”V×3Ñ3Õ 4øÜ"ô Aä(©´&·,±,Ó)?Ó@Ò @Üô Ù ð úô# 2¨fÔ5ˆÜ˜e¤TÓ*ˆÜ#Ø ˜XÀô ‰ ˆô×!Ò!Ø × Ñ Ø ØØ×)Ñ)Ø×.Ñ.ô  ˆñ”V×3Ñ3Ó4ˆß Ü$ UÓ+Ð +ð"ŸK™KœMô á)‘�ð Ô" 3Ó'Ò 'Ù)ò ð ùó ð ”6×$Ñ$Õ $ð$F�x×,Ñ,ÐE°×0DÑ0DÐEˆ ܘe¤TÓ*ˆÜ"Ø Ø×(Ñ(ØØØô  ˆô,Ø ˜XÀô шô×!Ò!Ø × Ñ Ø ØØ×)Ñ)Ø×.Ñ.ô  ˆð Ùœ&×8Ñ8Ó9ˆFð × Ñ  Ô +؈Møô#ô *áœFŸL™LÓ)Ò )Üô Ù ð úô#Ø Ø×(Ñ(ØØØô  ˆô,Ø ˜XÀô шô×!Ò!Ø × Ñ Ø ØØ×)Ñ)Ø×.Ñ.ô  ˆñ”f×4Ñ4Ó5ˆØ×јYÔ'ß Ü˜&¤*×-Ò-Ø—‘¬f×.?Ñ.?�Ó@Ð@à� ð!'§ ¡ ¤ô ñ !/‘H�Cð ä! #¤z×2Ò2ð—L‘L¬×(9Ñ(9�LÔ:àòñ !/ò ð ùóð ”6—<‘<Ô ôÐLÓMÐMäÐ+¨F©:Ð6Ó7Ð7sU¢*ª 8·8ÁA)Á)*B"ÂB"ÂB"Â!B"ÅE"È H5È5!I%ÉI%É!I%É$I%ÍAN c óÔ€VP'gR#.p/p\VPPVPRR7FƒwrxW†V&Rp V'dVPTp V fM\ VVVVPVVR7p VPPV 4\P!V 4p VPV 4K… \V4V3# \ dLi;i)NT)Ústrict)r\rr0rr·)NN) Ú __closure__Úzipr"Ú co_freevarsr=r>r²rrír¥r;r<r�) r¶rrr·rªÚ new_closurer�r7r\Únew_cellr™s &&&&$ rr¯r¯jsë€Ø × × Ð ØÐØ€KØ€Iܘ(×+Ñ+×7Ñ7¸×9MÑ9MÐVZ×[‰ ˆØ�$‰Øˆß ð Ø×"Ò"ð �Ø Ò Ü!ØØØØ ×,Ñ,Ø!Ø!1ô ˆFð × )Ñ )× 0Ñ 0°Ô 8Ü—~’~ fÓ-ˆHØ×ј8Ö$ñ+\ô, �Ó ˜yÐ (Ð(øô!ô Ùð úsÁ Cà C'Ã&C'có€VRJdR#\V\4'dV#\V\4'd \P!\ V44#\ V4#).ú...)rrr¾rurvr¿rö)Úannos&rr³r³ˆsJ€Ø ˆsƒ{Ùä �Dœ#× Ò Øˆ Ü �Dœ)× $Ò $Ü�{Š{Ô+¨DÓ1Ó2Ð2ä�D‹zÐrcó\€VR,# \dTPRR4u#i;i)zÚRetrieve the annotate function from a class namespace dictionary. Return None if the namespace does not contain an annotate function. This is useful in metaclass ``__new__`` methods to retrieve the annotate function. rÚ__annotate_func__N)rôrB)rÛs&rÚ!get_annotate_from_class_namespacerÆ”s3€ð 2Ø�>Õ"Ð"øÜ ô2Ø�w‰wÐ*¨DÓ1Ò1ð2ús ‚ ‹+ª+r0r1Úeval_strr3c ó€V'd!V\P8wd \R4hT;\P8Xd\V4pVfÓ\ W4pMÆ;\P 8Xd9\V4pVe \ V4#\ W4pVf†\V4pMy;\P8Xd6\ W4pVe \ V4#\V4pVe;\V4#\P8Xd \R4h\RV: 24hVf9\V\4'g\V4'd/#\V: R24hV'g/#V'g \ V4#VeVEfÙ\V\4'ddRp\VRR4pV'd6\ P"P%VR4pV'd\VRR4p\ \'V44p Tp MY\V\(P*4'd\VR4pRp Rp M(\V4'd\VRR4pRp Tp MR;p;ršV e÷\-V 40p \/V R 4'd<V P0p \-V 4V 9dMœV P3\-V 44T p KN\ P"P%R 4;p 'dW\W­P44'd<V P6p \-V 4V 9dMV P3\-V 44T p KË\/V R4'd V P8pVfTpVfT p\VR R 4;p'd*Vf/pVUu/uFqÿP:VbK upV,pVP=4UUu/uF4wppT\V\>4'gTM\A\CV4W4bK6 pppV# \dELli;iuupiuuppi) aöCompute the annotations dict for an object. obj may be a callable, class, module, or other object with __annotate__ or __annotations__ attributes. Passing any other object raises TypeError. The *format* parameter controls the format in which annotations are returned, and must be a member of the Format enum or its integer equivalent. For the VALUE format, the __annotations__ is tried first; if it does not exist, the __annotate__ function is called. The FORWARDREF format uses __annotations__ if it exists and can be evaluated, and otherwise falls back to calling the __annotate__ function. The STRING format tries __annotate__ first, and falls back to using __annotations__, stringified using annotations_to_string(). This function handles several details for you: * If eval_str is true, values of type str will be un-stringized using eval(). This is intended for use with stringized annotations ("from __future__ import annotations"). * If obj doesn't have an annotations dict, returns an empty dict. (Functions and methods always have an annotations dict; classes, modules, and other types of callables may not.) * Ignores inherited annotations on classes. If a class doesn't have its own annotations dict, returns an empty dict. * All accesses to object members and dict values are done using getattr() and dict.get() for safety. * Always, always, always returns a freshly-created dict. eval_str controls whether or not values of type str are replaced with the result of calling eval() on those values: * If eval_str is true, eval() is called on values of type str. * If eval_str is false (the default), values of type str are unchanged. globals and locals are passed in to eval(); see the documentation for eval() for more information. If either globals or locals is None, this function may replace that value with a context-specific default, contingent on type(obj): * If obj is a module, globals defaults to obj.__dict__. * If obj is a class, globals defaults to sys.modules[obj.__module__].__dict__ and locals defaults to the obj class namespace. * If obj is a callable, globals defaults to obj.__globals__, although if obj is a wrapped function (using functools.update_wrapper()) it is first unwrapped. z8eval_str=True is only supported with format=Format.VALUENr©zUnsupported format z does not have annotationsrr5rÚ __wrapped__Ú functoolsr6r)"rr r>Ú_get_dunder_annotationsÚ_get_and_call_annotater rHrUr r®r rrCrErr?r@rArBrGr;rDr�rOrÉÚaddÚpartialrurrrJrrTr‰)rÛr0r1rÇr3ÚannÚ obj_globalsrYrÚ obj_localsÚunwrapÚ _seen_idsÚ candidaterÊr2rZrÏr¼Ú return_values&$$$$ rÚget_annotationsrÖ s•€÷j�FœfŸl™lÔ*ÜÐSÓTÐTà Ø ŒV�\Ž\å)¨#Ó.ˆCðŠ{Ü,¨SÓ9‘Ø ŒV× Ö ñ %Ü-¨cÓ2�ð’?Ü ›9Ð$ð#ô)¨Ó5ˆCØŠ{ô.¨cÓ2‘Ø ŒV�]Ž]å(¨Ó5ˆC؊ܘC“yÐ ä)¨#Ó.ˆCØŠÜ,¨SÓ1Ð1Ü × +Ö +ÜÐZÓ[Ð [Ø ÜÐ2°6±*Ð=Ó>Ð >à ‚{Ü �cœ4× Ò ¤H¨S§M¢M؈Iܘ3™'Ð!;Ð<Ó=Ð=ç Øˆ ç Ü�C‹yÐà‚˜&›.Ü �cœ4× Ò àˆKÜ! # |°TÓ:ˆKßÜŸ™Ÿ™¨°dÓ;�ßÜ")¨&°*¸dÓ"C�KÜœd 3›i›ˆJ؉FÜ ˜œU×-Ñ-× .Ò .ä! # zÓ2ˆK؈J؉FÜ �c�]Š]ô" # }°dÓ;ˆK؈J؉Fà04Ð 4ˆKÐ 4˜*à Ò ô ˜F›˜ ˆIØÜ˜6 =×1Ò1Ø &× 2Ñ 2�Iܘ)“}¨ Ô1ØØ—M‘M¤" Y£-Ô0Ø&�FÙÜ #§ ¡ §¡° Ó <Ð<�9Ö<Ü! &×*;Ñ*;×<Ò<Ø$*§K¡K˜ ܘi›=¨IÔ5Ø!Ø!Ÿ ™ ¤b¨£mÔ4Ø!*˜Ù ØÜ�v˜}×-Ò-Ø$×0Ñ0� à Š?Ø!ˆGØ Š>؈Fô ˜cÐ#4°bÓ9Ð9€{Ö9Ø Š>؈FÙ5@ÓA±[¨E—.‘. %Ò'±[ÑAÀFÕJˆð Ÿ)™)œ+ôñ&‰JˆC�ð œ* U¬C×0Ò0‰UÜ Ô& uÓ-¨wÓ ?ò @á%ðñð ÐøôYô Úð üòJBùósÁ2 O+Í:O=Î,:PÏ+ O:Ï9O:cóp€\V\\P\P34'd9VP R8Xd VP #VP RVP 2#\V\4'd"\V4p\P!V4#VRJdR#\V4#)aConvert a Python value to a format suitable for use with the STRING format. This is intended as a helper for tools that support the STRING format but do not have access to the code that originally produced the annotations. It uses repr() for most objects. rPÚ..rÂ) rrCr;r°ÚBuiltinFunctionTyperrr¾r¿rurvrö)r¼Útrees& rÚ type_reprrÛSs—€ô�%œ$¤× 2Ñ 2´E×4MÑ4MÐN×OÒOØ × Ñ ˜zÔ )Ø×%Ñ%Ð %Ø×"Ñ"Ð# 1 U×%7Ñ%7Ð$8Ð9Ð9Ü �Eœ9× %Ò %Ü Ó&ˆÜ�{Š{˜4Ó Ð Ø �ƒ|ÙÜ �‹;Ðrc óš€VP4UUu/uF)wrT\V\4'dTM \V4bK+ upp#uuppi)zwConvert an annotation dict containing values to approximately the STRING format. Always returns a fresh a dictionary. )rJrrrÛ)Ú annotationsÚnÚts& rr®r®gsK€ð ×%Ñ%Ô'ô á'‰DˆAð ” ˜1œc×"Ò"‰1¬ °!« Ò4Ù'ò ðùó s”/Acó\€VP4PR4'dRV R2#V#)zlIf the given argument annotation expression is a star unpack e.g. `'*Ts'` rewrite it to a valid expression. Ú*r�z,)[0])ÚlstripÚ startswith)r&s&rr‰r‰rs.€ð ‡z�zƒ|×јs×#Ò#Ø�3�%�uˆ~Ðàˆ rcó�€\VRR4pVe5\W!VR7p\V\4'g\ V: R24hV#R#)zOGet the __annotate__ function and call it. May not return a fresh dictionary. rN)rz!.__annotate__ returned a non-dict)r?r¦rrHr>)rÛr3r¶rÏs&& rrÌrÌ|sL€ô �s˜N¨DÓ1€HØÒÜ$ X¸SÔAˆÜ˜#œt×$Ò$Ü ™wÐ&GÐHÓIÐ I؈ Ù rÚ__annotations__cóà€\V\4'd\V4pM\ VRR4pVfR#\V\ 4'g\ V: R24hV# \dR#i;i)zmReturn the annotations for an object, checking that it is a dictionary. Does not return a fresh dictionary. Nråz+.__annotations__ is neither a dict nor None)rrCÚ_BASE_GET_ANNOTATIONSÚAttributeErrorr?rHr>)rÛrÏs& rrËrË�sr€ô�#”t×Òð Ü'¨Ó,‰Cô �cÐ,¨dÓ3ˆØ Š;Ùä �cœ4× Ò Ü˜C™7Ð"MÐNÓOÐOØ €Jøôô âð ús˜ AÁ A-Á,A-có<a€]tRtRtoRtRtV3RlRltRtVtR#)r}i¥zLFixer for __extra_names__ items in ForwardRef __repr__ and string evaluationcó€WnR#r�©r³)r%r³s&&rr'Ú_ExtraNameFixer.__init__§s€Ø&Örcó4<€V^8„dQhRS[P/#)rr…)rur½)r3r°s"€rrÚ_ExtraNameFixer.__annotate__ªsø€÷ñ™sŸx™xñrcó®€VPPVP\4;p\Jd!\P !\ V4R7pV#ré)r³rBr�rkrur½rÛ)r%r…Únew_names&& rÚ visit_NameÚ_ExtraNameFixer.visit_Nameªs>€Ø×(Ñ(×,Ñ,¨T¯W©W´iÓ@Ð @ˆHÌÓ RÜ—8’8œy¨Ó2Ô3ˆD؈ rrëN) rrrr rªr'rñrr®r¯s@rr}r}¥sø‡€ÙVò'÷örr})rrr¦r§rÆrÖr®rÛ) rrrÚ __weakref__rrr!r"r#r rr¶r$)r£r)(rªrurPÚenumrMr@r;Ú__all__ÚIntEnumrÚobjectrkrRr«rrCr¾r²r}r„r¿rHrVr§r¦r¯r³rÆr rÖrÛr®r‰rÌr5Ú__get__rçrËÚNodeTransformerr}rrrÚrús0ðÙ9ã ÛÛ ÛÛ Û ò €ôˆT�\‰\ôñ ‹H€ à5€ð  €÷"bHñbHñJ ’‹I€ ÷ñòDJò**ò,6ô*#�tô#ðLT°dôTðY8°dðY8ÈôY8òx)ò< ò 2ðpØðpØ!%ðpØ05ðpØ>D¿l¹lôpòfò(òò 🠙 Ð&7Õ8×@Ñ@Ðòô0�c×)Ñ)ör