+
    }¯³jè&  ã            	      ó"  € ^ RI Ht ^ RIt^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 ^ R	IH
t
 ^ R
IHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIH t  ^ RIH!t! ^ RIH"t" ^ RI#H$t$ ^ RI%H&t& ^ RI%H't' ^ R I%H(t( ^ R!I)H*t* ^ R"I+H,t, ^ R#I-H.t. ^ R$I-H/t/ ^ R%I-H0t0 ^ R&I-H1t1 ^ R
I-Ht ^ R'I-H2t2 ^ R(I-H3t3 ^ R)I-H4t4 ]5! ]Pl                  Po                  R*4       U u. uF%  p ]Pq                  R+V 4      '       g   K  ]9! V 4      NK'  	  up 4      t:]:R`8¬  t;]! R,]]]3,          R-7      t< ! R. R/4      t=R0 R1 lt>R2 R3 lt?R4 R5 lt@R6 R7 ltAR8 R9 ltBR: R; ltCR< R= ltDR> R? ltER@ RA ltFRB RC ltGRD RE ltHRF RG ltRH RI ltIRJ RK ltJRL RM ltK]	RNRO/RP RQ ll4       tL]	RR RS l4       tLRNR/RT RU lltLRV RW ltMRX RY ltNRZ R[ ltOR\ R] ltPR^ R_ ltQR# u up i )aé    )ÚannotationsN)ÚAny)ÚIterable)ÚIterator)ÚList)ÚOptional)Úoverload)ÚTuple)ÚType)ÚTypeVar)ÚUnion)Úversion)Úformat_type)ÚCallExpr)ÚClassDef)ÚCLASSDEF_NO_INFO)ÚContext)Ú
Expression)ÚFuncDef)ÚIfStmt)ÚJsonDict)Ú
MemberExpr)ÚNameExpr)Ú	Statement)ÚSymbolTableNode)Ú	TypeAlias)ÚTypeInfo)ÚOptions)ÚClassDefContext)ÚDynamicClassDefContext)ÚSemanticAnalyzerPluginInterface)Údeserialize_and_fixup_type)Úmap_type_from_supertype)ÚCallableType)Úget_proper_type)ÚInstance)ÚNoneType)ÚTypeVarType)ÚUnboundType)Ú	UnionTypeÚ.z^\d+$Ú	_TArgType)Úboundc                  óP   € ] tR t^>tR R ltR R ltR R lt]R R l4       tR	t	R
# )ÚSQLAlchemyAttributec               ó0   € V ^8„  d   QhRRRRRRRRRR	R
R/# )é   ÚnameÚstrÚlineÚintÚcolumnÚtypzOptional[Type]Úinfor   ÚreturnÚNone© )Úformats   "ÚY/home/luca/screen-checking/.venv/lib/python3.14/site-packages/sqlalchemy/ext/mypy/util.pyÚ__annotate__Ú SQLAlchemyAttribute.__annotate__?   sF   € ÷ ñ àðð ðð ð	ð
 ðð ðð 
ñó    c                	óB   € Wn         W n        W0n        W@n        WPn        R # ©N)r2   r4   r6   Útyper8   )Úselfr2   r4   r6   r7   r8   s   &&&&&&r=   Ú__init__ÚSQLAlchemyAttribute.__init__?   s   € ð Œ	ØŒ	ØŒØŒ	ØŽ	r@   c               ó   € V ^8„  d   QhRR/# )r1   r9   r   r;   )r<   s   "r=   r>   r?   M   s   € ÷ 
ñ 
˜8ñ 
r@   c           
     	ó    € V P                   '       g   Q hR V P                  RV P                  RV P                  R\	        V P                   4      /# )r2   r4   r6   rC   )rC   r2   r4   r6   Úserialize_type)rD   s   &r=   Ú	serializeÚSQLAlchemyAttribute.serializeM   sC   € Ø�y�yˆyÐˆyà�D—I‘IØ�D—I‘IØ�d—k‘kØ”N 4§9¡9Ó-ð	
