§
    ©	Êjÿ!  ã                  óf  — d Z ddlmZ ddlmZ ddlmZmZ ddlm	Z	m
Z
mZmZmZ ddlmZ ddlmZmZ dd	lmZ dd
lmZmZ ddlmZmZ e	r;ddlmZ ddlmZ ddlm Z   edeef¬¦  «         G d„ dej!        ¦  «        ¦   «         Z"nej!        Z"dZ# ed¦  «        Z$ G d„ deee$         e"¬¦  «        Z%dS )z%RootModel class and type definitions.é    )Úannotations)ÚCallable)ÚcopyÚdeepcopy)ÚTYPE_CHECKINGÚAnyÚGenericÚLiteralÚTypeVar)ÚPydanticUndefined)ÚSelfÚdataclass_transformé   )ÚPydanticUserError)Ú_model_constructionÚ_repr)Ú	BaseModelÚ_object_setattr)ÚField)ÚPrivateAttr)ÚIncExF)Úkw_only_defaultÚfield_specifiersc                  ó   — e Zd ZdS )Ú_RootModelMetaclassN)Ú__name__Ú
__module__Ú__qualname__© ó    úCC:\Projects\Muse2API\.venv\Lib\site-packages\pydantic/root_model.pyr   r      s   € € € € € ØCFÀ3r    r   )Ú	RootModelÚRootModelRootTypec                  óÔ   ‡ — e Zd ZU dZdZdZdZded<   ˆ fd„Ze	fd4d	„Z
de
_        ed5d6ˆ fd„¦   «         Zd7d„Zd8d„Zd9d„Zd5d:d„Zerdddddddddddddddœd;d/„Zd<ˆ fd1„Zd=d3„Zˆ xZS )>r"   a»  !!! abstract "Usage Documentation"
        [`RootModel` and Custom Root Types](../concepts/models.md#rootmodel-and-custom-root-types)

    A Pydantic `BaseModel` for the root object of the model.

    Attributes:
        root: The root object of the model.
        __pydantic_root_model__: Whether the model is a RootModel.
        __pydantic_private__: Private fields in the model.
        __pydantic_extra__: Extra fields in the model.

    TNr#   Úrootc                ó”   •— | j                              d¦  «        }|�t          dd¬¦  «        ‚ t          ¦   «         j        di |¤Ž d S )NÚextraz<`RootModel` does not support setting `model_config['extra']`zroot-model-extra)Úcoder   )Úmodel_configÚgetr   ÚsuperÚ__init_subclass__)ÚclsÚkwargsr'   Ú	__class__s      €r!   r,   zRootModel.__init_subclass__6   sa   ø€ ØÔ ×$Ò$ WÑ-Ô-ˆØÐÝ#ØNÐUgðñ ô ð ð 	"�‰ŒÔ!Ð+Ð+ FÐ+Ð+Ð+Ð+Ð+r    ÚreturnÚNonec               óz   — d}|r|t           urt          d¦  «        ‚|}| j                             || ¬¦  «         d S )NTz_"RootModel.__init__" accepts either a single positional argument or arbitrary keyword arguments)Úself_instance)r   Ú
ValueErrorÚ__pydantic_validator__Úvalidate_python)Úselfr%   ÚdataÚ__tracebackhide__s       r!   Ú__init__zRootModel.__init__>   sZ   € Ø ÐØð 	ØÕ,Ð,Ð,Ý Øuñô ð ð ˆDØÔ#×3Ò3°DÈÐ3ÑMÔMÐMÐMÐMr    Ú_fields_setúset[str] | Noner   c                óJ   •— t          ¦   «                              ||¬¦  «        S )aS  Create a new model using the provided root object and update fields set.

        Args:
            root: The root object of the model.
            _fields_set: The set of fields to be updated.

        Returns:
            The new model.

        Raises:
            NotImplemented: If the model is not a subclass of `RootModel`.
        )r%   r;   )r+   Úmodel_construct)r-   r%   r;   r/   s      €r!   r>   zRootModel.model_constructJ   s"   ø€ õ ‰wŒw×&Ò&¨D¸kÐ&ÑJÔJÐJr    údict[Any, Any]c                ó    — | j         | j        dœS )N©Ú__dict__Ú__pydantic_fields_set__rA   ©r7   s    r!   Ú__getstate__zRootModel.__getstate__Z   s   € àœØ'+Ô'Cð
