+
    NV-jÌ—  ã                   ó°  € ^ RI t ^ RIHt ^ RIHtHtHtHtHtH	t	H
t
HtHt ^ RI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- ^ RI.H/t/ ^ RI0H1t1H2t2H3t3H4t4H5t5H6t6H7t7 ^ RI8H9t9 ^ R	I:H;t; ^ R
I<H=t= ^ RI>H?t?H@t@HAtAHBtBHCtCHDtDHtHEtEHFtFHGtGHHtHHItIHJtJ ^ RIKHLtL ^ RIMHNtN ^ RIOHPtQ ^ RIRHStS  ^ RI>HTtT RtVRtW]XRRK tY]Y R2tZ]Y R2t[]Y R2t\]Y R2t]]Y R2t^R R lt_]_! ]Q4      t`]`RL8¼  d   RMRta^tPR R ltb ! R R ]54      tc ! R! R"4      tdR# R$ lte ! R% R&4      tf ! R' R(4      tg ! R) R*4      th]! R+R,R-4      ti]! R.R/R-4      tj]! R0R1R-4      tk]! R2R3R-4      tl]! R4R5R-4      tm]! R4R6R-4      tnR7 R8 ltoR9 R: ltpR; R< ltqR= R> ltrR? R@ ltsRA RB lttRMRC RD lltuRE RF ltvRG RH ltwRI RJ ltxR#   ]U d    ^ RI>HHtT  ELi ; i)Né    N)ÚConfigParser)	ÚAnyÚCallableÚDictÚListÚOptionalÚSetÚTupleÚTypeÚUnion)Ú	ErrorCode)Ú	ARG_NAMEDÚARG_NAMED_OPTÚARG_OPTÚARG_POSÚ	ARG_STAR2ÚMDEFÚArgumentÚAssignmentStmtÚBlockÚCallExprÚClassDefÚContextÚ	DecoratorÚEllipsisExprÚFuncBaseÚFuncDefÚJsonDictÚ
MemberExprÚNameExprÚPassStmtÚPlaceholderNodeÚRefExprÚStrExprÚ
SymbolNodeÚSymbolTableNodeÚTempNodeÚTypeInfoÚTypeVarExprÚVar©ÚOptions)ÚCheckerPluginInterfaceÚClassDefContextÚFunctionContextÚMethodContextÚPluginÚReportConfigContextÚSemanticAnalyzerPluginInterface)Údataclasses)Úset_callable_name)Úmake_wildcard_trigger)ÚAnyTypeÚCallableTypeÚInstanceÚNoneTypeÚ
OverloadedÚ
ProperTyper   Ú	TypeOfAnyÚTypeTypeÚ	TypeVarIdÚTypeVarTypeÚ	UnionTypeÚget_proper_type)Úfill_typevars)Úget_unique_redefinition_name)Ú__version__)Úis_valid_field)Ú
TypeVarDef)r@   úpydantic-mypyzpydantic-mypy-metadataz.main.BaseModelz.env_settings.BaseSettingsz.main.ModelMetaclassz.fields.Fieldz.dataclasses.dataclassc                óJ   € V ^8„  d   QhR\         R\        \        R3,          /# )é   ÚversionÚreturn.)Ústrr
   Úint)Úformats   "Úa/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/pydantic/v1/mypy.pyÚ__annotate__rQ   W   s&   € ÷ Añ A¤ð A¬¬c°3¨h­ñ Aó    c                 ó~   € \        \        \        V P                  R 4      ^ ,          P	                  R4      4      4      # )Ú+Ú.)ÚtupleÚmaprN   Ú	partitionÚsplit©rK   s   &rP   Úparse_mypy_versionr[   W   s/   € Ü””S˜'×+Ñ+¨CÓ0°Õ3×9Ñ9¸#Ó>Ó?Ó@Ð@rR   ÚbuiltinsÚ__builtins__c                ó(   € V ^8„  d   QhR\         RR/# )rJ   rK   rL   zTypingType[Plugin]©rM   )rO   s   "rP   rQ   rQ   b   s   € ÷ ñ ”Cð Ð0ñ rR   c                ó   € \         # )z¬
