+
    NV-j+î  ã                  óÎ  € R t ^ RIHt ^ RIt^ RIHt ^ RIHt ^ RIH	t	H
t
 ^ RIHt ^ RIHtHt ^ RIHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtH t H!t!H"t"H#t#H$t$H%t%H&t&H't'H(t(H)t)H*t*H+t+H,t,H-t-H.t.H/t/H0t0 ^ R	I1H2t2 ^ R
I3H4t4H5t5H6t6H7t7H8t8H9t9H:t: ^ RI;H<t< ^ RI=H>t> ^ RI?H@t@ ^ RIAHBtB ^ RICHDtD ^ RIEHFtF ^ RIGHHtHHItIHJtJHKtKHLtLHMtMHNtNHOtOHPtPHQtQ ^ RIRHStS ^ RITHUtU ^ RIVHWtX ^ RIYHZtZ ^ RI[H\t\ Rt]Rt^Rt_Rt`RtaRtbRtcRtdRteR tf0 RTmtg]gR!0,
          th]\! ]X4      tiR"tj^tWR# R$ ltk ! R% R&]84      tl ! R' R(4      tmR) R* ltn ! R+ R,4      to ! R- R.4      tp ! R/ R04      tq ! R1 R2]D4      tr ! R3 R44      tsR5 R6 ltt]! R7R8R94      tu]! R:R;R94      tv]! R<R=R94      tw]! R>R?R94      tx]! R@RAR94      ty]! R@RBR94      tz]! R@RCR94      t{RD RE lt|RF RG lt}RH RI lt~RJ RK ltRL RM lt€RN RO lt�RURP RQ llt‚RR RS ltƒR# )Vz^This module includes classes and functions designed specifically for use with the mypy plugin.)ÚannotationsN)ÚIterator)ÚConfigParser)ÚAnyÚCallable)Ú	ErrorCode)Úexpand_typeÚexpand_type_by_instance) Ú	ARG_NAMEDÚARG_NAMED_OPTÚARG_OPTÚARG_POSÚ	ARG_STAR2Ú	INVARIANTÚMDEFÚArgumentÚAssignmentStmtÚBlockÚCallExprÚClassDefÚContextÚ	DecoratorÚDictExprÚEllipsisExprÚ
ExpressionÚFuncDefÚIfStmtÚJsonDictÚ
MemberExprÚNameExprÚPassStmtÚPlaceholderNodeÚRefExprÚ	StatementÚStrExprÚSymbolTableNodeÚTempNodeÚ	TypeAliasÚTypeInfoÚVar)ÚOptions)ÚCheckerPluginInterfaceÚClassDefContextÚDynamicClassDefContextÚMethodContextÚPluginÚReportConfigContextÚSemanticAnalyzerPluginInterface)Údeserialize_and_fixup_type)Úset_callable_name)Úmake_wildcard_trigger)Ústate)ÚTypeTranslator)Úmap_type_from_supertype)
ÚAnyTypeÚCallableTypeÚInstanceÚNoneTypeÚTypeÚ	TypeOfAnyÚTypeTypeÚTypeVarTypeÚ	UnionTypeÚget_proper_type)Úfill_typevars)Úget_unique_redefinition_name)Ú__version__)Ú_fields)Úparse_mypy_versionúpydantic-mypyzpydantic-mypy-metadatazpydantic.main.BaseModelzpydantic.main.create_modelz#pydantic_settings.main.BaseSettingszpydantic.root_model.RootModelz5pydantic._internal._model_construction.ModelMetaclasszpydantic.fields.Fieldzpydantic.dataclasses.dataclassú.pydantic.functional_validators.model_validatorú0pydantic.functional_serializers.model_serializerÚbuiltinsc               ó    € V ^8„  d   QhRRRR/# )é   ÚversionÚstrÚreturnztype[Plugin]© )Úformats   "Ú^/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/pydantic/mypy.pyÚ__annotate__rS   o   s   € ÷ ñ �Cð ˜Lñ ó    c                ó   € \         # )a  `version` is the mypy version string.

We might want to use this to print a warning if the mypy version being used is
newer, or especially older, than we expect (or need).

Args:
    version: The mypy version string.

Return:
    The Pydantic mypy plugin type.
)ÚPydanticPlugin)rM   s   &rR   ÚpluginrW   o   s
   € ô ÐrT   c                  ó’   a € ] tR t^~tRtR V 3R lltR R ltR R ltR R	 ltR
 R lt	R R lt
R R ltR R ltR R ltRtV ;t# )rV   zThe Pydantic mypy plugin.c               ó    € V ^8„  d   QhRRRR/# ©rL   Úoptionsr*   rO   ÚNonerP   )rQ   s   "rR   rS   ÚPydanticPlugin.__annotate__�   s   € ÷ "ñ " ð "¨Dñ "rT   c                	ó„   <€ \        V4      V n        V P                  P                  4       V n        \        SV `  V4       R # ©N)ÚPydanticPluginConfigÚplugin_configÚto_dataÚ_plugin_dataÚsuperÚ__init__)Úselfr[   Ú	__class__s   &&€rR   re   ÚPydanticPlugin.__init__�   s4   ø€ Ü1°'Ó:ˆÔØ ×.Ñ.×6Ñ6Ó8ˆÔÜ‰Ñ˜Ö!rT   c               ó    € V ^8„  d   QhRRRR/# ©rL   ÚfullnamerN   rO   z(Callable[[ClassDefContext], None] | NonerP   )rQ   s   "rR   rS   r]   †   s   € ÷ ñ ¨Cð Ð4\ñ rT   c                óÚ   € V P                  V4      pV'       dR   \        VP                  \        4      '       d2   VP                  P	                  \
        4      '       d   V P                  # R# )zUpdate Pydantic model class.N)Úlookup_fully_qualifiedÚ
isinstanceÚnoder(   Úhas_baseÚBASEMODEL_FULLNAMEÚ$_pydantic_model_class_maker_callback)rf   rk   Úsyms   && rR   Úget_base_class_hookÚ"PydanticPlugin.get_base_class_hook†   sJ   € à×)Ñ)¨(Ó3ˆß”:˜cŸh™h¬×1Ò1à�x‰x× Ñ Ô!3×4Ò4Ø×@Ñ@Ð@ÙrT   c               ó    € V ^8„  d   QhRRRR/# rj   rP   )rQ   s   "rR   rS   r]   �   s   € ÷ ñ ¨3ð Ð3[ñ rT   c                ó4   € V\         8X  d   V P                  # R# )z,Update Pydantic `ModelMetaclass` definition.N)ÚMODEL_METACLASS_FULLNAMEÚ)_pydantic_model_metaclass_marker_callback©rf   rk   s   &&rR   Úget_metaclass_hookÚ!PydanticPlugin.get_metaclass_hook�   s   € àÔ/Ô/Ø×AÑAÐAÙrT   c               ó    € V ^8„  d   QhRRRR/# )rL   rk   rN   rO   z&Callable[[MethodContext], Type] | NonerP   )rQ   s   "rR   rS   r]   •   s   € ÷ ñ ¨ð Ð0Vñ rT   c                ó@   € VP                  R4      '       d   \        # R# )z-Adjust return type of `from_orm` method call.z	.from_ormN)ÚendswithÚfrom_attributes_callbackrz   s   &&rR   Úget_method_hookÚPydanticPlugin.get_method_hook•   s   € à×Ñ˜[×)Ò)Ü+Ð+ÙrT   c               ó    € V ^8„  d   QhRRRR/# )rL   rk   rN   rO   z/Callable[[DynamicClassDefContext], None] | NonerP   )rQ   s   "rR   rS   r]   ›   s   € ÷ ñ ¨sð Ð7fñ rT   c                ó4   € V\         8X  d   V P                  # R# )zARecognize `create_model()` calls as dynamic BaseModel subclasses.N)ÚCREATE_MODEL_FULLNAMEÚ_pydantic_create_model_callbackrz   s   &&rR   Úget_dynamic_class_hookÚ%PydanticPlugin.get_dynamic_class_hook›   s   € àÔ,Ô,Ø×7Ñ7Ð7ÙrT   c               ó    € V ^8„  d   QhRRRR/# )rL   Úctxr0   rO   údict[str, Any]rP   )rQ   s   "rR   rS   r]   ¡   s   € ÷ !ñ !Ð&9ð !¸nñ !rT   c                ó   € V P                   # )zZReturn all plugin config data.

Used by mypy to determine if cache needs to be discarded.
)rc   )rf   rŠ   s   &&rR   Úreport_config_dataÚ!PydanticPlugin.report_config_data¡   s   € ð
 × Ñ Ð rT   c               ó    € V ^8„  d   QhRRRR/# ©rL   rŠ   r,   rO   r\   rP   )rQ   s   "rR   rS   r]   ¨   s   € ÷  ñ  ¸ð  ÈDñ  rT   c                	ó’   € \        VP                  VP                  VP                  V P                  4      pVP                  4        R # r_   )ÚPydanticModelTransformerÚclsÚreasonÚapira   Ú	transform)rf   rŠ   Útransformers   && rR   rr   Ú3PydanticPlugin._pydantic_model_class_maker_callback¨   s0   € Ü.¨s¯w©w¸¿
¹
ÀCÇGÁGÈT×M_ÑM_Ó`ˆØ×ÑÖrT   c               ó    € V ^8„  d   QhRRRR/# r�   rP   )rQ   s   "rR   rS   r]   ¬   s   € ÷ @ñ @¸_ð @ÐQUñ @rT   c                ó   € V P                   P                  '       d   R# VP                  P                  P                  pV'       g   Q R4       h\        VP                  RR4      '       d   RVP                  n        R# R# )z»Reset dataclass_transform_spec attribute of ModelMetaclass.

Let the plugin handle it. This behavior can be disabled
if 'debug_dataclass_transform' is set to True', for testing purposes.
Nz-callback not passed from 'get_metaclass_hook'Údataclass_transform_spec)ra   Údebug_dataclass_transformr“   ÚinfoÚdeclared_metaclassÚgetattrÚtyper›   )rf   rŠ   Úinfo_metaclasss   && rR   ry   Ú8PydanticPlugin._pydantic_model_metaclass_marker_callback¬   sd   € ð ×Ñ×7×7Ð7ÙØŸ™Ÿ™×8Ñ8ˆßÐNÐNÓNˆ~Ü�>×&Ñ&Ð(BÀD×IÒIØ;?ˆN×ÑÖ8ñ JrT   c               ó    € V ^8„  d   QhRRRR/# )rL   rŠ   r-   rO   r\   rP   )rQ   s   "rR   rS   r]   ¹   s   € ÷ Mñ MÐ3Ið MÈdñ MrT   c                ó²  € \         p\        VP                  P                  VP                  P                  4       Fæ  w  r4VR8X  g   K  \        V\        4      '       g   K&  VP                  f   K6  \        VP                  \        4      '       d   VP                  P                  pKn  \        VP                  \        4      '       g   K�  \        VP                  P                  \        4      '       g   K¼  VP                  P                  P                  P                  pKè  	  VP                  P                  V4      pVe!   \        VP                  \        4      '       gF   VP                  P                  \         4      pVe!   \        VP                  \        4      '       g   R# VP                  p\        V4      p\        V\        4      '       g   Q hVP                  P!                  VP"                  WqP                  P$                  4      pVP&                  Vn        VP                  P)                  VP"                  \+        \,        V4      4       R# )zFMake variables assigned from `create_model()` usable as types by mypy.Ú__base__N)rq   ÚzipÚcallÚ	arg_namesÚargsrn   r"   ro   r(   rk   r)   r    r:   r•   Úlookup_fully_qualified_or_nonerB   Úbasic_new_typeinfoÚnameÚlineÚmetaclass_typeÚadd_symbol_table_noder%   r   )	rf   rŠ   Úbase_fullnameÚarg_nameÚarg_exprÚbase_symÚ	base_infoÚbase_instancer�   s	   &&       rR   r†   Ú.PydanticPlugin._pydantic_create_model_callback¹   s  € ô +ˆÜ"% c§h¡h×&8Ñ&8¸#¿(¹(¿-¹-Ö"HÑˆHØ˜:Ö%¬*°X¼w×*GÔ*GÈHÏMÉMÔLeÜ˜hŸm™m¬X×6Ò6Ø$,§M¡M×$:Ñ$:’MÜ §¡¬s×3Ô3¼
À8Ç=Á=×CUÑCUÔW_×8`Ô8`Ø$,§M¡M×$6Ñ$6×$;Ñ$;×$DÑ$D’Mñ #Ið —7‘7×9Ñ9¸-ÓHˆØÒ¤:¨h¯m©m¼X×#FÒ#Fà—w‘w×=Ñ=Ô>PÓQˆHØÒ¤z°(·-±-Ä×'JÒ'JÙà—M‘Mˆ	Ü% iÓ0ˆÜ˜-¬×2Ò2Ð2Ð2à�w‰w×)Ñ)¨#¯(©(°MÇ8Á8Ç=Á=ÓQˆØ'×6Ñ6ˆÔà�‰×%Ñ% c§h¡h´ÄÀdÓ0KÖLrT   )rc   ra   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__re   rt   r{   r�   r‡   r�   rr   ry   r†   Ú__static_attributes__Ú__classcell__©rg   s   @rR   rV   rV   ~   s@   ø† Ù#÷"ð "õ
õõõõ!õ õ@÷Mó MrT   rV   c                  ó`   € ] tR t^Õt$ RtRtR]R&   R]R&   R]R&   R]R&   R R ltR	 R
 ltRt	R# )r`   a¿  A Pydantic mypy plugin config holder.

