+
    åôÖj„­  ã                   óÈ  € R t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt. R#Ot ! R R]P                  4      t	]
! 4       tRtR$t ! R R4      t]! R%R& 4      t ! R R4      tR	 tR
 tR t ! R R]4      tRR/R ltRRRR/R ltR tR tR tRRRRRRR]	P8                  /R ltR tR tR t R t!]PD                  R,          PF                  t$R  t% ! R! R"]PL                  4      t'R# )'z3Helpers for introspecting and wrapping annotations.NÚFormatÚ
ForwardRefc                   ó&   € ] tR t^t^t^t^t^tRtR# )r   © N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__ÚVALUEÚVALUE_WITH_FAKE_GLOBALSÚ
FORWARDREFÚSTRINGÚ__static_attributes__r   ó    Úa/home/div/.local/share/uv/python/cpython-3.14.7-linux-aarch64-gnu/lib/python3.14/annotationlib.pyr   r      s   † Ø€EØÐØ€JØ„Fr   z!name '{name:.200}' is not definedc            
       óÔ   a € ] tR t^6t o Rt]tRRRRRRRR/R	 ltR
 tRRRRRRRRR]	P                  /R lt]3R lt]R 4       t]R 4       t]R 4       tR tR tR tR tR tRtV tR# )r   a—  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   \        R V: 24      hWn        W@n        WPn        W n        W0n        RV n        RV n	        RV n
        RV n        RV n        RV n        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Úargr   r   r   r   s   &&$$$$r   Ú__init__ÚForwardRef.__init__E   st   € ô ˜#œs×#Ò#ÜÐHÈÉÐPÓQÐQàŒØ'2Ô$Ø$,Ô!Ø"(ÔØŒð  ˆÔð ˆŒØ#ˆÔð ˆŒØ ˆÔØ&*ˆÖ#r   c               ó   € \        R 4      h)zCannot subclass ForwardRef©r   )ÚclsÚargsÚkwdss   "*,r   Ú__init_subclass__ÚForwardRef.__init_subclass__d   s   € ÜÐ4Ó5Ð5r   ÚglobalsÚlocalsÚtype_paramsÚformatc               óæ  € T;\         P                  8X  d    V P                  # ;\         P                  8X  d    RpM#\         P                  8X  d   RpM \        V4      h\        V P                  \        P                  4      '       d    V P                  P                  # Vf   V P                  pVfD   V P                  e6   \        \        P                   P#                  V P                  R4      RR4      pVf   V P$                  pVf®   \        V\&        4      '       dL   \        VRR4      pV'       d6   \        P                   P#                  VR4      pV'       d   \        VRR4      pML\        V\        P(                  4      '       d   \        VRR4      pM\+        V4      '       d   \        VRR4      pVf   / pVf   Ve   \        VRR4      pVf4   / p\        V\&        4      '       d   VP-                  \/        V4      4       MAVf3   \        V P                  \0        4      '       g   V P2                  '       d   \1        V4      pVe&   V F  p	VP5                  V	P6                  V	4       K!  	  \        V P                  \0        4      '       dB   V P                  P9                  4        F#  w  r« VP                  pVP5                  W¬4       K%  	  V P2                  '       d   VP-                  V P2                  4       V P:                  pVP=                  4       '       dŠ   \>        P@                  ! V4      '       gn   WÒ9   d	   W-,          # WÑ9   d	   W,          # \C        \D        V4      '       d   \        \D        V4      # V'       d   V # \G        \H        PK                  VR7      VR7      hV PL                  p \O        WáVR	7      #   \         d     EL5i ; i  \         d     EK:  i ; i  \P         d    T'       g   h  Mi ; i\S        / \D        PT                  CTCTCTTT PV                  TR
7      p \O        YáTR	7      pTPY                  T P                  4       T#   \P         d    T u # i ; i)zxEvaluate the forward reference and return the value.

If the forward reference cannot be evaluated, raise an exception.
FTNÚ__dict__r   r   Ú__type_params__)Úname)r0   r1   ©r0   r   r   r3   )-r   r   Ú__resolved_str__r
   r   ÚNotImplementedErrorr   r    ÚtypesÚCellTypeÚcell_contentsÚ