ð 
ð 	
r    Ústatec                ób   — t          | d|d         ¦  «         t          | d|d         ¦  «         d S )NrC   rB   )r   )r7   rF   s     r!   Ú__setstate__zRootModel.__setstate__`   s8   € Ý˜Ð7¸Ð?XÔ9YÑZÔZÐZÝ˜˜j¨%°
Ô*;Ñ<Ô<Ð<Ð<Ð<r    c                ó  — t          | ¦  «        }|                     |¦  «        }t          | j        ¦  «        }t          | j        d         ¦  «        |d<   t	          |d|¦  «         t	          |dt          | j        ¦  «        ¦  «         |S )z$Returns a shallow copy of the model.r%   rB   rC   )ÚtypeÚ__new__r   rB   r   rC   )r7   r-   ÚmÚnew_dicts       r!   Ú__copy__zRootModel.__copy__d   s{   € å�4‰jŒjˆØ�KŠK˜ÑÔˆÝ˜œÑ&Ô&ˆÝ ¤¨fÔ 5Ñ6Ô6ˆ�ÑÝ˜˜: xÑ0Ô0Ð0Ý˜Ð4µd¸4Ô;WÑ6XÔ6XÑYÔYÐYØˆr    Úmemoúdict[int, Any] | Nonec                óÞ   — t          | ¦  «        }|                     |¦  «        }t          |dt          | j        |¬¦  «        ¦  «         t          |dt          | j        ¦  «        ¦  «         |S )z!Returns a deep copy of the model.rB   )rO   rC   )rJ   rK   r   r   rB   r   rC   )r7   rO   r-   rL   s       r!   Ú__deepcopy__zRootModel.__deepcopy__n   sd   € å�4‰jŒjˆØ�KŠK˜ÑÔˆÝ˜˜:¥x°´ÀDÐ'IÑ'IÔ'IÑJÔJÐJõ 	˜Ð4µd¸4Ô;WÑ6XÔ6XÑYÔYÐYØˆr    ÚpythonF)ÚmodeÚincludeÚexcludeÚcontextÚby_aliasÚexclude_unsetÚexclude_defaultsÚexclude_noneÚexclude_computed_fieldsÚ
round_tripÚwarningsÚfallbackÚserialize_as_anyÚpolymorphic_serializationrT   úLiteral['json', 'python'] | strrU   úIncEx | NonerV   rW   ú
Any | NonerX   úbool | NonerY   ÚboolrZ   r[   r\   r]   r^   ú'bool | Literal['none', 'warn', 'error']r_   úCallable[[Any], Any] | Noner`   ra   r   c               ó   — dS )a�  !!! abstract "Usage Documentation"
                [`model_dump`](../concepts/serialization.md#python-mode)

            Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

            Args:
                mode: The mode in which `to_python` should run.
                    If mode is 'json', the output will only contain JSON serializable types.
                    If mode is 'python', the output may contain non-JSON-serializable Python objects.
                include: A set of fields to include in the output.
                exclude: A set of fields to exclude from the output.
                context: Additional context to pass to the serializer.
                by_alias: Whether to use the field's alias in the dictionary key if defined.
                exclude_unset: Whether to exclude fields that have not been explicitly set.
                exclude_defaults: Whether to exclude fields that are set to their default value.
                exclude_none: Whether to exclude fields that have a value of `None`.
                exclude_computed_fields: Whether to exclude computed fields.
                    While this can be useful for round-tripping, it is usually recommended to use the dedicated
                    `round_trip` parameter instead.
                round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
                warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
                    "error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
                fallback: A function to call when an unknown value is encountered. If not provided,
                    a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
                serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
                polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.

            Returns:
                A dictionary representation of the model.
            Nr   )r7   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   s                  r!   Ú