`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).
)ÚPydanticPluginrZ   s   &rP   Úpluginrb   b   s
   € ô ÐrR   c                   óà   a a€ ] tR t^lt oV3R lV 3R lltV3R lR ltV3R lR ltV3R lR ltV3R	 lR
 ltV3R lR lt	V3R lR lt
V3R lR ltV3R lR ltV3R lR ltRtVtV ;t# )ra   c                ó$   <€ V ^8„  d   QhRS[ RR/# ©rJ   ÚoptionsrL   Nr+   )rO   Ú__classdict__s   "€rP   rQ   ÚPydanticPlugin.__annotate__m   s   ø€ ÷ "ñ "¡ð "¨Dñ "rR   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__)Úselfrf   Ú	__class__s   &&€rP   rp   ÚPydanticPlugin.__init__m   s4   ø€ Ü1°'Ó:ˆÔØ ×.Ñ.×6Ñ6Ó8ˆÔÜ‰Ñ˜Ö!rR   c                ó$   <€ V ^8„  d   QhRS[ RR/# )rJ   ÚfullnamerL   z+Optional[Callable[[ClassDefContext], None]]r_   )rO   rg   s   "€rP   rQ   rh   r   s   ø€ ÷ ñ ©Cð Ð4añ rR   c                óT  € V P                  V4      pV'       d�   \        VP                  \        4      '       do   \        ;QJ d0    R  VP                  P
                   4       F  '       g   K   RM%	  RM!! R  VP                  P
                   4       4      '       d   V P                  # R# )c              3   óF   "  € T F  p\        V4      \        8H  x € K  	  R # 5irj   )Úget_fullnameÚBASEMODEL_FULLNAME©Ú.0Úbases   & rP   Ú	<genexpr>Ú5PydanticPlugin.get_base_class_hook.<locals>.<genexpr>v   s   é € ÐUÉÀ”< Ó%Ô);Ö;Ëùó   ‚!TFN)Úlookup_fully_qualifiedÚ
isinstanceÚnoder(   ÚanyÚmroÚ$_pydantic_model_class_maker_callback©rq   ru   Úsyms   && rP   Úget_base_class_hookÚ"PydanticPlugin.get_base_class_hookr   se   € Ø×)Ñ)¨(Ó3ˆß”:˜cŸh™h¬×1Ò1ç‹sÑUÈÏÉÏÊÓU�s�sŠsÑUÈÏÉÏÊÓU×UÒUØ×@Ñ@Ð@ÙrR   c                óL   <€ V ^8„  d   QhRS[ RS[S[S[.R3,          ,          /# ©rJ   ru   rL   N©rM   r   r   r.   )rO   rg   s   "€rP   rQ   rh   z   s.   ø€ ÷ ñ ©3ð ±8¹HÁoÐEVÐX\ÐE\Õ<]Õ3^ñ rR   c                ó4   € V\         8X  d   V P                  # R # rj   )ÚMODEL_METACLASS_FULLNAMEÚ)_pydantic_model_metaclass_marker_callback©rq   ru   s   &&rP   Úget_metaclass_hookÚ!PydanticPlugin.get_metaclass_hookz   s   € ØÔ/Ô/Ø×AÑAÐAÙrR   c                ó$   <€ V ^8„  d   QhRS[ RR/# )rJ   ru   rL   z+Optional[Callable[[FunctionContext], Type]]r_   )rO   rg   s   "€rP   rQ   rh      s   ø€ ÷ ñ ©#ð Ð2_ñ rR   c                óz   € V P                  V4      pV'       d"   VP                  \        8X  d   V P                  # R # rj   )r€   ru   ÚFIELD_FULLNAMEÚ_pydantic_field_callbackr†   s   && rP   Úget_function_hookÚ PydanticPlugin.get_function_hook   s/   € Ø×)Ñ)¨(Ó3ˆß�3—<‘<¤>Ô1Ø×0Ñ0Ð0ÙrR   c                óN   <€ V ^8„  d   QhRS[ RS[S[S[.S[3,          ,          /# )rJ   ru   rL   )rM   r   r   r0   r   )rO   rg   s   "€rP   rQ   rh   …   s-   ø€ ÷ ñ ©ð ±¹Á=À/ÑSWÐBWÕ9XÕ0Yñ rR   c                ó@   € VP                  R 4      '       d   \        # R# )z	.from_ormN)ÚendswithÚfrom_orm_callbackr�   s   &&rP   Úget_method_hookÚPydanticPlugin.get_method_hook…   s   € Ø×Ñ˜[×)Ò)Ü$Ð$ÙrR   c                óL   <€ V ^8„  d   QhRS[ RS[S[S[.R3,          ,          /# r‹   rŒ   )rO   rg   s   "€rP   rQ   rh   Š   s.   ø€ ÷ ñ ±ð ¹Á(ÉOÐK\Ð^bÐKbÕBcÕ9dñ rR   c                óR   € V\         8X  d   \        R8  d   \        P                  # R# )zpMark pydantic.dataclasses as dataclass.

Mypy version 1.1.1 added support for `@dataclass_transform` decorator.
N)é   r¡   )ÚDATACLASS_FULLNAMEÚMYPY_VERSION_TUPLEr4   Údataclass_class_maker_callbackr�   s   &&rP   Úget_class_decorator_hookÚ'PydanticPlugin.get_class_decorator_hookŠ   s$   € ð
 Ô)Ô)Ô.@À6Ô.IÜ×=Ñ=Ð=ÙrR   c                ó<   <€ V ^8„  d   QhRS[ RS[S[S[3,          /# ©rJ   ÚctxrL   )r2   r   rM   r   )rO   rg   s   "€rP   rQ   rh   “   s$   ø€ ÷ !ñ !Ñ&9ð !¹dÁ3ÉÀ8½nñ !rR   c                ó   € V P                   # )zZReturn all plugin config data.

Used by mypy to determine if cache needs to be discarded.
)rn   )rq   r©   s   &&rP   Úreport_config_dataÚ!PydanticPlugin.report_config_data“   s   € ð
 × Ñ Ð rR   c                ó$   <€ V ^8„  d   QhRS[ RR/# ©rJ   r©   rL   N©r.   )rO   rg   s   "€rP   rQ   rh   š   s   ø€ ÷  ñ  ¹ð  ÈDñ  rR   c                óP   € \        WP                  4      pVP                  4        R # rj   )ÚPydanticModelTransformerrl   Ú	transform)rq   r©   Útransformers   && rP   r…   Ú3PydanticPlugin._pydantic_model_class_maker_callbackš   s   € Ü.¨s×4FÑ4FÓGˆØ×ÑÖrR   c                ó$   <€ V ^8„  d   QhRS[ RR/# r®   r¯   )rO   rg   s   "€rP   rQ   rh   ž   s    ø€ ÷ @ñ @¹_ð @ÐQUñ @rR   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)rl   Údebug_dataclass_transformÚclsÚinfoÚdeclared_metaclassÚgetattrÚtyper·   )rq   r©   Úinfo_metaclasss   && rP   r�   Ú8PydanticPlugin._pydantic_model_metaclass_marker_callbackž   sd   € ð ×Ñ×7×7Ð7ÙØŸ™Ÿ™×8Ñ8ˆßÐNÐNÓNˆ~Ü�>×&Ñ&Ð(BÀD×IÒIØ;?ˆN×ÑÖ8ñ JrR   c                ó$   <€ V ^8„  d   QhRS[ RR/# )rJ   r©   rL   r   )r/   )rO   rg   s   "€rP   rQ   rh   «   s   ø€ ÷ 3 ñ 3 ©Oð 3 Àñ 3 rR   c                óT  € VP                   pVP                  ^ ,          R8X  g   Q R4       hVP                  ^,          R8X  g   Q R4       hVP                  ^ ,          pVP                  ^,          pV'       d+   V'       d#   \        VP                  VP
                  4       V# V'       d?   VP                  ^ ,          ^ ,          pV^ ,          p\        V\        4      '       g   V#  V# V'       Ed7   VP                  ^,          ^ ,          p\        V\        4      '       d7   \        R	8”  d   VP                  ^ ,          pMVP                  4       ^ ,          p\        V\        4      '       d»   \        VP                  4      p\        V\        4      '       dŽ   VP                  '       d|   \         ;QJ d&    R VP                   4       F  '       d   K   RM	  RM! R VP                   4       4      '       d.   VP#                  V.\%        VP                  4      ,          R7      pV# V# )
aH  
Extract the type of the `default` argument from the Field function, and use it as the return type.

In particular:
* Check whether the default and default_factory argument is specified.
* Output an error if both are specified.
* Retrieve the type of the argument which is specified, and use it as return type for the function.
Údefaultz0"default" is no longer first argument in Field()Údefault_factoryz9"default_factory" is no longer second argument in Field()c              3   óB   "  € T F  p\        V\        4      x € K  	  R # 5irj   )r�   r@   )r{   Úargs   & rP   r}   Ú:PydanticPlugin._pydantic_field_callback.<locals>.<genexpr>Ø   s   é € ÐRÁM¸SœJ s¬K×8Ð8ÃMùs   ‚FT)Úargs)r   iŽ  )Údefault_return_typeÚcallee_arg_namesrÇ   Ú+error_default_and_default_factory_specifiedÚapiÚcontextÚ	arg_typesr�   r   r;   r£   Úitemsr8   rB   Úret_typer9   ÚallÚcopy_modifiedÚlen)	rq   r©   Údefault_any_typeÚdefault_argsÚdefault_factory_argsÚdefault_typeÚdefault_argÚdefault_factory_typerÏ   s	   &&       rP   r–   Ú'PydanticPlugin._pydantic_field_callback«   s¹  € ð ×2Ñ2Ðà×#Ñ# AÕ&¨)Ô3ÐgÐ5gÓgÐ3Ø×#Ñ# AÕ&Ð*;Ô;ÐxÐ=xÓxÐ;Ø—x‘x •{ˆØ"Ÿx™x¨�{Ðç×0Ü7¸¿¹ÀÇÁÔMØ#Ð#çØŸ=™=¨Õ+¨AÕ.ˆLØ& q�/ˆKô ˜k¬<×8Ò8Ø#Ð#ð 9ð4  Ð÷/ "Ð!Ø#&§=¡=°Õ#3°AÕ#6Ð ô Ð.´
×;Ò;Ü%¨Ô0Ø+?×+EÑ+EÀaÕ+HÑ(ð ,@×+EÑ+EÓ+GÈÕ+JÐ(äÐ.´×=Ò=Ü*Ð+?×+HÑ+HÓI�ä˜x¬×2Ò2Ø ŸŸ˜ß›ÑRÀHÇMÂMÓRŸŸšÑRÀHÇMÂMÓR×RÒRð  (×5Ñ5Ð<LÐ;MÔPSÐT\×TaÑTaÓPbÕ;bÐ5Óc�HØ�àÐrR   )rn   rl   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rp   rˆ   r‘   r—   r�   r¥   r«   r…   r�   r–   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)rr   rg   s   @@rP   ra   ra   l   sp   ù‡ € ÷"ó "÷
ð ÷ð ÷
ð ÷ð ÷
ð ÷!ð !÷ ð  ÷@ð @÷3 ÷ 3 ð 3 rR   ra   c                   óT   a € ] tR t^át o RtV 3R lR ltV 3R lR ltV 3R ltRtV t	R# )	rk   c                ó$   <€ V ^8„  d   QhRS[ RR/# re   r+   )rO   rg   s   "€rP   rQ   Ú!PydanticPluginConfig.__annotate__ï   s   ø€ ÷ ,ñ ,¡ð ,¨Dñ ,rR   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ÚtoolrH   Fz/Configuration value must be a boolean for key: )Úfallback)Úconfig_fileÚ
parse_tomlÚgetÚ	__slots__r�   ÚboolÚ
ValueErrorÚsetattrr   ÚreadÚ
getbooleanÚCONFIGFILE_KEY)rq   rf   Útoml_configÚconfigÚkeyÚsettingrl   s   &&     rP   rp   Ú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Ö+ó &rR   c                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# ©rJ   rL   ©r   rM   r   )rO   rg   s   "€rP   rQ   rã     s   ø€ ÷ Cñ C™™c¡3˜h�ñ CrR   c                óV   € V P                    Uu/ uF  q\        W4      bK  	  up# u upi rj   )rê   r¼   )rq   ró   s   & rP   rm   ÚPydanticPluginConfig.to_data  s&   € Ø37·>²>ÓB±>¨C”W˜TÓ'Ò'±>ÑBÐBùÒBs   �&c                óV   <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   # )rJ   Úinit_forbid_extraÚ
init_typedÚwarn_required_dynamic_aliasesÚwarn_untyped_fieldsr¸   )rë   )rO   rg   s   "€rP   rQ   rã   á   sF   ø‡ ‚ ñ Ññ ñ Ññ ñ $(Ñ'ñ ñ Ññ ñ  $Ñ#ò rR   © N)rü   rý   rþ   rÿ   r¸   )
rÚ   rÛ   rÜ   rÝ   rê   rp   rm   Ú__annotate_func__rÞ   rß   ©rg   s   @rP   rk   rk   á   s*   ø‡ € ð€I÷,ð ,÷&Cð C÷C ƒ rR   rk   c                ó0   € V ^8„  d   QhR\         R\        /# r¨   )r0   r   )rO   s   "rP   rQ   rQ     s   € ÷ #ñ #œ=ð #¬Tñ #rR   c                óè  € 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                  R/ 4      P                  R4      pVRJd5   \!        \#        VP                   4      V P                  V P                  4       V P                  # )z+
Raise an error if orm_mode is not enabled
z
ctx.type: ú
 (of type Ú)rò   Úorm_modeT)r½   r�   r>   Úitemr8   rÏ   r9   rr   rÚ   Úerror_unexpected_behaviorrË   rÌ   rÈ   Úmetadataré   ÚMETADATA_KEYÚerror_from_ormÚget_name)r©   Úctx_typeÚ
model_typeÚdetailÚpydantic_metadatar  s   &     rP   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ÐØÒ Ø×&Ñ&Ð&Ø ×$Ñ$ X¨rÓ2×6Ñ6°zÓB€HØ�tÓÜ”x 
§¡Ó0°#·'±'¸3¿;¹;ÔGØ×"Ñ"Ð"rR   c                   ój  a € ] tR tRt o 0 R#mtV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR	 ltV 3R
 lR lt	V 3R lR lt
V 3R lR ltV 3R lR ltV 3R lR lt]V 3R lR l4       t]V 3R lR l4       t]V 3R lR l4       tV 3R lR ltV 3R lR lt]V 3R lR l4       tV 3R  ltR!tV tR"# )$r±   i  c                ó*   <€ V ^8„  d   QhRS[ RS[RR/# )rJ   r©   rl   rL   N)r.   rk   )rO   rg   s   "€rP   rQ   Ú%PydanticModelTransformer.__annotate__)  s$   ø€ ÷ +ñ +™Oð +Ñ<Pð +ÐUYñ +rR   c                ó   € Wn         W n        R # rj   ©Ú_ctxrl   )rq   r©   rl   s   &&&rP   rp   Ú!PydanticModelTransformer.__init__)  s   € ØŒ	Ø*ÖrR   c                ó   <€ V ^8„  d   QhRR/# ©rJ   rL   Nr   )rO   rg   s   "€rP   rQ   r  -  s   ø€ ÷ 
ñ 
˜4ñ 
rR   c                óš  € V P                   pVP                  P                  pV P                  4        V P	                  4       pV P                  V4      p\        ;QJ d)    R VP                  RR  4       F  '       g   K   RM	  RM! R VP                  RR  4       4      pV P                  WCV4       V P                  V4       T P                  YCP                  RJ ;'       g    VP                  RJ R7       RV Uu/ uF  qfP                  VP                  4       bK  	  upRVP                  4       /VP                   \"        &   R# u upi )	ap  
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 allow_mutation = False or frozen = True
* stores the fields, config, and if the class is settings in the mypy metadata for access by subclasses
c              3   óF   "  € T F  p\        V4      \        8H  x € K  	  R # 5irj   )rx   ÚBASESETTINGS_FULLNAMErz   s   & rP   r}   Ú5PydanticModelTransformer.transform.<locals>.<genexpr>=  s   é € Ð`ÑR_È$œ, tÓ,Ô0EÖEÓR_ùr   NTF)ÚfrozenÚfieldsrò   éÿÿÿÿ)r  r¹   rº   Úadjust_validator_signaturesÚcollect_configÚcollect_fieldsrƒ   r„   Úadd_initializerÚadd_construct_methodÚ
set_frozenÚallow_mutationr  ÚnameÚ	serializeÚset_values_dictr
  r  )rq   r©   rº   rò   r   Úis_settingsÚfields   &      rP   r²   Ú"PydanticModelTransformer.transform-  s  € ð �i‰iˆØ�w‰w�|‰|ˆà×(Ñ(Ô*Ø×$Ñ$Ó&ˆØ×$Ñ$ VÓ,ˆß“cÑ`ÐRV×RZÑRZÐ[^Ð\^ÑR_Ó`—c—c’cÑ`ÐRV×RZÑRZÐ[^Ð\^ÑR_Ó`Ó`ˆØ×Ñ˜V¨[Ô9Ø×!Ñ! &Ô)Ø�‰˜×'<Ñ'<ÀÐ'E×'^Ð'^ÈÏÉÐZ^ÐI^ˆÔ_àÁ&ÓIÁ&¸—z‘z 5§?¡?Ó#4Ò4Á&ÑIØ�f×,Ñ,Ó.ð'