Attributes:
    init_forbid_extra: Whether to add a `**kwargs` at the end of the generated `__init__` signature.
    init_typed: Whether to annotate fields in the generated `__init__`.
    warn_required_dynamic_aliases: Whether to raise required dynamic aliases error.
    debug_dataclass_transform: Whether to not reset `dataclass_transform_spec` attribute
        of `ModelMetaclass` for testing purposes.
Úinit_forbid_extraÚ
init_typedÚwarn_required_dynamic_aliasesrœ   Úboolc               ó    € V ^8„  d   QhRRRR/# rZ   rP   )rQ   s   "rR   rS   Ú!PydanticPluginConfig.__annotate__ë   s   € ÷ ,ñ , ð ,¨Dñ ,rT   c                	ó  € VP                   f   R # \        VP                   4      pVez   VP                  R/ 4      P                  R/ 4      pV P                   FE  pVP                  VR4      p\	        V\
        4      '       g   \        RV 24      h\        WV4       KG  	  R # \        4       pVP                  VP                   4       V P                   F'  pVP                  \        VRR7      p\        WV4       K)  	  R # )NÚtoolrG   Fz/Configuration value must be a boolean for key: )Úfallback)Úconfig_fileÚ
parse_tomlÚgetÚ	__slots__rn   rÃ   Ú
ValueErrorÚsetattrr   ÚreadÚ
getbooleanÚCONFIGFILE_KEY)rf   r[   Útoml_configÚconfigÚkeyÚsettingra   s   &&     rR   re   ÚPydanticPluginConfig.__init__ë   sÛ   € Ø×ÑÒ&Ùä  ×!4Ñ!4Ó5ˆØÒ"Ø —_‘_ V¨RÓ0×4Ñ4°_ÀbÓIˆFØ—~”~�Ø Ÿ*™* S¨%Ó0�Ü! '¬4×0Ò0Ü$Ð'VÐWZÐV[Ð%\Ó]Ð]Ü˜ 7Ö+ó	 &ô )›NˆMØ×Ñ˜w×2Ñ2Ô3Ø—~”~�Ø'×2Ñ2´>À3ÐQVÐ2ÓW�Ü˜ 7Ö+ó &rT   c               ó   € V ^8„  d   QhRR/# ©rL   rO   r‹   rP   )rQ   s   "rR   rS   rÅ   þ   s   € ÷ Cñ C˜ñ CrT   c                óV   € V P                    Uu/ uF  q\        W4      bK  	  up# u upi )z/Returns a dict of config names to their values.)rÌ   rŸ   )rf   rÔ   s   & rR   rb   ÚPydanticPluginConfig.to_dataþ   s&   € à37·>²>ÓB±>¨C”W˜TÓ'Ò'±>ÑBÐBùÒBs   �&rP   N)rÀ   rÁ   rÂ   rœ   )
r·   r¸   r¹   rº   r»   rÌ   Ú__annotations__re   rb   r¼   rP   rT   rR   r`   r`   Õ   s9   ‡ ñð€Ið ÓØÓØ#'Ó'Ø#Ó#õ,÷&Cñ CrT   r`   c               ó    € V ^8„  d   QhRRRR/# )rL   rŠ   r.   rO   r<   rP   )rQ   s   "rR   rS   rS     s   € ÷ #ñ # -ð #°Dñ #rT   c                óL  € V P                   p\        V\        4      '       d   VP                  p\        V\        4      '       d.   \        VP
                  \        4      '       d   VP
                  pMb\        V\        4      '       d   TpMIRV RVP                  P                   R2p\        W0P                  V P                  4       V P                  # VP                   P                  P                  \        4      pVf   V P                  # VP                   P!                  \"        4      '       g   V P                  # VP                  R/ 4      P                  R4      pVRJd6   \%        VP                   P&                  V P                  V P                  4       V P                  # )z1Raise an error if from_attributes is not enabled.z
ctx.type: z
 (of type Ú)rÓ   Úfrom_attributesT)r    rn   r>   Úitemr9   Úret_typer:   rg   r·   Úerror_unexpected_behaviorr•   ÚcontextÚdefault_return_typeÚmetadatarË   ÚMETADATA_KEYrp   rq   Úerror_from_attributesr¬   )rŠ   Úctx_typeÚ
model_typeÚdetailÚpydantic_metadatarß   s   &     rR   r€   r€     s=  € ð �x‰x€HÜ�(œH×%Ò%Ø—=‘=ˆÜ�(œL×)Ò)¬j¸×9JÑ9JÌH×.UÒ.UØ×&Ñ&‰
Ü	�Hœh×	'Ò	'Ø‰
à˜h˜Z z°(×2DÑ2D×2MÑ2MÐ1NÈaÐPˆÜ! &¯'©'°3·;±;Ô?Ø×&Ñ&Ð&Ø"Ÿ™×0Ñ0×4Ñ4´\ÓBÐØÒ Ø×&Ñ&Ð&Ø�?‰?×#Ñ#Ô$6×7Ò7à×&Ñ&Ð&Ø'×+Ñ+¨H°bÓ9×=Ñ=Ð>OÓP€OØ˜dÓ"Ü˜jŸo™o×2Ñ2°C·G±G¸S¿[¹[ÔIØ×"Ñ"Ð"rT   c                  ó€   € ] tR tRtRtR R ltR R ltRR R lltRR	 R
 lltR R lt	]
R R l4       tR R ltRtR# )ÚPydanticModelFieldi  z5Based on mypy.plugins.dataclasses.DataclassAttribute.c               ó@   € V ^8„  d   QhRRRRRRRRRRR	R
RRRRRRRR/
# )rL   r¬   rN   Úaliasz
str | NoneÚ	is_frozenrÃ   Úhas_dynamic_aliasÚhas_defaultÚstrictúbool | Noner­   ÚintÚcolumnr    úType | Noner�   r(   rP   )rQ   s   "rR   rS   ÚPydanticModelField.__annotate__   sn   € ÷ ñ àðð ðð ð	ð
  ðð ðð ðð ðð ðð ðð ñrT   c                	ó~   € Wn         W n        W0n        W@n        WPn        W`n        Wpn        W€n        W�n        W n	        R # r_   )
r¬   rï   rð   rñ   rò   ró   r­   rö   r    r�   )rf   r¬   rï   rð   rñ   rò   ró   r­   rö   r    r�   s   &&&&&&&&&&&rR   re   ÚPydanticModelField.__init__   s8   € ð Œ	ØŒ
Ø"ŒØ!2ÔØ&ÔØŒØŒ	ØŒØŒ	ØŽ	rT   c               ó<   € V ^8„  d   QhRRRRRRRRRRRR	R
RRRRR/	# )rL   Úcurrent_infor(   ÚtypedrÃ   Úmodel_strictÚforce_optionalÚ	use_aliasr•   r1   Úforce_typevars_invariantÚis_root_model_rootrO   r   rP   )rQ   s   "rR   rS   rø   8  sd   € ÷ 
ñ 
àð
ð ð
ð ð	
ð
 ð
ð ð
ð -ð
ð #'ð
ð !ð
ð 
ñ
rT   c	                ón  € V P                  WWW4      p	V P                  f   TMV P                  p
V'       g	   V
'       d   V P                  WRR7      pM\        \        P
                  4      p\        T	TRV'       d   \        R7      # V'       g   V P                  '       d   \        R7      # \        R7      # )zABased on mypy.plugins.dataclasses.DataclassAttribute.to_argument.NT)Úinclude_root_type)ÚvariableÚtype_annotationÚinitializerÚkind)Úto_varró   r   r8   r=   Úexplicitr   r   rò   r   r
   )rf   rü   rý   rþ   rÿ   r   r•   r  r  r  ró   r  s   &&&&&&&&&   rR   Úto_argumentÚPydanticModelField.to_argument8  sž   € ð —;‘;˜|°)ÓVˆà!%§¡Ò!4‘¸$¿+¹+ˆß—FØ"×.Ñ.¨|ÐTXÐ.ÓY‰Oä%¤i×&8Ñ&8Ó9ˆOäØØ+Øç!ô ô	
ð 	
÷ $2°T×5E×5EÐ5E”-ô
ð 	
ô LUô
ð 	
rT   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# )
rL   rü   r(   r•   r1   r  rÃ   r  rO   r÷   rP   )rQ   s   "rR   rS   rø   U  s<   € ÷ +ñ +àð+ð -ð+ð #'ð	+ð
  ð+ð 
ñ+rT   c                óò  € V'       dL   \        V P                  \        4      '       d,   V P                  P                  4       p\        Vn        WPn        V P                  Eem   V P                  P                  EeT   \        P                  ! VP                  P                  4      ;_uu_ 4        \        V4      p\        V\        4      '       g   Q hV'       d7   VP                   F&  p\        V\        4      '       g   K  \        Vn        K(  	  \        V P                  V P                  P                  P                   V/4      pV'       dv   \        V\        4      '       d`   \#        VP                  4      '       dE   VP                  R,          P                  p	V	f   VuuRRR4       # \%        W˜4      p
\'        WŠ.4      pVuuRRR4       # V P                  #   + '       g   i     T P                  # ; i)zABased on mypy.plugins.dataclasses.DataclassAttribute.expand_type.NÚroot)rn   r    r?   Úcopy_modifiedr   Úvariancer�   Ú	self_typer5   Ústrict_optional_setr[   Ústrict_optionalrB   r:   r©   r   ÚidÚis_root_modelr	   r@   )rf   rü   r•   r  r  Úmodified_typeÚfilled_with_typevarsÚargÚexpanded_typeÚ	root_typeÚexpanded_root_types   &&&&&      rR   r   ÚPydanticModelField.expand_typeU  sq  € ÷ $ô
 ˜$Ÿ)™)¤[×1Ò1Ø $§	¡	× 7Ñ 7Ó 9�Ü)2�Ô&Ø)”	à�9‰9Ó  T§Y¡Y×%8Ñ%8Ó%Dô
 ×*Ò*¨3¯;©;×+FÑ+F×GÕGÜ'4°\Ó'BÐ$ä!Ð"6¼×AÒAÐAÐAß+Ø3×8Ô8˜Ü% c¬;×7Ô7Ü+4˜CžLñ  9ô !,¨D¯I©I¸¿	¹	×8KÑ8K×8NÑ8NÐPdÐ7eÓ f�ß$¬°MÄ8×)LÒ)LÔQ^Ð_l×_qÑ_q×QrÒQrð !.× 2Ñ 2°6Õ :× ?Ñ ?�IØ Ò(à,÷! HÒGô" *AÀÓ)ZÐ&Ü$-¨}Ð.QÓ$R�MØ$÷' HÒGð( �y‰yÐ÷) HÖGð( �y‰yÐús   Â.+GÃ"GÄB GÆ,GÇG6	c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# )
