
    hj0              	          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#d6dededefdZ$dZ%d7d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d0Z;dedefd1Z<d)edefd2Z=ej>        d3e0deed4f         fd5            Z?dS )8zACode 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                     | d S t          | t                    r| S t          | t                    st          d          rt	          |           nt          |           S )NzExpected Decimal object)
isinstancer   r   
ValueErrorstrfloat)dr   s    h/var/www/app.qaans.com/backend/venv/lib/python3.11/site-packages/google/genai/_gaos/utils/serializers.py	serializez$serialize_decimal.<locals>.serialize#   s`    94a 	H!W%% 	86777-s1vvvU1XX-     r   r   s   ` r   serialize_decimalr"   "   s$    	. 	. 	. 	. 	. r   c                     | d S 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   sb    yt!gu%&& a#sE*++ :89993q66??r   c                       fd}|S )Nc                     | d S t          | t                    r| S t          | t                    st          d          rt	          |           n| S )NzExpected float)r   r   r   r   r   )fr   s    r   r   z"serialize_float.<locals>.serialize?   sZ    94a 	H!U## 	/-...&s1vvvQ&r   r    r!   s   ` r   serialize_floatr)   >   $    	' 	' 	' 	' 	' r   c                     | d S 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   sS    yt!eU^$$ a ,*+++88Or   c                       fd}|S )Nc                     | d S t          | t                    r| S t          | t                    st          d          rt	          |           n| S )NzExpected int)r   r   r$   r   r   )ir   s    r   r   z serialize_int.<locals>.serialize[   sY    94a 	H!S!! 	-^,,,&s1vvvQ&r   r    r!   s   ` r   serialize_intr1   Z   r*   r   c                     | d S t          | t          t          f          r| S t          | t                    st	          d          t          |           S r,   )r   r$   r   r   r   )bs    r   validate_intr4   i   sS    yt!c5\"" a ,*+++q66Mr   c                       fd}|S )Nc                 @    | d S | k    rt          d           | S )Nz	Expected )r   )cvs    r   validatez validate_const.<locals>.validatew   s/    9466___---r   r    )r8   r9   s   ` r   validate_constr:   v   s#         Or   typreturnc                 @    t          t          |           |d          S )NFcoerce_iterables)	unmarshalr   )rawr;   s     r   unmarshal_jsonrB      s    Ys^^S5AAAAr   Tr?   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@      sd     3(c223ZtTRRR  L 	#A 6Mr   @   value_depthc                 j    	 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      sN    d;;;;   eS&111s    
!!depthc                    	
 t           k    r| S t          |          }t          |          }t          |          r*t	          |          }|rt          | |d                   n| S t          |          rd t	          |          D             }|D ]&}	 t          | |d          c S # t          $ r Y #w xY wd }|D ].}	 t          | |          c S # t          $ r}|}Y d }~'d }~ww xY w|  t          d           t	          |          v rd S ||| S t          |          rqt          | t                    s"t          d|dt          |                     t	          |          rt	          |          d         nt          		fd| D             S t          |          rt          | t                     s"t          d|dt          |                     t#          t	          |                    d	k    rt	          |          d	         nt          

fd
|                                 D             S t'          |          rHt          | t                     s"t          d|dt          |                     t)          | |          S | S )Nr   c                 4    g | ]}|t          d           u|S Ntype.0args     r   
<listcomp>z&_construct_lenient.<locals>.<listcomp>   s(    JJJCCtDzz4I4IC4I4I4Ir   Tr>   zexpected list for z, got c                 8    g | ]}t          |d z             S    rV   )r^   itemrW   	item_types     r   r`   z&_construct_lenient.<locals>.<listcomp>   s*    TTTd%dIuqyAATTTr   zexpected mapping for rc   c           	      @    i | ]\  }}|t          |d z             S rb   rd   )r^   keyre   rW   
value_types      r   
<dictcomp>z&_construct_lenient.<locals>.<dictcomp>   s@     
 
 
T &tZCC
 
 
r   ) _CONSTRUCT_UNVALIDATED_MAX_DEPTH_resolve_type_aliasr   _is_annotated_typer   rU   is_unionr@   rT   r\   _is_list_typer   list	TypeErrorr   _is_mapping_typer   lenitems_is_pydantic_model_type_construct_model_lenient)rQ   r;   rW   originargsvariantsvariantlast_errerf   ri   s     `      @@r   rU   rU      s	   ///
c
"
"C__F&!! L}}<@K!%a%888eK JJ8C==JJJ 	 	G $GGGGGG    	 	G)%%@@@@@    =T$ZZ8C==884NS U%&& 	OMMMd5kkMMNNN(0>HSMM!$$3	TTTTTeTTTT 
%)) 	RPCPPePPQQQ),Xc]]););a)?)?Xc]]1%%S

 
 
 
 