ˆ�‰”lÓ#ùÚIs   Ã>#Ec                ó   <€ V ^8„  d   QhRR/# r  r   )rO   rg   s   "€rP   rQ   r  F  s   ø€ ÷ 2ñ 2¨Tñ 2rR   c                óø  € V P                   P                  P                  P                  P	                  4        F½  w  r\        VP                  \        4      '       g   K'  VP                  P                  ^ ,          p\        V\        4      '       g   K\  \        VP                  \        4      '       g   K~  VP                  P                  \         R28X  g   K¢  RVP                  P                  n        K¿  	  R# )a3  When we decorate a function `f` with `pydantic.validator(...), 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()` call as a classmethod.
z.class_validators.validatorTN)r  r¹   rº   ÚnamesrÎ   r�   r‚   r   Úoriginal_decoratorsr   Úcalleer    ru   Ú
_NAMESPACEÚfuncÚis_class)rq   r)  r‡   Ú	first_decs   &   rP   r"  Ú4PydanticModelTransformer.adjust_validator_signaturesF  sž   € ð Ÿ™Ÿ™×+Ñ+×1Ñ1×7Ñ7Ö9‰IˆDÜ˜#Ÿ(™(¤I×.Ô.ØŸH™H×8Ñ8¸Õ;�	ä˜y¬(×3Ô3Ü" 9×#3Ñ#3´X×>Ô>Ø!×(Ñ(×1Ñ1¼
°|ÐC^Ð5_Ö_à-1�C—H‘H—M‘MÖ*ó :rR   c                ó   <€ V ^8„  d   QhRR/# )rJ   rL   ÚModelConfigDatar   )rO   rg   s   "€rP   rQ   r  X  s   ø€ ÷ ñ Ð 1ñ rR   c                ó˜  € V P                   pVP                  p\        4       pVP                  P                   Fß  p\        V\        4      '       g   K  VP                  R8X  g   K.  VP                  P                   F;  p\        V\        4      '       g   K  VP                  V P                  V4      4       K=  	  VP                  '       g   K—  VP                  '       d   K«  V P                  P                  '       g   KÉ  \        VP                   V4       Ká  	  VP"                  P$                  R,           F�  p\&        VP(                  9  d   K  VP                   P+                  \-        \/        V4      4      4       VP(                  \&        ,          R,          P1                  4        F  w  rxVP3                  Wx4       K  	  K�  	  V# )zj
Collects the values of the config attributes that are used by the plugin, accounting for parent classes.
ÚConfigºr¡   NNrò   )r  r¹   r:  ÚdefsÚbodyr�   r   r)  r   ÚupdateÚget_config_updateÚhas_alias_generatorÚallow_population_by_field_namerl   rþ   Úerror_required_dynamic_aliasesrË   rº   r„   r  r
  Úadd_plugin_dependencyr6   rx   rÎ   Ú