ValueErrorr   r   Ú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Ú_StringifierDictr5   r   Útransmogrify)r%   r0   r1   r2   r   r3   Úis_forwardref_formatÚmodule_namer   ÚparamÚ	cell_nameÚcellÚ
cell_valuer&   ÚcodeÚ
new_localsÚresults   &$$$$$           r   ÚevaluateÚForwardRef.evaluateg   s±  € ð Ø”—–Ù×,Ñ,Ð,Ø”—–Ù',Ñ$Ü×"Ö"Ø'+Ñ$ØÜ)¨&Ó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Ñ/Q0c               ó    € ^ RI p^ RIpV\        J d   VP                  R4       RpVP	                  RRRR7       VP                  V VVVVR7      # )	é    Nztyping.ForwardRef._evaluatezForwardRef._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)r0   r1   r2   Ú_recursive_guardr   )é   é   )ÚtypingÚwarningsÚ	_sentinelÚ._deprecation_warning_for_no_type_params_passedÚ_deprecatedÚevaluate_forward_ref)r%   ÚglobalnsÚlocalnsr2   Úrecursive_guardri   rj   s   &&&&$  r   Ú	_evaluateÚForwardRef._evaluateå   sp   € ÛÛàœ)Ó#Ø×AÑAØ-ôð ˆKØ×ÑØ"ðcàð	 	ô 	
ð ×*Ñ*ØØØØ#Ø,ð +ó 
ð 	
r   c                óÊ   € V P                   e   V P                   # V P                  e2   \        P                  ! V P                  4      V n         V P                   # \	        R4      h)NzDAttempted to access '__forward_arg__' on an uninitialized ForwardRef)r   r#   ÚastÚunparseÚAssertionError©r%   s   &r   rK   ÚForwardRef.__forward_arg__ü   sR   € à�<‰<Ò#Ø—<‘<ÐØ×ÑÒ(ÜŸ;š; t×'8Ñ'8Ó9ˆDŒLØ—<‘<ÐÜØRó
ð 	
r   c                ó*  € V P                   f{   V P                  pV P                  pV'       dU   \        V4      p\        P
                  ! VRR7      P                  pVP                  V4      p\        P                  ! V4      pWn         V P                   # )NrT   ©Úmode)	r$   rK   r!   Ú_ExtraNameFixerru   ÚparseÚbodyÚvisitrv   )r%   Úresolved_strÚnamesÚvisitorÚast_exprÚnodes   &     r   r9   ÚForwardRef.__resolved_str__  sw   € ð ×&Ñ&Ò.Ø×/Ñ/ˆLØ×(Ñ(ˆEçÜ)¨%Ó0�ÜŸ9š9 \¸Ô?×DÑD�Ø—}‘} XÓ.�Ü"Ÿ{š{¨4Ó0�à*6Ô'à×*Ñ*Ð*r   c                óÚ   € V P                   e   V P                   # V P                  p \        \        V4      RR4      V n         V P                   #   \         d    \	        RT: 24      hi ; i)Nz<string>rT   z/Forward reference must be an expression -- got )r"   rK   ÚcompileÚ_rewrite_star_unpackÚSyntaxError)r%   r&   s   & r   rS   Ú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   \        # V P                  VP                  8H  ;'       EdÙ    V P                  VP                  8H  ;'       Ed·    V P
                  VP
                  J ;'       Ed–    V P                  VP                  8H  ;'       Edt    \        V P                  \        4      '       d’   \        VP                  \        4      '       dr   V P                  P                  4        UUu/ uF  w  r#V\        V4      bK  	  uppVP                  P                  4        UUu/ uF  w  r#V\        V4      bK  	  upp8H  MV P                  VP                  J ;'       d£    V P                  VP                  8H  ;'       d‚    V P                  '       d-   \        \        V P                  P                  4       4      4      MR VP                  '       d-   \        \        VP                  P                  4       4      4      MR 8H  # u uppi u uppi ©N)r   r   ÚNotImplementedrK   r   r   r   r    rH   rJ   Úidr   r!   ÚtupleÚsorted)r%   Úotherr7   r\   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÷ð ð AE×@T×@TÐ@T””v˜d×2Ñ2×8Ñ8Ó:Ó;Ô<ÐZ^ØAF×AV×AVÐAV””v˜e×3Ñ3×9Ñ9Ó;Ó<Ô=Ð\`ñbð!	
ùó IùÛLs   ÄHÄ8Hc                ó,  € \        V P                  V P                  \        V P                  4      V P
                  \        V P                  \        4      '       dL   \        \        V P                  P                  4        UUu. uF  w  rV\        V4      3NK  	  upp4      4      M\        V P                  4      3V P                  V P                  '       d2   \        \        V P                  P                  4       4      4      34      # R 34      # u uppi r�   )ÚhashrK   r   r�   r   r   r   r    rH   r�   r‘   rJ   r   r!   )r%   r7   r\   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ð
ó ð 	ð VZð
ó ð 	ùó Xs   ÂDc                ó2   € \         P                  W3,          # r�   ©r;   Ú	UnionType©r%   r’   s   &&r   Ú__or__ÚForwardRef.__or__J  s   € Ü�‰˜t˜{Õ+Ð+r   c                ó2   € \         P                  W3,          # r�   rš   rœ   s   &&r   Ú__ror__ÚForwardRef.__ror__M  s   € Ü�‰˜u˜{Õ+Ð+r   c                óD  € . pV P                   e    VP                  RV P                   : 24       V P                  '       d   VP                  R4       V P                  e    VP                  RV P                  : 24       RV P                  : RP                  V4       R2# )Nz	, module=z, is_class=Truez, owner=zForwardRef(Ú Ú))r   Úappendr   r   r9   Újoin)r%   Úextras   & r   Ú__repr__ÚForwardRef.__repr__P  s‹   € ØˆØ×"Ñ"Ò.Ø�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   )r   r#   r    r"   r!   r   r   r   r   r   r$   )r   r   r   r	   Ú__doc__Ú_SLOTSÚ	__slots__r'   r.   r   r
   ra   rk   rr   ÚpropertyrK   r9   rS   r“   r—   r�   r    r¨   r   Ú__classdictcell__©Ú__classdict__s   @r   r   r   6   sì   ø‡ € ñ
ð €Ið+ð ð	+ð
 ð+ð ð+ð ô+ò>6ð|ð ð|ð ð	|ð
 ð|ð ð|ð �|‰|ô|ð| 8Aô 
ð. ñ
ó ð
ð ñ+ó ð+ð" ñó ðò
ò0ò,ò,÷Hð Hr   c                   óþ  a € ] tR tRt o ]tRRR/R lltR tR tR t	RR lt
R	 tR
 tR tR tR tR tR tV 3R lR lt]! ]P(                  ! 4       4      t]! ]P,                  ! 4       4      t]! ]P0                  ! 4       4      t]! ]P4                  ! 4       4      t]! ]P8                  ! 4       4      t]! ]P<                  ! 4       4      t]! ]P@                  ! 4       4      t!]! ]PD                  ! 4       4      t#]! ]PH                  ! 4       4      t%]! ]PL                  ! 4       4      t']! ]PP                  ! 4       4      t)]! ]PT                  ! 4       4      t+]! ]PX                  ! 4       4      t-AV 3R lR lt.].! ]P(                  ! 4       4      t/].! ]P,                  ! 4       4      t0].! ]P0                  ! 4       4      t1].! ]P4                  ! 4       4      t2].! ]P8                  ! 4       4      t3].! ]P<                  ! 4       4      t4].! ]P@                  ! 4       4      t5].! ]PD                  ! 4       4      t6].! ]PH                  ! 4       4      t7].! ]PL                  ! 4       4      t8].! ]PP                  ! 4       4      t9].! ]PT                  ! 4       4      t:].! ]PX                  ! 4       4      t;A.R t<]<! ]Pz                  ! 4       4      t>]<! ]P~                  ! 4       4      t@]<! ]P‚                  ! 4       4      tB]<! ]P†                  ! 4       4      tD]<! ]PŠ                  ! 4       4      tF]<! ]PŽ                  ! 4       4      tHA<R tI]I! ]P”                  ! 4       4      tK]I! ]P˜                  ! 4       4      tM]I! ]Pœ                  ! 4       4      tOAIRtPV tQR# )Ú_Stringifieri^  NÚextra_namesc               óð   € \        V\        P                  \        34      '       g   Q hR V n        RV n        W@n        R V n        R V n        Wn	        W n
        Wpn        WPn        W0n        W`n        R V n        R # )NF)r   ru   ÚASTr   r   r   r   r   r"   r#   r   r!   r    r   Ú__stringifier_dict__r$   )r%   r…   r0   r   r   r\   Ústringifier_dictr³   s   &&&&&&$$r   r'   Ú_Stringifier.__init__c  sm   € ô ˜$¤§¡¬# ×/Ò/Ð/Ð/ØˆŒØ',ˆÔ$Ø$,Ô!Ø"&ˆÔØˆŒØ ÔØ"ÔØ*ÔØŒØŒØ$4Ô!Ø&*ˆÖ#r   c                óp  € \        V\        4      '       df   \        VP                  \        4      '       d.   \        P
                  ! VP                  R 7      VP                  3# VP                  VP                  3# \        V4      \        J d   \        V4      R3# V P                  P                  \        P                  8X  g.   Ve*   \        V4      \        \        \        \         \"        39   d   \        P$                  ! VR7      R3# \        V4      \&        J dª   / p. p. pVP)                  4        Fw  w  rVV P+                  V4      w  rxVe   VP-                  V4       VP/                  V4       V P+                  V4      w  r˜Ve   VP-                  V4       VP/                  V	4       Ky  	  \        P0                  ! W44      V3# \        V4      \2        \4        \6        39   dŸ   / p. p
V F<  pV P+                  V4      w  rÈVe   VP-                  V4       V
P/                  V4       K>  	  \2        \        P8                  \4        \        P:                  \6        \        P<                  /\        V4      ,          pV! V
4      V3# V P                  P?                  4       p\        P
                  ! VR 7      Wá/3# )©r�   N©Úvalue) r   r²   r#   r   ru   ÚNamer!   rC   Ú	_TemplateÚ_template_to_astr¶   r3   r   r   ÚintÚfloatÚboolÚcomplexÚConstantrH   rJ   Ú_Stringifier__convert_to_astrF   r¥   Ú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_classr7   s   &&             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Ð3r   c                óü   a a€ \        V\        4      '       dU   / oVV 3R  lp\        P                  ! V! VP                  4      V! VP
                  4      V! VP                  4      R7      S3# S P                  V4      # )c                 ód   <€ V f   R # SP                  V 4      w  rVe   SP                  V4       V# r�   )rÅ   rF   )ÚobjÚnew_objrÑ   r³   r%   s   &  €€r   ÚconvÚ3_Stringifier.__convert_to_ast_getitem.<locals>.conv­  s7   ø€ Ø’;ÙØ+/×+@Ñ+@ÀÓ+EÑ(�Ø"Ò.Ø×&Ñ& Ô7Ø�r   )ÚlowerÚupperÚstep)r   Úsliceru   ÚSliceÚstartÚstoprá   rÅ   )r%   r’   rÝ   r³   s   f& @r   Ú__convert_to_ast_getitemÚ%_Stringifier.__convert_to_ast_getitem©  sn   ù€ Ü�eœU×#Ò#ØˆKöô —9’9Ù˜5Ÿ;™;Ó'Ù˜5Ÿ:™:Ó&Ù˜%Ÿ*™*Ó%ôð ð	ð ð ×(Ñ(¨Ó/Ð/r   c                óx   € V P                   p\        V\        4      '       d   \        P                  ! VR 7      # V# ©rº   )r#   r   r   ru   r½   )r%   r…   s   & r   Ú	__get_astÚ_Stringifier.__get_ast½  s.   € Ø× Ñ ˆÜ�dœC× Ò Ü—8’8˜tÔ$Ð$Øˆr   c           	     óV  € / pV P                   e   VP                  V P                   4       Ve   VP                  V4       \        TV P                  V P                  V P
                  V P                  T;'       g    R R7      pV P                  P                  P                  V4       V# )N)r·   r³   )	r!   rF   r²   r   r   r   r¶   Ú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ØÐr   c                ó   € \        V 4      # r�   rº   rx   s   &r   r—   Ú_Stringifier.__hash__Ö  s   € Ü�$‹xˆr   c                ó  € V P                   R 8X  d   \        h\        V\        4      '       d^   / p. pV F<  pV P	                  V4      w  rVVe   VP                  V4       VP                  V4       K>  	  \        P                  ! V4      pMV P	                  V4      w  r\        V\        P                  4      '       g   Q \        V4      4       hV P                  \        P                  ! V P                  4       V4      V4      # r¯   )r#   ÚKeyErrorr   r�   Ú$_Stringifier__convert_to_ast_getitemrF   r¥   ru   rÊ   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ÐSr   c                ój   € V P                  \        P                  ! V P                  4       V4      4      # r�   )r÷   ru   Ú	Attributerù   )r%   Úattrs   &&r   Ú__getattr__Ú_Stringifier.__getattr__ì  s#   € Ø�‰œsŸ}š}¨T¯^©^Ó-=¸tÓDÓEÐEr   c                óÈ  € / p. pV F<  pV P                  V4      w  rgVe   VP                  V4       VP                  V4       K>  	  . pVP                  4        FR  w  ršV P                  V
4      w  r·Ve   VP                  V4       VP                  \        P
                  ! W›4      4       KT  	  V P                  \        P                  ! V P                  4       WH4      V4      # r�   )	rÅ   rF   r¥   rJ   ru   rM   r÷   Ú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\Ó]Ð]r   c              #  óx   "  € V P                  \        P                  ! V P                  4       4      4      x € R # 5ir�   )r÷   ru   ÚStarredrù   rx   s   &r   Ú__iter__Ú_Stringifier.__iter__ÿ  s$   é € Ø�o‰oœcŸkšk¨$¯.©.Ó*:Ó;Ó<Ô<ùs   ‚8:c                óš   € \        V P                  \        4      '       d   V P                  # \        P                  ! V P                  4      # r�   )r   r#   r   ru   rv   rx   s   &r   r¨   Ú_Stringifier.__repr__  s6   € Ü�d×'Ñ'¬×-Ò-Ø×$Ñ$Ð$Ü�{Š{˜4×,Ñ,Ó-Ð-r   c                ó   € \        R 4      h)z8Cannot stringify annotation containing string formattingr*   )r%   Úformat_specs   &&r   Ú
__format__Ú_Stringifier.__format__  s   € ÜÐRÓSÐSr   c                ó4   <€ V ^8„  d   QhRS[ P                  /# ©é   Úop©ru   rµ   )r3   r°   s   "€r   Ú__annotate__Ú_Stringifier.__annotate__
  s   ø€ ÷ ñ ™Ÿ™ñ r   c                ó   a € V 3R  lpV# )c                 ó–   <€ V P                  V4      w  r#V P                  \        P                  ! V P	                  4       SV4      V4      # r�   ©rÅ   r÷   ru   ÚBinOprù   ©r%   r’   Úrhsr³   r  s   &&  €r   ÚbinopÚ'_Stringifier._make_binop.<locals>.binop  s@   ø€ Ø#×4Ñ4°UÓ;ÑˆCØ—?‘?Ü—	’	˜$Ÿ.™.Ó*¨B°Ó4°kóð r   r   )r  r   s   f r   Ú_make_binopÚ_Stringifier._make_binop
  s   ø€ õ	ð ˆr   c                ó4   <€ V ^8„  d   QhRS[ P                  /# r  r  )r3   r°   s   "€r   r  r  #  s   ø€ ÷ ñ ™Ÿ™ñ r   c                ó   a € V 3R  lpV# )c                 ó–   <€ V P                  V4      w  r#V P                  \        P                  ! VSV P	                  4       4      V4      # r�   r  )r%   r’   Ú	new_otherr³   r  s   &&  €r   ÚrbinopÚ)_Stringifier._make_rbinop.<locals>.rbinop$  s@   ø€ Ø%)×%:Ñ%:¸5Ó%AÑ"ˆIØ—?‘?Ü—	’	˜) R¨¯©Ó)9Ó:¸Kóð r   r   )r  r(  s   f r   Ú_make_rbinopÚ_Stringifier._make_rbinop#  s   ø€ õ	ð ˆr   c                ó   a € V 3R  lpV# )c                 óœ   <€ V P                  V4      w  r#V P                  \        P                  ! V P	                  4       S.V.R 7      V4      # ))ÚleftÚopsÚcomparators)rÅ   r÷   ru   ÚComparerù   r  s   &&  €r   ÚcompareÚ+_Stringifier._make_compare.<locals>.compare=  sL   ø€ Ø#×4Ñ4°UÓ;ÑˆCØ—?‘?Ü—’ØŸ™Ó)Ø˜Ø!$ ôð
 óð r   r   )r  r2  s   f r   Ú_make_compareÚ_Stringifier._make_compare<  s   ø€ õ		ð ˆr   c                ó   a € V 3R  lpV# )c                 ól   <€ V P                  \        P                  ! SV P                  4       4      4      # r�   )r÷   ru   ÚUnaryOprù   )r%   r  s   &€r   Úunary_opÚ-_Stringifier._make_unary_op.<locals>.unary_opT  s$   ø€ Ø—?‘?¤3§;¢;¨r°4·>±>Ó3CÓ#DÓEÐEr   r   )r  r9  s   f r   Ú_make_unary_opÚ_Stringifier._make_unary_opS  s   ø€ õ	Fð ˆr   )r   r#   r    r"   r!   r   r   r   r   r   r$   r¶   )NNFNr�   )Rr   r   r   r	   r«   r¬   r'   rÅ   rõ   rù   r÷   r—   rú   rÿ   r  r  r¨   r  r"  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__r   r®   r¯   s   @r   r²   r²   ^  s¹  ø‡ € ð €Iñ+ð õ+ò6)4òV0ò(ôò&ò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ær   r²   c                ó`  € . pV  Fù  pV\         Rc ;e+   w   VP                  \        P                  ! VR7      4       K9    \        P                  ! \        P
                  ! RR7      \        P                  ! VP                  R7      \        P                  ! VP                  R7      \        P                  ! VP                  R7      \        P                  ! VP                  R7      .R7      pVP                  V4       Kû  	  \        P                  ! \        P
                  ! RR7      V. R7      # )z3Convert a `template` instance to a non-literal AST.r   r»   ÚInterpolationrº   )Úfuncr,   ÚTemplate)ru  r,   Úkeywords)