rL   rü   r(   r•   r1   r   rÃ   r  rO   r)   rP   )rQ   s   "rR   rS   rø   ‚  sC   € ÷ Xñ XàðXð -ðXð ð	Xð
 #'ðXð 
ñXrT   c                ó–   € V'       d   V P                   e   V P                   pMV P                  p\        WPP                  WV4      4      # )z<Based on mypy.plugins.dataclasses.DataclassAttribute.to_var.)rï   r¬   r)   r   )rf   rü   r•   r   r  r¬   s   &&&&& rR   r	  ÚPydanticModelField.to_var‚  s;   € ÷ ˜Ÿ™Ò/Ø—:‘:‰Dà—9‘9ˆDä�4×)Ñ)¨,Ð=UÓVÓWÐWrT   c               ó   € V ^8„  d   QhRR/# ©rL   rO   r   rP   )rQ   s   "rR   rS   rø   ‘  s   € ÷ 
ñ 
˜8ñ 
rT   c                ó"  € V P                   '       g   Q hRV P                  RV P                  RV P                  RV P                  RV P
                  RV P                  RV P                  RV P                  R	V P                   P                  4       /	# )
ú?Based on mypy.plugins.dataclasses.DataclassAttribute.serialize.r¬   rï   rð   rñ   rò   ró   r­   rö   r    )
r    r¬   rï   rð   rñ   rò   ró   r­   rö   Ú	serialize©rf   s   &rR   r%  ÚPydanticModelField.serialize‘  sx   € à�y�yˆyÐˆyà�D—I‘IØ�T—Z‘ZØ˜Ÿ™Ø ×!7Ñ!7Ø˜4×+Ñ+Ø�d—k‘kØ�D—I‘IØ�d—k‘kØ�D—I‘I×'Ñ'Ó)ð

ð 
	
rT   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	rL   r�   r(   Údatar   r•   r1   rO   rí   rP   )rQ   s   "rR   rS   rø   ¡  s*   € ÷ 0ñ 0˜xð 0¨xð 0Ð>]ð 0Ðbtñ 0rT   c                óp   € VP                  4       p\        VP                  R4      V4      pV ! RRVRV/VB # )úABased on mypy.plugins.dataclasses.DataclassAttribute.deserialize.r    r�   rP   )Úcopyr2   Úpop)r“   r�   r)  r•   Útyps   &&&& rR   ÚdeserializeÚPydanticModelField.deserialize   s<   € ð �y‰y‹{ˆÜ(¨¯©°&Ó)9¸3Ó?ˆÙÑ/˜Ð/ $Ð/¨$Ñ/Ð/rT   c               ó$   € V ^8„  d   QhRRRRRR/# )rL   Úsub_typer(   r•   r1   rO   r\   rP   )rQ   s   "rR   rS   rø   §  s(   € ÷ Tñ T°Hð TÐCbð TÐgkñ TrT   c                ó  € V P                   ec   \        P                  ! VP                  P                  4      ;_uu_ 4        \        V P                   WP                  4      V n         RRR4       R# R#   + '       g   i     R# ; i)zhExpands type vars in the context of a subtype when an attribute is inherited
from a generic super type.
N)r    r5   r  r[   r  r7   r�   )rf   r2  r•   s   &&&rR   Úexpand_typevar_from_subtypeÚ.PydanticModelField.expand_typevar_from_subtype§  sW   € ð �9‰9Ò Ü×*Ò*¨3¯;©;×+FÑ+F×GÕGÜ3°D·I±I¸xÏÉÓS�”	÷ HÑGñ !ßG×GÐGús   Á&A3Á3B	)
rï   rö   rò   rñ   r�   rð   r­   r¬   ró   r    N)FF©F)r·   r¸   r¹   rº   r»   re   r  r   r	  r%  Úclassmethodr/  r4  r¼   rP   rT   rR   rí   rí     s@   † Ù?õõ0
÷:+÷ZXõ
ð ô0ó ð0÷Tñ TrT   rí   c                  óB   € ] tR tRtRtR t]R R l4       tR R ltRt	R	# )
ÚPydanticModelClassVari°  z…Based on mypy.plugins.dataclasses.DataclassAttribute.

ClassVars are ignored by subclasses.

Attributes:
    name: the ClassVar name
c                	ó   € Wn         R # r_   ©r¬   )rf   r¬   s   &&rR   re   ÚPydanticModelClassVar.__init__¹  s   € ØŽ	rT   c               ó    € V ^8„  d   QhRRRR/# )rL   r)  r   rO   r9  rP   )rQ   s   "rR   rS   Ú"PydanticModelClassVar.__annotate__½  s   € ÷ ñ ˜xð Ð,Añ rT   c                ó2   € VP                  4       pV ! R/ VB # )r+  rP   )r,  )r“   r)  s   &&rR   r/  Ú!PydanticModelClassVar.deserialize¼  s   € ð �y‰y‹{ˆÙ‰{�T‰{ÐrT   c               ó   € V ^8„  d   QhRR/# r"  rP   )rQ   s   "rR   rS   r>  Â  s   € ÷ 
ñ 
˜8ñ 
rT   c                ó   € RV P                   /# )r$  r¬   r;  r&  s   &rR   r%  ÚPydanticModelClassVar.serializeÂ  s   € ð �D—I‘Ið
ð 	
rT   r;  N)
r·   r¸   r¹   rº   r»   re   r7  r/  r%  r¼   rP   rT   rR   r9  r9  °  s*   † ñòð ôó ð÷

ñ 
rT   r9  c                  óX  € ] tR tRt$ Rt0 R/mtR]R&   R R ltR R ltR	 R
 lt	R R lt
R R ltR R ltR R ltR R ltR R ltR R ltR R ltR R ltR0R R llt]R R  l4       t]R! R" l4       t]R# R$ l4       t]R% R& l4       tR0R' R( lltR) R* lt]R+ R, l4       tR-tR.# )1r’   iÉ  z¬Transform the BaseModel subclass according to the plugin settings.

Attributes:
    tracked_config_fields: A set of field configs that the plugin has to track their value.
zset[str]Útracked_config_fieldsc          
     ó,   € V ^8„  d   QhRRRRRRRRR	R
/# )rL   r“   r   r”   zExpression | Statementr•   r1   ra   r`   rO   r\   rP   )rQ   s   "rR   rS   Ú%PydanticModelTransformer.__annotate__Û  s<   € ÷ +ñ +àð+ð 'ð+ð -ð	+ð
 ,ð+ð 
ñ+rT   c                	ó6   € Wn         W n        W0n        W@n        R # r_   )Ú_clsÚ_reasonÚ_apira   )rf   r“   r”   r•   ra   s   &&&&&rR   re   Ú!PydanticModelTransformer.__init__Û  s   € ð Œ	ØŒØŒ	à*ÖrT   c               ó   € V ^8„  d   QhRR/# )rL   rO   rÃ   rP   )rQ   s   "rR   rS   rG  è  s   € ÷ "ñ "˜4ñ "rT   c           	     ó¼  € V P                   P                  p\        V4      pV P                  4       pV P	                  W24      w  rEVe   Vf   R# V F  pVP
                  e   K   R# 	  VP                  \        4      pV P                  WCWr4       V P                  WCWr4       V P                  W@P                  VP                  RJ R7       V P                  4        RV Uu/ uF  qfP                  VP                  4       bK  	  upRV Uu/ uF  qˆP                  VP                  4       bK  	  upRVP!                  4       /VP"                  \$        &   R# u upi u upi )aV  Configures the BaseModel subclass according to the plugin settings.

In particular:

* determines the model config and fields,
* adds a fields-aware signature for the initializer and construct methods
* freezes the class if frozen = True
* stores the fields, config, and if the class is settings in the mypy metadata for access by subclasses
FT)ÚfrozenÚfieldsÚ
class_varsrÓ   )rI  r�   r  Úcollect_configÚcollect_fields_and_class_varsr    rp   ÚBASESETTINGS_FULLNAMEÚadd_initializerÚadd_model_construct_methodÚ
set_frozenrK  rO  Úadjust_decorator_signaturesr¬   r%  Úget_values_dictrå   ræ   )	rf   r�   Úis_a_root_modelrÓ   rP  rQ  ÚfieldÚis_settingsÚ	class_vars	   &        rR   r–   Ú"PydanticModelTransformer.transformè  s1  € ð �y‰y�~‰~ˆÜ'¨Ó-ˆØ×$Ñ$Ó&ˆØ!×?Ñ?ÀÓXÑˆØŠ>˜ZÒ/áÛˆEØ�z‰zÔ!Úñ ð —m‘mÔ$9Ó:ˆØ×Ñ˜V¨[ÔJØ×'Ñ'¨¸ÔUØ�‰˜§	¡	°&·-±-À4Ð2GˆÔHà×(Ñ(Ô*ð Á&ÓIÁ&¸—z‘z 5§?¡?Ó#4Ò4Á&ÑIØÑR\Ó]ÑR\ÀYŸ>™>¨9×+>Ñ+>Ó+@Ò@ÑR\Ñ]Ø�f×,Ñ,Ó.ð'
ˆ�‰”lÑ#ñ ùò JùÚ]s   Ã #EÄ
#E
c               ó   € V ^8„  d   QhRR/# )rL   rO   r\   rP   )rQ   s   "rR   rS   rG    s   € ÷ 2ñ 2¨Tñ 2rT   c                óð  a€ V P                   P                  P                  P                  4        EFA  p\	        VP
                  \        4      '       g   K&  VP
                  P                  ^ ,          o\	        S\        4      '       g   K[  \	        SP                  \        4      '       g   K}  SP                  P                  \        9   g   Kž  SP                  P                  \        8X  dj   \        ;QJ d2    V3R l\        SP                   4       4       F  '       g   K   RM'	  RM#! V3R l\        SP                   4       4       4      '       d   EK&  RVP
                  P"                  n        EKD  	  R# )a—  When we decorate a function `f` with `pydantic.validator(...)`, `pydantic.field_validator`
or `pydantic.serializer(...)`, mypy sees `f` as a regular method taking a `self` instance,
even though pydantic internally wraps `f` with `classmethod` if necessary.