setdefault)	rq   r©   r¹   rò   ÚstmtÚsubstmtrº   r)  Úvalues	   &        rP   r#  Ú'PydanticModelTransformer.collect_configX  sB  € ð �i‰iˆØ�g‰gˆÜ Ó"ˆØ—H‘H—M”MˆDÜ˜d¤H×-Ò-ÙØ�y‰y˜HÖ$Ø#Ÿy™yŸ~œ~�GÜ% g¬~×>Ò>Ù Ø—M‘M $×"8Ñ"8¸Ó"AÖBñ  .ð
 ×.×.Ò.Ø"×A×AÒAØ×*Ñ*×H×HÒHä2°3·7±7¸DÖAñ "ð —H‘H—L‘L ×$Ð$ˆDÜ 4§=¡=Ô0Ùð �G‰G×)Ñ)Ô*?ÄÈTÓ@RÓ*SÔTØ#Ÿ}™}¬\Õ:¸8ÕD×JÑJÖL‘�Ø×!Ñ! $Ö.ó  Mñ %ð ˆrR   c                ó2   <€ V ^8„  d   QhRRRS[ R,          /# )rJ   Úmodel_configr:  rL   ÚPydanticModelField©r   )rO   rg   s   "€rP   rQ   r  w  s&   ø€ ÷ Rñ RÐ+<ð RÁÐFZÕA[ñ RrR   c                óÚ  a€ V P                   pV P                   P                  p. p\        4       pVP                  P                   EF÷  p\        V\        4      '       g   K  VP                  ^ ,          p\        V\        4      '       d   \        VP                  4      '       g   Kb  VP                  '       g3   V P                  P                  '       d   \        VP                  V4       VP                   P"                  P%                  VP                  4      pVf   KÛ  VP&                  p	\        V	\(        4      '       d   Kÿ  \        V	\*        4      '       g   EK  V	P,                  '       d   EK-  V P/                  W6V4      p
V P1                  V4      w  r¼V'       dE   VP2                  '       g3   V P                  P4                  '       d   \7        VP                  V4       VP9                  \;        VP                  V
VVVP<                  VP>                  R7      4       VPA                  VP                  4       EKú  	  VPC                  4       pVP                   PD                  R,           Fø  p\F        VPH                  9  d   K  . pVP                  PK                  \M        \O        V4      4      4       VPH                  \F        ,          R,          PQ                  4        Fw  w  opSV9  d;   \:        PS                  VV4      pVPA                  S4       VP9                  V4       KG  V3R lV 4       w  pVPU                  V4       VP9                  V4       Ky  	  Wý,           pKú  	  V# )zB
Collects the fields for the model, accounting for parent classes
©r)  Úis_requiredÚaliasÚhas_dynamic_aliasÚlineÚcolumnr=  r   c              3   óL   <"  € T F  qP                   S8X  g   K  Vx € K  	  R # 5irj   )r)  )r{   Úar)  s   & €rP   r}   Ú:PydanticModelTransformer.collect_fields.<locals>.<genexpr>Å  s   øé € ÐH©: a¿¹À4¹§¢«:ùs   ƒ$š
$)+r  r¹   Úsetr>  r?  r�   r   Úlvaluesr    rF   r)  Ú
new_syntaxrl   rÿ   Úerror_untyped_fieldsrË   rº   r1  ré   r‚   r"   r*   Úis_classvarÚget_is_requiredÚget_alias_inforC  rþ   rD  ÚappendrM  rT  rU  ÚaddÚcopyr„   r  r
  rE  r6   rx   rÎ   ÚdeserializeÚremove)rq   rL  r©   r¹   r   Úknown_fieldsrG  Úlhsr‡   r‚   rQ  rR  rS  Ú
all_fieldsrº   Úsuperclass_fieldsÚdatar-  r)  s   &&                @rP   r$  Ú'PydanticModelTransformer.collect_fieldsw  s�  ø€ ð
 �i‰iˆØ�i‰i�m‰mˆØˆÜ“uˆØ—H‘H—M•MˆDÜ˜d¤N×3Ò3Ùà—,‘,˜q•/ˆCÜ˜c¤8×,Ò,´NÀ3Ç8Á8×4LÒ4LÙà—?—?�? t×'9Ñ'9×'M×'MÐ'MÜ$ S§W¡W¨dÔ3ð
 —(‘(—.‘.×$Ñ$ S§X¡XÓ.ˆCØŠ{ñ à—8‘8ˆDÜ˜$¤×0Ò0ñ Ü˜d¤C×(Ò(ò ð ××ÐÚà×.Ñ.¨s¸#Ó>ˆKØ'+×':Ñ':¸4Ó'@Ñ$ˆEç!Ø$×C×CÐCØ×&Ñ&×D×DÐDä.¨s¯w©w¸Ô=Ø�M‰MÜ"ØŸ™Ø +ØØ&7ØŸ™ØŸ;™;ôô	ð ×Ñ˜SŸX™X×&ñk "ðl —[‘[“]ˆ
Ø—H‘H—L‘L ×$Ð$ˆDÜ 4§=¡=Ô0Ùà "Ðà�G‰G×)Ñ)Ô*?ÄÈTÓ@RÓ*SÔTà"Ÿm™m¬LÕ9¸(ÕC×IÑIÖK‘
��dØ˜|Ô+Ü.×:Ñ:¸4ÀÓF�EØ ×$Ñ$ TÔ*Ø%×,Ñ,¨UÖ3äH©:ÓH‘H�UØ×%Ñ% eÔ,Ø%×,Ñ,¨UÖ3ñ Lð +Õ7ŠJñ# %ð$ ÐrR   c                ó<   <€ V ^8„  d   QhRS[ R,          RRRS[RR/# )rJ   r   rM  rò   r:  r,  rL   N©r   rë   )rO   rg   s   "€rP   rQ   r  Ë  s8   ø€ ÷ Dñ D¡dÐ+?Õ&@ð DÐJ[ð DÑjnð DÐswñ DrR   c                ó*  € V P                   pV P                  P                  pVP                  RJpT;'       g/    \	        VP
                  ;'       d    VP                  '       * 4      pV P                  WWvR7      pV P                  W4      '       gD   \        R4      p	VP                  \        V	\        \        P                  4      R\        4      4       RVP                  P                   P"                  9  d   \%        VRV\'        4       4       R# 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.
T©ÚtypedÚforce_all_optionalÚ	use_aliasÚkwargsNrp   )r  rl   rý   rC  rë   rB  Úget_field_argumentsÚshould_init_forbid_extrar*   r`  r   r7   r=   Úexplicitr   r¹   rº   r1  Ú
add_methodr:   )
rq   r   rò   r,  r©   ro  rq  rp  Úinit_argumentsÚvars
   &&&&      rP   r%  Ú(PydanticModelTransformer.add_initializerË  sè   € ð �i‰iˆØ×"Ñ"×-Ñ-ˆØ×9Ñ9ÀÐEˆ	Ø(÷ 
ð 
¬DØ×&Ñ&×TÐT¨v×/TÑ/TÔ+Tó-
Ðð ×1Ñ1ØÐ4Fð 2ó 
ˆð ×,Ñ,¨V×<Ò<Ü�h“-ˆCØ×!Ñ!¤(¨3´¼	×8JÑ8JÓ0KÈTÔS\Ó"]Ô^à˜SŸW™WŸ\™\×/Ñ/Ô/Ü�s˜J¨¼»
ÖCñ 0rR   c                ó2   <€ V ^8„  d   QhRS[ R,          RR/# )rJ   r   rM  rL   NrN  )rO   rg   s   "€rP   rQ   r  á  s!   ø€ ÷ 8
ñ 8
©4Ð0DÕ+Eð 8
È$ñ 8
rR   c           
     ó  € V P                   pVP                  P                  \         R2VP                  P                  \         R24      .4      p\	        V\        4       .4      p\        \        RV4      VR\        4      pV P                  VRRRR7      pV.V,           pVP                  P                  \         R24      pR	pVP                  P                  R
,           V,           p	\        R8¼  d‹   \        TT	\        R8¼  d)   \        RVP                  P                  R,           R7      M
\        R4      . V\        \         P"                  4      4      p
\%        VV	. V\        \         P"                  4      4      pM\'        W‰R. V4      p
\%        W‰. V4      p\)        \*        V4      VP                  P,                  P.                  V&   \1        V
\        4      '       d   T
pM\        V
4      p\3        VRVVVV
RR7       R# )zÇ
Adds a fully typed `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_setNTFrn  z.objectÚ_PydanticBaseModelrU   z
.construct)Ú	namespaceÚ	construct)Úreturn_typeÚ	self_typeÚtvar_defÚis_classmethod)r¡   é   )r¡   é   r!  )r  rË   Ú
named_typeÚBUILTINS_NAMErA   r:   r   r*   r   rs  r¹   ru   r£   r@   r?   r7   r=   Úfrom_omitted_genericsr)   rG   r&   r   rº   r1  r�   rv  )rq   r   r©   Úset_strÚoptional_set_strÚfields_set_argumentÚconstruct_argumentsÚobj_typeÚself_tvar_nameÚtvar_fullnameÚtvdÚself_tvar_exprr�  s   &&           rP   r&  Ú-PydanticModelTransformer.add_construct_methodá  sÐ  € ð �i‰iˆØ—'‘'×$Ñ$¬ °dÐ%;¸c¿g¹g×>PÑ>PÔTaÐSbÐbfÐQgÓ>hÐ=iÓjˆÜ$ g¬x«zÐ%:Ó;ÐÜ&¤s¨=Ð:JÓ'KÐM]Ð_cÔelÓmÐØ"×6Ñ6°vÀTÐ^cÐotÐ6ÓuÐØ2Ð3Ð6IÕIÐà—7‘7×%Ñ%¬¨°wÐ&?Ó@ˆØ-ˆØŸ™×(Ñ(¨3Õ.°Õ?ˆÜ Ô'ÜØØô *¨WÔ4ô ˜b¨C¯G©G×,<Ñ,<¸|Õ,KÕLä" 2›àØÜœ	×7Ñ7Ó8óˆCô )ØØØØÜœ	×7Ñ7Ó8ó‰Nô ˜^¸BÀÀHÓMˆCÜ(¨ÈÈHÓUˆNÜ-<¼TÀ>Ó-Rˆ�‰�‰×Ñ˜>Ñ*ô �cœ;×'Ò'Ø‰Iä# CÓ(ˆIäØØØØ!ØØØ÷	
rR   c                ó8   <€ V ^8„  d   QhRS[ R,          RS[RR/# )rJ   r   rM  r  rL   Nrl  )rO   rg   s   "€rP   rQ   r    s-   ø€ ÷ Gñ G¡Ð&:Õ!;ð GÁTð GÈdñ GrR   c                ó4  € V P                   pVP                  P                  pV EFR  pVP                  P	                  VP
                  4      pVeº   VP                  p\        V\        4      '       d	   W'n	        KW  \        V\        4      '       d9   VP                  P                  '       g   VP                  P                  4        K¥   \        V4      pRV RVP"                   R2p	\%        W“P                  VP                  4       Kæ  VP'                  VRR7      pWGn        W'n	        \)        V4      R,           \+        V4      ,           Vn        \/        \0        V4      VP                  \+        V4      &   EKU  	  R#   \         d    \!        T4      p LÀi ; i)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.
Nzsym_node.node: r  r  F)rq  rU   )r  r¹   rº   r1  ré   r)  r‚   r�   r*   Úis_propertyr"   rË   Úfinal_iterationÚdeferrM   Ú	TypeErrorÚreprrr   r	  Úto_varrx   r  Ú	_fullnamer&   r   )
rq   r   r  r©   rº   r-  Úsym_noderx  Úvar_strr  s
   &&&       rP   r'  Ú#PydanticModelTransformer.set_frozen  s(  € ð �i‰iˆØ�w‰w�|‰|ˆÜˆEØ—z‘z—~‘~ e§j¡jÓ1ˆHØÒ#Ø—m‘m�Ü˜c¤3×'Ò'Ø&,–OÜ ¤_×5Ò5¸c¿g¹g×>U×>UÐ>Uà—G‘G—M‘M–Oð,Ü"% c£(˜ð  /¨w¨i°zÀ#Ç-Á-ÀÐPQÐR�FÜ-¨f·g±g¸s¿w¹wÖGà—l‘l 4°5�lÓ9�Ø”Ø"(”Ü ,¨TÓ 2°SÕ 8¼8ÀC»=Õ H�”Ü,;¼DÀ#Ó,F�—
