
    UEj0              	          d Z ddlmZ ddlZddlZddlZddlmZmZmZm	Z	m
Z
mZmZmZ ddlZddlmZ ddlZddlmZmZ ddlmZ dd	lmZmZmZmZ d
efdZd Zd
efdZd Zd
efdZ d Z!d Z"dedefdZ#d5dededefdZ$dZ%d6dedede&defdZ'dedede&defdZ(de
dede&defdZ)dede&defdZ*d Z+d  Z,d!e-defd"Z.d#ej^                  de0fd$Z1d#ej^                  de0fd%Z2d#ej^                  de3fd&Z4d#ej^                  de3fd'Z5d(ededefd)Z6d(ededefd*Z7dedefd+Z8d,edefd-Z9dedefd.Z:dedefd/Z;dedefd0Z<d(edefd1Z=ej|                  d2e0deed3f   fd4       Z?y)7zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.    )DecimalN)AnyDictIterableListMappingTupleUnionget_args)
get_origin)
ConfigDictcreate_model)	from_json   )	BaseModelNullableOptionalNullableUnsetas_strc                       fd}|S )Nc                     | y t        | t              r| S t        | t              st        d      rt	        |       S t        |       S )NzExpected Decimal object)
isinstancer   r   
ValueErrorstrfloat)dr   s    Z/var/www/html/qr/venv/lib/python3.12/site-packages/google/genai/_gaos/utils/serializers.py	serializez$serialize_decimal.<locals>.serialize#   sE    9aH!W%677s1v-U1X-     r   r   s   ` r   serialize_decimalr"   "   s    	. r   c                     | y t        | t        t        f      r| S t        | t        t        t
        f      st        d      t        t        |             S )NzExpected string, int or float)r   r   r   r   intr   r   )r   s    r   validate_decimalr%   1   sI    y!gu%&a#sE*+8993q6?r   c                       fd}|S )Nc                     | y t        | t              r| S t        | t              st        d      rt	        |       S | S )NzExpected float)r   r   r   r   r   )fr   s    r   r   z"serialize_float.<locals>.serialize?   sA    9aH!U#-..s1v&Q&r   r    r!   s   ` r   serialize_floatr)   >       	' r   c                     | y t        | t        t        f      r| S t        | t              st	        d      t        |       S NzExpected string)r   r   r   r   r   )r(   s    r   validate_floatr-   M   s<    y!eU^$a*++8Or   c                       fd}|S )Nc                     | y t        | t              r| S t        | t              st        d      rt	        |       S | S )NzExpected int)r   r   r$   r   r   )ir   s    r   r   z serialize_int.<locals>.serialize[   s@    9aH!S!^,,s1v&Q&r   r    r!   s   ` r   serialize_intr1   Z   r*   r   c                     | y t        | t        t        f      r| S t        | t              st	        d      t        |       S r,   )r   r$   r   r   r   )bs    r   validate_intr4   i   s<    y!c5\"a*++q6Mr   c                       fd}|S )Nc                 4    | y | k7  rt        d       | S )Nz	Expected )r   )cvs    r   validatez validate_const.<locals>.validatew   s(    96y_--r   r    )r8   r9   s   ` r   validate_constr:   v   s     Or   typreturnc                 0    t        t        |       |d      S )NFcoerce_iterables)	unmarshalr   )rawr;   s     r   unmarshal_jsonrB      s    Ys^S5AAr   r?   c                 ~    |rt        | |      } t        d|dft        dd            } ||       }|j                  S )NUnmarshaller.Tpopulate_by_namearbitrary_types_allowedbody
__config__rI   )_coerce_iterables_for_typer   r   rI   )valr;   r?   unmarshallerms        r   r@   r@      sF    (c23ZtTRL 	#A 66Mr   @   value_depthc                 X    	 t        | |d      S # t        $ r Y nw xY wt        | ||      S )NTr>   )r@   	Exception_construct_lenient)rQ   r;   rR   s      r   construct_unvalidatedrV      s7    d;; eS&11s    	depthc                    |t         kD  r| S t        |      }t        |      }t        |      rt	        |      }|rt        | |d   |      S | S t        |      rtt	        |      D cg c]  }|t        d       us| }}|D ]  }	 t        | |d      c S  d }|D ]  }	 t        | ||      c S  | t        d       t	        |      v ry ||| S t        |      rgt        | t              st        d|dt        |             t	        |      rt	        |      d   nt        }
| D cg c]  }t        ||
|dz          c}S t!        |      rt        | t"              st        d|dt        |             t%        t	        |            dkD  rt	        |      d   nt        }| j'                         D ci c]  \  }}|t        |||dz          c}}S t)        |      r7t        | t"              st        d|dt        |             t+        | ||      S | S c c}w # t        $ r Y w xY w# t        $ r}	|	}Y d }	~	d }	~	ww xY wc c}w c c}}w )Nr   Tr>   zexpected list for z, got    zexpected mapping for ) _CONSTRUCT_UNVALIDATED_MAX_DEPTH_resolve_type_aliasr   _is_annotated_typer   rU   is_uniontyper@   rT   _is_list_typer   list	TypeErrorr   rV   _is_mapping_typer   lenitems_is_pydantic_model_type_construct_model_lenient)rQ   r;   rW   originargsargvariantsvariantlast_erre	item_typeitem
value_typekeys                 r   rU   rU      s_   //
c
"C_F&!}<@!%a%8KeK#+C=JCCtDz4ICJJ 	G $GG	
  	G)%%@@	 =T$Z8C=8NS%&0vd5k_MNN(0HSM!$3	NSTd%dIuqyATT%)3C7&ePQQ),Xc]);a)?Xc]1%S
 #[[]