Teach mypy this by marking any function whose outermost decorator is a `validator()`,
`field_validator()` or `serializer()` call as a `classmethod`.
c              3  ó²   <"  € T FL  w  rSP                   V,          R 8H  ;'       d(    \        V\        4      ;'       d    VP                  R8H  x € KN  	  R# 5i)ÚmodeÚafterN)r¨   rn   r$   Úvalue)Ú.0Úir  Ú	first_decs   &  €rR   Ú	<genexpr>ÚGPydanticModelTransformer.adjust_decorator_signatures.<locals>.<genexpr>  sR   øé € ð  á*C¡ ð &×/Ñ/°Õ2°fÑ<×rÐrÄÈCÔQXÓAY×rÐrÐ^a×^gÑ^gÐkrÑ^rÔrÛ*Cùs   ƒ#A§A¿ATFN)rI  r�   ÚnamesÚvaluesrn   ro   r   Úoriginal_decoratorsr   Úcalleer   rk   Ú(IMPLICIT_CLASSMETHOD_DECORATOR_FULLNAMESÚMODEL_VALIDATOR_FULLNAMEÚanyÚ	enumerater©   ÚfuncÚis_class)rf   rs   rg  s   & @rR   rX  Ú4PydanticModelTransformer.adjust_decorator_signatures  sê   ø€ ð —9‘9—>‘>×'Ñ'×.Ñ.×0ˆCÜ˜#Ÿ(™(¤I×.Ô.ØŸH™H×8Ñ8¸Õ;�	ä˜y¬(×3Ô3Ü" 9×#3Ñ#3´X×>Ô>Ø!×(Ñ(×1Ñ1Ô5]Ö]ð "×(Ñ(×1Ñ1Ô5MÔMß›Cô  ä*3°I·N±NÔ*Có ŸCŸCšCô  ä*3°I·N±NÔ*Có ÷ õ ð .2�C—H‘H—M‘M×*ó# 1rT   c               ó   € V ^8„  d   QhRR/# )rL   rO   ÚModelConfigDatarP   )rQ   s   "rR   rS   rG  '  s   € ÷ Jñ J ñ JrT   c           
     óD  € V P                   p\        4       pRpRpVP                  P                  4        F3  w  rVV P	                  WV4      pV'       g   K   RpVP                  V4       K5  	  RpVP                  P                   EFf  p\        V\        \        34      '       g   K"  \        V\        4      '       EdG   VP                  ^ ,          p	\        V	\        4      '       d   V	P                  R8w  d   Ku  \        VP                  \        4      '       dh   \!        VP                  P"                  VP                  P$                  4       F-  w  r«V
f   K  VP                  V P	                  W«RR7      4       K/  	  EMB\        VP                  \&        4      '       dc   VP                  P                   FH  w  rÍ\        V\(        4      '       g   K  VP                  V P	                  VP*                  V4      4       KJ  	  M¿\        V\        4      '       dª   VP                  R8w  d   EK©  VP                  P                   F{  p\        V\        4      '       g   K  VP                  ^ ,          p	\        V	\        4      '       g   KF  VP                  V P	                  V	P                  VP                  4      4       K}  	  V'       d   V P,                  P/                  RV4        MRpEKi  	  V'       g	   V'       dq   V'       di   VP0                  '       dW   VP2                  '       gE   VP4                  '       g3   V P6                  P8                  '       d   \;        V P,                  V4       VP<                  P>                  R,           F�  p\@        VPB                  9  d   K  V P,                  PE                  \G        VPH                  4      4       VPB                  \@        ,          R	,          P                  4        F  w  ppVPK                  VV4       K  	  K’  	  V# )
zhCollects the values of the config attributes that are used by the plugin, accounting for parent classes.FTNÚmodel_config)Ú	lax_extraÚConfigzYSpecifying config in two places is ambiguous, use either Config attribute or class kwargs:é   NNrÓ   )&rI  rv  ÚkeywordsÚitemsÚget_config_updateÚupdateÚdefsÚbodyrn   r   r   Úlvaluesr   r¬   Úrvaluer   r¦   r¨   r©   r   r$   rd  rK  ÚfailÚhas_alias_generatorÚvalidate_by_nameÚpopulate_by_namera   rÂ   Úerror_required_dynamic_aliasesr�   Úmroræ   rå   Úadd_plugin_dependencyr4   rk   Ú
setdefault)rf   r“   rÓ   Úhas_config_kwargsÚhas_config_from_namespacer¬   ÚexprÚconfig_dataÚstmtÚlhsr±   r  Úkey_exprÚ
value_exprÚsubstmtr�   rd  s   &                rR   rR  Ú'PydanticModelTransformer.collect_config'  sõ  € à�i‰iˆÜ Ó"ˆà!ÐØ$)Ð!ð Ÿ,™,×,Ñ,Ö.‰JˆDØ×0Ñ0°Ó<ˆKß‰{Ø$(Ð!Ø—‘˜kÖ*ñ	 /ð "&ˆØ—H‘H—M•MˆDÜ˜d¤^´XÐ$>×?Ò?Ùä˜$¤×/Ó/Ø—l‘l 1•o�Ü! #¤x×0Ò0°C·H±HÀÔ4NÙä˜dŸk™k¬8×4Ò4Ü),¨T¯[©[×-BÑ-BÀDÇKÁK×DTÑDTÖ)U™˜Ø#Ò+Ù$ØŸ™ d×&<Ñ&<¸XÐVZÐ&<Ó&[Ö\ó *Vô   §¡¬X×6Ò6Ø04·±×0AÔ0AÑ,˜Ü)¨(´G×<Ò<Ù$ØŸ™ d×&<Ñ&<¸X¿^¹^ÈZÓ&XÖYñ 1Bøô
 ˜D¤(×+Ò+Ø—9‘9 Ô(ÚØ#Ÿy™yŸ~œ~�GÜ% g¬~×>Ò>Ù Ø!Ÿ/™/¨!Õ,�CÜ% c¬8×4Ò4Ù Ø—M‘M $×"8Ñ"8¸¿¹À7Ç>Á>Ó"RÖSñ  .÷ !Ø—	‘	—‘ØoØôñ à(,Ó%ñM "÷P × 9çØ×.×.Ð.Ø×0×0Ð0°F×4K×4KÐ4KØ×&Ñ&×D×DÐDä.¨t¯y©y¸$Ô?à—H‘H—L‘L ×$Ð$ˆDÜ 4§=¡=Ô0Ùð �I‰I×+Ñ+Ô,AÀ$Ç-Á-Ó,PÔQØ#Ÿ}™}¬\Õ:¸8ÕD×JÑJÖL‘��eØ×!Ñ! $¨Ö.ó  Mñ %ð ˆrT   c               ó$   € V ^8„  d   QhRRRRRR/# )rL   rx  rv  r  rÃ   rO   zJtuple[list[PydanticModelField] | None, list[PydanticModelClassVar] | None]rP   )rQ   s   "rR   rS   rG  s  s.   € ÷ BLñ BLØ+ðBLØ<@ðBLà	SñBLrT   c                óv  € V P                   p/ p/ p\        VP                  P                  ^R 4       EF¥  p\        VP
                  9  d   K  V P                  P                  \        VP                  4      4       VP
                  \        ,          R,          P                  4        Fà  w  rx\        P                  WhV P                  4      p	V	P                  VP                  V P                  4       W”V&   VP                  P                  P                  V4      p
V
'       g   K~  V
P                   '       g   K’  \#        V
P                   \$        \&        34      '       d   Kº  V P                  P)                  RV
P                   4       Kâ  	  VP
                  \        ,          R,          P                  4        F  w  rx\*        P                  V4      WW&   K  	  EK¨  	  \-        4       p\-        4       pV P/                  VP0                  4       Fù  pV P3                  WÑV4      pVf   K  VP4                  ^ ,          p\#        V\6        4      '       g   Q h\#        V\        4      '       d]   V'       d*   VP8                  R8w  d   \;        V P                  V4       K�  VP=                  VP8                  4       WäVP8                  &   K¸  \#        V\*        4      '       g   KÐ  VP=                  VP8                  4       WåVP8                  &   Kû  	  \?        VPA                  4       4      \?        VPA                  4       4      3# )zACollects the fields for the model, accounting for parent classes.rP  z7BaseModel field may only be overridden by another fieldrQ  r  éÿÿÿÿ)!rI  Úreversedr�   r‰  ræ   rå   rK  rŠ  r4   rk   r}  rí   r/  r4  rj  rË   ro   rn   r)   r!   r„  r9  ÚsetÚ%_get_assignment_statements_from_blockr€  Ú$collect_field_or_class_var_from_stmtr‚  r   r¬   Ú error_extra_fields_on_root_modelÚaddÚlistrk  )rf   rx  r  r“   Úfound_fieldsÚfound_class_varsr�   r¬   r)  r[  Úsym_nodeÚcurrent_field_namesÚcurrent_class_vars_namesr�  Úmaybe_fieldr‘  s   &&&             rR   rS  Ú6PydanticModelTransformer.collect_fields_and_class_varss  sY  € ð �i‰iˆð 79ˆØ=?ÐÜ˜SŸX™XŸ\™\¨!¨BÐ/×0ˆDô  4§=¡=Ô0Ùð �I‰I×+Ñ+Ô,AÀ$Ç-Á-Ó,PÔQà"Ÿm™m¬LÕ9¸(ÕC×IÑIÖK‘
�Ü*×6Ñ6°tÀ4Ç9Á9ÓM�ð
 ×1Ñ1°#·(±(¸D¿I¹IÔFØ%*˜TÑ"àŸ8™8Ÿ>™>×-Ñ-¨dÓ3�ß‘8 §§¢´jÀÇÁÔQTÔVeÐPf×6gÔ6gØ—I‘I—N‘NØQØ Ÿ™öñ Lð  #Ÿm™m¬LÕ9¸,ÕG×MÑMÖO‘
�Ü)>×)JÑ)JÈ4Ó)PÐ Ó&ô Pñ5 1ô< ),«ÐÜ-0«UÐ Ø×>Ñ>¸s¿x¹xÖHˆDØ×CÑCÀDÐXhÓiˆKØÒ"Ùà—,‘,˜q•/ˆCÜ˜c¤8×,Ò,Ð,Ð,Ü˜+Ô'9×:Ò:ß  S§X¡X°Ô%7Ü4°T·Y±YÀÖEà'×+Ñ+¨C¯H©HÔ5Ø-8 §¡Ó*Ü˜KÔ)>×?Ô?Ø(×,Ñ,¨S¯X©XÔ6Ø-8 §¡Ó*ñ Iô" �L×'Ñ'Ó)Ó*¬DÐ1A×1HÑ1HÓ1JÓ,KÐKÐKrT   c               ó    € V ^8„  d   QhRRRR/# )rL   r�  r   rO   úIterator[AssignmentStmt]rP   )rQ   s   "rR   rS   rG  ·  s   € ÷ Rñ RÀð RÐLdñ RrT   c              #  	ó8  "  € VP                    F0  pVP                  '       d   K  V P                  V4       R j  x€L
  K2  	  VP                  eD   VP                  P                  '       g&   V P                  VP                  4       R j  x€L
  R # R # R #  L[ L5ir_   )r�  Úis_unreachabler›  Ú	else_body)rf   r�  r�  s   && rR   Ú,_get_assignment_statements_from_if_statementÚEPydanticModelTransformer._get_assignment_statements_from_if_statement·  sx   é € Ø—I”IˆDØ×&×&Ò&Ø×EÑEÀdÓK×KÒKñ ð �>‰>Ò%¨d¯n©n×.K×.KÐ.KØ×AÑAÀ$Ç.Á.ÓQ×QÒQñ /LÑ%ñ LáQùs,   ‚B¦BºB»1BÁ-BÂBÂBÂBc               ó    € V ^8„  d   QhRRRR/# )rL   Úblockr   rO   r¨  rP   )rQ   s   "rR   rS   rG  ¾  s   € ÷ Sñ S¸5ð SÐE]ñ SrT   c              #  	óÒ   "  € VP                    FP  p\        V\        4      '       d   Vx € K  \        V\        4      '       g   K7  V P	                  V4       R j  x€L
  KR  	  R #  L
