ó
    °"³jù•  ã                  ó  • % S SK Jr  S SKrS SKrS SKrS SKrS SKrS SKJrJ	r	J
r
JrJrJrJrJrJrJrJrJr  S SKJrJr  S SKJrJrJrJrJrJrJrJrJrJ r J!r!J"r"J#r#J$r$  S SK%r%S SK&J'r'  SSK(J)r)J*r*J+r+J,r,J-r-J.r.J/r/J0r0J1r1  SS	K2J3r3J4r4J5r5J6r6J7r7J8r8J9r9J:r:J;r;J<r<J=r=J>r>J?r?  SS
K@JArAJBrBJCrDJErEJFrFJGrGJHrHJIrIJJrJJKrKJLrL  SSKMJNrN  \	(       a  S SK%JOrOJPrP  S SKQJRrRJSrS  S SKTJUrUJVrVJWrWJXrX  O	 S SKQJRrRJSrS  SS/rZ\" S5      r[\" SSS9r\\" S5      r]\$ " S S\5      5       r^ " S S\%R¾                  5      r_ " S S\`\[   \\[   5      ra\\\[   \a4   rbS\cS'   SDS jrdSES jreSFS jrfSGS jrg        SHS  jrhSIS! jriSS".SJS# jjrj " S$ S%5      rk\$ " S& S'\5      5       rl\RÚ                  " 5       rnS(\cS)'   SKS* jro " S+ S,5      rpSLS- jrqSMS. jrrSNS/ jrsSOS0 jrtSPS1 jru\	(       a  \_rCO " S2 S\D\_5      rC\A(       d1  S S3K%JvrwJxrx  \" S4\6" SS59" \w5      5      ry\	(       a  S S6K%Jvrv  O\yrvSNS7 jrzO,\	(       d%   " S8 S9\C\\[   5      r{SNS: jrzSQS; jr|SRS< jrvSSSTS= jjrx " S> S?\ S@SA9r}\" " SB SC\%R¾                  5      5       r~g! \Y a    SrRSrS GN”f = f)Ué    )ÚannotationsN)ÚIOÚTYPE_CHECKINGÚAnyÚTypeÚUnionÚGenericÚTypeVarÚCallableÚIterableÚOptionalÚAsyncIterableÚcast)ÚdateÚdatetime)ÚListÚUnpackÚLiteralÚClassVarÚProtocolÚRequiredÚ	AnnotatedÚ	ParamSpecÚ	TypeAliasÚ	TypedDictÚ	TypeGuardÚfinalÚoverrideÚruntime_checkable)Ú	FieldInfoé   )	ÚBodyÚIncExÚQueryÚModelTÚHeadersÚTimeoutÚNotGivenÚ
AnyMappingÚHttpxRequestFiles)Úis_listÚis_givenÚ	json_safeÚ	lru_cacheÚ
is_mappingÚ
parse_dateÚcoerce_booleanÚparse_datetimeÚstrip_not_givenÚextract_type_argÚis_annotated_typeÚis_type_alias_typeÚstrip_annotated_type)ÚPYDANTIC_V1Ú
ConfigDictÚGenericModelÚget_argsÚis_unionÚ	parse_objÚ
get_originÚis_literal_typeÚget_model_configÚget_model_fieldsÚfield_get_default)ÚRAW_RESPONSE_HEADER)ÚGetCoreSchemaHandlerÚValidatorFunctionWrapHandler)Ú
CoreSchemaÚcore_schema)Ú
ModelFieldÚModelSchemaÚLiteralSchemaÚModelFieldsSchemaÚ	BaseModelr:   Ú_TÚ_BaseModelT)ÚboundÚPc                  ó    • \ rS rSr% S\S'   Srg)Ú_ConfigProtocolég   ÚboolÚallow_population_by_field_name© N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__annotations__Ú__static_attributes__rV   ó    ÚN/home/mande/repo/quber/.venv/lib/python3.13/site-packages/anthropic/_models.pyrR   rR   g   s   ‡ à$(Ö(r^   rR   c                  óÀ  ^ • \ rS rSr% \(       a%  \\SS j5       5       r " S S\R                  5      r
O,\" S\" \R                  R                  SS5      5      S9rS	\S
'   \(       a  SrS\S'    SrS\S'    SSSSSSS.             SS jjrSSSSSSS.             S S jjr\S!S j5       r\\ S"       S#S jj5       5       r\(       d  \r\(       ay  \SSSSSSSSSSSSSS.                           S$U 4S jjj5       r\SSSSSSSSSSSSSSS.                             S%U 4S jjj5       rSrU =r$ SrU =r$ )&rL   él   c                ó   • U R                   $ ©N)Ú__fields_set__©Úselfs    r_   Úmodel_fields_setÚBaseModel.model_fields_seto   s   € ð ×&Ñ&Ð&r^   c                  óL   • \ rS rSr% \R
                  R                  rS\S'   Sr	g)ÚBaseModel.Configéu   r   ÚextrarV   N)
rX   rY   rZ   r[   ÚpydanticÚExtraÚallowrl   r\   r]   rV   r^   r_   ÚConfigrj   u   s   ‡ Ø!Ÿ™×-Ñ-ˆE�3Ö-r^   rp   ro   ÚDEFER_PYDANTIC_BUILDÚtrue)rl   Údefer_buildúClassVar[ConfigDict]Úmodel_configNzOptional[str]Ú_request_idÚ_workspace_idÚpythonTF)ÚmodeÚuse_api_namesÚexclude_unsetÚexclude_defaultsÚexclude_noneÚwarningsc          	     ó*   • U R                  UUUUUUS9$ )aÔ  Recursively generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

By default, fields that were not set by the API will not be included,
and keys will match the API response, *not* the property names from the model.

For example, if the API responds with `"fooBar": true` but we've defined a `foo_bar: bool` property,
the output will use the `"fooBar"` key (unless `use_api_names=False` is passed).