ð 	
r@   c               ó    € V ^8„  d   QhRRRR/# )r1   Úsub_typer   r9   r:   r;   )r<   s   "r=   r>   r?   V   s   € ÷ Lñ L°Hð LÀñ Lr@   c                ó”   € \        V P                  \        4      '       g   R# \        V P                  WP                  4      V n        R# )zhExpands type vars in the context of a subtype when an attribute is
inherited from a generic super type.
N)Ú
isinstancerC   r(   r#   r8   )rD   rM   s   &&r=   Úexpand_typevar_from_subtypeÚ/SQLAlchemyAttribute.expand_typevar_from_subtypeV   s.   € ô ˜$Ÿ)™)¤[×1Ò1Ùä+¨D¯I©I°xÇÁÓKˆŽ	r@   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   r8   r   Údatar   Úapir!   r9   r/   r;   )r<   s   "r=   r>   r?   `   s2   € ÷ /ñ /àð/ð ð/ð -ð	/ð
 
ñ/r@   c                	óp   € VP                  4       p\        VP                  R 4      V4      pV ! RRVRV/VB # )rC   r7   r8   r;   )Úcopyr"   Úpop)Úclsr8   rS   rT   r7   s   &&&& r=   ÚdeserializeÚSQLAlchemyAttribute.deserialize_   s<   € ð �y‰y‹{ˆÜ(¨¯©°&Ó)9¸3Ó?ˆÙÑ.�sÐ. Ð.¨Ñ.Ð.r@   )r6   r8   r4   r2   rC   N)
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rE   rJ   rP   ÚclassmethodrY   Ú__static_attributes__r;   r@   r=   r/   r/   >   s&   † õõ
õLð ô/ó ô/r@   r/   c               ó    € V ^8„  d   QhRRRR/# )r1   r2   r3   r9   Úboolr;   )r<   s   "r=   r>   r>   k   s   € ÷ .ñ .˜ð . ñ .r@   c                óB   € \        \        P                  ! R V 4      4      # )z	^__.+?__$)rb   ÚreÚmatch)r2   s   &r=   Úname_is_dunderrf   k   s   € Ü”—’˜ tÓ,Ó-Ð-r@   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   r8   r   Úkeyr3   rS   r   r9   r:   r;   )r<   s   "r=   r>   r>   o   s(   € ÷ ;ñ ;˜Xð ;¨Cð ;°sð ;¸tñ ;r@   c                óB   € W P                   P                  R / 4      V&   R# ©Ú
sqlalchemyN©ÚmetadataÚ
setdefault)r8   rh   rS   s   &&&r=   Ú_set_info_metadataro   o   s   € Ø6:‡M�M×Ñ˜\¨2Ó.¨sÓ3r@   c               ó$   € V ^8„  d   QhRRRRRR/# ©r1   r8   r   rh   r3   r9   úOptional[Any]r;   )r<   s   "r=   r>   r>   s   s!   € ÷ >ñ >˜Xð >¨Cð >°Mñ >r@   c                óZ   € V P                   P                  R / 4      P                  VR4      # rj   )rm   Úget)r8   rh   s   &&r=   Ú_get_info_metadataru   s   s&   € Ø�=‰=×Ñ˜\¨2Ó.×2Ñ2°3¸Ó=Ð=r@   c               ó$   € V ^8„  d   QhRRRRRR/# rq   r;   )r<   s   "r=   r>   r>   w   s!   € ÷ ñ  ð °ð ¸ñ r@   c                óv   € V P                   '       d'   V P                    F  p\        W!4      pVf   K  Vu # 	  R # rB   )Úmroru   )r8   rh   Úbaserm   s   &&  r=   Ú_get_info_mro_metadatarz   w   s3   € Ø‡x‡x€xØ—H”HˆDÜ)¨$Ó4ˆHØÔ#Ø’ñ ñ r@   c               ó    € V ^8„  d   QhRRRR/# ©r1   r8   r   r9   r:   r;   )r<   s   "r=   r>   r>   €   s   € ÷ /ñ / (ð /¨tñ /r@   c                ó>   € V P                   P                  R / 4       R# rj   rl   ©r8   s   &r=   Úestablish_as_sqlalchemyr   €   s   € Ø‡M�M×Ñ˜\¨2Ö.r@   c               ó    € V ^8„  d   QhRRRR/# r|   r;   )r<   s   "r=   r>   r>   „   s   € ÷ .ñ .�hð . 4ñ .r@   c                ó    € \        V R R4       R# )Úis_baseTN©ro   r~   s   &r=   Úset_is_baser„   „   s   € Ü�t˜Y¨Ö-r@   c               ó    € V ^8„  d   QhRRRR/# ©r1   r8   r   r9   rb   r;   )r<   s   "r=   r>   r>   ˆ   s   € ÷ ñ �hð  4ñ r@   c                ó"   € \        V R 4      pVRJ # ©r‚   T©ru   ©r8   r‚   s   & r=   Úget_is_baser‹   ˆ   s   € Ü   yÓ1€GØ�dˆ?Ðr@   c               ó    € V ^8„  d   QhRRRR/# r†   r;   )r<   s   "r=   r>   r>   �   s   € ÷ ñ ˜xð ¨Dñ r@   c                ó"   € \        V R 4      pVRJ # rˆ   )rz   rŠ   s   & r=   Úhas_declarative_baserŽ   �   s   € Ü$ T¨9Ó5€GØ�dˆ?Ðr@   c               ó    € V ^8„  d   QhRRRR/# r|   r;   )r<   s   "r=   r>   r>   ’   s   € ÷ 0ñ 0˜ð 0 Tñ 0r@   c                ó    € \        V R R4       R# )Ú	has_tableTNrƒ   r~   s   &r=   Úset_has_tabler’   ’   s   € Ü�t˜[¨$Ö/r@   c               ó    € V ^8„  d   QhRRRR/# r†   r;   )r<   s   "r=   r>   r>   –   s   € ÷ ñ ˜ð  Tñ r@   c                ó"   € \        V R 4      pVRJ # )r‘   Tr‰   rŠ   s   & r=   Úget_has_tabler•   –   s   € Ü   {Ó3€GØ�dˆ?Ðr@   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   r8   r   rT   r!   r9   z#Optional[List[SQLAlchemyAttribute]]r;   )r<   s   "r=   r>   r>   ›   s$   € ÷ ñ Ø
ðØ8ðà(ñr@   c                ó°   € \        V R 4      pVf   R# . pV F;  p\        P                  WV4      pVP                  V 4       VP	                  V4       K=  	  V# ©Úmapped_attributesN)ru   r/   rY   rP   Úappend)r8   rT   r™   Ú
attributesrS   Úattrs   &&    r=   Úget_mapped_attributesr�   ›   sf   € ô 3EØÐ!ó3Ðð Ò Ùà,.€Jã!ˆÜ"×.Ñ.¨t¸3Ó?ˆØ×(Ñ(¨Ô.Ø×Ñ˜$Öñ "ð
 Ðr@   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   Útyp_r   Úoptionsr   r9   r3   r;   )r<   s   "r=   r>   r>   ®   s!   € ÷ 'ñ '�dð ' Wð '°ñ 'r@   c                óF   € \         '       d   \        W4      # \        V 4      # rB   )Úmypy_14Ú_mypy_format_type)rŸ   r    s   &&r=   r   r   ®   s   € ßƒwÜ  Ó/Ð/ä  Ó&Ð&r@   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   r8   r   r›   zList[SQLAlchemyAttribute]r9   r:   r;   )r<   s   "r=   r>   r>   µ   s$   € ÷ ñ Ø