5ir_   )r�  rn   r   r   r¬  )rf   r¯  r�  s   && rR   r›  Ú>PydanticModelTransformer._get_assignment_statements_from_block¾  sL   é € Ø—J”JˆDÜ˜$¤×/Ò/Ø”
Ü˜D¤&×)Ô)Ø×LÑLÈTÓR×RÒRó	 ñ Sùs   ‚?A'ÁA'ÁA%ÁA'c               ó(   € V ^8„  d   QhRRRRRRRR/# )	rL   r�  r   rx  rv  rQ  z dict[str, PydanticModelClassVar]rO   z1PydanticModelField | PydanticModelClassVar | NonerP   )rQ   s   "rR   rS   rG  Å  s2   € ÷ G
ñ G
Ø"ðG
Ø2AðG
ØOoðG
à	:ñG
rT   c                ó~	  € V P                   pVP                  ^ ,          p\        V\        4      '       d8   \        P
                  ! VP                  4      '       d   VP                  R8X  d   R# VP                  '       gß   \        VP                  \        4      '       d”   \        VP                  P                  \        4      '       dj   \        VP                  P                  P                  \        4      '       d6   VP                  P                  P                  P                  \        9   d   R# VP                  V9   d   R# \        V P                  V4       R# VP                  ^ ,          p\        V\        4      '       g   R# \        P
                  ! VP                  4      '       d   VP                  R8X  d   R# VP                  P                   P#                  VP                  4      pVf   R# VP$                  p\        V\&        4      '       d   R# \        V\(        4      '       d   V P                  P+                  RV4       R# \        V\,        4      '       g   R# VP.                  '       d   \1        VP                  4      # \3        VP4                  4      p\        V\6        4      '       d8   VP4                  P                  R8X  d   V P                  P+                  RV4       V P9                  V4      p	V P;                  V4      p
VP4                  f•   VP<                  '       dƒ   VP>                  '       dq   V P                  PA                  VP                  RR7      pV'       d   W·n        M:V P                  P+                  RV4       \C        \D        PF                  4      Vn        VP<                  '       d   V	'       d   \1        VP                  4      # V PI                  V4      w  rÍV'       dW   VPJ                  '       gE   VPL                  '       g3   V PN                  PP                  '       d   \S        V P                  V4       V PU                  V4      pV PW                  WeP                  V4      p\Y        VP                  VV	V
VVVPZ                  VP\                  VVP                  R	7
      # )
a&  Get pydantic model field from statement.

Args:
    stmt: The statement.
    model_config: Configuration settings for the model.
    class_vars: ClassVars already known to be defined on the model.

Returns:
    A pydantic model field if it could find the field in statement. Otherwise, `None`.
rx  NzFType aliases inside BaseModel definitions are not supported at runtimezdataclasses.InitVarz%InitVar is not supported in BaseModelT)Úis_finalzGNeed type argument for Final[...] with non-literal default in BaseModel)
r¬   rñ   rò   ró   rï   rð   r­   rö   r    r�   )/rI  r‚  rn   r   rE   Úis_valid_field_namer¬   Ú
new_syntaxrƒ  r   rm  rk   ÚDECORATOR_FULLNAMESÚerror_untyped_fieldsrK  r�   rj  rË   ro   r!   r'   r„  r)   Úis_classvarr9  rA   r    r:   Úget_has_defaultÚ
get_strictr´  Úis_inferredÚanalyze_simple_literal_typer8   r=   Ú
from_errorÚget_alias_infor†  r‡  ra   rÂ   rˆ  Úis_field_frozenÚ_infer_dataclass_attr_init_typerí   r­   rö   )rf   r�  rx  rQ  r“   r‘  rs   ro   Ú	node_typerò   ró   r.  rï   rñ   rð   Ú	init_types   &&&&            rR   rœ  Ú=PydanticModelTransformer.collect_field_or_class_var_from_stmtÅ  sT  € ð �i‰iˆà�l‰l˜1�oˆÜ˜#œx×(Ò(´×0KÒ0KÈCÏHÉH×0UÒ0UÐY\×YaÑYaÐesÔYsÙà��ˆä˜4Ÿ;™;¬×1Ò1Ü˜tŸ{™{×1Ñ1´8×<Ò<Ü˜tŸ{™{×1Ñ1×8Ñ8¼(×CÒCØ—K‘K×&Ñ&×-Ñ-×6Ñ6Ô:MÔMñ
 à�x‰x˜:Ô%áô ! §¡¨DÔ1Ùà�l‰l˜1�oˆÜ˜#œx×(Ò(Ùä×*Ò*¨3¯8©8×4Ò4¸¿¹ÀNÔ8RÙà�h‰h�n‰n× Ñ  §¡Ó*ˆØŠ;ñ à�x‰xˆÜ�dœO×,Ò,ñ
 ä�dœI×&Ò&Ø�I‰I�N‰NØXØôñ ä˜$¤×$Ò$ñ
 ð ××ÐÜ(¨¯©Ó2Ð2ô $ D§I¡IÓ.ˆ	Ü�i¤×*Ò*¨y¯~©~×/FÑ/FÐJ_Ô/_Ø�I‰I�N‰NØ7Øôð
 ×*Ñ*¨4Ó0ˆØ—‘ Ó&ˆà�8‰8Ò §§ °$×2B×2BÐ2Bð —)‘)×7Ñ7¸¿¹ÈdÐ7ÓSˆCßØ•	à—	‘	—‘Ø]Øôô $¤I×$8Ñ$8Ó9�”	à�=�=ˆ=Ÿ[ä(¨¯©Ó2Ð2à#'×#6Ñ#6°tÓ#<Ñ ˆçØ!×2×2Ð2°l×6S×6SÐ6SØ×"Ñ"×@×@Ð@ä*¨4¯9©9°dÔ;Ø×(Ñ(¨Ó.ˆ	à×8Ñ8¸¿h¹hÈÓMˆ	Ü!Ø—‘Ø/Ø#ØØØØ—‘Ø—;‘;ØØ—‘ô
ð 	
rT   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	rL   rs   r%   r¬   rN   rã   r   rO   r÷   rP   )rQ   s   "rR   rS   rG  N  s*   € ÷ $ñ $°?ð $È#ð $ÐX_ð $Ðdoñ $rT   c                óœ  € VP                   pVP                  '       d   V# \        VP                   4      p\        V\        4      '       g   V# VP                   P                  R4      pV'       Ed[   \        VP                  \        4      '       Ed   VP                   P                  R4      pV'       g   Q hVP                   '       d,   \        \        VP                   VP                   V4      4      pM\        \        P                  4      # \        V\        4      '       d>   VP                  \        \        \        .8X  d   \!        VP"                  ^,          V4      # V P$                  P'                  RVP                   P(                   R2V4        V# V P$                  P'                  RVP                   P(                   R2V4       V# )zfInfer __init__ argument type for an attribute.

In particular, possibly use the signature of __set__.
Ú__set__z(Unsupported signature for "__set__" in "Ú"zUnsupported "__set__" in ")r    ÚimplicitrA   rn   r:   rË   ro   r   Úget_containing_type_infor7   r8   r=   Úunannotatedr9   Ú	arg_kindsr   r	   Ú	arg_typesrK  r„  r¬   )	rf   rs   r¬   rã   ÚdefaultÚtÚsetterÚ
super_infoÚsetter_types	   &&&&     rR   rÁ  Ú8PydanticModelTransformer._infer_dataclass_attr_init_typeN  sV  € ð
 —(‘(ˆØ�<�<ˆ<ØˆNÜ˜CŸH™HÓ%ˆô ˜!œX×&Ò&ØˆNØ—‘—‘˜IÓ&ˆßˆ6Ü˜&Ÿ+™+¤w×/Ó/ØŸV™V×<Ñ<¸YÓG�
ß!Ð!�zØ—;—;�;Ü"1Ô2IÈ&Ï+É+ÐWX×W]ÑW]Ð_iÓ2jÓ"k‘Kä"¤9×#8Ñ#8Ó9Ð9Ü˜k¬<×8Ò8¸[×=RÑ=RÜÜÜðWô >ô
 3°;×3HÑ3HÈÕ3KÈQÓOÐOà—I‘I—N‘NÐ%MÈaÏfÉfÏkÉkÈ]ÐZ[Ð#\Ð^eÕfð ˆð —	‘	—‘Ð!;¸A¿F¹F¿K¹K¸=ÈÐJÈGÔTàˆrT   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# ©
rL   rP  úlist[PydanticModelField]rÓ   rv  r\  rÃ   r  rO   r\   rP   )rQ   s   "rR   rS   rG  t  s;   € ÷ 7Xñ 7XØ.ð7XØ8Gð7XØVZð7XØkoð7Xà	ñ7XrT   c                ót  € RV P                   P                  P                  9   d:   V P                   P                  P                  R,          P                  '       g   R# V P                  P
                  p\        VP                  4      pVP                  ;'       g    VP                  '       * ;'       d    VP                  RJp\        VP                  ;'       d    VP                  '       * 4      pV P                  VVVVVVVRR7      p	V'       Edž   V P                  P                  \        4      P                   p
\#        V
\$        4      '       g   Q hRV
P                  9   EdK   V
P                  R,          P                   p\#        V\&        4      '       g   Q hVEe   VP(                  Ee   VP(                  p\#        V\*        4      '       g   Q h\-        VP.                  4       FÄ  w  rÞVe/   VP1                  R4      '       g   VP1                  R4      '       g   K9  V P                  P3                  VP4                  V,          4      pVe0   VR
9   d)   VP7                  \9        \:        P<                  4      4      p\?        Wï4      pV	PA                  \C        VVR\D        4      4       KÆ  	  V PG                  W4      '       gD   \?        R4      pV	PA                  \C        V\I        \:        PJ                  4      R\L        4      4       \O        V P                  V P                   RV	\Q        4       R	7       R# )z—Adds a fields-aware `__init__` method to the class.

The added `__init__` will be annotated with types vs. all `Any` depending on the plugin settings.
re   NFT)rý   rþ   Úrequires_dynamic_aliasesr   r\  r  r  Ú__Ú_Úkwargs)r©   Úreturn_type)Ú_cli_settings_sourceÚ_build_sources))rI  r�   rj  Úplugin_generatedra   rÁ   rÃ   ró   r†  r‡  Úvalidate_by_aliasr…  Úget_field_argumentsrK  rm   rT  ro   rn   r(   r   r    r9   rq  r¨   Ú
startswithÚ	anal_typerÍ  ÚacceptÚChangeExplicitTypeOfAnyr=   Úfrom_omitted_genericsr)   Úappendr   r   Úshould_init_forbid_extrar8   r
  r   Ú