r   r¥   ru   rÄ   r  r½   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ÐIr   c           
     óö  € . p^ pV  FÙ  pV\         Rc ;e+   w   VP                  \        P                  ! VR7      4       K9    \        P                  ! VP
                  W,          VP                  '       d   \        VP                  4      MRVP                  '       d"   \        P                  ! VP                  R7      MRR7      pVP                  V4       V^,          pKÛ  	  \        P                  ! VR7      # )z8Convert a `template` instance to a t-string literal AST.r   Nr»   )r   r¼   ry  r  )rÎ   éÿÿÿÿ)
r   r¥   ru   rÄ   rt  rx  ry  Úordr  ÚTemplateStr)rz  ÚparsedrÎ   Úinterp_countr{  r|  s   &&    r   Ú_template_to_ast_literalr„  u  sº   € à€FØ€LÛˆØÜ—Ø—‘œcŸlšl°Ô6Ö7ð àÜ×*Ò*ØŸ™Ø Õ.Ø7;··°œs 4§?¡?Ô3ÈBà×'×'Ð'ô !$§¢°4×3CÑ3CÕ Dàô�ð —‘˜fÔ%Ø Õ!’ñ ô �?Š? &Ô)Ð)r   c                ó„  € \         ;QJ d&    R V P                   4       F  '       g   K   RM	  RM! R V P                   4       4      '       d   \        V 4      #  \        ;QJ d    . R V P                   4       F  NK  	  5M! R V P                   4       4      p\        Y4      #   \         d    \        T 4      u # i ; i)zAMake a best-effort conversion of a `template` instance to an AST.c              3   óZ   "  € T F!  qP                   P                  4       R 8H  x € K#  	  R# 5i)r£   N)rx  Ústrip©Ú.0r{  s   & r   Ú	<genexpr>Ú#_template_to_ast.<locals>.<genexpr>‘  s"   é € Ð
MÑ5L¨T�?‰?× Ñ Ó" bÖ(Ó5Lùs   ‚)+TFc              3   ó‚   "  € T F5  p\         P                  ! R VP                   R2RR7      P                  x € K7  	  R# 5i)Ú(r¤   rT   r{   N)ru   r~   rx  r   rˆ  s   & r   rŠ  r‹  –  s6   é € ð 
á/�ô �IŠI˜˜$Ÿ/™/Ð*¨!Ð,°6Ô:×?Ö?Û/ùs   ‚=?)ÚanyÚinterpolationsr}  r�   rŠ   r„  )rz  r‚  s   & r   r¿   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                   óT   a a€ ] tR tRt oRRRRRR/V 3R lltR tR	 tR
 tRtVt	V ;t