T &tZCC
 	

 s#%)3C7&ePQQ'sE::LO K     U
sB   $H7HHH(#I0I	H%$H%(	H>1H99H>c                    i }t               }|j                  j                         D ]  \  }}d }|j                  |j                  | v r|j                  }n|| v r|}|j	                         }|(|j                  |       t        | |   ||dz         ||<   o|j                         rt        ||      ||<   |j                  d      ||<    | j                         D ]  \  }	}
|	|vs|	|vs|
||	<     |j                  di |S )NrY   T)call_default_factoryr    )setmodel_fieldsrd   aliasrebuild_annotationaddrV   is_required_default_for_requiredget_defaultmodel_construct)rQ   r;   rW   fieldsconsumednamefieldwire_key
annotationrq   ro   s              r   rf   rf      s   FuH''--/ He;;"u{{e';{{HU]H--/
LL"0x*eVWiXF4L 0UCF4L ,,$,GF4LH  [[] 	Th3f#4F3K 3(((r   c                 j   t        |       } t        |       }t        |      rt        |       }|rt	        |d   |      S d S t        |      r6t        d       t        |       v ry t        |       D ]  }	 t	        ||      c S  y |t        k  rt        |       rt        i | |dz         S y # t        $ r Y Dw xY w)Nr   rY   )r[   r   r\   r   rz   r]   r^   rT   rZ   re   rf   )r;   rW   rg   rh   rk   s        r   rz   rz      s    
c
"C_F&!}8<$T!We4F$F:#&} 	G,We<<	
 005LS5Q'C;;  s   1B&&	B21B2c                    t        |      r| yt        d|dft        dd            } ||       }|j                  ddd	      }t	        |      d
k(  ryt        j                  |t        t        |               d      S )Nnull
Marshaller.TrE   rH   rK   json)by_aliasmodeexclude_noner    ),:)
separators)	is_nullabler   r   
model_dumprc   r   dumpsnextiter)rM   r;   
marshallerrO   r   s        r   marshal_jsonr   	  s{    3CK3ZtTRJ 	A	ddCA
1v{::aT!W&:>>r   c                     t        |       }|t        u s|t        u ry|t        ust	        d       t        |       vryt        |       D ]&  }t        |      t        u st        |      t        u s& y y)NTF)r   r   r   r
   r^   r   )r   rg   ri   s      r   r   r     sk    FV'77U?d4j? c?h&*S/=M*M r   objc                 >     t         fdt        d      D              S )zX
    Returns True if the given object is a typing.Union or typing_extensions.Union.
    c              3   &   K   | ]  }|u  
 y wNr    ).0