add_methodr;   )rf   rP  rÓ   r\  r  rý   rþ   r   rØ  r©   Úbase_settings_nodeÚbase_settings_init_nodeÚ	func_typeÚarg_idxr±   Úanalyzed_variable_typer  Úvars   &&&&&             rR   rU  Ú(PydanticModelTransformer.add_initializert  s“  € ð ˜Ÿ™Ÿ™×-Ñ-Ô-°d·i±i·n±n×6JÑ6JÈ:Õ6V×6g×6gÐ6gÙà×"Ñ"×-Ñ-ˆÜ˜FŸM™MÓ*ˆØ×0Ñ0×KÐK°F×4KÑ4KÔL×vÐvÐQW×QiÑQiÐqvÐQvˆ	Ü#'¨×(BÑ(B×(bÐ(bÈ6×KbÑKbÔGbÓ#cÐ Ø×'Ñ'ØØØ%Ø%=ØØ#Ø'Ø%)ð (ó 	
ˆ÷ ˆ;Ø!%§¡×!AÑ!AÔBWÓ!X×!]Ñ!]ÐÜÐ0´(×;Ò;Ð;Ð;ØÐ/×5Ñ5Õ5Ø*<×*BÑ*BÀ:Õ*N×*SÑ*SÐ'Ü!Ð"9¼7×CÒCÐCÐCØ*Ó6Ð;R×;WÑ;WÓ;cØ 7× <Ñ <�IÜ% i´×>Ò>Ð>Ð>Ü-6°y×7JÑ7JÖ-KÑ)˜Ø#Ò+¨x×/BÑ/BÀ4×/HÒ/HÐPX×PcÑPcÐdg×PhÒPhÙ$Ø15·±×1DÑ1DÀY×EXÑEXÐY`ÕEaÓ1bÐ.Ø1Ò=À(ð Oô Cð 6L×5RÑ5RÜ 7¼	×8WÑ8WÓ Xó6Ð2ô $' xÓ#H˜ØŸ™¤H¨XÐ7MÈtÔU\Ó$]Ö^ñ .Lð" ×,Ñ,¨V×<Ò<Ü�h“-ˆCØ�K‰Kœ ¤g¬i×.@Ñ.@Ó&AÀ4ÌÓSÔTä�4—9‘9˜dŸi™i¨¸$ÌHËJ×WrT   c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# rÕ  rP   )rQ   s   "rR   rS   rG  ­  s<   € ÷ &
ñ &
à(ð&
ð  ð&
ð ð	&
ð
 ð&
ð 
ñ&
rT   c                óf  € V P                   P                  \         R2V P                   P                  \         R24      .4      p\        V\	        4       .4      p\        \        RV4      VR\        4      p\        P                  ! V P                   P                  P                  4      ;_uu_ 4        V P                  VR\        VP                  4      RRVVR7      pRRR4       V P                  W4      '       gD   \        R4      p	XP!                  \        V	\#        \$        P&                  4      R\(        4      4       V'       d   XV.,           M	V.X,           p\+        V P                   V P,                  R	V\/        V P,                  P0                  4      RR
7       R#   + '       g   i     LÊ; i)zÌAdds a fully typed `model_construct` classmethod to the class.

Similar to the fields-aware __init__ method, but always uses the field names (not aliases),
and does not treat settings fields as optional.
z.setz.strÚ_fields_setNTF)rý   rþ   rØ  r   r\  r  rÛ  Úmodel_construct)r©   rÜ  Úis_classmethod)rK  Ú
named_typeÚBUILTINS_NAMEr@   r;   r   r)   r   r5   r  r[   r  rá  rÃ   ró   rè  rç  r8   r=   r
  r   ré  rI  rB   r�   )
rf   rP  rÓ   r\  r  Úset_strÚoptional_set_strÚfields_set_argumentr©   rï  s
   &&&&&     rR   rV  Ú3PydanticModelTransformer.add_model_construct_method­  sX  € ð —)‘)×&Ñ&¬-¨¸Ð'=ÀÇ	Á	×@TÑ@TÔXeÐWfÐfjÐUkÓ@lÐ?mÓnˆÜ$ g¬x«zÐ%:Ó;ÐÜ&¤s¨=Ð:JÓ'KÐM]Ð_cÔelÓmÐÜ×&Ò& t§y¡y×'8Ñ'8×'HÑ'H×IÕIØ×+Ñ+ØØÜ! &§-¡-Ó0Ø).ØØ'Ø+ð ,ó ˆD÷ Jð ×,Ñ,¨V×<Ò<Ü�h“-ˆCØ�K‰Kœ ¤g¬i×.@Ñ.@Ó&AÀ4ÌÓSÔTç/<ˆtÐ*Ð+Ö+ÐCVÐBWÐZ^ÕB^ˆäØ�I‰IØ�I‰IØØÜ% d§i¡i§n¡nÓ5Ø÷	
÷! J×Iús   Â2,F Æ F0	c               ó(   € V ^8„  d   QhRRRRRRRR/# )	rL   rP  rÖ  r•   r1   rO  rÃ   rO   r\   rP   )rQ   s   "rR   rS   rG  Õ  s2   € ÷ Bñ BÐ!9ð BÐ@_ð BÐimð BÐrvñ BrT   c                óš  € V P                   P                  pV EF-  pVP                  P                  VP                  4      pVe’   VP
                  p\        V\        4      '       d   T;'       g    VP                  Vn	        Kl  \        V\        4      '       d;   V P                  P                  '       g   V P                  P                  4        Kº  K¼  K¾  VP                  WBRR7      pWGn        W7n	        VP                  R,           VP                  ,           Vn        \#        \$        V4      VP                  VP                  &   EK0  	  R# )z—Marks all fields as properties so that attempts to set them trigger mypy errors.

This is the same approach used by the attrs and dataclasses plugins.
NF)r   Ú.)rI  r�   rj  rË   r¬   ro   rn   r)   rð   Úis_propertyr!   rK  Úfinal_iterationÚdeferr	  rk   Ú	_fullnamer%   r   )rf   rP  r•   rO  r�   r[  r¢  rï  s   &&&&    rR   rW  Ú#PydanticModelTransformer.set_frozenÕ  sã   € ð
 �y‰y�~‰~ˆÜˆEØ—z‘z—~‘~ e§j¡jÓ1ˆHØÒ#Ø—m‘m�Ü˜c¤3×'Ò'Ø&,×&?Ð&?°·±�C–OÜ ¤_×5Ò5¸d¿i¹i×>W×>WÐ>Wà—I‘I—O‘OÖ%ñ ?XÑ5ð —l‘l 4¸�lÓ>�Ø”Ø"(”Ø $§¡°Õ 3°c·h±hÕ >�”Ü'6´t¸SÓ'A�—
‘
˜3Ÿ8™8Ô$ó# rT   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	rL   r¬   rN   r  r   ry  rÃ   rO   úModelConfigData | NonerP   )rQ   s   "rR   rS   rG  î  s)   € ÷ !ñ ! cð !°
ð !Àtð !ÐXnñ !rT   c                óP  € WP                   9  d   R# VR8X  dy   \        V\        4      '       d   VP                  R8H  pMF\        V\        4      '       d   VP
                  R8H  pM V'       g   \        WP                  V4       R# \        VR7      # VR8X  d8   Rp\        V\        4      '       d   VP                  R8X  d   Rp\        VR	7      # \        V\        4      '       d+   VP                  R9   d   \        R/ WP                  R
8H  /B # \        WP                  V4       R# )zÀDetermines the config update due to a single kwarg in the ConfigDict definition.

Warns if a tracked config attribute is set to a value the plugin doesn't know how to interpret (e.g., an int)
NÚextraÚforbid)Úforbid_extraÚalias_generatorTúbuiltins.NoneF)r…  úbuiltins.True)r  úbuiltins.FalserP   )rE  rn   r$   rd  r   r¬   Úerror_invalid_config_valuerK  rv  r   rk   )rf   r¬   r  ry  r	  r…  s   &&&&  rR   r~  Ú*PydanticModelTransformer.get_config_updateî  sî   € ð
 ×1Ñ1Ô1ÙØ�7Œ?Ü˜#œw×'Ò'Ø"Ÿy™y¨HÑ4‘Ü˜C¤×,Ò,Ø"Ÿx™x¨8Ñ3‘ç ô /¨t·Y±YÀÔDÙÜ"°Ô=Ð=ØÐ$Ô$Ø"&ÐÜ˜#œx×(Ò(¨S¯\©\¸_Ô-LØ&+Ð#Ü"Ð7JÔKÐKÜ�cœ8×$Ò$¨¯©Ð9\Ô)\Ü"ÑM d¯L©L¸OÑ,KÐ%LÑMÐMÜ" 4¯©°CÔ8ÙrT   c               ó    € V ^8„  d   QhRRRR/# ©rL   r�  r   rO   rÃ   rP   )rQ   s   "rR   rS   rG    s   € ÷ 2ñ 2˜nð 2°ñ 2rT   c                ó  € V P                   p\        V\        4      '       d   R# \        V\        4      '       d¿   \        VP                  \
        4      '       dŸ   VP                  P                  \        8X  d€   \        VP                  VP                  4       FY  w  r#Ve   VR8X  d   VP                  \        Ju # VR8X  g   K-  \        V\        4      ;'       d    VP                  R8H  '       * u # 	  R# \        V\        4      '       * # )zUReturns a boolean indicating whether the field defined in `stmt` is a required field.FrÎ  Údefault_factoryr  )rƒ  rn   r&   r   rm  r"   rk   ÚFIELD_FULLNAMEr¦   r©   r¨   rg   r   r   ©r�  rŽ  r  r¬   s   &   rR   rº  Ú(PydanticModelTransformer.get_has_default  sÃ   € ð �{‰{ˆÜ�dœH×%Ò%áÜ�dœH×%Ò%¬*°T·[±[Ä'×*JÒ*JÈtÏ{É{×OcÑOcÔguÔOuô
 ! §¡¨D¯N©NÖ;‘	�à’< 4¨9Ô#4ØŸ=™=´Ð<Ò<ØÐ,Ö,Ü *¨3´Ó 9× ]Ð ]¸c¿l¹lÈoÑ>]Ô^Ò^ñ <ñ ä˜d¤LÓ1Ô1Ð1rT   c               ó    € V ^8„  d   QhRRRR/# )rL   r�  r   rO   rô   rP   )rQ   s   "rR   rS   rG  (  s   € ÷ ñ ˜ð ¨Kñ rT   c                óª  € V P                   p\        V\        4      '       d±   \        VP                  \        4      '       d‘   VP                  P
                  \        8X  dr   \        VP                  VP                  4       FM  w  r#VR8w  d   K  \        V\        4      '       d)   VP
                  R8X  d    R# VP
                  R8X  d    R#  R# 	  R# )zEReturns a the `strict` value of a field if defined, otherwise `None`.ró   r  Tr  FN)rƒ  rn   r   rm  r"   rk   r  r¦   r©   r¨   r   r  s   &   rR   r»  Ú#PydanticModelTransformer.get_strict'  s–   € ð �{‰{ˆÜ�dœH×%Ò%¬*°T·[±[Ä'×*JÒ*JÈtÏ{É{×OcÑOcÔguÔOuÜ  §¡¨D¯N©NÖ;‘	�Ø˜8Ô#ÙÜ˜c¤8×,Ò,Ø—|‘| Ô6Ú#ØŸ™Ð)9Ô9Ú$Úñ <ñ rT   c               ó    € V ^8„  d   QhRRRR/# )rL   r�  r   rO   ztuple[str | None, bool]rP   )rQ   s   "rR   rS   rG  8  s   € ÷ ñ ˜^ð Ð0Gñ rT   c                ó@  € V P                   p\        V\        4      '       d   R# \        V\        4      '       d@   \        VP                  \
        4      '       d    VP                  P                  \        8X  g   R# RVP                  9   d.   VP                  VP                  P                  R4      ,          pM@RVP                  9   d.   VP                  VP                  P                  R4      ,          pMR# \        V\        4      '       d   VP                  R3# R# )zÿReturns a pair (alias, has_dynamic_alias), extracted from the declaration of the field defined in `stmt`.

`has_dynamic_alias` is True if and only if an alias is provided, but not as a string literal.
If `has_dynamic_alias` is True, `alias` will be None.
FÚvalidation_aliasrï   )NF)NT)rƒ  rn   r&   r   rm  r"   rk   r  r¨   r©   Úindexr$   rd  )r�  rŽ  r  s   &  rR   r¿  Ú'PydanticModelTransformer.get_alias_info7  s×   € ð �{‰{ˆÜ�dœH×%Ò%àÐô �tœX×&Ò&¬:°d·k±kÄ7×+KÒ+KÐPT×P[ÑP[×PdÑPdÔhvÔPvð Ðà §¡Ô/Ø—)‘)˜DŸN™N×0Ñ0Ð1CÓDÕE‰CØ˜Ÿ™Ô&Ø—)‘)˜DŸN™N×0Ñ0°Ó9Õ:‰CàÐä�cœ7×#Ò#Ø—9‘9˜eÐ#Ð#àÐrT   c               ó    € V ^8„  d   QhRRRR/# r  rP   )rQ   s   "rR   rS   rG  V  s   € ÷ ñ ˜nð °ñ rT   c                ó¾  € V P                   p\        V\        4      '       d   R# \        V\        4      '       d@   \        VP                  \
        4      '       d    VP                  P                  \        8X  g   R# \        VP                  4       FH  w  r#VR8X  g   K  VP                  V,          p\        V\        4      ;'       d    VP                  R8H  u # 	  R# )aL  Returns whether the field is frozen, extracted from the declaration of the field defined in `stmt`.