"[[]]
 
 
 	

 s## ;%)) 	RPCPPePPQQQ'sE:::Ls*   B))
B65B6 C
C)C$$C)c                    i }t                      }|j                                        D ]\  }}d }|j        |j        | v r|j        }n|| v r|}|                                }|3|                    |           t          | |         ||dz             ||<   n|                                rt          ||          ||<   |	                    d          ||<   |                                 D ]\  }	}
|	|vr	|	|vr|
||	<    |j
        di |S )Nrc   T)call_default_factoryr    )setmodel_fieldsrt   aliasrebuild_annotationaddrV   is_required_default_for_requiredget_defaultmodel_construct)rQ   r;   rW   fieldsconsumednamefieldwire_key
annotationrh   re   s              r   rv   rv      sF   FuuH'--// H He;"u{e';';{HHU]]H--//
LL"""0x*eVWiXXF4LL   	H0UCCF4LL ,,$,GGF4LL[[]]  	Th3f#4#4F3K3(((((r   c                    t          |           } t          |           }t          |          r)t          |           }|rt	          |d         |          nd S t          |          rVt          d           t          |           v rd S t          |           D ]$}	 t	          ||          c S # t          $ r Y !w xY wd S |t          k    r#t          |           rt          i | |dz             S d S )Nr   rc   )rl   r   rm   r   r   rn   r\   rT   rk   ru   rv   )r;   rW   rw   rx   rz   s        r   r   r      s   
c
"
"C__F&!! G}}8<F$T!We444$F ::#&&4}} 	 	G,We<<<<<   t0005LS5Q5Q0'C;;;4s   B**
B76B7c                 L   t          |          r| dS t          d|dft          dd                    } ||           }|                    ddd	          }t	          |          d
k    rdS t          j        |t          t          |                             d          S )Nnull
Marshaller.TrE   rH   rK   json)by_aliasmodeexclude_noner    ),:)
separators)	is_nullabler   r   
model_dumprs   r   dumpsnextiter)rM   r;   
marshallerrO   r   s        r   marshal_jsonr   	  s    3 CKv3ZtTRRR  J 	
A	ddCCA
1vv{{r:aT!WW&:>>>>r   c                     t          |           }|t          u s	|t          u rdS |t          ust	          d           t          |           vrdS t          |           D ]1}t          |          t          u st          |          t          u r dS 2dS )NTF)r   r   r   r
   r\   r   )r   rw   r_   s      r   r   r     s    FV'777tU??d4jj??u  c??h&&*S//=M*M*M44 +N 5r   objc                 T     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 V  	d S rZ   r    )r^   
typing_objr   s     r   	<genexpr>zis_union.<locals>.<genexpr>0  s9        (z     r   r
   any_get_typing_objects_by_name_of)r   s   `r   rn   rn   ,  sE         ,J7,S,S     r   streamc                 P    d                     |                                           S )Nr   )join	iter_textr   s    r   stream_to_textr   5  s     776##%%&&&r   c                 t   K   d                     d |                                 2              d {V           S )Nr   c                 "   K   g | 3 d {V }|
6 S rZ   r    )r^   chunks     r   r`   z(stream_to_text_async.<locals>.<listcomp>:  s.      AAAAAAAAEEAAAAs   )r   
aiter_textr   s    r   stream_to_text_asyncr   9  sE      77AAV->->-@-@AAAAAAAAABBBr   c                     | j         S rZ   )contentr   s    r   stream_to_bytesr   =  s
    >r   c                 :   K   |                                   d {V S rZ   )areadr   s    r   stream_to_bytes_asyncr   A  s&      r   datac                 `    t          |           st          | |          S t          | |          S rZ   )_contains_pydantic_modelr@   rL   )r   r;   s     r   get_pydantic_modelr   E  s2    #D)) $s###%dC000r   c                    | t          | t          t          f          r| S t          |          }t	          |          }t          |          r)t          |          }|rt          | |d                   n| S t          |          r6d t          |          D             D ]}t          | |          }|| ur|c S | S t          |          rzt          |          rt          |          d         nt          t          | t          t          t          t          f          r| S t          | t                    rfd| D             S | S t!          |          rst#          t          |                    dk    rt          |          d         nt          t          | t                    r fd|                                 D             S | S t'          |          rt          | t                    r|d }|j                                        D ]Z\  }}|j        }||j        fD ]D}	|	@|	| v r<|| |	         n||	         }
t          |
|          }||
ur|t/          |           }|||	<   E[||n| S | S )Nr   c              3   <   K   | ]}|t          d           u|V  d S rZ   r[   r]   s     r   r   z-_coerce_iterables_for_type.<locals>.<genexpr>X  s2      JJCCtDzz4I4IC4I4I4I4IJJr   c                 0    g | ]}t          |          S r    rL   )r^   re   rf   s     r   r`   z._coerce_iterables_for_type.<locals>.<listcomp>c  s$    QQQD.tY??QQQr   rc   c                 8    i | ]\  }}|t          |          S r    r   )r^   rh   rQ   ri   s      r   rj   z._coerce_iterables_for_type.<locals>.<dictcomp>i  s:       C /zBB  r   )r   r   r   rl   r   rm   r   rL   rn   ro   r   r   bytes	bytearrayr   r   rr   rs   rt   ru   r   r   r   dict)r   r;   rw   rx   r_   coerced
field_namer   
field_typerh   rQ   coerced_valuerf   ri   s               @@r   rL   rL   L  s   |z$E(:;;|
c
"
"C__F&!! K}}<@J)$Q888dJ JJ8C==JJJ 	 	C0s;;Gd"" #S (0>HSMM!$$3	dS%G<== 	KdH%% 	RQQQQDQQQQ ),Xc]]););a)?)?Xc]]1%%S
dG$$ 	   "&**,,    s## 8
4(A(A 8!$!1!7!7!9!9 		5 		5J)J"EK0 5 5?sd{{)0DIIgclE$>uj$Q$QM$E11"?&*4jjG'45 "-ww47Kr   c                 $    t          | d|           S )N	__value__)getattrr;   s    r   rl   rl     s    3S)))r   rw   c                 T     t           fdt          d          D                       S )Nc              3       K   | ]}|u V  	d S rZ   r    )r^   r   rw   s     r   r   z%_is_annotated_type.<locals>.<genexpr>  s<         	*     r   	Annotatedr   )rw   s   `r   rm   rm     sC        8EE     r   c                 ^    t          |           } | t          u pt          |           t          u S rZ   )rl   rp   r   r   s    r   ro   ro     s)    
c
"
"C$;1*S//T11r   c                     t          |           } t          |           }t          t          t          t          f                   }| t          t
          t          fv p|t          t          |fv S rZ   )rl   r   r   r   r   r   )r;   rw   mapping_origins      r   rr   rr     sS    
c
"
"C__FS 122N4w''T6dG^5T+TTr   c                 V    t          | t                    ot          | t                    S rZ   )r   r\   
issubclassr   r   s    r   ru   ru     s!    c4  ?ZY%?%??r   c                    t          | t                    rdS t          | t                    rt          d | D                       S t          | t                    r+t          d |                                 D                       S dS )NTc              3   4   K   | ]}t          |          V  d S rZ   r   )r^   re   s     r   r   z+_contains_pydantic_model.<locals>.<genexpr>  s+      CCd+D11CCCCCCr   c              3   4   K   | ]}t          |          V  d S rZ   r   )r^   rQ   s     r   r   z+_contains_pydantic_model.<locals>.<genexpr>  s+      NNu+E22NNNNNNr   F)r   r   r   r   r   values)r   s    r   r   r     s    $	"" t$ DCCdCCCCCC$ ONNNNNNNN5r   r   .c                 ~     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   X   K   | ]$}t          |          t          |          V  %d S rZ   )hasattrr   )r^   moduler   s     r   r   z1_get_typing_objects_by_name_of.<locals>.<genexpr>  sQ        64       r   z:Neither typing nor typing_extensions has an object called )tupletypingtyping_extensionsr   )r   results   ` r   r   r     sn         01    F
  
QQ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@   rk   r$   rV   rU   rv   r   r   r   objectrn   Responser   r   r   r   r   r   r   rL   rl   rm   ro   rr   ru   r   cacher   r    r   r   <module>r      s  " H G             M M M M M M M M M M M M M M M M M M M M     ( ( ( ( ( (  - - - - - - - - # # # # # # J J J J J J J J J J J Jd    
 
 
D    
 
 
$    
 
 

 
 
BS BS B B B B  t s     $&  2 2 23 2 2C 2 2 2 23c 3 3C 3C 3 3 3 3l)G )# )c )c ) ) ) )4s 3 3    0? ? ?(  & T    '5> 'c ' ' ' 'Cu~ C# C C C CEN u       5        1S 1s 1s 1 1 1 11S 1s 1s 1 1 1 1h*S *S * * * *s t    2s 2t 2 2 2 2
U# U$ U U U U@ @ @ @ @ @3 4      sCx      r   