‘
œ8 C›=Ô)ó/ øô %ô ,ä"& s£)šð,ús   ÃE>Å>FÆFc                ó4   <€ V ^8„  d   QhRS[ RS[R,          /# )rJ   rH  rL   r:  )r   r   )rO   rg   s   "€rP   rQ   r  <  s!   ø€ ÷ ñ ©ð ¹HÐEVÕ<Wñ rR   c                óî  € VP                   ^ ,          p\        V\        4      '       d   VP                  V P                  9   g   R# VP                  R8X  d®   \        VP
                  \        4      '       d   VP
                  P                  R8H  pMg\        VP
                  \        4      '       d   VP
                  P                  R8H  pM-\        VP                  V P                  P                  V4       R# \        VR7      # VP                  R8X  dL   Rp\        VP
                  \        4      '       d   VP
                  P                  R8X  d   Rp\        VR	7      # \        VP
                  \        4      '       dJ   VP
                  P                  R9   d/   \        R/ VP                  VP
                  P                  R
8H  /B # \        VP                  V P                  P                  V4       R# )zÇ
Determines the config update due to a single statement in the Config class 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_generatorTzbuiltins.NoneF)rB  úbuiltins.True)r¥  zbuiltins.Falser   )rZ  r�   r    r)  Útracked_config_fieldsÚrvaluer$   rI  r   Úerror_invalid_config_valuer  rË   r:  ru   )rq   rH  rf  r£  rB  s   &&   rP   rA  Ú*PydanticModelTransformer.get_config_update<  s[  € ð �o‰o˜aÕ ˆÜ˜3¤×)Ò)¨c¯h©h¸$×:TÑ:TÔ.TÙØ�8‰8�wÔÜ˜'Ÿ.™.¬'×2Ò2Ø&Ÿ~™~×3Ñ3°xÑ?‘Ü˜GŸN™N¬J×7Ò7Ø&Ÿ~™~×2Ñ2°hÑ>‘ä*¨3¯8©8°T·Y±Y·]±]ÀGÔLÙÜ"°Ô=Ð=Ø�8‰8Ð(Ô(Ø"&ÐÜ˜'Ÿ.™.¬(×3Ò3¸¿¹×8OÑ8OÐSbÔ8bØ&+Ð#Ü"Ð7JÔKÐKÜ�g—n‘n¤h×/Ò/°G·N±N×4KÑ4KÐOrÔ4rÜ"Ñ\ c§h¡h°·±×0GÑ0GÈ?Ñ0ZÐ%[Ñ\Ð\Ü" 3§8¡8¨T¯Y©Y¯]©]¸GÔDÙrR   c                ó2   <€ V ^8„  d   QhRS[ RS[RS[RS[/# )rJ   r¹   rG  rf  rL   )r   r   r    rë   )rO   rg   s   "€rP   rQ   r  Y  s)   ø€ ÷ .ñ .™Xð .©^ð .Á(ð .Étñ .rR   c                óÜ  € VP                   p\        V\        4      '       dK   \        V P                  VP
                  ,          P                  4      p\        P                  V4      '       * # \        V\        4      '       dÜ   \        VP                  \        4      '       d¼   VP                  P                  \        8X  d�   \        VP                  VP                   4       F.  w  rVVe   VR8X  d   VP"                  \$        J u # VR8X  g   K-   R# 	  \        V P                  VP
                  ,          P                  4      p\        P                  V4      '       * # \        V\$        4      # )zW