Note that this is only whether the field was declared to be frozen in a `<field_name> = Field(frozen=True)`
sense; this does not determine whether the field is frozen because the entire model is frozen; that is
handled separately.
FrO  r  )rƒ  rn   r&   r   rm  r"   rk   r  rq  r¨   r©   r   )r�  rŽ  rf  r±   r  s   &    rR   rÀ  Ú(PydanticModelTransformer.is_field_frozenU  s£   € ð �{‰{ˆÜ�dœH×%Ò%áô �tœX×&Ò&¬:°d·k±kÄ7×+KÒ+KÐPT×P[ÑP[×PdÑPdÔhvÔPvñ ä$ T§^¡^Ö4‰KˆAØ˜8Ö#Ø—i‘i •l�Ü! #¤xÓ0×TÐT°S·\±\À_Ñ5TÒTñ 5ñ rT   c               ó<   € V ^8„  d   QhRRRRRRRRRRRRR	RR
RRR/	# )rL   rP  rÖ  rý   rÃ   rþ   r   rØ  r\  r  r  rO   úlist[Argument]rP   )rQ   s   "rR   rS   rG  n  sd   € ÷ ñ à(ðð ðð ð	ð
 ðð #'ðð ðð ðð #'ðð 
ñrT   c	                ó  € V P                   P                  p	V U
u. uFc  p
V'       d   V
P                  '       d   K  T
P                  T	TTT;'       g    TTV P                  TT;'       d    V
P
                  R8H  R7      NKe  	  pp
V# u up
i )z¸Helper function used during the construction of the `__init__` and `model_construct` method signatures.

Returns a list of mypy Argument instances for use in the generated signatures.
r  )rý   rþ   rÿ   r   r•   r  r  )rI  r�   rñ   r  rK  r¬   )rf   rP  rý   rþ   r   rØ  r\  r  r  r�   r[  Ú	argumentss   &&&&&&&&&   rR   rá  Ú,PydanticModelTransformer.get_field_argumentsn  s–   € ð �y‰y�~‰~ˆñ  ó
ñ  �ß %×"9Õ"9ô	ˆE×ÑØØØ)Ø7×FÐF¸;Ø#Ø—I‘IØ)AØ#0×#IÐ#I°U·Z±ZÀ6Ñ5Ið ö 	ñ  ð 	ð 
ð Ðùò
s   ›B¨B¼BÁBÁ+Bc               ó$   € V ^8„  d   QhRRRRRR/# )rL   rP  rÖ  rÓ   rv  rO   rÃ   rP   )rQ   s   "rR   rS   rG  Ž  s$   € ÷ 4ñ 4Ð/Gð 4ÐQ`ð 4Ðeiñ 4rT   c                óø   € VP                   '       g@   VP                  '       g.   V P                  V\        VP                  4      4      '       d   R# VP
                  '       d   R# V P                  P                  # )a(  Indicates whether the generated `__init__` should get a `**kwargs` at the end of its signature.

We disallow arbitrary kwargs if the extra config setting is "forbid", or if the plugin config says to,
*unless* a required dynamic alias is present (since then we can't determine a valid signature).
FT)r†  r‡  Úis_dynamic_alias_presentrÃ   r…  r	  ra   rÀ   )rf   rP  rÓ   s   &&&rR   rè  Ú1PydanticModelTransformer.should_init_forbid_extraŽ  s]   € ð ×'×'Ð'¨6×+B×+BÐ+BØ×,Ñ,¨V´T¸&×:TÑ:TÓ5U×VÒVÙØ××ÐÙØ×!Ñ!×3Ñ3Ð3rT   c               ó$   € V ^8„  d   QhRRRRRR/# )rL   rP  rÖ  r…  rÃ   rO   rP   )rQ   s   "rR   rS   rG  œ  s$   € ÷ ñ Ð)Að ÐX\ð Ðaeñ rT   c                ó†   € V  F  pVP                   '       g   K   R# 	  V'       d   V  F  pVP                  e   K   R# 	  R# )z�Returns whether any fields on the model have a "dynamic alias", i.e., an alias that cannot be
determined during static analysis.
TF)rñ   rï   )rP  r…  r[  s   && rR   r)  Ú1PydanticModelTransformer.is_dynamic_alias_present›  s>   € ó
 ˆEØ×&×&Ò&Úñ ÷ Û�Ø—;‘;Ô&Úñ  ñ rT   )rK  rI  rJ  ra   N>   r  rO  ró   r
  rß   r‡  r†  rà  r6  )r·   r¸   r¹   rº   r»   rE  rÛ   re   r–   rX  rR  rS  r¬  r›  rœ  rÁ  rU  rV  rW  r~  Ústaticmethodrº  r»  r¿  rÀ  rá  rè  r)  r¼   rP   rT   rR   r’   r’   É  sÖ   ‡ ñò	'Ð˜8ó 	õ+õ"õH2õ6JõXBLõHRõSõG
õR$õL7Xõr&
õPB÷2!ðF ô2ó ð2ð* ôó ðð ôó ðð: ôó ð÷0õ@4ð ôó ôrT   r’   c                  ó>   a € ] tR tRtRtR V 3R lltR R ltRtV ;t# )rå  iª  z<A type translator used to change type of Any's, if explicit.c               ó    € V ^8„  d   QhRRRR/# )rL   Útype_of_anyrõ   rO   r\   rP   )rQ   s   "rR   rS   Ú$ChangeExplicitTypeOfAny.__annotate__­  s   € ÷ ñ  Cð ¨Dñ rT   c                	ó0   <€ Wn         \        SV `	  4        R # r_   )Ú_type_of_anyrd   re   )rf   r1  rg   s   &&€rR   re   Ú ChangeExplicitTypeOfAny.__init__­  s   ø€ Ø'ÔÜ‰ÑÖrT   c               ó    € V ^8„  d   QhRRRR/# )rL   rÏ  r8   rO   r<   rP   )rQ   s   "rR   rS   r2  ±  s   € ÷ ñ ˜7ð  tñ rT   c                	ó|   € VP                   \        P                  8X  d   VP                  V P                  R 7      # V# ))r1  )r1  r=   r
  r  r4  )rf   rÏ  s   &&rR   Ú	visit_anyÚ!ChangeExplicitTypeOfAny.visit_any±  s0   € Ø�=‰=œI×.Ñ.Ô.Ø—?‘?¨t×/@Ñ/@�?ÓAÐAàˆHrT   )r4  )	r·   r¸   r¹   rº   r»   re   r8  r¼   r½   r¾   s   @rR   rå  rå  ª  s   ø† ÙF÷ð ÷ó rT   rå  c                  óN   € ] tR tRtRtRR R lltR R ltR R	 ltR
 R ltRt	R# )rv  i¸  z(Pydantic mypy plugin model config class.Nc               ó8   € V ^8„  d   QhRRRRRRRRRRRRRRR	R/# )
rL   r	  rô   rO  rß   r‡  rà  r†  r…  ró   rP   )rQ   s   "rR   rS   ÚModelConfigData.__annotate__»  sZ   € ÷ ñ à!ðð ðð %ð	ð
 &ðð 'ðð &ðð )ðð ñrT   c	                	óf   € Wn         W n        W0n        W@n        WPn        W`n        Wpn        W€n        R # r_   )r	  rO  rß   r‡  rà  r†  r…  ró   )	rf   r	  rO  rß   r‡  rà  r†  r…  ró   s	   &&&&&&&&&rR   re   ÚModelConfigData.__init__»  s2   € ð )ÔØŒØ.ÔØ 0ÔØ!2ÔØ 0ÔØ#6Ô ØŽrT   c               ó   € V ^8„  d   QhRR/# rØ   rP   )rQ   s   "rR   rS   r<  Ï  s   € ÷ Iñ I ñ IrT   c                óv   € V P                   P                  4        UUu/ uF  w  rVf   K  WbK  	  upp# u uppi )zvReturns a dict of Pydantic model config names to their values.

It includes the config if config value is not `None`.
)Ú__dict__r}  )rf   ÚkÚvs   &  rR   rY  ÚModelConfigData.get_values_dictÏ  s3   € ð
 "&§¡×!4Ñ!4Ô!6ÔHÑ!6™˜¸!”�’Ñ!6ÒHÐHùÓHs   ž5«5c               ó    € V ^8„  d   QhRRRR/# )rL   rÓ   r  rO   r\   rP   )rQ   s   "rR   rS   r<  Ö  s   € ÷  ñ  Ð3ð  ¸ñ  rT   c                óx   € Vf   R# VP                  4       P                  4        F  w  r#\        WV4       K  	  R# )z$Update Pydantic model config values.N)rY  r}  rÎ   )rf   rÓ   rB  rC  s   &&  rR   r  ÚModelConfigData.updateÖ  s2   € àŠ>ÙØ×*Ñ*Ó,×2Ñ2Ö4‰DˆAÜ�D˜QÖó 5rT   c               ó$   € V ^8„  d   QhRRRRRR/# )rL   rÔ   rN   rd  r   rO   r\   rP   )rQ   s   "rR   rS   r<  Ý  s!   € ÷ &ñ &˜cð &¨#ð &°$ñ &rT   c                ó<   € \        W4      f   \        WV4       R# R# )zFSet default value for Pydantic model config if config value is `None`.N)rŸ   rÎ   )rf   rÔ   rd  s   &&&rR   r‹  ÚModelConfigData.setdefaultÝ  s   € ä�4ÓÒ%Ü�D˜uÖ%ñ &rT   )r	  rß   rO  r…  r‡  ró   rà  r†  )NNNNNNNN)
r·   r¸   r¹   rº   r»   re   rY  r  r‹  r¼   rP   rT   rR   rv  rv  ¸  s   † Ù2÷õ(Iõ ÷&ñ &rT   rv  c               ó    € V ^8„  d   QhRRRR/# )rL   r�   r(   rO   rÃ   rP   )rQ   s   "rR   rS   rS   ã  s   € ÷ .ñ .˜ð . Tñ .rT   c                ó,   € V P                  \        4      # )zXReturn whether the type info is a root model subclass (or the `RootModel` class itself).)rp   ÚROOT_MODEL_FULLNAME)r�   s   &rR   r  r  ã  s   € à�=‰=Ô,Ó-Ð-rT   zpydantic-ormzInvalid from_attributes callÚPydanticzpydantic-configzInvalid config valuezpydantic-aliaszDynamic alias disallowedzpydantic-unexpectedzUnexpected behaviorzpydantic-fieldzUntyped field disallowedzInvalid Field defaultsz!Extra field on RootModel subclassc               ó(   € V ^8„  d   QhRRRRRRRR/# )	rL   Ú
model_namerN   r•   r+   rã   r   rO   r\   rP   )rQ   s   "rR   rS   rS   ñ  s1   € ÷ \ñ \ cð \Ð0Fð \ÐQXð \Ð]añ \rT   c                ó>   € VP                  RV  R2V\        R7       R# )zCEmits an error when the model does not have `from_attributes=True`.rÈ  z$" does not have from_attributes=True©ÚcodeN)r„  Ú	ERROR_ORM)rP  r•   rã   s   &&&rR   rç   rç   ñ  s   € à‡H�Hˆq��Ð@ÐAÀ7ÔQZ€HÖ[rT   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	rL   r¬   rN   r•   r1   rã   r   rO   r\   rP   )rQ   s   "rR   rS   rS   ö  s1   € ÷ Oñ O Sð OÐ/Nð OÐY`ð OÐeiñ OrT   c                ó>   € VP                  RV  R2V\        R7       R# )z0Emits an error when the config value is invalid.zInvalid value for "Config.rÈ  rR  N)r„  ÚERROR_CONFIG)r¬   r•   rã   s   &&&rR   r  r  ö  s   € à‡H�HÐ)¨$¨¨qÐ1°7Ä€HÖNrT   c               ó$   € V ^8„  d   QhRRRRRR/# ©rL   r•   r1   rã   r   rO   r\   rP   )rQ   s   "rR   rS   rS   û  s)   € ÷ Oñ OÐ(Gð OÐRYð OÐ^bñ OrT   c                ó6   € V P                  RV\        R7       R# )zfEmits required dynamic aliases error.