# )rV   i   r0   Nr   r   Fc               ó~   <€ \         SV `  V4       Wn        W n        W0n        W@n        . V n        ^V n        WPn        R# )é   N)	Úsuperr'   Ú	namespacer0   r   r   rí   Únext_idr3   )r%   r”  r0   r   r   r3   Ú	__class__s   &&$$$$€r   r'   Ú_StringifierDict.__init__¡  s8   ø€ Ü‰Ñ˜Ô#Ø"ŒØŒØŒ
Ø ŒØˆÔØˆŒØŽr   c                ó˜   € \        VV P                  V P                  V P                  V R 7      pV P                  P                  V4       V# ))r0   r   r   r·   )r²   r0   r   r   rí   r¥   )r%   rÏ   Úfwdrefs   && r   Ú__missing__Ú_StringifierDict.__missing__«  sB   € ÜØØ—L‘LØ—*‘*Ø—]‘]Ø!ô
ˆð 	×Ñ× Ñ  Ô(Øˆr   c                óø   € V P                    Fi  p\        Vn        R Vn        \	        VP
                  \        4      '       d   VP
                  Vn        R Vn        Vf   KS  VP                  e   Kc  Wn        Kk  	  R # r�   )	rí   r   r–  r¶   r   r#   r   r   r    )r%   Ú	cell_dictrÛ   s   && r   rW   Ú_StringifierDict.transmogrify¶  s]   € Ø×$Ô$ˆCÜ&ˆCŒMØ'+ˆCÔ$Ü˜#×*Ñ*¬C×0Ò0Ø!×.Ñ.�”Ø#'�Ô ØÔ$¨¯©Ô)=Ø(–ó %r   c                óX   € R V P                    R2pV ;P                   ^,          un         V# )Ú__annotationlib_name_Ú__)r•  )r%   r7   s   & r   rÌ   Ú#_StringifierDict.create_unique_nameÀ  s'   € Ø& t§|¡| n°BÐ7ˆØ�Š˜Õ�Øˆr   )r3   r0   r   r”  r•  r   rí   )r   r   r   r	   r'   rš  rW   rÌ   r   r®   Ú__classcell__)r–  r°   s   @@r   rV   rV      s3   ù‡ € ð¨Tð ¸ð È÷ ò	ò)÷ò r   rV   r   c               ó   € \        WVRR7      # )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)ra   r3   r   s   &&$r   Úcall_evaluate_functionr§  Æ  s   € ô
 " (¸%ÈdÔSÐSr   r¥  Fc          	     ó„  € V\         P                  8X  d   \        R4      h V ! V4      #   \         d     Mi ; iT\         P                  8X  Ed    T ! \         P                  4       M<  \         d#    \        T ! \         P                  4      4      u # \         d     Mi ; i\        / TR7      p\        T\        4      p\        YYTRR7      w  rg\        P                  ! T P                  TTT P                  T P                   R7      pT! \         P                  4      p	T'       d   \#        T	4      # T	P%                  4        U
Uu/ uF  w  r«T
\#        T4      bK  	  upp
# u upp
i T\         P&                  8X  Ed   / T P(                  CT P*                  Cp\        T\        4      p\        TT P*                  TTTR7      p\        YYTRR7      w  rm\        P                  ! T P                  TTT P                  T P                   R7      p T! \         P                  4      pTP-                  T4       T#   \         d    T ! \         P                  4      u # \         d     Mi ; i\        / T P*                  TTTR7      p\        YYTRR7      w  rm\        P                  ! T P                  TTT P                  T P                   R7      pT! \         P                  4      pTP-                  T4       T'       d9   \        T\.        4      '       d!   TP1                  \         P&                  R7      # T# TP%                  4        U
Uu/ uF>  w  r«T
\        T\.        4      '       d!   TP1                  \         P&                  R7      MTbK@  	  upp
# u upp
i T\         P                  8X  d   \3        R4      h\        R	T: 24      h)
aZ  Call 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)r3   F)Úallow_evaluation)ÚclosureÚargdefsÚ
kwdefaultsr8   Tz/annotate function does not support VALUE formatzInvalid format: )r   r   r>   r:   r   Úannotations_to_stringr
   rU   rV   r   rC   Ú_build_closurer;   ÚFunctionTyper"   Ú__defaults__Ú__kwdefaults__Ú_stringify_singlerJ   r   Ú__builtins__r   rW   r   ra   ÚRuntimeError)Úannotater3   r   r¥  r0   r   r«  Ú_ru  ÚannosrÏ   Úvalr”  r�  r`   s   &&$$           r   r¦  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%ÍANc          
      óÔ  € V P                   '       g   R# . p/ p\        V P                  P                  V P                   RR7       Fƒ  w  rxW†V&   R p	V'       d    VP                   Tp	V	fM   \        VVVV P                  VVR7      p