typing_objr   s     r   	<genexpr>zis_union.<locals>.<genexpr>0  s      (z   r
   any_get_typing_objects_by_name_of)r   s   `r   r]   r]   ,  s$      ,J7,S  r   streamc                 @    dj                  | j                               S Nr   )join	iter_textr   s    r   stream_to_textr   5  s    776##%&&r   c                 ~   K   dj                  | j                         2 cg c3 d {   }|7 6 c}      S c c}w wr   )r   
aiter_text)r   chunks     r   stream_to_text_asyncr   9  s3     77V->->-@AAEEAABBAs$   =80
.0
80
8=c                     | j                   S r   )contentr   s    r   stream_to_bytesr   =  s    >>r   c                 >   K   | j                          d {   S 7 wr   )areadr   s    r   stream_to_bytes_asyncr   A  s     s   datac                 H    t        |       st        | |      S t        | |      S r   )_contains_pydantic_modelr@   rL   )r   r;   s     r   get_pydantic_modelr   E  s$    #D)s##%dC00r   c           	      P   | t        | t        t        f      r| S t        |      }t	        |      }t        |      rt        |      }|rt        | |d         S | S t        |      r-d t        |      D        D ]  }t        | |      }|| us|c S  | S t        |      rmt        |      rt        |      d   nt        }t        | t        t        t        t        f      r| S t        | t              r| D cg c]  }t        ||       c}S | S t!        |      rkt#        t        |            dkD  rt        |      d   nt        }t        | t              r.| j%                         D 	
ci c]  \  }	}
|	t        |
|       c}
}	S | S t'        |      rt        | t              rd }|j(                  j%                         D ][  \  }}|j*                  }||j,                  fD ]9  }	|	|	| v s|| |	   n||	   }
t        |
|      }||
us(|t/        |       }|||	<   ; ] ||S | S | S c c}w c c}
}	w )Nr   c              3   <   K   | ]  }|t        d       us|  y wr   )r^   )r   ri   s     r   r   z-_coerce_iterables_for_type.<locals>.<genexpr>X  s     JCCtDz4ICJs   rY   )r   r   r   r[   r   r\   r   rL   r]   r_   r   r   bytes	bytearrayr   r   rb   rc   rd   re   ru   r   rv   dict)r   r;   rg   rh   ri   coercedrn   ro   rp   rq   rQ   
field_namer   
field_typecoerced_values                  r   rL   rL   L  s)   |z$E(:;
c
"C_F&!}<@)$Q8JdJJ8C=J 	C0s;Gd"	 S(0HSM!$3	dS%G<=KdH%LPQD.tY?QQ),Xc]);a)?Xc]1%S
dG$ #'**,C /zBB  s#
4(A!$!1!1!7!7!9 		5J))J"EKK0 5?sd{)0DIgclE$>uj$QM$E1"?&*4jG'45		5 "-w747K5 Rs   2H#H"c                     t        | d|       S )N	__value__)getattrr;   s    r   r[   r[     s    3S))r   rg   c                 >     t         fdt        d      D              S )Nc              3   &   K   | ]  }|u  
 y wr   r    )r   r   rg   s     r   r   z%_is_annotated_type.<locals>.<genexpr>  s       	*r   	Annotatedr   )rg   s   `r   r\   r\     s"     8E  r   c                 N    t        |       } | t        u xs t        |       t        u S r   )r[   r`   r   r   s    r   r_   r_     s$    
c
"C$;1*S/T11r   c                     t        |       } t        |       }t        t        t        t        f         }| t        t
        t        fv xs |t        t        |fv S r   )r[   r   r   r   r   r   )r;   rg   mapping_origins      r   rb   rb     sK    
c
"C_FS 12N4w''T6dG^5T+TTr   c                 F    t        | t              xr t        | t              S r   )r   r^   
issubclassr   r   s    r   re   re     s    c4 ?ZY%??r   c                     t        | t              ryt        | t              rt        d | D              S t        | t              r t        d | j                         D              S y)NTc              3   2   K   | ]  }t        |        y wr   r   )r   ro   s     r   r   z+_contains_pydantic_model.<locals>.<genexpr>  s     Cd+D1C   c              3   2   K   | ]  }t        |        y wr   r   )r   rQ   s     r   r   z+_contains_pydantic_model.<locals>.<genexpr>  s     Nu+E2Nr   F)r   r   r   r   r   values)r   s    r   r   r     sN    $	"$CdCCC$NNNNr   r   .c                 d     t         fdt        t        fD              }|st        d       |S )z
    Get typing objects by name from typing and typing_extensions.
    Reference: https://typing-extensions.readthedocs.io/en/latest/#runtime-use-of-types
    c              3   N   K   | ]  }t        |      rt        |        y wr   )hasattrr   )r   moduler   s     r   r   z1_get_typing_objects_by_name_of.<locals>.<genexpr>  s*      64  	s   "%z:Neither typing nor typing_extensions has an object called )tupletypingtyping_extensionsr   )r   results   ` r   r   r     sE      01 F
 HQ
 	
 Mr   )T)r   )@__doc__decimalr   	functoolsr   r   r   r   r   r   r   r	   r
   r   r   r   httpxpydanticr   r   pydantic_corer   types.basemodelr   r   r   r   boolr"   r%   r)   r-   r1   r4   r:   rB   r@   rZ   r$   rV   rU   rf   rz   r   r   objectr]   Responser   r   r   r   r   r   r   rL   r[   r\   r_   rb   re   r   cacher   r    r   r   <module>r      sz  " H     M M M  (  - # J Jd 
D 
$ 

BS BS B t s  $&  2 23 2 2C 23c 3 3C 3C 3l)G )# )c )c )4s 3 3 0?(& T '5>> 'c 'Cu~~ C# CENN u    5  1S 1s 1s 11S 1s 1s 1h*S *S *s t 2s 2t 2
U# U$ U@ @ @3 4   sCx  r   