This will be called when `warn_required_dynamic_aliases=True`.
z#Required dynamic aliases disallowedrR  N)r„  ÚERROR_ALIAS©r•   rã   s   &&rR   rˆ  rˆ  û  s   € ð
 ‡H�HÐ2°GÄ+€HÖNrT   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	rL   rê   rN   r•   z8CheckerPluginInterface | SemanticAnalyzerPluginInterfacerã   r   rO   r\   rP   )rQ   s   "rR   rS   rS     s,   € ÷ ;ñ ;Øð;ØNð;ØY`ð;à	ñ;rT   c                ó^   € RpRV  R2pVRV R2,          pVP                  WB\        R7       R# )z Emits unexpected behavior error.z6https://github.com/pydantic/pydantic/issues/new/choosez7The pydantic mypy plugin ran into unexpected behavior: Ú
z&Please consider reporting this bug at z so we can try to fix it!rR  N)r„  ÚERROR_UNEXPECTED)rê   r•   rã   ÚlinkÚfull_messages   &&&  rR   râ   râ     s?   € ð
 D€DØLÈVÈHÐTVÐW€LØÐ<¸T¸FÐB[Ð\Õ\€LØ‡H�Hˆ\Ô)9€HÖ:rT   c               ó$   € V ^8„  d   QhRRRRRR/# rY  rP   )rQ   s   "rR   rS   rS     s(   € ÷ Gñ GÐ=ð GÈð GÐTXñ GrT   c                ó6   € V P                  RV\        R7       R# )z;Emits an error when there is an untyped field in the model.zUntyped fields disallowedrR  N)r„  ÚERROR_UNTYPEDr\  s   &&rR   r¸  r¸    s   € à‡H�HÐ(¨'¼€HÖFrT   c               ó$   € V ^8„  d   QhRRRRRR/# )rL   r•   r+   rã   r   rO   r\   rP   )rQ   s   "rR   rS   rS     s(   € ÷ oñ oÐ*@ð oÈ7ð oÐW[ñ orT   c                ó6   € V P                  RV\        R7       R# )z]Emits an error when there is more than just a root field defined for a subclass of RootModel.z2Only `root` is allowed as a field of a `RootModel`rR  N)r„  ÚERROR_EXTRA_FIELD_ROOT_MODELr\  s   &&rR   r�  r�    s   € à‡H�HÐAÀ7ÔQm€HÖnrT   c               ó<   € V ^8„  d   QhRRRRRRRRR	R
RRRRRRRR/	# )rL   r•   z8SemanticAnalyzerPluginInterface | CheckerPluginInterfacer“   r   r¬   rN   r©   r#  rÜ  r<   r  r÷   Útvar_defzTypeVarType | Nonerõ  rÃ   rO   r\   rP   )rQ   s   "rR   rS   rS     sm   € ÷ U%ñ U%Ø	AðU%à	ðU%ð ðU%ð ð	U%ð
 ðU%ð ðU%ð !ðU%ð ðU%ð 
ñU%rT   c           	     óÐ  € VP                   pW(P                  9   du   VP                  V,          p	V	P                  '       dP   \        V	P                  \
        4      '       d0   VP                  P                  P                  V	P                  4       \        V \        4      '       d   V P                  R4      p
MV P                  R. 4      p
V'       d=   T;'       g    \        \        V4      4      p\        \        R4      VR\         R4      .pM1T;'       g    \        V4      p\        \        R4      VR\         4      .pW³,           p. . . rípV Fw  pVP"                  '       g   Q R4       hVP%                  VP"                  4       VP%                  VP&                  P(                  4       VP%                  VP*                  4       Ky  	  \-        YÎYÔY¦'       d   V.MRR7      p\        W#\/        \1        4       .4      4      pVVn         \3        VV4      Vn        VVn        VP8                  R,           V,           Vn        VP<                  Vn        W(P                  9   d6   \?        W(P                  4      pVP                  V,          VP                  V&   V'       dv   RVn         \        VVP4                  4      pVVn         VP:                  Vn        RVn!        \E        V\G        R	4      .V4      pVP<                  Vn        \I        \J        V4      p	M\I        \J        V4      p	RV	n        W˜P                  V&   VPL                  P                  P                  P%                  V4       R# )
zhVery closely related to `mypy.plugins.common.add_method_to_class`, with a few pydantic-specific changes.zbuiltins.functionrI  NTÚ__pydantic_self__z"All arguments must be fully typed.)Ú	variablesrþ  r7  )'r�   rj  rß  rn   ro   r   r€  r�  Úremover1   rö  Únamed_generic_typer>   rB   r   r)   r   r  rç  r  r¬   r  r9   r   r    r3   r    rs  rk   r  r­   rC   Úis_decoratedrõ  r   r   r%   r   Údefn)r•   r“   r¬   r©   rÜ  r  rj  rõ  r�   rs   Úfunction_typeÚfirstrÍ  r¨   rÌ  r  Ú	signaturerr  Úr_namerC  Údecs   &&&&&&&&             rR   ré  ré    s¡  € ð �8‰8€Dð �z‰zÔØ�j‰j˜ÕˆØ××Ð¤J¨s¯x©x¼×$AÒ$AØ�H‰H�M‰M× Ñ  §¡Ô*ä�#Ô6×7Ò7ØŸ™Ð':Ó;‰à×.Ñ.Ð/BÀBÓGˆçØ×>Ð>¤¬-¸Ó*=Ó!>ˆ	Üœ#˜f›+ y°$¼ÀÓFÐG‰à×4Ð4¤¨tÓ!4ˆ	ô œ#Ð1Ó2°I¸tÄWÓMÐNˆØ�<€Dà&(¨"¨b˜)€IÛˆØ×"×"Ð"ÐHÐ$HÓHÐ"Ø×Ñ˜×,Ñ,Ô-Ø×Ñ˜Ÿ™×*Ñ*Ô+Ø×Ñ˜Ÿ™Ö"ñ	 ô Ø˜i°mÖ]eÐPXÉzÐkoô€Iô �4œu¤h£j \Ó2Ó3€DØ€D„IÜ! )¨TÓ2€D„IØ"€D„MØ—]‘] SÕ(¨4Õ/€D„NØ—	‘	€D„Ið �z‰zÔä-¨d·J±JÓ?ˆØ!ŸZ™Z¨Õ-ˆ�
‰
�6Ñ÷
 Ø ˆÔÜ��d—i‘iÓ ˆØˆŒØ—n‘nˆŒØˆÔÜ˜œx¨Ó6Ð7¸Ó;ˆØ—9‘9ˆŒÜœd CÓ(‰äœd DÓ)ˆØ€CÔØ‡J�JˆtÑà‡I�I‡N�N×Ñ×Ñ˜tÖ$rT   c               ó    € V ^8„  d   QhRRRR/# )rL   rÉ   rN   rO   zdict[str, Any] | NonerP   )rQ   s   "rR   rS   rS   p  s   € ÷ ñ ˜Cð Ð$9ñ rT   c                óL  € V P                  R4      '       g   R# \        P                  R8¼  d   ^ RIpM ^ RIp\        V R4      ;_uu_ 4       pVP                  V4      uuRRR4       #   \
         d    ^ RIpTP                  R^R7        R# i ; i  + '       g   i     R# ; i)z}Returns a dict of config keys to values.

It reads configs from toml file and returns `None` if the file is not a toml file.
z.tomlNzJNo TOML parser installed, cannot read configuration from `pyproject.toml`.)Ú
stacklevelÚrb)é   é   )
r   ÚsysÚversion_infoÚtomllibÚtomliÚImportErrorÚwarningsÚwarnÚopenÚload)rÉ   Útoml_r‚  Úrfs   &   rR   rÊ   rÊ   p  sŠ   € ð
 ×Ñ ×(Ò(Ùä
×Ñ˜7Ô"Üð	Û!ô 
ˆk˜4×	 Ô	  BØ�z‰z˜"‹~÷ 
!Ò	 øô ô 	Ûà�M‰MÐfÐstˆMÔuÚð		ú÷ 
!×	 Ð	 ús   µA) ÁBÁ)"BÂBÂB#	>   ú*pydantic.functional_serializers.serializerú.pydantic.deprecated.class_validators.validatorú.pydantic.functional_validators.field_validatorrH   rI   ú3pydantic.deprecated.class_validators.root_validator)NNF)„r»   Ú
__future__r   r}  Úcollections.abcr   Úconfigparserr   Útypingr   r   Úmypy.errorcodesr   Úmypy.expandtyper   r	   Ú
mypy.nodesr
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   Úmypy.optionsr*   Úmypy.pluginr+   r,   r-   r.   r/   r0   r1   Úmypy.plugins.commonr2   Úmypy.semanalr3   Úmypy.server.triggerr4   Ú
mypy.stater5   Úmypy.type_visitorr6   Úmypy.typeopsr7   Ú
mypy.typesr8   r9   r:   r;   r<   r=   r>   r?   r@   rA   Úmypy.typevarsrB   Ú	mypy.utilrC   Úmypy.versionrD   Úmypy_versionÚpydantic._internalrE   Úpydantic.versionrF   rÑ   ræ   rq   r…   rT  rM  rx   r  ÚDATACLASS_FULLNAMEro  r·  rn  ÚMYPY_VERSION_TUPLEr÷  rW   rV   r`   r€   rí   r9  r’   rå  rv  r  rT  rW  r[  r`  re  ÚERROR_FIELD_DEFAULTSrh  rç   r  rˆ  râ   r¸  r�  ré  rÊ   rP   rT   rR   Ú<module>r¥     s  ðÙ då "ã 
Ý $Ý %ß  å %ß @÷!÷ !÷ !÷ !÷ !÷ !÷ !÷ !ó !õD !÷÷ ñ õõ +Ý 5Ý Ý ,Ý 0÷÷ ÷ õ (Ý 2Ý 4å &Ý /à €Ø'€Ø.Ð Ø4Ð Ø=Ð Ø5Ð ØRÐ Ø(€Ø5Ð ØKÐ òÐ ð ,?ÐBtÐAuÕ+uÐ (ñ (¨Ó5Ð Ø€ð €õôTM�Vô TM÷n+Cñ +Cõ\#÷4PTñ PT÷f
ñ 
÷2^ñ ^ôB˜nô ÷(&ñ (&õV.ñ
 �nÐ&DÀjÓQ€	ÙÐ*Ð,BÀJÓO€ÙÐ(Ð*DÀjÓQ€ÙÐ2Ð4IÈ:ÓVÐ ÙÐ*Ð,FÈ
ÓS€Ù Ð!1Ð3KÈZÓXÐ Ù(Ð)9Ð;^Ð`jÓkÐ õ\õ
Oõ
Oõ;õGõ
o÷
U%÷prT   