VP                  P                  V
4       \        P                  ! V
4      p	VP                  V	4       K…  	  \        V4      V3#   \
         d     Li ; i)NT)Ústrict)r\   r   r0   r   r·   )NN)Ú__closure__Úzipr"   Úco_freevarsr=   r>   r²   r   rí   r¥   r;   r<   r�   )r¶  r   r   r·   rª  Únew_closurer�  r7   r\   Únew_cellr™  s   &&&&$      r   r¯  r¯  j  së   € Ø××ÐØÐØ€KØ€IÜ˜(×+Ñ+×7Ñ7¸×9MÑ9MÐVZ×[‰
ˆØ�$‰Øˆßð Ø×"Ò"ð  �ØÒÜ!ØØØØ ×,Ñ,Ø!Ø!1ôˆFð ×)Ñ)×0Ñ0°Ô8Ü—~’~ fÓ-ˆHØ×Ñ˜8Ö$ñ+ \ô, �Ó˜yÐ(Ð(øô! ô Ùðús   ÁCÃC'Ã&C'c                 óÂ   € V R J d   R# \        V \        4      '       d   V # \        V \        4      '       d    \        P                  ! \        V 4      4      # \        V 4      # ).ú...)r   r   r¾   ru   rv   r¿   rö   )Úannos   &r   r³  r³  ˆ  sJ   € Øˆsƒ{Ùä	�Dœ#×	Ò	ØˆÜ	�Dœ)×	$Ò	$Ü�{Š{Ô+¨DÓ1Ó2Ð2ä�D‹zÐr   c                ó\   €  V R,          #   \          d    T P                  RR4      u # 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   ‚ ‹+ª+r0   r1   Úeval_strr3   c          
     ó  € V'       d!   V\         P                  8w  d   \        R4      hT;\         P                  8X  d    \        V 4      pVfÓ   \	        W4      pMÆ;\         P
                  8X  d9     \        V 4      pVe   \        V4      #  \	        W4      pVf†   \        V 4      pMy;\         P                  8X  d6    \	        W4      pVe   \        V4      # \        V 4      pVe;   \        V4      # \         P                  8X  d   \        R4      h \        RV: 24      hVf9   \        V \        4      '       g   \        V 4      '       d   / # \        V : R24      hV'       g   / # V'       g   \        V4      # Ve   VEfÙ   \        V \        4      '       dd   Rp\        V RR4      pV'       d6   \         P"                  P%                  VR4      pV'       d   \        VRR4      p\        \'        V 4      4      p	T p
MY\        V \(        P*                  4      '       d   \        V R4      pRp	Rp
M(\        V 4      '       d   \        V RR4      pRp	T p
MR;p;ršV
e÷   \-        V
4      0p \/        V
R	4      '       d<   V
P0                  p\-        V4      V9   d   MœVP3                  \-        V4      4       Tp
KN  \         P"                  P%                  R
4      ;p'       dW   \        W­P4                  4      '       d<   V
P6                  p\-        V4      V9   d   MVP3                  \-        V4      4       Tp
KË   \/        V
R4      '       d   V
P8                  pVf   TpVf   T	p\        V RR4      ;p'       d*   Vf   / pV Uu/ uF  qÿP:                  VbK  	  upV,          pVP=                  4        UUu/ uF4  w  ppT\        V\>        4      '       g   TM\A        \C        V4      W4      bK6  	  pppV#   \         d     ELli ; iu upi u uppi )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©  zUnsupported format z does not have annotationsr   r5   r   Ú__wrapped__Ú	functoolsr6   r   )"r   r
   r>   Ú_get_dunder_annotationsÚ_get_and_call_annotater   rH   rU   r   r®  r   r   rC   rE   r   r?   r@   rA   rB   rG   r;   rD   r�   rO   rÉ  ÚaddÚpartialru  r   r   rJ   r   rT   r‰   )rÛ   r0   r1   rÇ  r3   ÚannÚobj_globalsrY   r   Ú
obj_localsÚunwrapÚ	_seen_idsÚ	candidaterÊ  r2   rZ   rÏ   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 ô ÚðüòJ Bùós   Á2O+ Í:O=Î,:PÏ+O:Ï9O:c                óp  € \        V \        \        P                  \        P                  34      '       d9   V P
                  R8X  d   V P                  # V P
                   RV P                   2# \        V \        4      '       d"   \        V 4      p\        P                  ! V4      # V RJ d   R# \        V 4      # )a  Convert 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Â  )r   rC   r;   r°  ÚBuiltinFunctionTyper   r   r¾   r¿   ru   rv   rö   )r¼   Útrees   & r   Ú	type_reprrÛ  S  s—   € ô �%œ$¤× 2Ñ 2´E×4MÑ4MÐN×OÒOØ×Ñ˜zÔ)Ø×%Ñ%Ð%Ø×"Ñ"Ð# 1 U×%7Ñ%7Ð$8Ð9Ð9Ü	�Eœ9×	%Ò	%Ü Ó&ˆÜ�{Š{˜4Ó Ð Ø�ƒ|ÙÜ�‹;Ðr   c           	     óš   € V P                  4        UUu/ uF)  w  rT\        V\        4      '       d   TM
\        V4      bK+  	  upp# u uppi )zwConvert an annotation dict containing values to approximately the STRING format.

Always returns a fresh a dictionary.
)rJ   r   r   rÛ  )ÚannotationsÚnÚts   &  r   r®  r®  g  sK   € ð  ×%Ñ%Ô'ôá'‰DˆAð 	
”
˜1œc×"Ò"‰1¬	°!«Ò4Ù'òð ùó s   ”/Ac                ó\   € V P                  4       P                  R4      '       d   RV  R2# 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   &r   r‰   r‰   r  s.   € ð ‡z�zƒ|×Ñ˜s×#Ò#Ø�3�%�uˆ~Ðàˆ
r   c                ó�   € \        V RR4      pVe5   \        W!V R7      p\        V\        4      '       g   \	        V : R24      hV# R# )zOGet the __annotate__ function and call it.

May not return a fresh dictionary.
r  N)r   z!.__annotate__ returned a non-dict)r?   r¦  r   rH   r>   )rÛ   r3   r¶  rÏ  s   &&  r   rÌ  rÌ  |  sL   € ô
 �s˜N¨DÓ1€HØÒÜ$ X¸SÔAˆÜ˜#œt×$Ò$Ü ™wÐ&GÐHÓIÐIØˆ