Args:
    mode:
        If mode is 'json', the dictionary will only contain JSON serializable types. e.g. `datetime` will be turned into a string, `"2024-3-22T18:11:19.117000Z"`.
        If mode is 'python', the dictionary may contain any Python objects. e.g. `datetime(2024, 3, 22)`

    use_api_names: Whether to use the key that the API responded with or the property name. Defaults to `True`.
    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 from the output.
    exclude_none: Whether to exclude fields that have a value of `None` from the output.
    warnings: Whether to log warnings when invalid fields are encountered. This is only supported in Pydantic v2.
)ry   Úby_aliasr{   r|   r}   r~   )Ú
model_dump)rf   ry   rz   r{   r|   r}   r~   s          r_   Úto_dictÚBaseModel.to_dict’   s,   € ð: �‰ØØ"Ø'Ø-Ø%Øð ð 
ð 	
r^   é   )Úindentrz   r{   r|   r}   r~   c          	     ó*   • U R                  UUUUUUS9$ )a  Generates a JSON string representing this model as it would be received from or sent to the API (but with indentation).

By default, fields that were not set by the API will not be included,
and keys will match the API response, *not* the property names from the model.

For example, if the API responds with `"fooBar": true` but we've defined a `foo_bar: bool` property,
the output will use the `"fooBar"` key (unless `use_api_names=False` is passed).