ðØ 9ðà	ñr@   c           	     ód   € \        T R V Uu. uF  q"P                  4       NK  	  up4       R# u upi r˜   )ro   rJ   )r8   r›   Ú	attributes   && r=   Úset_mapped_attributesr§   µ   s0   € ô ØØÙ0:Ó;±
 9×	Ñ	Ö	±
Ñ;öùò 	<s   Œ-c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rT   r!   Úmsgr3   Úctxr   r9   r:   r;   )r<   s   "r=   r>   r>   ¿   s)   € ÷ ñ Ð-ð °Cð ¸gð È$ñ r@   c                ó6   € R V,          pV P                  W4      # )z[SQLAlchemy Mypy plugin] %s)Úfail)rT   r©   rª   s   &&&r=   r¬   r¬   ¿   s   € Ø
'¨#Õ
-€CØ�8‰8�CÓÐr@   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR/# )	r1   rª   z.Union[ClassDefContext, DynamicClassDefContext]Úmoduler3   Úsymbol_nameÚasnamer9   r:   r;   )r<   s   "r=   r>   r>   Ä   s:   € ÷ ,ñ ,Ø	7ð,àð,ð ð,ð ð	,ð
 
ñ,r@   c                óð   € V P                   P                  V P                   P                  ,          P                  pW49  d5   V P                   P                  V,          P                  V,          pWTV&   R # R # rB   )rT   ÚmodulesÚ
cur_mod_idÚnames)rª   r®   r¯   r°   Úmodule_globalsÚ
lookup_syms   &&&&  r=   Ú
add_globalr·   Ä   s[   € ð —W‘W—_‘_ S§W¡W×%7Ñ%7Õ8×>Ñ>€NàÔ#Ø&)§g¡g§o¡o°fÕ&=×&CÑ&CØõ'
ˆ
ð ",�vÓñ $r@   Ú
expr_types.c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   Úcallexprr   r2   r3   r¸   r:   r9   z#Optional[Union[CallExpr, NameExpr]]r;   )r<   s   "r=   r>   r>   Õ   s,   € ÷ .ñ .Øð.Ø!ð.Ø26ð.à(ñ.r@   c               ó   € R # rB   r;   ©rº   r2   r¸   s   &&$r=   Úget_callexpr_kwargr½   Ô   s   € ñ +.r@   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rº   r   r2   r3   r¸   z!Tuple[TypingType[_TArgType], ...]r9   zOptional[_TArgType]r;   )r<   s   "r=   r>   r>   Û   s0   € ÷ ñ Øðà
ðð 2ð	ð
 ñr@   c               ó   € R # rB   r;   r¼   s   &&$r=   r½   r½   Ú   s   € ñ r@   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r1   rº   r   r2   r3   r¸   z%Optional[Tuple[TypingType[Any], ...]]r9   rr   r;   )r<   s   "r=   r>   r>   ã   s0   € ÷ ñ Øðà
ðð 6ð	ð
 ñr@   c               óÎ   €  V P                   P                  V4      pT P                  T,          p\	        YBe   TM\
        \        34      '       d   T# R #   \         d     R # i ; irB   )Ú	arg_namesÚindexÚ
ValueErrorÚargsrO   r   r   )rº   r2   r¸   Úarg_idxÚkwargs   &&$  r=   r½   r½   ã   sg   € ðØ×$Ñ$×*Ñ*¨4Ó0ˆð �M‰M˜'Õ"€EÜØÒ3‰z¼(ÄHÐ9M÷ò ð ˆáøô ô Úðús   ‚A ÁA$Á#A$c               ó    € V ^8„  d   QhRRRR/# )r1   ÚstmtszIterable[Statement]r9   zIterator[Statement]r;   )r<   s   "r=   r>   r>   ÷   s   € ÷ 	ñ 	Ð 3ð 	Ð8Kñ 	r@   c              #  ó8  "  € V  F�  p\        V\        4      '       dq   \        VP                  ^ ,          \        4      '       dJ   VP                  ^ ,          P                  R8X  d(   VP
                  ^ ,          P
                   Rj  x€L
  K‰  Vx € K�  	  R#  L5i)r   ztyping.TYPE_CHECKINGN)rO   r   Úexprr   ÚfullnameÚbody)rÉ   Ústmts   & r=   Úflatten_typecheckingrÏ   ÷   si   é € Ûˆä�tœV×$Ò$Ü˜4Ÿ9™9 Q�<¬×2Ò2Ø—	‘	˜!•×%Ñ%Ð)?Ô?à—y‘y •|×(Ñ(×(Ò(àŒJó ñ )ùs   ‚BBÂBÂBc               ó    € V ^8„  d   QhRRRR/# )r1   Úcalleer   r9   z#Optional[Union[Instance, TypeInfo]]r;   )r<   s   "r=   r>   r>     s   € ÷ ñ ˜Jð Ð+Nñ r@   c                óž  € \        V \        \        34      '       Ed0   \        V P                  \        4      '       dŠ   V P                  P
                  '       dl   \        V P                  P
                  \        4      '       dB   \        V P                  P
                  P                  4      p\        V\        4      '       d   V# R # \        V P                  \        4      '       d;   \        V P                  P                  4      p\        V\        4      '       d   V#  R # \        V P                  \        4      '       d   V P                  # R # rB   )rO   r   r   Únoder   rC   r$   r%   Úret_typer&   r   Útargetr   )rÑ   rÔ   Útarget_types   &  r=   Útype_for_calleer×     sÜ   € Ü�&œ:¤xÐ0×1Ó1Ü�f—k‘k¤7×+Ò+Ø�{‰{××Ð¤J¨v¯{©{×/?Ñ/?Ä×$NÒ$NÜ*¨6¯;©;×+;Ñ+;×+DÑ+DÓE�ä˜h¬×1Ò1Ø#�OáÜ˜Ÿ™¤Y×/Ò/Ü)¨&¯+©+×*<Ñ*<Ó=ˆKÜ˜+¤x×0Ò0Ø"Ð"ð 1ñ ô ˜Ÿ™¤X×.Ò.Ø—;‘;ÐÙr@   c               ó$   € V ^8„  d   QhRRRRRR/# )r1   rT   r!   r7   r   r9   r;   )r<   s   "r=   r>   r>     s$   € ÷ /ñ /Ø	(ð/Ø/3ð/à	ñ/r@   c                óN  € \        V\        4      '       g   V# VP                  R8X  dI   \        T \	        VP
                   Uu. uF  p\        W4      NK  	  up\        4       .,           4      4      # V P                  VP                  V4      pVeŠ   \        V\        4      '       dt   \        VP                  \        4      '       dT   VP                  p\        TVP
                   Uu. uF&  p\        V\        4      '       d   \        W4      MTNK(  	  up4      # V# u upi u upi )zÈTake the UnboundType that we seem to get as the ret_type from a FuncDef