Ùr   Ú__annotations__c                óà   € \        V \        4      '       d    \        V 4      pM\	        V RR4      pVf   R# \        V\
        4      '       g   \        V : R24      hV#   \         d     R# 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)r   rC   Ú_BASE_GET_ANNOTATIONSÚAttributeErrorr?   rH   r>   )rÛ   rÏ  s   & r   rË  rË  �  sr   € ô �#”t×Òð	Ü'¨Ó,‰Cô
 �cÐ,¨dÓ3ˆØŠ;Ùä�cœ4× Ò Ü˜C™7Ð"MÐNÓOÐOØ€Jøô ô 	âð	ús   ˜A ÁA-Á,A-c                   ó<   a € ] tR tRt o RtR tV 3R lR ltRtV tR# )r}   i¥  zLFixer for __extra_names__ items in ForwardRef __repr__ and string evaluationc                ó   € Wn         R # r�   ©r³   )r%   r³   s   &&r   r'   Ú_ExtraNameFixer.__init__§  s   € Ø&Ör   c                ó4   <€ V ^8„  d   QhRS[ P                  /# )r  r…   )ru   r½   )r3   r°   s   "€r   r  Ú_ExtraNameFixer.__annotate__ª  s   ø€ ÷ ñ ™sŸx™xñ r   c                ó®   € V P                   P                  VP                  \        4      ;p\        Jd!   \        P
                  ! \        V4      R 7      pV# ré   )r³   rB   r�   rk   ru   r½   rÛ  )r%   r…   Únew_names   && r   Ú