Args:
    indent: Indentation to use in the JSON output. If `None` is passed, the output will be compact. Defaults to `2`
    use_api_names: Whether to use the key that the API responded with or the property name. Defaults to `True`.
    exclude_unset: Whether to exclude fields that have not been explicitly set.
    exclude_defaults: Whether to exclude fields that have the default value.
    exclude_none: Whether to exclude fields that have a value of `None`.
    warnings: Whether to show any warnings that occurred during serialization. This is only supported in Pydantic v2.
)r…   r€   r{   r|   r}   r~   )Úmodel_dump_json)rf   r…   rz   r{   r|   r}   r~   s          r_   Úto_jsonÚBaseModel.to_json¸   s.   € ð4 ×#Ñ#ØØ"Ø'Ø-Ø%Øð $ð 
ð 	
r^   c                óL   • U R                  5        SU R                  S5       S3$ )NÚ(z, Ú))Ú__repr_name__Ú__repr_str__re   s    r_   Ú__str__ÚBaseModel.__str__Û   s-   € ð ×$Ñ$Ó&Ð' q¨×):Ñ):¸4Ó)@Ð(AÀÐCÐCr^   c                óŠ  • U R                  U 5      n0 n[        U 5      n[        U[        5      (       a  UR                  OUR                  S5      nUc
  [        5       n[        U 5      nUR                  5        HU  u  p‰U	R                  n
U
b  X¢;  a	  U(       a  Un
X¢;   a!  [        X*   XšS9XH'   UR                  U5        MH  [        U	5      XH'   MW     [        U 5      n0 nUR                  5        H@  u  p­X§;  d  M  Ub	  [        XÛS9OUn[        (       a  UR                  U
5        XäU
'   M<  XìU
'   MB     [         R#                  USU5        [        (       a)  UR%                  5         [         R#                  USU5        U$ [         R#                  USS 5        [         R#                  USU5        [         R#                  USU5        U$ )	NÚpopulate_by_name)ÚvalueÚfieldÚkey©r“   Útype_Ú__dict__rd   Ú__pydantic_private__Ú__pydantic_extra__Ú__pydantic_fields_set__)Ú__new__r@   Ú
isinstancerR   rU   ÚgetÚsetrA   ÚitemsÚaliasÚ_construct_fieldÚaddrB   Ú_get_extra_fields_typeÚconstruct_typer8   ÚobjectÚ__setattr__Ú_init_private_attributes)Ú_BaseModel__clsÚ_fields_setÚvaluesÚmÚfields_valuesÚconfigr’   Úmodel_fieldsÚnamer”   r•   Úextra_field_typeÚ_extrar“   Úparseds                  r_   Ú	constructÚBaseModel.constructâ   s£  € ð �M‰M˜%Ó ˆØ+-ˆä! %Ó(ˆô ˜&¤/×2Ñ2ð ×1Ò1à—‘Ð.Ó/ð 	ð ÑÜ›%ˆKä'¨Ó.ˆØ'×-Ñ-Ö/‰KˆDØ—+‘+ˆCØ‰{˜sÓ0Ö5EØ�à‹}Ü&6¸V¹[ÐPUÑ&_�Ñ#Ø—‘ Ö%ä&7¸Ó&>�Ó#ñ 0ô 2°%Ó8ÐàˆØ Ÿ,™,ž.‰JˆCØÕ&ØP`ÑPlœ¨eÒLÐrw�ç’;Ø—O‘O CÔ(Ø)/ #Ó&à"(˜3“Kñ )ô 	×Ñ˜1˜j¨-Ô8çŠ;à×&Ñ&Ô(ô ×Ñ˜qÐ"2°KÔ@ð ˆô	 ×Ñ˜qÐ"8¸$Ô?Ü×Ñ˜qÐ"6¸Ô?Ü×Ñ˜qÐ";¸[ÔIàˆr^   )ry   ÚincludeÚexcludeÚcontextr€   r{   r|   r}   Úexclude_computed_fieldsÚ
round_tripr~   ÚfallbackÚserialize_as_anyc          	     óN  >• US;  a  [        S5      eU
S:w  a  [        S5      eUS:w  a  [        S5      eUb  [        S5      eUS:w  a  [        S5      eUb  [        S	5      eU	S:w  a  [        S
5      e[        TU ]	  UUUb  UOSUUUS9nUS:X  a  [        S[	        U5      5      $ U$ )aß  Usage docs: https://docs.pydantic.dev/2.4/concepts/serialization/#modelmodel_dump

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.

Returns:
    A dictionary representation of the model.
>   Újsonrx   z&mode must be either 'json' or 'python'Fú+round_trip is only supported in Pydantic v2Tú)warnings is only supported in Pydantic v2ú(context is only supported in Pydantic v2ú1serialize_as_any is only supported in Pydantic v2ú)fallback is only supported in Pydantic v2ú8exclude_computed_fields is only supported in Pydantic v2)r¶   r·   r€   r{   r|   r}   r¾   údict[str, Any])Ú
ValueErrorÚsuperÚdictr   r-   )rf   ry   r¶   r·   r¸   r€   r{   r|   r}   r¹   rº   r~   r»   r¼   ÚdumpedÚ	__class__s                  €r_   r�   ÚBaseModel.model_dump+  sÞ   ø€ ð\ Ð-Ó-Ü Ð!IÓJÐJØ˜UÓ"Ü Ð!NÓOÐOØ˜4ÓÜ Ð!LÓMÐMØÑ"Ü Ð!KÓLÐLØ 5Ó(Ü Ð!TÓUÐUØÑ#Ü Ð!LÓMÐMØ&¨%Ó/Ü Ð![Ó\Ð\Ü‘W‘\ØØØ%-Ñ%9™¸uØ+Ø!1Ø)ð "ð ˆFð AEÈÃ”4Ð(¬)°FÓ*;Ó<ÐZÐTZÐZr^   )r…   Úensure_asciir¶   r·   r¸   r€   r{   r|   r}   r¹   rº   r~   r»   r¼   c          
     ó  >• US:w  a  [        S5      eUS:w  a  [        S5      eUb  [        S5      eUS:w  a  [        S5      eUb  [        S5      eUS:w  a  [        S5      eU
S:w  a  [        S	5      e[        TU ]	  UUUUb  UOSUUU	S
9$ )aÙ  Usage docs: https://docs.pydantic.dev/2.4/concepts/serialization/#modelmodel_dump_json

Generates a JSON representation of the model using Pydantic's `to_json` method.

Args:
    indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
    include: Field(s) to include in the JSON output. Can take either a string or set of strings.
    exclude: Field(s) to exclude from the JSON output. Can take either a string or set of strings.
    by_alias: Whether to serialize using field aliases.
    exclude_unset: Whether to exclude fields that have not been explicitly set.
    exclude_defaults: Whether to exclude fields that have the default value.
    exclude_none: Whether to exclude fields that have a value of `None`.
    round_trip: Whether to use serialization/deserialization between JSON and class instance.
    warnings: Whether to show any warnings that occurred during serialization.

Returns:
    A JSON string representation of the model.
Fr¿   TrÀ   rÁ   rÂ   rÃ   z-ensure_ascii is only supported in Pydantic v2rÄ   )r…   r¶   r·   r€   r{   r|   r}   )rÆ   rÇ   r¾   )rf   r…   rÌ   r¶   r·   r¸   r€   r{   r|   r}   r¹   rº   r~   r»   r¼   rÊ   s                  €r_   r‡   ÚBaseModel.model_dump_jsonr  sÀ   ø€ ðJ ˜UÓ"Ü Ð!NÓOÐOØ˜4ÓÜ Ð!LÓMÐMØÑ"Ü Ð!KÓLÐLØ 5Ó(Ü Ð!TÓUÐUØÑ#Ü Ð!LÓMÐMØ˜uÓ$Ü Ð!PÓQÐQØ&¨%Ó/Ü Ð![Ó\Ð\Ü‘7‘<ØØØØ%-Ñ%9™¸uØ+Ø!1Ø)ð  ð ð r^   rV   )Úreturnzset[str])ry   zLiteral['json', 'python']rz   rT   r{   rT   r|   rT   r}   rT   r~   rT   rÏ   zdict[str, object])r…   ú
int | Nonerz   rT   r{   rT   r|   rT   r}   rT   r~   rT   rÏ   Ústr©rÏ   rÑ   rc   )r©   zType[ModelT]rª   úset[str] | Noner«   r¦   rÏ   r%   )ry   zLiteral['json', 'python'] | strr¶   úIncEx | Noner·   rÔ   r¸   ú
Any | Noner€   úbool | Noner{   rT   r|   rT   r}   rT   r¹   rT   rº   rT   r~   ú'bool | Literal['none', 'warn', 'error']r»   úCallable[[Any], Any] | Noner¼   rT   rÏ   rÅ   )r…   rÐ   rÌ   rT   r¶   rÔ   r·   rÔ   r¸   rÕ   r€   rÖ   r{   rT   r|   rT   r}   rT   r¹   rT   rº   rT   r~   r×   r»   rØ   r¼   rT   rÏ   rÑ   )rX   rY   rZ   r[   r8   Úpropertyr   rg   rm   Ú
BaseConfigrp   r9   r1   ÚosÚenvironrž   ru   r\   r   rv   rw   r‚   rˆ   r�   Úclassmethodr´   Úmodel_constructr�   r‡   r]   Ú__classcell__©rÊ   s   @r_   rL   rL   l   sw  ø‡ Þà	Ø	ó	'ó 
ó 
ð	'ô	.�X×(Ñ(õ 	.ñ .8Ø¡~°b·j±j·n±nÐE[Ð]cÓ6dÓ'eñ.
ˆÐ*ó 	
ö Ø%)ˆ�]Ó)ð	ð (,ˆ�}Ó+ð	ð +3Ø"Ø"Ø!&Ø"Øñ$
ð (ð$
ð ð	$
ð
 ð$
ð ð$
ð ð$
ð ð$
ð 
õ$
ðR Ø"Ø"Ø!&Ø"Øñ!
ð ð!
ð ð	!
ð
 ð!
ð ð!
ð ð!
ð ð!
ð 
õ!
ðF óDó ðDð Øð (,ð9Øð9à$ð9ð ð9ð 
ô	9ó ó ð9öv ð $ˆæð 
ð 5=Ø$(Ø$(Ø"&Ø$(Ø"'Ø%*Ø!&Ø,1Ø$Ø@DØ48Ø%*ñD	[ð 2ðD	[ð "ð	D	[ð
 "ðD	[ð  ðD	[ð "ðD	[ð  ðD	[ð #ðD	[ð ðD	[ð &*ðD	[ð ðD	[ð >ðD	[ð 2ðD	[ð #ðD	[ð  ÷!D	[ó 
ðD	[ðL 
ð "&Ø!&Ø$(Ø$(Ø"&Ø$(Ø"'Ø%*Ø!&Ø,1Ø$Ø@DØ48Ø%*ñ!:	ð ð:	ð ð	:	ð
 "ð:	ð "ð:	ð  ð:	ð "ð:	ð  ð:	ð #ð:	ð ð:	ð &*ð:	ð ð:	ð >ð:	ð 2ð:	ð  #ð!:	ð" ÷#:	ó 
ö:	õ] r^   c                  ó`   • \ rS rSrSr\      SS j5       r\S	S j5       r\S
S j5       r	Sr
g)Ú_EagerIterablei°  u[  
Accepts any Iterable[T] input (including generators), consumes it
eagerly, and validates all items upfront.

Validation preserves the original container type where possible
(e.g. a set[T] stays a set[T]).  Serialization (model_dump / JSON)
always emits a list â€” round-tripping through model_dump() will not
restore the original container type.
c           	     ó   • [        U5      =(       d    [        4u  nUR                  U5      n[        R                  " U5      n[        R
                  " U R                  U[        R                  " U R                  SS9S9$ )NF)Úinfo_arg)Úserialization)	r;   r   Úgenerate_schemarG   Úlist_schemaÚno_info_wrap_validator_functionÚ	_validateÚ$plain_serializer_function_ser_schemaÚ
_serialize)ÚclsÚsource_typeÚhandlerÚ	item_typeÚitem_schemaÚlist_of_items_schemas         r_   Ú__get_pydantic_core_schema__Ú+_EagerIterable.__get_pydantic_core_schema__»  sm   € ô   Ó,×6´°‰ˆØ")×"9Ñ"9¸)Ó"DˆÜ+6×+BÒ+BÀ;Ó+OÐä×:Ò:Ø�M‰MØ Ü%×JÒJØ—‘Øññ
ð 	
r^   c                ó2  • [        U 5      n[        U [        5      (       a  U nO [        U 5      nU" U5      nU[        L a  U$ [	        U[
        5      (       a  U$  U" U5      $ ! [         a  n[        S5      UeS nAff = f! [        [        4 a    Us $ f = f)NzValue is not iterable)Útyper�   ÚlistÚ	TypeErrorÚ
issubclassrÑ   rÆ   )Úvrî   Úoriginal_typer    ÚeÚ	validateds         r_   ré   Ú_EagerIterable._validateÎ  s«   € ä#'¨£7ˆô �aœ×ÑØ‰Eð@Ü˜Q›�ñ
 & e›nˆ	ð œDÒ ØÐô �m¤S×)Ñ)ØÐð	Ù  Ó+Ð+øô ó @ÜÐ 7Ó8¸aÐ?ûð@ûô œ:Ð&ó 	àÒð	ús)   ¥A# ÁB Á#
A>Á-A9Á9A>ÂBÂBc                óF   • [        U [        5      (       a  U $ [        U 5      $ )z?Always serialize as a list so Pydantic's JSON encoder is happy.)r�   rö   )rù   s    r_   rë   Ú_EagerIterable._serializeë  s   € ô �aœ×ÑØˆHÜ�A‹wˆr^   rV   N)rí   r   rî   rD   rÏ   rF   )rù   úIterable[_T]rî   z'ValidatorFunctionWrapHandler'rÏ   r   )rù   r   rÏ   zlist[_T])rX   rY   rZ   r[   Ú__doc__rÝ   rò   Ústaticmethodré   rë   r]   rV   r^   r_   râ   râ   °  s_   † ñð ð
àð
ð &ð
ð 
ó	
ó ð
ð$ óó ðð8 óó ór^   râ   r   ÚEagerIterablec           	     óÎ   • U c  [        U5      $ [        (       a  [        [        UR                  5      nOUR
                  nUc  [        SU 35      e[        X[        USS 5      S9$ )Nz"Unexpected field type is None for Úmetadata)r“   r—   r  )	rB   r8   r   rõ   Úouter_type_Ú
annotationÚRuntimeErrorr¥   Úgetattr)r“   r”   r•   r—   s       r_   r¢   r¢   ö  sc   € Ø�}Ü  Ó'Ð'ç‚{Ü”T˜5×,Ñ,Ó-‰à× Ñ ˆà�}ÜÐ?À¸uÐEÓFÐFä ¼WÀUÈJÐX\Ó=]Ñ^Ð^r^   c                ó¨   • [         (       a  g U R                  nUS   S:X  a1  US   nUS   S:X  a#  UR                  S5      nU(       a  SU;   a  US   $ g )Nrõ   ÚmodelÚschemaúmodel-fieldsÚextras_schemarì   )r8   Ú__pydantic_core_schema__rž   )rì   r  ÚfieldsÚextrass       r_   r¤   r¤     s[   € ß‚{àà×)Ñ)€FØˆf�~˜Ó Ø˜Ñ!ˆØ�&‰>˜^Ó+Ø—Z‘Z Ó0ˆFÞ˜% 6›/à˜e‘}Ð$àr^   c                ó‚   • [        U 5      (       a%  [        U 5       H  n[        U5      (       d  M    g   g[        U 5      $ )zWReturns whether or not the given type is either a `BaseModel` or a union of `BaseModel`TF)r<   r;   Úis_basemodelÚis_basemodel_type)r—   Úvariants     r_   r  r    s7   € ä�‡�Ü –ˆGÜ˜G×$Ó$Ùñ 'ð ä˜UÓ#Ð#r^   c                ó°   • [        U 5      =(       d    U n[        R                  " U5      (       d  g[        U[        5      =(       d    [        U[
        5      $ )NF)r>   ÚinspectÚisclassrø   rL   r:   )r—   Úorigins     r_   r  r  "  s<   € Ü˜Ó×' %€FÜ�?Š?˜6×"Ñ"ØÜ�fœiÓ(×L¬J°v¼|Ó,LÐLr^   c                óT   • U(       a  [        S5      e[        [        [        XS95      $ )a#  Construct a BaseModel class without validation.

This is useful for cases where you need to instantiate a `BaseModel`
from an API response as this provides type-safe params which isn't supported
by helpers like `construct_type()`.

```py
build(MyModel, my_field_a="foo", my_field_b=123)
```
z]Received positional arguments which are not supported; Keyword arguments must be used instead©r—   r“   )r÷   r   rN   r¥   )Úbase_model_clsÚargsÚkwargss      r_   Úbuildr  )  s+   € ö ÜØkó
ð 	
ô ”œ^°.ÑOÓPÐPr^   c                ó0   • [        [        [        XS95      $ )z Loose coercion to the expected type with construction of nested values.

Note: the returned value from this function is not guaranteed to match the
given type.
r–   )r   rM   r¥   r–   s     r_   Úconstruct_type_uncheckedr!  @  s   € ô ””N¨Ñ<Ó=Ð=r^   )r  c           
     óš  • Sn[        SU5      n[        U5      (       a  UnUR                  nUb  [        U5      S:”  a  [	        U5      nO5[        U5      (       a  [        U5      SS n[        US5      nO
[	        5       n[        U5      =(       d    Un[        U5      n[        U5      (       a   [        [        SU=(       d    U5      U S9$ U[,        :X  aL  [        U 5      (       d  U $ [        U5      u  p¼U R/                  5        VVs0 s H  u  pÞU[)        XìS9_M     snn$ [1        U5      (       dï  [2        R4                  " U5      (       aÔ  [7        U[8        5      (       d  [7        U[:        5      (       aª  [=        U 5      (       aC  U  Vs/ s H5  n[        U5      (       a   [        [>        U5      R@                  " S	0 UD6OUPM7     sn$ [        U 5      (       aG  [7        U[8        5      (       a  UR@                  " S	0 U D6$ [        [>        U5      R@                  " S	0 U D6$ U[B        :X  a2  [=        U 5      (       d  U $ US   nU  Vs/ s H  n[)        UUS9PM     sn$ U[D        :X  a,  [#        U [F        5      (       a  [E        U 5      nUU :w  a  U $ U$ U $ U[H        :X  a   [K        U 5      $ U[L        :X  a   [O        U 5      $ U $ ! [         a     Of = f[        XS9nU(       a…  [        U 5      (       au  U R                  UR                  =(       d    UR                   5      nU(       a@  [#        U[$        5      (       a+  UR&                  R                  U5      n	U	(       a	  [)        X�S9$ U H  n
 [)        X
S9s  $ ! [         a     M  f = f   [+        SU 35      es  snnf s  snf s  snf ! [         a    U s $ f = f! [         a    U s $ f = f)
z˜Loose coercion to the expected type with construction of nested values.

If the given value does not match the expected type then it is returned as-is.
Nztype[object]r   r!   r  )ÚunionÚmeta_annotationsr–   z0Could not convert data into a valid instance of rV   )(r   r6   Ú	__value__ÚlenÚtupler5   r;   r4   r>   r<   Úvalidate_typeÚ	ExceptionÚ_build_discriminated_union_metar/   rž   Úfield_alias_fromÚ
field_namer�   rÑ   Úmappingr¥   r  rÈ   r    r?   r  r  rø   rL   r:   r+   r   r´   rö   ÚfloatÚintr   r2   r   r0   )r“   r—   r  rú   Úmetar  r  ÚdiscriminatorÚvariant_valueÚvariant_typer  Ú_Ú
items_typer•   ÚitemÚentryÚ
inner_typeÚcoerceds                     r_   r¥   r¥   I  su  € ð €Mô � Ó'€EÜ˜%× Ñ ØˆØ—‘ˆð Ñ¤ H£°Ó 1Ü % h£‰Ü	˜5×	!Ñ	!Ü˜‹˜q˜rÐ"ˆÜ  ¨Ó*‰ä‹wˆô ˜Ó×' %€FÜ�E‹?€Dä�×Ñð	Ü ¤t¨N¸M×<RÈUÓ'SÐ[`ÑaÐaðF ”ƒ~Ü˜%× Ñ ØˆLä  ›‰ˆØSX×S^ÑS^ÔS`ÔaÒS`ÁiÀc�”^¨$ÑAÒAÑS`ÒaÐaô ˜E×"Ñ"Ü�OŠO˜F×#Ñ#Ü˜¤	×*Ñ*¬j¸Ä×.NÑ.Nä�5�>‰>ÙejÓkÒejÐ\a¼:Àe×;LÑ;L”Dœ˜eÓ$×.Ò.Ñ7°Ò7ÐRWÒWÑejÑkÐkä�e×ÑÜ˜%¤×+Ñ+Ø—’Ñ/¨Ñ/Ð/äœ˜UÓ#×-Ò-Ñ6°Ñ6Ð6à”ƒ~Ü�u�~‰~ØˆLà˜!‘Wˆ
ÙKPÓQÊ5À%” U°*Ô=É5ÑQÐQà”ƒÜ�eœS×!Ñ!Ü˜E“lˆGØ˜%ÓØ�ØˆNàˆà”Óð	Ü! %Ó(Ð(ð ”ƒ}ð	Ü˜eÓ$Ð$ð €Løôg ó 	Ùð	úô" 8¸eÑ[ˆÞœZ¨×.Ñ.Ø!ŸI™I m×&DÑ&D×&`È×H`ÑH`ÓaˆMÞ¤¨M¼3×!?Ñ!?Ø,×4Ñ4×8Ñ8¸ÓG�ÞÜ)°ÑJÐJó ˆGðÜ%¨EÑAÒAøÜó Úðúñ ô ÐMÈeÈWÐUÓVÐVùó bùò lùò Røô ó 	ØŠLð	ûô ó 	ØŠLð	úsZ   Â0K Ä	NÆ<NÉN$Ê
N) Ê5
N; Ë
KËKÍ-M8Í8
NÎNÎ)N8Î7N8Î;O
Ï	O
c                  óD   • \ rS rSr% SrS\S'    S	S jr\S
S j5       rSr	g)ÚUnionDiscriminatoriÁ  a  Annotated metadata naming the field that tells the variants of a union apart, e.g.

```py
Pet: TypeAlias = Annotated[Union[Cat, Dog], UnionDiscriminator("type")]
```

When constructing a `Pet` from a response, the `type` value picks which variant to build.
rÑ   r,  c                ó   • Xl         g rc   ©r,  )rf   r,  s     r_   Ú__init__ÚUnionDiscriminator.__init__Î  s   € Ø$�r^   c                óP   • U R                   R                   SU R                  < S3$ )Nr‹   rŒ   )rÊ   rX   r,  re   s    r_   Ú__repr__ÚUnionDiscriminator.__repr__Ñ  s%   € à—.‘.×)Ñ)Ð*¨!¨D¯O©OÑ+>¸aÐ@Ð@r^   r=  N)r,  rÑ   rÏ   ÚNonerÒ   )
rX   rY   rZ   r[   r  r\   r>  r   rA  r]   rV   r^   r_   r;  r;  Á  s,   ‡ ñð ƒOØjô%ð óAó óAr^   r;  c                  ó    • \ rS rSr% S\S'   Srg)ÚCachedDiscriminatorTypeiÖ  ÚDiscriminatorDetailsÚ__discriminator__rV   NrW   rV   r^   r_   rE  rE  Ö  s   ‡ à+Ö+r^   rE  z5weakref.WeakKeyDictionary[type, DiscriminatorDetails]ÚDISCRIMINATOR_CACHEc                óä   • [         R                  S:  a[  [        [        [        U 5      [
        R                  5      (       a.  [        [        [        [        [        5      [        U 5         5      $ U $ )N)é   é   )ÚsysÚversion_infor�   r   r¦   ÚtypesÚ	UnionTyperõ   r   r   r;   )r#  s    r_   Ú_discriminator_cache_keyrP  Þ  sK   € Ü
×Ñ˜'Ó!¤j´´f¸eÓ1DÄeÇoÁo×&VÑ&Vô ”Dœ$œs¤EÓ*¬8°E«?Ñ;Ó<Ð<Ø€Lr^   c                  óT   • \ rS rSr% S\S'    S\S'    S\S'            SS jrS	rg
)rF  iæ  rÑ   r,  ú
str | Noner+  údict[str, type]r-  c               ó(   • Xl         X l        X0l        g rc   )r-  r,  r+  )rf   r-  Údiscriminator_fieldÚdiscriminator_aliass       r_   r>  ÚDiscriminatorDetails.__init__  s   € ð ŒØ-ŒØ 3Õr^   )r+  r,  r-  N)r-  rS  rU  rÑ   rV  rR  rÏ   rC  )rX   rY   rZ   r[   r\   r>  r]   rV   r^   r_   rF  rF  æ  sS   ‡ ØƒOðð !Ó ðð Óðð
	4ð !ð	4ð !ð		4ð
 (ð	4ð 
÷	4r^   rF  c                óz  • [        U 5      n[        R                  U5      nUb  U$ S nU H&  n[        U[        5      (       d  M  UR
                  n  O   U(       d  g 0 nS n[        U 5       GH#  n[        U5      n[        U5      (       d  M!  [        (       a‘  [        SUR                  5      R                  U5      n	U	(       d  MZ  U	R                  n[        U	SS 5      =n(       aA  [        U5      (       a/  [        U5       H  n
[        U
[        5      (       d  M  X†U
'   M      M¹  M»  M½  [!        X„5      nU(       d  MÑ  UR                  S5      nUS   nUS   S:X  d  Mò  [        SU5      S    H  n
[        U
[        5      (       d  M  X†U
'   M      GM&     U(       d  g [#        UUUS	9n[        R%                  X-5        U$ )
Nzdict[str, FieldInfo]r  Úserialization_aliasr  rõ   ÚliteralrJ   Úexpected)r-  rU  rV  )rP  rH  rž   r�   r;  r,  r;   r7   r  r8   r   Ú
__fields__r¡   r	  r?   rÑ   Ú_extract_field_schema_pv2rF  Ú
setdefault)r#  r$  r•   ÚcachedÚdiscriminator_field_namer  r-  rV  r  Ú
field_infor7  r”   Úfield_schemaÚdetailss                 r_   r*  r*    s£  € Ü
" 5Ó
)€CÜ ×$Ñ$ SÓ)€FØÑØˆà+/Ðã&ˆ
Ü�jÔ"4×5Ó5Ø'1×'<Ñ'<Ð$Ùñ 'ö
 $Øà!€GØ&*Ðä˜E—?ˆÜ& wÓ/ˆÜ˜W×%Ó%ßŠ{Ü!Ð"8¸'×:LÑ:LÓM×QÑQÐRjÓk�
Þ!Ùð '1×&6Ñ&6Ð#ä")¨*°lÀDÓ"IÐI�JÕIÌÐ_i×OjÑOjÜ!)¨*Ö!5˜Ü% e¬S×1Ó1Ø-4 E›Nó "6ñ PkÑIô
 2°'ÓT�ÞÙð ',§i¡iÐ0EÓ&FÐ#à$ X™�à Ñ'¨9Õ4Ü!% o°|Ó!DÀZÔ!P˜Ü% e¬S×1Ó1Ø-4 E›Nô "Qñ5 #ö< Øä"ØØ4Ø/ñ€Gô
 ×"Ñ" 3Ô0Ø€Nr^   c                óè   • U R                   nUS   S:X  a  US   nUS   S:w  a  g [        SU5      nUS   nUS   S:w  a  g [        SU5      nUS   R                  U5      nU(       d  g [        S	U5      $ )
Nrõ   Údefinitionsr  r  rI   r  rK   r  rH   )r  r   rž   )r  r,  r  Úfields_schemar”   s        r_   r]  r]  L  s�   € Ø×+Ñ+€FØˆf�~˜Ó&Ø˜Ñ!ˆàˆf�~˜Ó Øä�- Ó(€FØ˜8Ñ$€MØ�VÑ Ó.ØäÐ,¨mÓ<€MØ˜(Ñ#×'Ñ'¨
Ó3€EÞØä�˜eÓ$Ð$r^   c                óÖ   • [         R                  " U 5      (       a8  [        U [        R                  5      (       a  [        [        [        X5      5      $ [        [        [        XS95      $ )z@Strict validation that the given value matches the expected typer  )	r  r  rø   rm   rL   r   rM   r=   Ú_validate_non_model_typer  s     r_   r(  r(  a  sH   € ä‡‚�u×Ñ¤*¨U´H×4FÑ4F×"GÑ"GÜ”Bœ	 %Ó/Ó0Ð0ä”Ô,°5ÑFÓGÐGr^   c                ó   • [        U SU5        g)zQAdd a pydantic config for the given type.

Note: this is a no-op on Pydantic v1.
Ú__pydantic_config__N)Úsetattr)Útypr®   s     r_   Úset_pydantic_configrm  i  s   € ô
 ˆCÐ&¨Õ/r^   c               óä   • Xl         X l        [        (       a4  1 Skn U R                  n1 U=(       d    0 kUk[	        [
        U 5      l        g g ! [         a    U[	        [
        U 5      l         g f = f)N>   rv   rw   Ú__exclude_fields__)rv   rw   r8   ro  r   r   ÚAttributeError)ÚobjÚ
request_idÚworkspace_idÚprivate_fieldsÚexclude_fieldss        r_   Úadd_response_idsrv  q  sn   € Ø „OØ$Ô÷
 ‚{ÚOˆð	[Ø ×3Ñ3ˆNð 1[°>×3GÀRÐ0ZÈ>Ð0ZŒD”�c‹NÕ-ð øô ó 	?Ø0>ŒD”�c‹NÖ-ð	?ús   �A ÁA/Á.A/c                  ó   • \ rS rSrSrg)r:   iˆ  rV   N)rX   rY   rZ   r[   r]   rV   r^   r_   r:   r:   ˆ  s   † Úr^   )ÚTypeAdapterÚcomputed_fieldzTypeAdapter[object])Úmaxsize)rx  c                ó6   • [        U 5      R                  U5      $ rc   )rx  Úvalidate_pythonr  s     r_   rh  rh  –  s   € Ü˜5Ó!×1Ñ1°%Ó8Ð8r^   c                  ó$   • \ rS rSr% SrS\S'   Srg)Ú	RootModeli›  z»Used as a placeholder to easily convert runtime types to a Pydantic format
to provide validation.

For example:
```py
validated = RootModel[int](__root__="5").__root__
# validated: 5
```
rM   Ú__root__rV   N)rX   rY   rZ   r[   r  r\   r]   rV   r^   r_   r~  r~  ›  s   ‡ ñ	ð Žr^   r~  c                ój   • [        U 5      R                  U5      n[        [        UR                  5      $ rc   )Ú_create_pydantic_modelÚvalidater   rM   r  )r—   r“   r  s      r_   rh  rh  ¨  s(   € Ü& uÓ-×6Ñ6°uÓ=ˆÜ”B˜Ÿ™Ó'Ð'r^   c                ó   • [         U    $ rc   )r~  )r—   s    r_   r�  r�  ¬  s   € Ü˜ÑÐr^   c                 ó   • [        S5      e)Nz+attempted to use TypeAdapter in pydantic v1©r  )Ú_argsÚ_kwargss     r_   rx  rx  ¯  s   € ÜÐHÓIÐIr^   c               ó8   ^• SS jmSU4S jjnU b  U" U 5      $ U$ )Nc                 ó   • [        S5      e)Nz.attempted to use computed_field in pydantic v1r…  )r4  Ú__s     r_   Ú	_exc_funcÚ!computed_field.<locals>._exc_func³  s   € ÜÐOÓPÐPr^   c                 ó   >• T$ rc   rV   )r4  rŠ  r‹  s     €r_   Ú_decÚcomputed_field.<locals>._dec¶  s	   ø€ ØÐr^   )r4  r   rŠ  r   rÏ   r   rV   )ÚfuncrŠ  rŽ  r‹  s      @r_   ry  ry  ²  s%   ø€ ô	Q÷	ð ÑÙ˜“:ÐàˆKr^   c                  óŽ   • \ rS rSr% S\S'   S\S'   S\S'   S\S'   S	\S
'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   S\S'   Srg)ÚFinalRequestOptionsInputi¿  zRequired[str]ÚmethodÚurlr$   Úparamsr&   Úheadersr/  Úmax_retrieszfloat | Timeout | NoneÚtimeoutzHttpxRequestFiles | NoneÚfilesrÑ   Úidempotency_keyúOUnion[bytes, bytearray, IO[bytes], Iterable[bytes], AsyncIterable[bytes], None]Úcontentr"   Ú	json_datar)   Ú
extra_jsonrT   Úfollow_redirectsrV   NrW   rV   r^   r_   r’  r’  ¿  sH   ‡ ØÓØ	ÓØƒMØÓØÓØ#Ó#Ø#Ó#ØÓØ\Ó\ØƒOØÓØÖr^   r’  F)Útotalc                  ó   ^ • \ rS rSr% S\S'   S\S'   0 rS\S'   \" 5       rS\S'   \" 5       rS	\S
'   \" 5       r	S\S'   Sr
S\S'   SrS\S'   \" 5       rS\S'   SrS\S'   SrS\S'   SrS\S'   SrS\S'   \(       a   " S S\R&                  5      rO\" SS9rS \S!'   S&S" jrS'S# jr\ S(     S)U 4S$ jjj5       r\(       d  \rS%rU =r$ S%rU =r$ )*ÚFinalRequestOptionsiÎ  rÑ   r“  r”  r$   r•  zUnion[Headers, NotGiven]r–  zUnion[int, NotGiven]r—  z%Union[float, Timeout, None, NotGiven]r˜  NzUnion[HttpxRequestFiles, None]r™  zUnion[str, None]rš  z%Union[Callable[[Any], Any], NotGiven]Úpost_parserzUnion[bool, None]rŸ  r›  rœ  zUnion[Body, None]r�  zUnion[AnyMapping, None]rž  c                  ó$   • \ rS rSr% SrS\S'   Srg)ÚFinalRequestOptions.Configiã  TrT   Úarbitrary_types_allowedrV   N)rX   rY   rZ   r[   r¦  r\   r]   rV   r^   r_   rp   r¥  ã  s   ‡ Ø,0Ð# TÖ0r^   rp   T)r¦  rt   ru   c                ó\   • [        U R                  [        5      (       a  U$ U R                  $ rc   )r�   r—  r(   )rf   r—  s     r_   Úget_max_retriesÚ#FinalRequestOptions.get_max_retriesè  s'   € Ü�d×&Ñ&¬×1Ñ1ØÐØ×ÑÐr^   c                óè   • [        U R                  5      (       d  g U R                  R                  [        5      (       a3  0 U R                  EU l        U R                  R	                  [        5        g g rc   )r,   r–  rž   rC   Úpopre   s    r_   Ú_strip_raw_response_headerÚ.FinalRequestOptions._strip_raw_response_headerí  sR   € Ü˜Ÿ™×%Ñ%Øà�<‰<×ÑÔ/×0Ñ0Ø+˜dŸl™lÐ+ˆDŒLØ�L‰L×ÑÔ0Õ1ð 1r^   c                óâ   >• UR                  5        VVs0 s H  u  p4U[        U5      _M     nnn[        (       a  [        [        [
        TU ]  " U40 UD65      $ [
        TU ]  " U40 UD6$ s  snnf rc   )r    r3   r8   r   r¢  rÇ   r´   rÞ   )rì   rª   r«   r•   r“   r  rÊ   s         €r_   r´   ÚFinalRequestOptions.constructû  sw   ø€ ð %Ÿl™lœnô	"
ò -‘
�ð ” Ó'Ò'Ù,ð	 	ñ "
÷ Š;ÜÔ+¬U©WÒ->¸{Ñ-UÈfÑ-UÓVÐVÜ‰wÒ& {Ñ=°fÑ=Ð=ùó"
s   •A+)r–  )r—  r/  rÏ   r/  )rÏ   rC  rc   )rª   rÓ   r«   z Unpack[FinalRequestOptionsInput]rÏ   r¢  )rX   rY   rZ   r[   r\   r•  r(   r–  r—  r˜  r™  rš  r£  rŸ  rœ  r�  rž  r8   rm   rÚ   rp   r9   ru   r¨  r¬  rÝ   r´   r   rÞ   r]   rß   rà   s   @r_   r¢  r¢  Î  s  ø‡ àƒKØ	ƒHØ€FˆEÓÙ(0«
€GÐ%Ó2Ù(0«
€KÐ%Ó2Ù5=³Z€GÐ2Ó?Ø,0€EÐ)Ó0Ø(,€OÐ%Ó,Ù9A»€KÐ6ÓCØ*.ÐÐ'Ó.à_c€GÐ\Ócð $(€IÐ Ó'Ø*.€JÐ'Ó.æô	1�X×(Ñ(õ 	1ñ .8ÐPTÑ-UˆÐ*ÓUô ô
2ð ð (,ð>à$ð>ð 3ð>ð 
÷	>ó ð>ö à#Žõ r^   r¢  )r“   r¦   r”   r    r•   rÑ   rÏ   r¦   )rì   ztype[pydantic.BaseModel]rÏ   ztype | None)r—   rõ   rÏ   rT   )r—   rõ   rÏ   z/TypeGuard[type[BaseModel] | type[GenericModel]])r  zCallable[P, _BaseModelT]r  zP.argsr  zP.kwargsrÏ   rN   )r“   r¦   r—   útype[_T]rÏ   rM   )r“   r¦   r—   r¦   r  zOptional[List[Any]]rÏ   r¦   )r#  rõ   rÏ   rõ   )r#  rõ   r$  ztuple[Any, ...]rÏ   zDiscriminatorDetails | None)r  ztype[BaseModel]r,  rÑ   rÏ   zModelField | None)r—   r°  r“   r¦   rÏ   rM   )rl  r   r®   zpydantic.ConfigDictrÏ   rC  )rq  rL   rr  rR  rs  rR  rÏ   rC  )r—   rM   rÏ   zType[RootModel[_T]])r†  r   r‡  r   rÏ   r   rc   )r�  rÕ   rŠ  r   rÏ   r   )Ú
__future__r   rÛ   rL  rN  r  ÚweakrefÚtypingr   r   r   r   r   r	   r
   r   r   r   r   r   r   r   Útyping_extensionsr   r   r   r   r   r   r   r   r   r   r   r   r   r   rm   Úpydantic.fieldsr    Ú_typesr"   r#   r$   r%   r&   r'   r(   r)   r*   Ú_utilsr+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   Ú_compatr8   r9   r:   ÚBaseGenericModelr;   r<   r=   r>   r?   r@   rA   rB   Ú
_constantsrC   rD   rE   Úpydantic_corerF   rG   Úpydantic_core.core_schemarH   rI   rJ   rK   ÚImportErrorÚ__all__rM   rN   rP   rR   rL   rö   râ   r  r\   r¢   r¤   r  r  r  r!  r¥   r;  rE  ÚWeakKeyDictionaryrH  rP  rF  r*  r]  r(  rm  rv  rx  Ú_TypeAdapterry  Ú_CachedTypeAdapterrh  r~  r�  r’  r¢  rV   r^   r_   Ú<module>rÂ     s¯  ðÞ "ã 	Û 
Û Û Û ÷÷ ÷ ó ÷ $÷÷ ÷ ÷ ó" Ý %÷
÷ 
õ 
÷÷ ÷ õ ÷÷ ÷ ñ õ ,æßKß5ßcÔcðß9ð
 ˜Ð
'€áˆTƒ]€Ù�m¨;Ñ7€áˆcƒN€ð ô)�hó )ó ð)ôA�×"Ñ"ô AôH
@�T˜"‘X˜w r™{ô @ðF % X¨b¡\°>Ð%AÑB€ˆyÓ Bô_ôô"	$ôMðQØ,ðQàðQð ðQð ô	Qô.>ð UY÷ u÷pAñ Að* ô,˜hó ,ó ð,ð NU×MfÒMfÓMhÐ ÐJÓ hô÷&4ñ &4ôR:ôz%ô*Hô0ô[ö& Ø�LôÐ'¨ô ö ßVáÐ3±YÀtÒ5LÈ\Ó5ZÓ[ÐæÞ(à(ˆõ9ö 
ô�L '¨"¡+ô ô(ô ôJö
ô˜y°ò ð ô>$˜(×,Ñ,ó >$ó ñ>$øði ó Øˆ
Ø‹ðús   Ã#I2 É2
J É?J 