and convert it into an Instance/TypeInfo kind of structure that seems
to work as the left-hand type of an AssignmentStatement.

r   )rO   r)   r2   Úunbound_to_instancer*   rÅ   r'   Úlookup_qualifiedr   rÓ   r   r&   )rT   r7   Útyp_argrÓ   Ú
bound_typeÚargs   &&    r=   rÚ   rÚ     s  € ô �cœ;×'Ò'Øˆ
ð
 ‡x�x�:Ôô #ØÜØBEÇ(Â(ÓKÁ(°wÔ$ SÖ2Á(ÑKÜ“:�,õóó
ð 	
ð ×Ñ §¡¨#Ó.€Dð 	ÒÜ�tœ_×-Ò-Ü�t—y‘y¤(×+Ò+à—Y‘Yˆ
äØð Ÿ8š8óñ $�Cô " #¤{×3Ò3ô (¨Ô1àòñ $ñó

ð 
	
ð ˆ
ùò5 Lùò s   ÁDÃ(,D"
c               ó$   € V ^8„  d   QhRRRRRR/# )r1   rX   r   rT   r!   r9   zOptional[TypeInfo]r;   )r<   s   "r=   r>   r>   H  s$   € ÷ 
ñ 
Ø	ð
Ø7ð
àñ
r@   c                óò   € V P                   \        J dY   VP                  V P                  V 4      pVf   R # V'       d!   \	        VP
                  \        4      '       g   Q hVP
                  # V P                   # rB   )r8   r   rÛ   r2   rO   rÓ   r   )rX   rT   Úsyms   && r=   Úinfo_for_clsrâ   H  sZ   € ð ‡x�xÔ#Ó#Ø×"Ñ" 3§8¡8¨SÓ1ˆØŠ;Ùß”z #§(¡(¬H×5Ò5Ð5Ð5Ø�x‰xˆà�8‰8€Or@   c               ó    € V ^8„  d   QhRRRR/# )r1   r7   r   r9   zUnion[str, JsonDict]r;   )r<   s   "r=   r>   r>   U  s   € ÷ ñ ˜ð Ð!5ñ r@   c                óx  €  V P                  4       #   \         d     Mi ; i\        T R 4      '       dV   \        ;QJ d    . R T P                   4       F  NK  	  5M! R T P                   4       4      T n        T P                  4       # \        T R4      '       d   T P                  4       p T P                  4       # )rÅ   c              3  ój   "  € T F)  p\        VR 4      '       d   VP                  4       MTx € K+  	  R# 5i)Úresolve_string_annotationN)Úhasattrræ   )Ú.0Úas   & r=   Ú	<genexpr>Ú!serialize_type.<locals>.<genexpr>[  s<   é € ð 
ñ �ô ˜1Ð9×:Ò:ð ×+Ñ+Ô-àôó ùs   ‚13ræ   )rJ   Ú	Exceptionrç   ÚtuplerÅ   ræ   )r7   s   &r=   rI   rI   U  s¢   € ðØ�}‰}‹ÐøÜô Ùðúäˆs�F×Òß”5ñ 
ð —X’Xó
—5‘5ñ 
ð —X’Xó
ó 
ˆŒð �=‰=‹?Ðô 
�Ð1×	2Ò	2Ø×+Ñ+Ó-ˆØ�=‰=‹?Ðs   ‚ ’ Ÿ )é   é   )RÚ
__future__r   rd   Útypingr   r   r   r   r   r	   r
   r   Ú