visit_NameÚ_ExtraNameFixer.visit_Nameª  s>   € Ø×(Ñ(×,Ñ,¨T¯W©W´iÓ@Ð@ˆHÌÓRÜ—8’8œy¨Ó2Ô3ˆDØˆr   rë  N)	r   r   r   r	   rª   r'   rñ  r   r®   r¯   s   @r   r}   r}   ¥  s   ø‡ € ÙVò'÷ö r   r}   )r   r   r¦  r§  rÆ  rÖ  r®  rÛ  )r   r   r   Ú__weakref__r   r   r!   r"   r#   r    r   r¶   r$   )r£   r   )(rª   ru   rP   ÚenumrM   r@   r;   Ú__all__ÚIntEnumr   Úobjectrk   rR   r«   r   rC   r¾   r²   r}  r„  r¿   rH   rV   r§  r¦  r¯  r³  rÆ  r
   rÖ  rÛ  r®  r‰   rÌ  r5   Ú__get__rç  rË  ÚNodeTransformerr}   r   r   r   Ú<module>rú     s0  ðÙ 9ã 
Û Û Û Û 
Û ò	€ôˆT�\‰\ô ñ ‹H€	à5€ð
€÷"bHñ bHñJ	 ’‹I€	÷ñ òDJò**ò,6ô*#�tô #ðLT°dô TðY8°dð Y8Èô Y8òx)ò<	ò	2ðpØðpØ!%ðpØ05ðpØ>D¿l¹lôpòfò(òòð Ÿ™Ð&7Õ8×@Ñ@Ð òô0�c×)Ñ)ö r   