Returns a boolean indicating whether the field defined in `stmt` is a required field.
rÂ   rÃ   F)r§  r�   r'   rB   rº   r)  r½   r±   Útype_has_implicit_defaultr   r3  r#   ru   r•   ÚziprÇ   Ú	arg_namesrr   r   )r¹   rG  rf  ÚexprÚ
value_typerÅ   r)  s   &&&    rP   r^  Ú(PydanticModelTransformer.get_is_requiredX  sþ   € ð
 �{‰{ˆÜ�dœH×%Ò%ä(¨¯©°#·(±(Õ);×)@Ñ)@ÓAˆJÜ/×IÑIÈ*ÓUÔUÐUÜ�dœH×%Ò%¬*°T·[±[Ä'×*JÒ*JÈtÏ{É{×OcÑOcÔguÔOuô ! §¡¨D¯N©NÖ;‘	�à’< 4¨9Ô#4ØŸ=™=¬LÐ8Ò8ØÐ,Ö,Ú ñ <ô )¨¯©°#·(±(Õ);×)@Ñ)@ÓAˆJÜ/×IÑIÈ*ÓUÔUÐUä˜$¤Ó-Ð-rR   c                ó6   <€ V ^8„  d   QhRS[ S[,          RS[/# )rJ   Útype_rL   )r   r<   rë   )rO   rg   s   "€rP   rQ   r  s  s    ø€ ÷ ñ ©±*Õ)=ð Á$ñ rR   c                ó  € \        V \        4      '       d   R# \        V \        4      '       dQ   \        ;QJ d&    R V P                   4       F  '       g   K   RM	  RM! R V P                   4       4      '       d   R# R# )z¢
Returns True if the passed type will be given an implicit default value.

In pydantic v1, this is the case for Optional types and Any (with default value None).
Tc              3   ór   "  € T F-  p\        V\        4      ;'       g    \        V\        4      x € K/  	  R # 5irj   )r�   r:   r7   )r{   r  s   & rP   r}   ÚEPydanticModelTransformer.type_has_implicit_default.<locals>.<genexpr>|  s-   é € ð 0
ÙP[ÈŒJ�tœXÓ&×CÐC¬*°T¼7Ó*CÔCÓP[ùs   ‚7ž7F)r�   r7   rA   rƒ   rÎ   )r³  s   &rP   r¬  Ú2PydanticModelTransformer.type_has_implicit_defaultr  sc   € ô �eœW×%Ò%áÜ�eœY×'Ò'¯C«Cñ 0
ØPU×P[ÒP[ó0
¯C¯CªCñ 0
ØPU×P[ÒP[ó0
÷ -
ò -
ñ ÙrR   c                óL   <€ V ^8„  d   QhRS[ RS[S[S[,          S[3,          /# )rJ   rG  rL   )r   r
   r   rM   rë   )rO   rg   s   "€rP   rQ   r  „  s)   ø€ ÷ ñ ™^ð ±±h¹sµmÁTÐ6IÕ0Jñ rR   c                óÀ  € V P                   p\        V\        4      '       d   R# \        V\        4      '       d@   \        VP                  \
        4      '       d    VP                  P                  \        8X  g   R# \        VP                  4       FI  w  r#VR8w  d   K  VP                  V,          p\        V\        4      '       d   VP                  R3u # Ru # 	  R# )a   
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.
FrR  )NF)NT)r§  r�   r'   r   r3  r#   ru   r•   Ú	enumerater®  rÇ   r$   rI  )rG  r¯  ÚiÚarg_namerÅ   s   &    rP   r_  Ú'PydanticModelTransformer.get_alias_infoƒ  s³   € ð �{‰{ˆÜ�dœH×%Ò%àÐô �tœX×&Ò&¬:°d·k±kÄ7×+KÒ+KÐPT×P[ÑP[×PdÑPdÔhvÔPvð Ðä$ T§^¡^Ö4‰KˆAØ˜7Ô"ÙØ—)‘)˜A•,ˆCÜ˜#œw×'Ò'Ø—y‘y %Ð'Ò'à!Ò!ñ 5ð ÐrR   c                óV   <€ V ^8„  d   QhRS[ R,          RS[RS[RS[RS[ S[,          /# )rJ   r   rM  ro  rp  rq  rL   )r   rë   r   )rO   rg   s   "€rP   rQ   r     s?   ø€ ÷ ñ ÙÐ/Õ0ðÙ9=ðÙSWðÙdhðá	‰h�ñrR   c           
     óÌ   € V P                   P                  P                  pV Uu. uF2  pV'       d   VP                  '       d   K  VP	                  WRW4R7      NK4  	  ppV# u upi )z³
Helper function used during the construction of the `__init__` and `construct` method signatures.

Returns a list of mypy Argument instances for use in the generated signatures.
)ro  Úforce_optionalrq  )r  r¹   rº   rS  Úto_argument)rq   r   ro  rp  rq  rº   r-  Ú	argumentss   &&&&&   rP   rs  Ú,PydanticModelTransformer.get_field_arguments   se   € ð �y‰y�}‰}×!Ñ!ˆñ  ó
á�ß %×"9Õ"9ô iˆE×Ñ˜dÐ@RÐÖhÙð 	ð 
ð
 Ðùò
s   ¥A!²A!ÁA!c                ó8   <€ V ^8„  d   QhRS[ R,          RRRS[/# )rJ   r   rM  rò   r:  rL   rl  )rO   rg   s   "€rP   rQ   r  °  s*   ø€ ÷ 4ñ 4©tÐ4HÕ/Ið 4ÐSdð 4Ñimñ 4rR   c                óÔ   € 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)rC  Úis_dynamic_alias_presentrë   rB  r£  rl   rü   )rq   r   rò   s   &&&rP   rt  Ú1PydanticModelTransformer.should_init_forbid_extra°  sR   € ð ×4×4Ð4Ø×,Ñ,¨V´T¸&×:TÑ:TÓ5U×VÒVÙØ××ÐÙØ×!Ñ!×3Ñ3Ð3rR   c                ó:   <€ V ^8„  d   QhRS[ R,          RS[RS[/# )rJ   r   rM  rB  rL   rl  )rO   rg   s   "€rP   rQ   r  ¿  s*   ø€ ÷ ñ ©Ð.BÕ)Cð ÑZ^ð Ñcgñ rR   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)rS  rR  )r   rB  r-  s   && rP   rÆ  Ú1PydanticModelTransformer.is_dynamic_alias_present¾  s>   € ó ˆEØ×&×&Ò&Úñ ÷ Û�Ø—;‘;Ô&Úñ  ñ rR   c                ó6   <€ V ^8„  d   Qh/ S[ S[,          ;R&   # )rJ   r¦  )r	   rM   )rO   rg   s   "€rP   rQ   r    s   ø‡ ‚ Ù™s�8ñ ò rR   r  N>   r¡  r  r  r(  r¤  rC  )rÚ   rÛ   rÜ   rÝ   r¦  rp   r²   r"  r#  r$  r%  r&  r'  rA  Ústaticmethodr^  r¬  r_  rs  rt  rÆ  r  rÞ   rß   r  s   @rP   r±   r±     sÜ   ø‡ € ò'Ð÷+ð +÷
ð 
÷22ð 2÷$ð ÷>Rð R÷hDð D÷,8
ð 8
÷tGð G÷Bð ð8 ÷.ó ð.ð2 ÷ó ðð  ÷ó ð÷8ð ÷ 4ð 4ð ÷ó ð÷A ƒ rR   r±   c                   ó„   a € ] tR tRt o V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR	 lt]V 3R
 lR l4       t	Rt
V tR# )rM  iÎ  c                óN   <€ V ^8„  d   QhRS[ RS[RS[S[ ,          RS[RS[RS[/# )rJ   r)  rQ  rR  rS  rT  rU  )rM   rë   r   rN   )rO   rg   s   "€rP   rQ   ÚPydanticModelField.__annotate__Ï  sA   ø€ ÷ ñ ÙðÙ&*ðÙ3;¹Cµ=ðÙUYðÙadðÙnqñrR   c                óN   € Wn         W n        W0n        W@n        WPn        W`n        R # rj   rP  )rq   r)  rQ  rR  rS  rT  rU  s   &&&&&&&rP   rp   ÚPydanticModelField.__init__Ï  s$   € ð Œ	Ø&ÔØŒ
Ø!2ÔØŒ	ØŽrR   c                ó,   <€ V ^8„  d   QhRS[ RS[RS[/# )rJ   rº   rq  rL   )r(   rë   r*   )rO   rg   s   "€rP   rQ   rÏ  Ù  s"   ø€ ÷ /ñ /™8ð /±ð /¹ñ /rR   c                óª   € V P                   pV'       d   V P                  e   V P                  p\        W1V P                   ,          P                  4      # rj   )r)  rR  r*   r½   )rq   rº   rq  r)  s   &&& rP   rš  ÚPydanticModelField.to_varÙ  s9   € Ø�y‰yˆß˜Ÿ™Ò/Ø—:‘:ˆDÜ�4˜dŸi™i�×-Ñ-Ó.Ð.rR   c          
      ó8   <€ V ^8„  d   QhRS[ RS[RS[RS[RS[/# )rJ   rº   ro  rÀ  rq  rL   )r(   rë   r   )rO   rg   s   "€rP   rQ   rÏ  ß  s2   ø€ ÷ 

ñ 

¡ð 

±ð 

Átð 

ÑX\ð 

Ñaiñ 

rR   c                óH  € V'       d<   WP                   ,          P                  e   WP                   ,          P                  pM\        \        P                  4      p\        V P                  W4      TR V'       g   V P                  '       g   \        R7      # \        R7      # )N)ÚvariableÚtype_annotationÚinitializerÚkind)
r)  r½   r7   r=   ru  r   rš  rQ  r   r   )rq   rº   ro  rÀ  rq  rØ  s   &&&&& rP   rÁ  ÚPydanticModelField.to_argumentß  sw   € ß�TŸ)™)•_×)Ñ)Ò5Ø"§9¡9�o×2Ñ2‰Oä%¤i×&8Ñ&8Ó9ˆOÜØ—[‘[ Ó1Ø+Øß"0¸×8H×8HÐ8H”ô	
ð 	
ô OXô	
ð 	
rR   c                ó    <€ V ^8„  d   QhRS[ /# r÷   )r   )rO   rg   s   "€rP   rQ   rÏ  ë  s   ø€ ÷ ñ ™8ñ rR   c                ó   € V P                   # rj   )Ú__dict__)rq   s   &rP   r*  ÚPydanticModelField.serializeë  s   € Ø�}‰}ÐrR   c                ó*   <€ V ^8„  d   QhRS[ RS[RR/# )rJ   rº   ri  rL   rM  )r(   r   )rO   rg   s   "€rP   rQ   rÏ  ï  s#   ø€ ÷ ñ ™xð ©xð Ð<Pñ rR   c                ó   € V ! R/ VB # )Nr   r   )r¹   rº   ri  s   &&&rP   rc  ÚPydanticModelField.deserializeî  s   € á‰{�T‰{ÐrR   )rR  rU  rS  rQ  rT  r)  N)rÚ   rÛ   rÜ   rÝ   rp   rš  rÁ  r*  Úclassmethodrc  rÞ   rß   r  s   @rP   rM  rM  Î  sA   ø‡ € ÷ð ÷/ð /÷

ð 

÷ð ð ÷ó örR   rM  c                   ól   a € ] tR tRt o RV 3R lR lltV 3R lR ltV 3R lR ltV 3R	 lR
 ltRtV t	R# )r:  ió  Nc                óž   <€ V ^8„  d   QhRS[ S[,          RS[ S[,          RS[ S[,          RS[ S[,          RS[ S[,          RS[ S[,          /# )rJ   r£  r(  r  r  rC  rB  )r   rë   )rO   rg   s   "€rP   rQ   ÚModelConfigData.__annotate__ô  s_   ø€ ÷ 7ñ 7á™t•nð7ñ !¡�ð7ñ ™•ð	7ñ
 ™4•.ð7ñ )1±­ð7ñ &¡d�^ñ7rR   c                óN   € Wn         W n        W0n        W@n        WPn        W`n        R # rj   )r£  r(  r  r  rC  rB  )rq   r£  r(  r  r  rC  rB  s   &&&&&&&rP   rp   ÚModelConfigData.__init__ô  s&   € ð )ÔØ,ÔØŒØ ŒØ.LÔ+Ø#6Ö rR   c                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# r÷   rø   )rO   rg   s   "€rP   rQ   ræ    s   ø€ ÷ Iñ I¡¡c©3 h¥ñ IrR   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 rj   )rÞ  rÎ   )rq   ÚkÚvs   &  rP   r+  ÚModelConfigData.set_values_dict  s1   € Ø!%§¡×!4Ñ!4Ô!6ÔHÑ!6™˜¸!”�’Ñ!6ÒHÐHùÓHs   ž5«5c                ó2   <€ V ^8„  d   QhRS[ R,          RR/# )rJ   rò   r:  rL   N)r   )rO   rg   s   "€rP   rQ   ræ    s!   ø€ ÷  ñ  ™XÐ&7Õ8ð  ¸Tñ  rR   c                óx   € Vf   R # VP                  4       P                  4        F  w  r#\        WV4       K  	  R # rj   )r+  rÎ   rí   )rq   rò   rë  rì  s   &&  rP   r@  ÚModelConfigData.update  s2   € ØŠ>ÙØ×*Ñ*Ó,×2Ñ2Ö4‰DˆAÜ�D˜QÖó 5rR   c                ó*   <€ V ^8„  d   QhRS[ RS[RR/# )rJ   ró   rI  rL   N)rM   r   )rO   rg   s   "€rP   rQ   ræ    s"   ø€ ÷ &ñ &™cð &©#ð &°$ñ &rR   c                ó<   € \        W4      f   \        WV4       R # R # rj   )r¼   rí   )rq   ró   rI  s   &&&rP   rF  ÚModelConfigData.setdefault  s   € Ü�4ÓÒ%Ü�D˜uÖ%ñ &rR   )r(  rC  r£  r  rB  r  )NNNNNN)
rÚ   rÛ   rÜ   rÝ   rp   r+  r@  rF  rÞ   rß   r  s   @rP   r:  r:  ó  s/   ø‡ € ÷7ò 7÷ Ið I÷ ð  ÷&ö &rR   r:  zpydantic-ormzInvalid from_orm callÚPydanticzpydantic-configzInvalid config valuezpydantic-aliaszDynamic alias disallowedzpydantic-unexpectedzUnexpected behaviorzpydantic-fieldzUntyped field disallowedzInvalid Field defaultsc                ó@   € V ^8„  d   QhR\         R\        R\        RR/# )rJ   Ú
model_namerË   rÌ   rL   N)rM   r-   r   )rO   s   "rP   rQ   rQ     s0   € ÷ Uñ Uœsð UÔ)?ð UÌ'ð UÐVZñ UrR   c                 ó>   € VP                  R V  R2V\        R7       R# )Ú"z" does not have orm_mode=True©ÚcodeN)ÚfailÚ	ERROR_ORM)rö  rË   rÌ   s   &&&rP   r  r    s   € Ø‡H�Hˆq��Ð9Ð:¸GÌ)€HÖTrR   c                ó@   € V ^8„  d   QhR\         R\        R\        RR/# )rJ   r)  rË   rÌ   rL   N)rM   r3   r   )rO   s   "rP   rQ   rQ     s1   € ÷ Oñ O¤Sð OÔ/Nð OÔY`ð OÐeiñ OrR   c                 ó>   € VP                  R V  R2V\        R7       R# )zInvalid value for "Config.rø  rù  N)rû  ÚERROR_CONFIG)r)  rË   rÌ   s   &&&rP   r¨  r¨    s   € Ø‡H�HÐ)¨$¨¨qÐ1°7Ä€HÖNrR   c                ó4   € V ^8„  d   QhR\         R\        RR/# ©rJ   rË   rÌ   rL   N©r3   r   )rO   s   "rP   rQ   rQ   "  s)   € ÷ Oñ OÔ(Gð OÔRYð OÐ^bñ OrR   c                 ó6   € V P                  R V\        R7       R# )z#Required dynamic aliases disallowedrù  N)rû  ÚERROR_ALIAS©rË   rÌ   s   &&rP   rD  rD  "  s   € Ø‡H�HÐ2°GÄ+€HÖNrR   c                ób   € V ^8„  d   QhR\         R\        \        \        3,          R\        RR/# )rJ   r  rË   rÌ   rL   N)rM   r   r-   r3   r   )rO   s   "rP   rQ   rQ   &  s8   € ÷ ;ñ ;Üð;ÜÔ2Ô4SÐSÕTð;Ü_fð;à	ñ;rR   c                 ó^   € R pRV  R2pVRV R2,          pVP                  WB\        R7       R# )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!rù  N)rû  ÚERROR_UNEXPECTED)r  rË   rÌ   ÚlinkÚfull_messages   &&&  rP   r	  r	  &  s?   € ð D€DØLÈVÈHÐTVÐW€LØÐ<¸T¸FÐB[Ð\Õ\€LØ‡H�Hˆ\Ô)9€HÖ:rR   c                ó4   € V ^8„  d   QhR\         R\        RR/# r  r  )rO   s   "rP   rQ   rQ   0  s(   € ÷ Gñ GÔ=ð GÌð GÐTXñ GrR   c                 ó6   € V P                  R V\        R7       R# )zUntyped fields disallowedrù  N)rû  ÚERROR_UNTYPEDr  s   &&rP   r\  r\  0  s   € Ø‡H�HÐ(¨'¼€HÖFrR   c                ó4   € V ^8„  d   QhR\         R\        RR/# r  )r-   r   )rO   s   "rP   rQ   rQ   4  s)   € ÷ sñ sÔ5Kð sÔV]ð sÐbfñ srR   c                 ó6   € V P                  R V\        R7       R# )z>Field default and default_factory cannot be specified togetherrù  N)rû  ÚERROR_FIELD_DEFAULTSr  s   &&rP   rÊ   rÊ   4  s   € Ø‡H�HÐMÈwÔ]q€HÖrrR   c                ó¾   € V ^8„  d   QhR\         R\        R\        \        ,          R\        R\
        \        ,          R\
        \        ,          R\        R\        R	R
/	# )rJ   r©   r)  rÇ   r€  r�  r‚  rƒ  Úis_newrL   N)r.   rM   r   r   r   r   rG   rë   )rO   s   "rP   rQ   rQ   8  sz   € ÷ P%ñ P%Ü	ðP%ä
ðP%ô Œx�.ðP%ô ð	P%ô
 œ�~ðP%ô ”zÕ"ðP%ô ðP%ô ðP%ð 
ñP%rR   c           	     óè  € V P                   P                  pWP                  9   d   VP                  V,          p	V	P                  '       dZ   \	        V	P
                  \        4      '       d:   V P                   P                  P                  P                  V	P
                  4       T;'       g    \        V4      pV'       g	   V'       d2   \        \        R4      \        P                  ! V4      R\        4      .p
M1T;'       g    \        V4      p\        \        R4      VR\        4      .p
W¢,           p. . . rÜpV Fv  pVP                   '       g   Q R4       hVP#                  VP                   4       VP#                  \%        VP&                  4      4       VP#                  VP(                  4       Kx  	  V P*                  P-                  \.         R24      p\1        Y½YÃYõ'       d   V.MRR7      p\        W\3        \5        4       .4      4      pVVn        \7        VV4      Vn        VVn        \=        V4      R,           V,           Vn        VP@                  Vn         WP                  9   d6   \C        WP                  4      pVP                  V,          VP                  V&   V'       dv   RVn"        \        VVP8                  4      pVVn        VP>                  Vn        RVn#        \I        V\K        R	4      .V4      pVP@                  Vn         \M        \N        V4      p	M\M        \N        V4      p	RV	n        W˜P                  V&   VPP                  P                  P                  P#                  V4       R# )
zq
Adds a new method to a class.

This can be dropped if/when https://github.com/python/mypy/issues/7301 is merged
Ú_clsNÚ__pydantic_self__z"All arguments must be fully typed.z	.function)Ú	variablesrU   Trã  ))r¹   rº   r1  Úplugin_generatedr�   r‚   r   r>  r?  rd  rC   r   r*   r>   Úmake_normalizedr   rØ  r`  r  r×  rÚ  rË   r†  r‡  r8   r   r!   r5   r½   r6  rx   r›  rT  rD   Úis_decoratedrƒ  r   r    r&   r   Údefn)r©   r)  rÇ   r€  r�  r‚  rƒ  r  rº   r‡   ÚfirstrÍ   r®  Ú	arg_kindsrÅ   Úfunction_typeÚ	signaturer5  Úr_namerì  Údecs   &&&&&&&&             rP   rv  rv  8  s�  € ð  �7‰7�<‰<€Dð �z‰zÔØ�j‰j˜ÕˆØ××Ð¤J¨s¯x©x¼×$AÒ$AØ�G‰G�L‰L×Ñ×$Ñ$ S§X¡XÔ.à×0Ð0œ]¨4Ó0€IßŸÜœ#˜f›+¤x×'?Ò'?À	Ó'JÈDÔRYÓZÐ[‰ð ×4Ð4¤¨tÓ!4ˆ	Üœ#Ð1Ó2°I¸tÄWÓMÐNˆØ�<€DØ&(¨"¨b˜)€IÛˆØ×"×"Ð"ÐHÐ$HÓHÐ"Ø×Ñ˜×,Ñ,Ô-Ø×Ñœ #§,¡,Ó/Ô0Ø×Ñ˜Ÿ™Ö"ñ	 ð —G‘G×&Ñ&¬-¨¸	Ð'BÓC€MÜØ˜i°mÖ]eÐPXÉzÐkoô€Iô �4œu¤h£j \Ó2Ó3€DØ€D„IÜ! )¨TÓ2€D„IØ"€D„Mä! $Ó'¨#Õ-°Õ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Ö$rR   c                óR   € V ^8„  d   QhR\         \        \        3,          R\        /# ©rJ   ÚxrL   ©r   r   r%   rM   )rO   s   "rP   rQ   rQ   ‹  s$   € ÷ ñ ”Eœ(¤JÐ.Õ/ð ´Cñ rR   c                óN   € V P                   p\        V4      '       d   V! 4       # V# ©z[
Used for compatibility with mypy 0.740; can be dropped once support for 0.740 is dropped.
)ru   Úcallable©r$  Úfns   & rP   rx   rx   ‹  s"   € ð 
�‰€BÜ�‡|‚|Ù‹tˆØ€IrR   c                óR   € V ^8„  d   QhR\         \        \        3,          R\        /# r#  r%  )rO   s   "rP   rQ   rQ   •  s$   € ÷ ñ ””h¤
Ð*Õ+ð ´ñ rR   c                óN   € V P                   p\        V4      '       d   V! 4       # V# r'  )r)  r(  r)  s   & rP   r  r  •  s"   € ð 
�‰€BÜ�‡|‚|Ù‹tˆØ€IrR   c                óh   € V ^8„  d   QhR\         R\        \        \         \        3,          ,          /# )rJ   rç   rL   )rM   r   r   r   )rO   s   "rP   rQ   rQ   Ÿ  s'   € ÷ ñ œCð ¤H¬T´#´s°(­^Õ$<ñ rR   c                 ó|  € V P                  R 4      '       g   R# Rp\        P                  R8¼  d   ^ RIpM ^ RIp\        W4      ;_uu_ 4       pVP                  V4      uuRRR4       #   \
         d3    Rp ^ RIp LC  \
         d    ^ RIpTP                  R4         R# i ; ii ; i  + '       g   i     R# ; i)z.tomlNÚrbÚrzJNo TOML parser installed, cannot read configuration from `pyproject.toml`.)é   r…  )r›   ÚsysÚversion_infoÚtomllibÚtomliÚImportErrorÚtomlÚwarningsÚwarnÚopenÚload)rç   Ú	read_modeÚtoml_r8  Úrfs   &    rP   rè   rè   Ÿ  s¢   € Ø×Ñ ×(Ò(Ùà€IÜ
×Ñ˜7Ô"Üð	Û!ô 
ˆk×	%Ô	%¨Ø�z‰z˜"‹~÷ 
&Ò	%øô ô 		àˆIðÝ$øÜô Ûà—‘ÐjÔkÛð	úð		ú÷ 
&×	%Ð	%ús5   ·A* ÁB*Á*B'Á8A>Á> B#ÂB'Â"B#Â#B'Â*B;	éûÿÿÿ)r   i¢  )NNFF)yr2  Úconfigparserr   Útypingr   r   r   r   r   r	   r
   r   Ú
TypingTyper   Úmypy.errorcodesr   Ú
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*   Úmypy.optionsr,   Úmypy.pluginr-   r.   r/   r0   r1   r2   r3   Úmypy.pluginsr4   Úmypy.semanalr5   Úmypy.server.triggerr6   Ú
mypy.typesr7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   Úmypy.typevarsrC   Ú	mypy.utilrD   Úmypy.versionrE   Úmypy_versionÚpydantic.v1.utilsrF   rG   r6  rð   r  rÚ   r4  ry   r  rŽ   r•   r¢   r[   r£   r‡  rb   ra   rk   rœ   r±   rM  r:  rü  rÿ  r  r	  r  r  r  r¨  rD  r	  r\  rÊ   rv  rx   r  rè   r   rR   rP   Ú<module>rP     s  ðÛ 
Ý %ß ]× ]Õ ]å %÷÷ ÷ ÷ ÷ ÷ ÷ õ õ> !÷÷ ñ õ %Ý *Ý 5÷÷ ÷ õ õ (Ý 2Ý 4å ,ð5Ý%ð
 !€Ø'€Ø�c�rˆ]€
Ø"�| ?Ð3Ð Ø%˜,Ð&@ÐAÐ Ø(˜\Ð)=Ð>Ð Ø�<˜}Ð-€Ø"�|Ð#9Ð:Ð õAñ (¨Ó5Ð Ø0°HÔ<‘
À.€ð €õôr �Vô r ÷j"Cñ "CõJ#÷2lñ l÷^"ñ "÷J&ñ &ñ> �nÐ&=¸zÓJ€	ÙÐ*Ð,BÀJÓO€ÙÐ(Ð*DÀjÓQ€ÙÐ2Ð4IÈ:ÓVÐ ÙÐ*Ð,FÈ
ÓS€Ù Ð!1Ð3KÈZÓXÐ õUõOõOõ;õGõs÷P%õfõ÷øðm ô 5ç4Ð4ð5ús   ÃG ÇGÇG