TypingTyper   r   Úmypyr   Úmypy.messagesr   r£   Ú
mypy.nodesr   r   r   r   r   r   r   r   r   r   r   r   r   r   Úmypy.optionsr   Úmypy.pluginr   r    r!   Úmypy.plugins.commonr"   Úmypy.typeopsr#   Ú
mypy.typesr$   r%   r&   r'   r(   r)   r*   rí   Ú__version__Úsplitre   r5   Ú_versr¢   r,   r/   rf   ro   ru   rz   r   r„   r‹   rŽ   r’   r•   r�   r§   r¬   r·   r½   rÏ   r×   rÚ   râ   rI   )Úxs   0r=   Ú<module>rÿ      s   ðõ #ã 	Ý Ý Ý Ý Ý Ý Ý Ý %Ý Ý å Ý :Ý Ý Ý 'Ý Ý !Ý Ý Ý Ý !Ý Ý  Ý &Ý  Ý Ý  Ý 'Ý .Ý 7Ý :Ý 0Ý #Ý &Ý Ý Ý Ý "Ý "Ý  áØ×(Ñ(×.Ñ.¨sÔ3ÓMÑ3�°r·x±xÀÈ!×7L„V�Sˆ†VÑ3ÑMó	€ð �6‰/€ñ �K u¨X°xÐ-?Õ'@ÔA€	÷*/ñ */õZ.õ;õ>õõ/õ.õõ
õ
0õõ
õ&'õõõ
,ð  
ð.Ø9<ö.ó 
ð.ð
 
ôó 
ððð 9=÷	õ(	õõ&/õd
÷ùò Ns   ÄHÄ9H