model_dumpzRootModel.model_dump€   s
   € ð` ˆCr    Úotherc                óÊ   •— t          |t          ¦  «        st          S | j        d         j        |j        d         j        k    o t          ¦   «                              |¦  «        S ©Nr%   )Ú
isinstancer"   ÚNotImplementedÚ__pydantic_fields__Ú
annotationr+   Ú__eq__)r7   rk   r/   s     €r!   rr   zRootModel.__eq__²   s[   ø€ Ý˜%¥Ñ+Ô+ð 	"Ý!Ð!ØÔ'¨Ô/Ô:¸eÔ>WØô?
ä
òð /å™œŸš¨Ñ.Ô.ð	/r    ú_repr.ReprArgsc              #  ó    K  — d| j         fV — d S rm   )r%   rD   s    r!   Ú__repr_args__zRootModel.__repr_args__¹   s   è è € Ø�d”iÐÐÐÐÐÐr    )r%   r#   r0   r1   )N)r%   r#   r;   r<   r0   r   )r0   r?   )rF   r?   r0   r1   )r0   r   )rO   rP   r0   r   )rT   rb   rU   rc   rV   rc   rW   rd   rX   re   rY   rf   rZ   rf   r[   rf   r\   rf   r]   rf   r^   rg   r_   rh   r`   rf   ra   re   r0   r   )rk   r   r0   rf   )r0   rs   )r   r   r   Ú__doc__Ú__pydantic_root_model__Ú__pydantic_private__Ú__pydantic_extra__Ú__annotations__r,   r   r:   Ú__pydantic_base_init__Úclassmethodr>   rE   rH   rN   rR   r   rj   rr   ru   Ú__classcell__)r/   s   @r!   r"   r"   "   s¢  ø€ € € € € € ðð ð #ÐØÐØÐàÐÐÑð,ð ,ð ,ð ,ð ,ð 5Fð Nð Nð Nð Nð Nð '+€HÔ#àðKð Kð Kð Kð Kð Kñ „[ðKð
ð 
ð 
ð 
ð=ð =ð =ð =ðð ð ð ðð ð ð ð ð ð 8ð 5=Ø$(Ø$(Ø"&Ø$(Ø"'Ø%*Ø!&Ø,1Ø$Ø@DØ48Ø%*Ø59ð!0	ð 0	ð 0	ð 0	ð 0	ð 0	ðd/ð /ð /ð /ð /ð /ð ð  ð  ð  ð  ð  ð  ð  r    r"   )Ú	metaclassN)&rv   Ú
__future__r   Ú_annotationsÚcollections.abcr   r   r   Útypingr   r   r	   r
   r   Úpydantic_corer   Útyping_extensionsr   r   Ú r   Ú	_internalr   r   Úmainr   r   Úfieldsr   ÚPydanticModelFieldr   ÚPydanticModelPrivateAttrr   ÚModelMetaclassr   Ú__all__r#   r"   r   r    r!   ú<module>r�      sÏ  ðØ +Ð +à 2Ð 2Ð 2Ð 2Ð 2Ð 2à $Ð $Ð $Ð $Ð $Ð $Ø Ð Ð Ð Ð Ð Ð Ð Ø @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @à +Ð +Ð +Ð +Ð +Ð +Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7Ð 7à Ð Ð Ð Ð Ð Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,àð =Ø3Ð3Ð3Ð3Ð3Ð3Ø?Ð?Ð?Ð?Ð?Ð?ØÐÐÐÐÐð
 Ð¨ÐBTÐVnÐAoÐpÑpÔpØFÐFÐFÐFÐFÐ1Ô@ÑFÔFñ qÔpØFÐFà-Ô<Ðà
€à�GÐ/Ñ0Ô0Ð ðX ð X ð X ð X ð X �	˜7Ð#4Ô5ÐATð X ñ X ô X ð X ð X ð X r    