
    _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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  S SK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Jr  S SK J!r!J"r"J#r#  S SK$r$S SK%r%S SK&r&S SK'r'S SK%J(r(  S SK'J)r)  S	S
K*J+r+  S	SK,J-r-  S	SK.J/r/J0r0  S	SK1J2r2J3r3J4r4J5r5J6r6J7r7J8r8J9r9J:r:J;r;J<r<J=r=J>r>J?r?J@r@JArAJBrB  S	SKCJDrDJErEJFrFJGrGJHrHJIrI  S	SKJJKrKJLrLJMrM  S	SKNJOrOJPrPJQrQJRrR  S	SKSJTrTJUrUJVrVJWrW  S	SKXJYrYJZrZJ[r[J\r\J]r]J^r^J_r_  S	SK`JaraJbrbJcrcJdrd  S	SK+JereJfrfJgrgJhrh  S	SKiJjrj  \	R                  " \l5      rmS\nS'   \" SSS9ro\" SSS9rp\" S5      rq\" SSS 9rr\" S!\a\   S9rs\" S"\c\   S9rt\(       a	  S S#KuJvrv  \vrwO S S#KuJvrw   " S% S&5      ry " S' S(\O\\q   5      rz " S) S*\z\q   \\q   5      r{ " S+ S,\\q\p4   5      r| " S- S.\z\q   \\q   5      r}\" S/\\%R                  \%R                  4   S9r\" S0\\a\   \c\   4   S9r " S1 S2\\\4   5      r " S3 S4\%R                  5      r\(       a  \%R                  rO\r " S5 S6\5      r " S7 S8\\%R                  \a\   4   5      r " S9 S:\%R                  5      r S SKr " S; S<\GR                  5      r\(       a  \%R                  r \%R                  rO\r\r " S> S?\5      r " S@ SA\\%R                  \c\   4   5      rSSSSS\B\BSB.               SSSC jjr " SD SE\\S4   5      r " SF SG5      r\\\!SH   4   rSTSI jr\H" SSJ9SUSK j5       r " SL SM5      r\\\!SN   4   rSVSO jrSVSP jrSWSQ jr      SXSR jrg! \x a    \6" S$5      rw GNf = f! \x a     " S= S<\%R                  5      r GNf = f)Y    )annotationsN)TracebackType)random)TYPE_CHECKINGAnyDictTypeUnionGenericMappingTypeVarIterableIteratorOptional	GeneratorAsyncIteratorcastoverload)Literaloverride
get_origin)URL)PrivateAttr   )_exceptionsQuerystring)to_httpx_filesasync_to_httpx_files)BodyOmitQueryHeadersTimeoutNotGiven	ResponseT
AnyMapping
PostParserBinaryTypesRequestFilesHttpxSendArgsRequestOptionsAsyncBinaryTypesHttpxRequestFilesModelBuilderProtocol	not_given)is_dictis_listasyncifyis_given	lru_cache
is_mapping)PYDANTIC_V1
model_copy
model_dump)GenericModelFinalRequestOptionsvalidate_typeconstruct_type)APIResponseBaseAPIResponseAsyncAPIResponseextract_response_type)DEFAULT_TIMEOUTMAX_RETRY_DELAYDEFAULT_MAX_RETRIESINITIAL_RETRY_DELAYRAW_RESPONSE_HEADEROVERRIDE_CAST_TO_HEADERDEFAULT_CONNECTION_LIMITS)Stream
SSEDecoderAsyncStreamSSEBytesDecoder)APIStatusErrorAPITimeoutErrorAPIConnectionErrorAPIResponseValidationError)openapi_dumpszlogging.Loggerlog	SyncPageTzBaseSyncPage[Any])bound
AsyncPageTzBaseAsyncPage[Any]_T_T_coT)	covariant_StreamT_AsyncStreamT)DEFAULT_TIMEOUT_CONFIGg      @c                      \ rS rSr% SrS\S'   S\S'   S\S'   \    SS	 j5       r\    SS
 j5       r\    SS j5       r\\\S.       SS jjr\	SS j5       r
Srg)PageInfov   zxStores the necessary information to build the request to retrieve the next page.

Either `url` or `params` must be set.
URL | NotGivenurlQuery | NotGivenparamsBody | NotGivenjsonc                   g N selfr`   s     J/home/rurouni/.local/lib/python3.13/site-packages/parallel/_base_client.py__init__PageInfo.__init__       
     c                   g rf   rg   )ri   rb   s     rj   rk   rl      rm   rn   c                   g rf   rg   )ri   rd   s     rj   rk   rl      rm   rn   r`   rd   rb   c               (    Xl         X l        X0l        g rf   rq   )ri   r`   rd   rb   s       rj   rk   rl      s     	rn   c                *   U R                   (       a&  U R                  R                   SU R                    S3$ U R                  (       a&  U R                  R                   SU R                   S3$ U R                  R                   SU R                   S3$ )Nz(url=)z(json=z(params=)r`   	__class____name__rd   rb   ri   s    rj   __repr__PageInfo.__repr__   sv    88nn--.eDHH:Q??99nn--.fTYYKqAA..))*(4;;-qAArn   )rd   rb   r`   N)r`   r   returnNone)rb   r"   rz   r{   )rd   r    rz   r{   )r`   r_   rd   rc   rb   ra   rz   r{   rz   str)rv   
__module____qualname____firstlineno____doc____annotations__r   rk   r0   r   rx   __static_attributes__rg   rn   rj   r]   r]   v   s    
 

  
	    
	    
	  ( )#,	 	 		
 !	 
	 B Brn   r]   c                  |    \ rS rSr% Sr\" 5       rS\S'   \" 5       rS\S'   SS jr	SS jr
SS	 jrSS
 jrSS jrSrg)BasePage   a   
Defines the core interface for pagination.

Type Args:
    ModelT: The pydantic model that represents an item in the response.

Methods:
    has_next_page(): Check if there is another page available
    next_page_info(): Get the necessary information to make a request for the next page
r;   _optionsType[_T]_modelc                V    U R                  5       nU(       d  gU R                  5       S L$ )NF)_get_page_itemsnext_page_info)ri   itemss     rj   has_next_pageBasePage.has_next_page   s*    $$&""$D00rn   c                    g rf   rg   rw   s    rj   r   BasePage.next_page_info   s    Crn   c                    g rf   rg   rw   s    rj   r   BasePage._get_page_items   s    rn   c                    [         R                  " [        [        U R                  R
                  5      5      R                  UR
                  5      $ rf   )httpxQueryParamsr   r   r   rb   mergerh   s     rj   _params_from_urlBasePage._params_from_url   s3      c4==+?+?!@AGG

SSrn   c                @   [        U R                  5      nUR                  5         [        UR                  [
        5      (       d!  0 UR                  EUR                  EUl        U$ [        UR                  [
        5      (       d`  U R                  UR                  5      nUR                  R                  US9n[        UR                  5      Ul        [        U5      Ul        U$ [        UR                  [
        5      (       d  [        UR                  5      (       d  [        S5      eUR                  (       d  0 UR                  EUl        U$ [        UR                  5      (       d  [        S5      e0 UR                  EUR                  EUl        U$ [        S5      e)N)rb   z*Pagination is only supported with mappingszUnexpected PageInfo state)r8   r   _strip_raw_response_header
isinstancerb   r%   r`   r   	copy_withdictr}   rd   r6   	TypeError	json_data
ValueError)ri   infooptionsrb   r`   s        rj   _info_to_optionsBasePage._info_to_options   s?   T]]+**,$++x00>>$++>GNN$((H--**4884F(($$F$3C!#**-GNc(GKN$))X..dii(( LMM$$$1tyyM! N	 "'"3"344#$PQQ$Fw'8'8$FDII$F!N455rn   rg   Nrz   bool)rz   zOptional[PageInfo])rz   zIterable[_T])r`   r   rz   zhttpx.QueryParams)r   r]   rz   r;   )rv   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   rg   rn   rj   r   r      s<    	 %0MH!1"}FH$1 8T6rn   r   c                  z    \ rS rSr% \R
                  " 5       rS\S'           S
S jrSS jr	SS jr
SS jrSrg	)BaseSyncPage   SyncAPIClient_clientc                h    [         (       d  [        U SS 5      c  0 U l        X l        Xl        X0l        g N__pydantic_private__r7   getattrr   r   r   r   )ri   clientmodelr   s       rj   _set_private_attributes$BaseSyncPage._set_private_attributes   /     /Et!L!T(*D%rn   c              #  p   #    U R                  5        H  nUR                  5        H  nUv   M	     M      g 7frf   
iter_pagesr   ri   pageitems      rj   __iter__BaseSyncPage.__iter__   s.     OO%D,,.
 / &s   46c              #  j   #    U n Uv   UR                  5       (       a  UR                  5       nOg M-  7frf   r   get_next_pageri   r   s     rj   r   BaseSyncPage.iter_pages  s7     J!!##))+ s   13c                    U R                  5       nU(       d  [        S5      eU R                  U5      nU R                  R	                  U R
                  U R                  US9$ NzYNo next page expected; please check `.has_next_page()` before calling `.get_next_page()`.)r   r   r   RuntimeErrorr   r   _request_api_listr   ru   ri   r   r   s      rj   r   BaseSyncPage.get_next_page  sZ    ""$k  ''-||--dkkX_-``rn   r   r   r   r   N)r   r   r   r   r   r;   rz   r{   )rz   zIterator[_T])ri   rS   rz   zIterator[SyncPageT])ri   rS   rz   rS   )rv   r~   r   r   pydanticr   r   r   r   r   r   r   r   rg   rn   rj   r   r      sP    %113G]3     %	 
 
 *
arn   r   c                  P    \ rS rSr          SS jrS	S jrS
S jrSS jrSrg)AsyncPaginatori  c                4    X@l         Xl        X l        X0l        g rf   )r   r   r   	_page_cls)ri   r   r   page_clsr   s        rj   rk   AsyncPaginator.__init__  s     !rn   c                >    U R                  5       R                  5       $ rf   )	_get_page	__await__rw   s    rj   r   AsyncPaginator.__await__$  s    ~~))++rn   c                   ^ #    SU 4S jjnUT R                   l        T R                  R                  T R                  T R                   5      I S h  vN $  N7f)Nc                f   > U R                  TR                  TR                  TR                  S9  U $ )N)r   r   r   )r   r   r   r   )respri   s    rj   _parser)AsyncPaginator._get_page.<locals>._parser(  s2    ((kk|| ) 
 Krn   )r   rU   rz   rU   )r   post_parserr   requestr   )ri   r   s   ` rj   r   AsyncPaginator._get_page'  s>     	 %,!\\))$..$--HHHHs   AAAAc               j   #    [        [        U I S h  vN 5      nU  S h  vN nU7v   M   N N
 g 7frf   )r   rU   r   s      rj   	__aiter__AsyncPaginator.__aiter__4  s4     J
  	$J 	$s$   3-

31/1	313)r   r   r   r   N)
r   AsyncAPIClientr   r;   r   Type[AsyncPageT]r   r   rz   r{   )rz   z Generator[Any, None, AsyncPageT])rz   rU   rz   zAsyncIterator[_T])	rv   r~   r   r   rk   r   r   r   r   rg   rn   rj   r   r     sG    
"
" %
" #	
"
 
" 

",Irn   r   c                  z    \ rS rSr% \R
                  " 5       rS\S'           S
S jrSS jr	SS jr
SS jrSrg	)BaseAsyncPagei>  r   r   c                h    [         (       d  [        U SS 5      c  0 U l        Xl        X l        X0l        g r   r   )ri   r   r   r   s       rj   r   %BaseAsyncPage._set_private_attributesA  r   rn   c                  #    U R                  5         S h  vN nUR                  5        H  nU7v   M
     M'   N"
 g 7frf   r   r   s      rj   r   BaseAsyncPage.__aiter__N  s6     //+ 	$,,.
 /	+s   ><:<><>c                  #    U n U7v   UR                  5       (       a  UR                  5       I S h  vN nOg M6   N7frf   r   r   s     rj   r   BaseAsyncPage.iter_pagesS  s?     J!!##!//11  2s   1><	>c                   #    U R                  5       nU(       d  [        S5      eU R                  U5      nU R                  R	                  U R
                  U R                  US9I S h  vN $  N7fr   r   r   s      rj   r   BaseAsyncPage.get_next_page\  sc     ""$k  ''-\\33DKKdnn^e3ffffs   A&A/(A-)A/r   N)r   r   r   r   r   r;   rz   r{   r   )ri   rU   rz   zAsyncIterator[AsyncPageT])ri   rU   rz   rU   )rv   r~   r   r   r   r   r   r   r   r   r   r   r   rg   rn   rj   r   r   >  sP    &224G^4     %	 
 
 
grn   r   _HttpxClientT_DefaultStreamTc                  d   \ rS rSr% S\S'   S\S'   S\S'   S\S	'   S
\S'   S\S'   S\S'   SrS\S'   \\SSS.               S1S jjrS2S jr	    S3S jr
        S4S jrSS.S5S jjrS6S jrS7S jrSS.     S8S jjrS9S jrS:S jrS;S  jr        S<S! jr\S=S" j5       r\S>S# j5       r\S?S$ j5       r\S@S% j5       r\SAS& j5       r      SBS' jr\SCS( j5       r\SDS) j5       r\R:                  SES* j5       rSFS+ jrSGSHS, jjr SG       SIS- jjr SJS. jr!SCS/ jr"S0r#g)K
BaseClientik  r   r   r}   _versionr   	_base_urlintmax_retrieszUnion[float, Timeout, None]timeoutr   _strict_response_validation
str | None_idempotency_headerNztype[_DefaultStreamT] | None_default_stream_cls)r   r   custom_headerscustom_queryc                   Xl         U R                  [        U5      5      U l        X@l        XPl        U=(       d    0 U l        U=(       d    0 U l        X0l        S U l	        S U l
        Uc  [        S5      eg )Nzmax_retries cannot be None. If you want to disable retries, pass `0`; if you want unlimited retries, pass `math.inf` or a very high number; if you want the default behavior, pass `parallel.DEFAULT_MAX_RETRIES`)r   _enforce_trailing_slashr   r   r   r   _custom_headers_custom_queryr   r   	_platformr   )ri   versionbase_urlr   r   r   r   r   s           rj   rk   BaseClient.__init__u  sw      55c(mD&-3)/R+F(#' *. d  rn   c                ~    UR                   R                  S5      (       a  U$ UR                  UR                   S-   S9$ )N   /raw_path)r	  endswithr   rh   s     rj   r   "BaseClient._enforce_trailing_slash  s6    <<  &&J}}cllT&9}::rn   c                d   UR                   (       a#  UR                  (       d  S nSUR                   3nOEUR                  R	                  5       nUn [
        R                  " U5      nSUR                   SU 3nU R                  X2US9$ ! [         a    U=(       d    SUR                   3n N4f = f)NzError code: z - )bodyresponse)		is_closedis_stream_consumedstatus_codetextstriprd   loads	Exception_make_status_error)ri   r  r  err_msgerr_texts        rj    _make_status_error_from_response+BaseClient._make_status_error_from_response  s     h&A&A D$X%9%9$:;G}}**,HDLzz(+()=)=(>c$H &&wH&MM  L"KX5I5I4J&KLs   (B
 
"B/.B/c                   [        5       erf   )NotImplementedError)ri   r  r  r  s       rj   r  BaseClient._make_status_error  s     "##rn   r   retries_takenc               f   UR                   =(       d    0 n[        U R                  U5      nU R                  XC5        [        R
                  " U5      nU R                  nU(       a$  UR                  (       a  Xe;  a  UR                  XV'   U Vs/ s H  owR                  5       PM     nnSU;  a  [        U5      US'   SU;  ai  [        UR                  [        5      (       a  U R                  OUR                  n	[        U	[        5      (       a  U	R                  n	U	b  [        U	5      US'   U$ s  snf )Nzx-stainless-retry-countzx-stainless-read-timeout)headers_merge_mappingsdefault_headers_validate_headersr   r#   r   idempotency_keylowerr}   r   r   r%   r$   read)
ri   r   r  r   headers_dictr!  idempotency_headerheaderlower_custom_headersr   s
             rj   _build_headersBaseClient._build_headers  s    .B&t';';^L|< ---!55'"9"9>P>_*1*A*AG' >LL^6^L$,@@14]1CG-.%-AA&0(&K&KdllQXQ`Q`G'7++!,,"69'l23  Ms   D.c                    [        U5      nUR                  (       aK  U R                  R                  UR                  R	                  S5      -   nU R                  R                  US9$ U$ )zs
Merge a URL argument together with any 'base_url' on the client,
to create the URL used for the outgoing request.
r  r  )r   is_relative_urlr  r	  lstripr   )ri   r`   	merge_urlmerge_raw_paths       rj   _prepare_urlBaseClient._prepare_url  sZ     H	$$!]]33i6H6H6O6OPT6UUN==**N*CCrn   c                    [        5       $ rf   )rJ   rw   s    rj   _make_sse_decoderBaseClient._make_sse_decoder  s
    |rn   c                  [         R                  [        R                  5      (       a-  [         R	                  S[        US[        (       a  S1O0 S95        0 nUR                  nUR                  b\  Uc  [        [        UR                  5      nO>[        U5      (       a  [        XAR                  5      nO[        S[        U5       S35      eU R                  XS9n[        U R                   UR"                  5      nUR%                  S5      nUR&                  nUb  UR)                  S	5      (       ay  S
U;  a  UR+                  S5        U(       a<  [-        U5      (       d  [/        S[        U5       S35      eU R1                  U5      US'   U(       d  [        [2        [5        5       5      nU R7                  UR8                  5      n	U(       ad  U	R:                  (       aS  0 [=        U	R"                  R?                  5       5      EUEnU	RA                  U	RB                  RE                  SS5      S   S9n	SU	RF                  ;   a!  SU	RF                  RI                  SS5      0US'   URJ                  RM                  5       S:g  n
U
(       a  URN                  b  Ub  [/        S5      eURN                  b  Ub  [/        S5      eURN                  b  URN                  US'   OD[Q        U[R        5      (       a  XCS'   O*U(       d#  [U        U5      (       a  Ub  [W        U5      OS US'   XS'   O$UR+                  SS 5        UR+                  SS 5        U RX                  RZ                  " SU[Q        UR\                  [^        5      (       a  U R\                  OUR\                  URJ                  U	U(       a6  U R`                  Rc                  [        [d        [f        [h        4   U5      5      OS S.UD6$ )NzRequest options: %sTcontent)exclude_unsetexcludezUnexpected JSON data type, z , cannot merge with `extra_body`r  Content-Typezmultipart/form-databoundaryzGExpected query input to be a dictionary for multipart requests but got z	 instead.data   ?r   r   r  _sni_hostname-
extensionsgetz7Passing both `content` and `json_data` is not supportedz3Passing both `content` and `files` is not supportedfiles)r!  r   methodr`   rb   rg   )5rR   isEnabledForloggingDEBUGdebugr9   r7   r   
extra_jsonr   r    r6   r"  r   typer,  default_queryrb   rD  rE  
startswithpopr1   r   _serialize_multipartformr.   ForceMultipartDictr3  r`   queryr   r   r   r	  splithostreplacerF  r&  r9  r   bytesr4   rQ   r   build_requestr   r%   qs	stringifyr   r}   r   )ri   r   r  kwargsr   r!  rb   content_typerE  prepared_urlis_body_alloweds              rj   _build_requestBaseClient._build_request  sl    GMM**II%"&
 #{ " 	 "$%%	)  w'9'9:	I&&+I7I7IJ	"%@i@QQq#rss%%g%K !3!3W^^D{{>2 #(?(?@U(V(V- N+ y))#abfgpbqarr{|  "&!>!>y!Iv .0B0DE((5l((D\006689DVDF'11<;P;P;V;VW[]^;_`a;b1cL,###$2L4E4E4M4McSV4W#XF< !....0E9*y/D YZZ*u/@ UVV*$+OOy!Iu--$-y! AI@S@SXaXmM)$<swy!#7OKK-JJvt$ ||)) 
$.w$I$IDLLw>>
 JP477$$T'#s(*;V%DEUY
 
 	
rn   c                    U R                   R                  USS9n0 nU HK  u  pEUR                  U5      nU(       d  XSU'   M#  [        U5      (       a  UR	                  U5        MF  Xe/X4'   MM     U$ )Nbrackets)array_format)rX  stringify_itemsrD  r2   append)ri   r>  r   
serializedkeyvalueexistings          rj   rP  #BaseClient._serialize_multipartformI  s|    '' #	 ( 
 )+
JC!~~c*H"'3 x  &#+"3
%  ( rn   c                    [        UR                  5      (       d  U$ [        UR                  5      nUR                  [        [
        5      n[        U5      (       a  X2l        [        [        [           U5      $ U$ rf   )	r4   r!  r   rO  rG   r0   r   r	   r&   )ri   cast_tor   r!  override_cast_tos        rj   _maybe_override_cast_to"BaseClient._maybe_override_cast_tog  sb    ((N w'
 #;;'>	J$%%%OY)9::rn   c                F    UR                   R                  [        5      S:H  $ )Nstream)r!  rD  rF   ri   r   s     rj   _should_stream_response_body'BaseClient._should_stream_response_bodyx  s    ""#678CCrn   c                  Uc  [        [        S 5      $ U[        L a  [        [        U5      $  [        R                  " U5      (       a2  [        U[        5      (       a  [        [        UR                  X1S95      $ U R                  (       a  [        [        [        X!S95      $ [        [        [        X!S95      $ ! [        R                   a  n[        X1S9UeS nAff = f)N)r  r>  )type_rg  )r  r  )r   r&   objectinspectisclass
issubclassr/   buildr   r<   r=   r   ValidationErrorrP   )ri   r>  rk  r  errs        rj   _process_response_data!BaseClient._process_response_data{  s     <	4((f	4((		Tw''Jw@T,U,UIw}}h}'RSS//I}7'OPP	>#LMM'' 	T,hJPSS	Ts$   AB: ;'B: #B: :C
CCc                    [        5       $ rf   r   rw   s    rj   rX  BaseClient.qs  s
    }rn   c                    g rf   rg   rw   s    rj   custom_authBaseClient.custom_auth  s    rn   c                    0 $ rf   rg   rw   s    rj   auth_headersBaseClient.auth_headers  s    	rn   c                r    SSU R                   S.U R                  5       EU R                  EU R                  E$ )Nzapplication/json)Acceptr<  z
User-Agent)
user_agentplatform_headersr  r   rw   s    rj   r#  BaseClient.default_headers  sN     ).//
 ##%	

 
 ""
 	
rn   c                    0 U R                   E$ rf   )r  rw   s    rj   rM  BaseClient.default_query  s    
  
 	
rn   c                    g)zQValidate the given default headers and custom headers.

Does nothing by default.
Nrg   )ri   r!  r   s      rj   r$  BaseClient._validate_headers  s     	rn   c                L    U R                   R                   SU R                   3$ )Nz/Python )ru   rv   r   rw   s    rj   r  BaseClient.user_agent  s"    ..))*(4==/BBrn   c                    U R                   $ rf   )r   rw   s    rj   r  BaseClient.base_url  s    ~~rn   c                p    U R                  [        U[        5      (       a  UO
[        U5      5      U l        g rf   )r   r   r   r   rh   s     rj   r  r    s)    55ZS=Q=QcWZ[^W_`rn   c                >    [        U R                  U R                  S9$ )N)platform)r  r   r  rw   s    rj   r  BaseClient.platform_headers  s      GGrn   c                   Uc  g UR                  SS5      n[        U5      S-  $ ! [        [        4 a     Of = fUR                  S5      n [        U5      $ ! [        [        4 a     Of = f[        R
                  R                  U5      nUc  g[        R
                  R                  U5      n[        U[        R                  " 5       -
  5      $ )a(  Returns a float of the number of seconds (not milliseconds) to wait after retrying, or None if unspecified.

About the Retry-After header: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After
See also  https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After#syntax
Nzretry-after-ms  zretry-after)	rD  floatr   r   emailutilsparsedate_tz	mktime_tztime)ri   response_headersretry_ms_headerretry_headerretry_date_tuple
retry_dates         rj   _parse_retry_after_header$BaseClient._parse_retry_after_header  s     #	.223CTJO)D00:& 		 (++M:	 &&:& 		 !;;33LA#[[**+;<
Z$))+-..s   & 99
A A,+A,c                   UR                  U R                  5      nU R                  U5      nUb  SUs=:  a  S::  a   U$   [        XA-
  S5      n[        [        [        SU5      -  [        5      nSS[        5       -  -
  nXx-  n	U	S:  a  U	$ S$ )Nr   <   r  g       @r   g      ?)get_max_retriesr   r  minrE   powrC   r   )
ri   remaining_retriesr   r  r   retry_after
nb_retriessleep_secondsjitterr   s
             rj   _calculate_retry_timeout#BaseClient._calculate_retry_timeout  s     --d.>.>? 445EF"q;'<"'< (= 8$?
 /#c:2FFX TFH_$(!Q,w-A-rn   c                \   UR                   R                  S5      nUS:X  a  [        R                  S5        gUS:X  a  [        R                  S5        gUR                  S:X  a!  [        R                  S	UR                  5        gUR                  S
:X  a!  [        R                  S	UR                  5        gUR                  S:X  a!  [        R                  S	UR                  5        gUR                  S:  a!  [        R                  S	UR                  5        g[        R                  S5        g)Nzx-should-retrytruez4Retrying as header `x-should-retry` is set to `true`Tfalsez9Not retrying as header `x-should-retry` is set to `false`Fi  zRetrying due to status code %ii  i  i  zNot retrying)r!  rD  rR   rJ  r  )ri   r  should_retry_headers      rj   _should_retryBaseClient._should_retry  s    &..223CD &(IILM')IIQR 3&II68L8LM 3&II68L8LM 3&II68L8LM 3&II68L8LM		.!rn   c                2    S[         R                  " 5        3$ )Nzstainless-python-retry-)uuiduuid4rw   s    rj   _idempotency_keyBaseClient._idempotency_key*  s    (77rn   )	r   r   r  r   r  r   r   r   r   )r  r}   r  	str | URLr   r   r   r   r   zfloat | Timeout | Noner   Mapping[str, str] | Noner   Mapping[str, object] | Nonerz   r{   )r`   r   rz   r   )r  httpx.Responserz   rM   )r  r}   r  rv  r  r  rz   z_exceptions.APIStatusError)r   r;   r  r   rz   zhttpx.Headers)r`   r}   rz   r   )rz   zSSEDecoder | SSEBytesDecoder)r   r;   r  r   rz   httpx.Request)r>  zMapping[object, object]rz   dict[str, object])rk  type[ResponseT]r   r;   rz   r  )r   r  rz   r   )r>  rv  rk  r  r  r  rz   r&   )rz   r   )rz   zhttpx.Auth | None)rz   zdict[str, str])rz   zdict[str, str | Omit])rz   r  )r!  r#   r   r#   rz   r{   r|   )rz   r   )r`   z	URL | strrz   r{   )rz   Dict[str, str]rf   )r  Optional[httpx.Headers]rz   zfloat | None)r  r   r   r;   r  r  rz   r  )r  r  rz   r   )$rv   r~   r   r   r   r   rD   rB   rk   r   r  r  r,  r3  r6  r^  rP  rm  rr  r}  propertyrX  r  r  r#  rM  r$  r  r  setterr  r  r  r  r  r   rg   rn   rj   r   r   k  sv   MN((!%%##8<5< /*93748  	
 &*  ( 1 2 
4;
N N 
N,$$ 	$
 !$ 
$$ TU 4 	j
$j
 	j

 
j
X<"DT T !	T
 !T 
T0       
 
 
 

		  	 
		 C C   __a aH /L 59	.. %. 2	.
 
.0!F8rn   r   c                  ,   ^  \ rS rSrSU 4S jjrSrU =r$ )_DefaultHttpxClienti.  c                   > UR                  S[        5        UR                  S[        5        UR                  SS5        [        TU ]  " S0 UD6  g Nr   limitsfollow_redirectsTrg   
setdefaultrB   rH   superrk   ri   rZ  ru   s     rj   rk   _DefaultHttpxClient.__init__/  E    )_5($=>,d3"6"rn   rg   rZ  r   rz   r{   rv   r~   r   r   rk   r   __classcell__ru   s   @rj   r  r  .      # #rn   r  c                      \ rS rSrSS jrSrg)SyncHttpxClientWrapperiB  c                j    U R                   (       a  g  U R                  5         g ! [         a     g f = frf   )r  closer  rw   s    rj   __del__SyncHttpxClientWrapper.__del__C  s,    >>	JJL 		s   % 
22rg   Nrz   r{   rv   r~   r   r   r  r   rg   rn   rj   r  r  B  s    rn   r  c                  l  ^  \ rS rSr% S\S'   SrS\S'   \\SSSS.                 S4U 4S jjjrS5S	 jr	S6S
 jr
S7S jr        S8S jr    S9S jr    S:S jr\          S;S j5       r\SS.       S<S jj5       r\SSS.         S=S jj5       rSSS.         S>S jjr          S?S jrSS.             S@S jjr        SAS jr\0 SS.         SBS jj5       r\0 S.           SCS jj5       r\0 SS.           SDS  jj5       r0 SSS!.           SDS" jjr\SS0 SSS#.               SES$ jj5       r\SS0 SS%.                 SFS& jj5       r\SS0 SSS'.                 SGS( jj5       rSS0 SSSS).                 SGS* jjrSSS0 S+.             SHS, jjrSSS0 S+.             SHS- jjrSS0 S..           SIS/ jjrS0 S0S1.             SJS2 jjrS3rU =r$ )Kr   iM  zhttpx.Clientr   Nztype[Stream[Any]] | Noner   r   r   http_clientr   r   c          
       > [        U5      (       d.  U(       a!  UR                  [        :w  a  UR                  nO[        nUb6  [	        U[
        R                  5      (       d  [        S[        U5       35      e[        T	U ])  U[        [        U5      UUUUUS9  U=(       d    [        U[        [        U5      S9U l        g )NzOInvalid `http_client` argument; Expected an instance of `httpx.Client` but got )r  r   r  r   r   r   r   r  r   )r4   r   HTTPX_DEFAULT_TIMEOUTrB   r   r   Clientr   rL  r  rk   r   r$   r  r   )
ri   r  r  r   r   r  r   r   r   ru   s
            rj   rk   SyncAPIClient.__init__Q  s        {226KK%--)":k5<<+P+Pabfgrbsatu  	'*#%)(C 	 		
 # 
&<'*'
rn   c                .    U R                   R                  $ rf   r   r  rw   s    rj   r  SyncAPIClient.is_closed      ||%%%rn   c                \    [        U S5      (       a  U R                  R                  5         gg)PClose the underlying HTTPX client.

The client will *not* be usable after this.
r   N)hasattrr   r  rw   s    rj   r  SyncAPIClient.close  s&     4##LL  $rn   c                    U $ rf   rg   rw   s    rj   	__enter__SyncAPIClient.__enter__  s    rn   c                $    U R                  5         g rf   r  ri   exc_typeexcexc_tbs       rj   __exit__SyncAPIClient.__exit__  s     	

rn   c                    U$ z#Hook for mutating the given optionsrg   ri   r   s     rj   _prepare_optionsSyncAPIClient._prepare_options  s	    
 rn   c                    gzThis method is used as a callback for mutating the `Request` object
after it has been constructed.
This is useful for cases where you want to add certain headers based off of
the request properties, e.g. `url`, `method` etc.
Nrg   rq  s     rj   _prepare_requestSyncAPIClient._prepare_request  s     rn   c                   g rf   rg   ri   rk  r   rp  
stream_clss        rj   r   SyncAPIClient.request  s     rn   Frp  c                   g rf   rg   ri   rk  r   rp  s       rj   r   r	    s     rn   rp  r  c                   g rf   rg   r  s        rj   r   r	    s      #rn   c          	     L   U R                  X5      n[        U5      nUR                  c3  UR                  R	                  5       S:w  a  U R                  5       Ul        S nUR                  U R                  5      nSn[        US-   5       GH=  n[        U5      nU R                  U5      nXx-
  n	U R                  X(S9n
U R                  U
5        0 nU R                  b  U R                  US'   UR                  b  UR                  US'   [        R                  SU
R                  U
R                   5        S n U R"                  R$                  " U
4SU=(       d    U R'                  U
S	90UD6n[        R                  SU
R                  U
R                   UR4                  UR6                  UR8                  5         UR;                  5           O   Uc   S5       eU RK                  UUUUUUS9$ ! [(        R*                   aW  n[        R                  S
SS9  U	S:  a  U R-                  UUUS S9   S nAGM  [        R                  S5        [/        U
S	9UeS nAf[0         aW  n[        R                  SSS9  U	S:  a  U R-                  UUUS S9   S nAGM  [        R                  S5        [3        U
S	9UeS nAff = f! [(        R<                   a  n[        R                  SSS9  U	S:  aS  U R?                  UR@                  5      (       a3  UR@                  RC                  5         U R-                  UUUUS9   S nAGM  UR@                  RD                  (       d  UR@                  RG                  5         [        R                  S5        U RI                  UR@                  5      S eS nAff = fNrD  r   r   r  authr  zSending HTTP Request: %s %srp  )r   z"Encountered httpx.TimeoutExceptionT)exc_info)r  r   r   r  zRaising timeout errorzEncountered ExceptionzRaising connection errorzHTTP Response: %s %s "%i %s" %sz!Encountered httpx.HTTPStatusErrorzRe-raising status errorz0could not resolve response (should never happen))rk  r   r  rp  r  r  )&rm  r8   r%  rF  r&  r  r  r   ranger   r^  r  r  r  rR   rJ  r`   r   sendrr  r   TimeoutException_sleep_for_retryrN   r  rO   r  reason_phraser!  raise_for_statusHTTPStatusErrorr  r  r  r  r'  r  _process_responseri   rk  r   rp  r  input_optionsr  r   r  r  r   rZ  r|  s                rj   r   r	    s    ..w@
 #7+((0]5I5I5O5O5QUZ5Z,0,A,A,CM)*.#33D4D4DE";?3M /G++G4G + ;))')OG!!'*$&F+!%!1!1v''3-4-E-E)*II3W^^W[[QH!C<<,,!WT%F%Fw%F%W D II1$$&&  T))+, k 4n #W%WW#%%!' & 
 	
A )) @		>	N$q())&3$/ -!%	 *  		12%g6C? C		1D	A$q())&3$/ -!%	 *  		45(9sBC4 (( T		=	M$q(T-?-?-M-MLL&&())&3$/ -!)	 *   ||--LL%%'		34;;CLLItS'TsP   65G*8J7*J4>,I1IJ4,J/J//J47N#A&N8A&NN#c               (   X!-
  nUS:X  a  [         R                  S5        O[         R                  SU5        U R                  XSU(       a  UR                  OS 5      n[         R	                  SUR
                  U5        [        R                  " U5        g Nr   z1 retry leftz%i retries leftz$Retrying request to %s in %f seconds)rR   rJ  r  r!  r   r`   r  sleepri   r  r   r   r  r  r   s          rj   r  SyncAPIClient._sleep_for_retry=  sq     (7!IIn%II'):;//0A`hHL\L\nrs7gN

7rn   r   r  c                  [        U5      =(       d    Un[        R                  " U5      (       a  [        U[        5      (       a  U(       a7  [        UR                  R                  R                  [        5      5      (       aY  [        U[        5      (       d  [        S[         SU 35      e[        SU5      n[        [        U" UU [        U5      UUUUS95      $ U[        R                   :X  a  [        [        U5      $ [        UU [        SU5      UUUUS9n	[        UR                  R                  R                  [        5      5      (       a  [        [        U	5      $ U	R#                  5       $ )N!API Response types must subclass ; Received type[BaseAPIResponse[Any]]rawr   rk  rp  r  r   r  r  )r   rw  rx  ry  r?   r   r   r!  rD  rF   r>   r   r   r&   rA   r   Responseparse
ri   rk  r   r  rp  r  r  originresponse_clsapi_responses
             rj   r  SyncAPIClient._process_responseK  sC    G$/ OOF##6?33 tH$4$4$<$<$@$@AT$UVVfk22"CK=P[\b[c dee <gFL 1,?!)#"/  enn$	8,,"*G4!'
   ((,,-@ABB	<00!!##rn   c                L   ^ ^^ SUUU 4S jjnUTl         T R                  UTSS9$ )Nc                *   > U R                  TTTS9  U $ )N)r   r   r   )r   )r   r   r   ri   s    rj   r   0SyncAPIClient._request_api_list.<locals>._parser  s&    (( ) 
 Krn   Fr
  )r   rS   rz   rS   )r   r   )ri   r   r   r   r   s   `` ` rj   r   SyncAPIClient._request_api_list  s,    	 	 &||D'%|88rn   r   rp  c                   g rf   rg   ri   pathrk  r   rp  s        rj   rD  SyncAPIClient.get  s     rn   r   c                   g rf   rg   ri   r6  rk  r   rp  r  s         rj   rD  r7    s     rn   r   r  c                   g rf   rg   r:  s         rj   rD  r7    s      #rn   r   rp  r  c          
     p    [         R                  " SSUS.UD6n[        [        U R	                  X&XES95      $ NrD  )rF  r`   r  rg   )r;   	constructr   r&   r   ri   r6  rk  r   rp  r  optss          rj   rD  r7    s:     #,,OEtOwO It||G&|`aarn   )r  r9  r   rE  rp  c                   g rf   rg   )ri   r6  rk  r  r9  r   rE  rp  s           rj   postSyncAPIClient.post  s     rn   )r  r9  r   rE  c                   g rf   rg   	ri   r6  rk  r  r9  r   rE  rp  r  s	            rj   rD  rE    s     rn   )r  r9  r   rE  r  c                   g rf   rg   rG  s	            rj   rD  rE    s      #rn   )r  r9  r   rE  rp  r  c          
     (   Ub  Ub  [        S5      eUb  Ub  [        S5      e[        U[        5      (       a  [        R                  " S[
        SS9  [        R                  " S	SXU[        U5      S.UD6n	[        [        U R                  X)XxS95      $ 
N2Passing both `body` and `content` is not supported3Passing both `files` and `content` is not supportedPassing raw bytes as `body` is deprecated and will be removed in a future version. Please pass raw bytes via the `content` parameter instead.   
stacklevelrD  rF  r`   r   r9  rE  r  rg   )r   r   rV  warningswarnDeprecationWarningr;   r@  r   r   r&   r   )
ri   r6  rk  r  r9  r   rE  rp  r  rB  s
             rj   rD  rE    s      3PQQ!4QRRdE""MMM"	 #,, 
tWN[`La
el
 It||G&|`aarn   r  r9  rE  r   c          
        Ub  Ub  [        S5      eUb  Ub  [        S5      e[        U[        5      (       a  [        R                  " S[
        SS9  [        R                  " SSXU[        U5      S.UD6nU R                  X'5      $ 	NrK  rL  rM  rN  rO  patchrQ  rg   
r   r   rV  rR  rS  rT  r;   r@  r   r   ri   r6  rk  r  r9  rE  r   rB  s           rj   rX  SyncAPIClient.patch  s      3PQQ!4QRRdE""MMM"	 #,, 
g^\aMb
fm
 ||G**rn   c          
        Ub  Ub  [        S5      eUb  Ub  [        S5      e[        U[        5      (       a  [        R                  " S[
        SS9  [        R                  " SSXU[        U5      S.UD6nU R                  X'5      $ 	NrK  rL  rM  rN  rO  putrQ  rg   rY  rZ  s           rj   r^  SyncAPIClient.put   s      3PQQ!4QRRdE""MMM"	 #,, 
dG>Z_K`
dk
 ||G**rn   r  r9  r   c                   Ub  Ub  [        S5      e[        U[        5      (       a  [        R                  " S[
        SS9  [        R                  " SSXUS.UD6nU R                  X&5      $ NrK  rM  rN  rO  delete)rF  r`   r   r9  rg   	r   r   rV  rR  rS  rT  r;   r@  r   ri   r6  rk  r  r9  r   rB  s          rj   rc  SyncAPIClient.delete:  so      3PQQdE""MMM"	 #,,sH$`gskrs||G**rn   rD  r  r   rF  c               X    [         R                  " SXaUS.UD6nU R                  X#U5      $ N)rF  r`   r   rg   r;   r@  r   ri   r6  r   r   r  r   rF  rB  s           rj   get_api_listSyncAPIClient.get_api_listO  3     #,,`FPT`X_`%%e488rn   )r   )r  r}   r  r  r   r   r   !float | Timeout | None | NotGivenr  zhttpx.Client | Noner   r  r   r  r   r   rz   r{   r   r  ri   rV   rz   rV   r  ztype[BaseException] | Noner  zBaseException | Noner  zTracebackType | Nonerz   r{   r   r;   rz   r;   r   r  rz   r{   )
rk  Type[ResponseT]r   r;   rp  Literal[True]r  zType[_StreamT]rz   rY   rk  rt  r   r;   rp  Literal[False]rz   r&   )
rk  rt  r   r;   rp  r   r  zType[_StreamT] | Nonerz   ResponseT | _StreamT)
rk  rt  r   r;   rp  r   r  type[_StreamT] | Nonerz   rx  
r  r   r   r   r   r;   r  zhttpx.Response | Nonerz   r{   rk  rt  r   r;   r  r  rp  r   r  z1type[Stream[Any]] | type[AsyncStream[Any]] | Noner  r   rz   r&   )r   Type[object]r   Type[SyncPageT]r   r;   rz   rS   
r6  r}   rk  rt  r   r,   rp  rw  rz   r&   )r6  r}   rk  rt  r   r,   rp  ru  r  type[_StreamT]rz   rY   )r6  r}   rk  rt  r   r,   rp  r   r  ry  rz   rx  )r6  r}   rk  rt  r  Body | Noner9  BinaryTypes | Noner   r,   rE  RequestFiles | Nonerp  rw  rz   r&   )r6  r}   rk  rt  r  r  r9  r  r   r,   rE  r  rp  ru  r  r  rz   rY   )r6  r}   rk  rt  r  r  r9  r  r   r,   rE  r  rp  r   r  ry  rz   rx  )r6  r}   rk  rt  r  r  r9  r  rE  r  r   r,   rz   r&   )r6  r}   rk  rt  r  r  r9  r  r   r,   rz   r&   )r6  r}   r   r|  r   r}  r  r  r   r,   rF  r}   rz   rS   )rv   r~   r   r   r   r   rD   r0   rk   r  r  r  r  r   r  r   r   r  r  r   rD  rD  rX  r^  rc  rl  r   r  r  s   @rj   r   r   M  s-   4818 /5>+/3748,
 ,
 	,

 ,
 3,
 ),
 1,
 2,
 &*,
 
,
 ,
\&!, " %	
 
$ 
		 
	   %
  # 
   "'  %
  
   ,0# # %#
 # *# 
# # ,0u
 u
 %u

 u
 *u
 
u
n #25@S_t	, 4$ !4$ %	4$
 !4$ 4$ F4$ 4$ 
4$l99 9 %	9
 
9$  #%!& !	
    
   #% !	
    # 
   #%,0## !	#
  # # *# 
# # #%,0bb !	b
  b b *b 
b  !&*"$%)!&

 !	

 
 $
  
 #
 
 

 
  !&*"$%) !	
  $   #  # 
   !&*"$%),0## !	#
 # $#  # ## # *# 
# #$ !&*"$%),0bb !	b
 b $b  b #b b *b 
bB !&*%)"$++ !	+
 + $+ #+  + 
+> !&*%)"$++ !	+
 + $+ #+  + 
+> !&*"$++ !	+
 + $+  + 
+6 !"$99 	9
 9 9  9 9 
9 9rn   r   c                  ,   ^  \ rS rSrSU 4S jjrSrU =r$ )_DefaultAsyncHttpxClienti]  c                   > UR                  S[        5        UR                  S[        5        UR                  SS5        [        TU ]  " S0 UD6  g r  r  r  s     rj   rk   !_DefaultAsyncHttpxClient.__init__^  r  rn   rg   r  r  r  s   @rj   r  r  ]  r  rn   r  c                  ,   ^  \ rS rSrSU 4S jjrSrU =r$ )_DefaultAioHttpClientin  c                   > UR                  S[        5        UR                  S[        5        UR                  SS5        [        TU ]  " S0 UD6  g r  r  r  s     rj   rk   _DefaultAioHttpClient.__init__o  sE    i9h(AB0$7G&v&rn   rg   r  r  r  s   @rj   r  r  n  s    	' 	'rn   r  c                      \ rS rSrSS jrSrg)r  ii  c                    [        S5      e)NzVTo use the aiohttp client you must have installed the package with the `aiohttp` extra)r   )ri   _kwargss     rj   rk   r  j  s    wxxrn   rg   N)r  r   rz   r{   )rv   r~   r   r   rk   r   rg   rn   rj   r  r  i  s    	yrn   c                      \ rS rSrSS jrSrg)AsyncHttpxClientWrapperi  c                    U R                   (       a  g  [        R                  " 5       R                  U R	                  5       5        g ! [
         a     g f = frf   )r  asyncioget_running_loopcreate_taskacloser  rw   s    rj   r  AsyncHttpxClientWrapper.__del__  s@    >>	$$&224;;=A 		s   2A 
AArg   Nr  r  rg   rn   rj   r  r    s    rn   r  c                  j  ^  \ rS rSr% S\S'   SrS\S'   \\SSSS.                 S4U 4S jjjrS5S	 jr	S6S
 jr
S7S jr        S8S jr    S9S jr    S:S jr\SS.       S;S jj5       r\          S<S j5       r\SS.         S=S jj5       rSSS.         S=S jjr          S>S jrSS.             S?S jjr        S@S jr\0 SS.         SAS jj5       r\0 S.           SBS jj5       r\0 SS .           SCS! jj5       r0 SSS".           SCS# jjr\SSS0 SS$.               SDS% jj5       r\SSS0 S&.                 SES' jj5       r\SSS0 SS(.                 SFS) jj5       rSSS0 SSS*.                 SFS+ jjrSSS0 S&.             SGS, jjrSSS0 S&.             SGS- jjrSS0 S..           SHS/ jjrS0 S0S1.             SIS2 jjrS3rU =r$ )Jr   i  zhttpx.AsyncClientr   Nztype[AsyncStream[Any]] | Noner   r  c          
       > [        U5      (       d.  U(       a!  UR                  [        :w  a  UR                  nO[        nUb6  [	        U[
        R                  5      (       d  [        S[        U5       35      e[        T	U ])  UU[        [        U5      UUUUS9  U=(       d    [        U[        [        U5      S9U l        g )NzTInvalid `http_client` argument; Expected an instance of `httpx.AsyncClient` but got )r  r  r   r   r   r   r   r  )r4   r   r  rB   r   r   AsyncClientr   rL  r  rk   r   r$   r  r   )
ri   r  r  r   r   r   r  r   r   ru   s
            rj   rk   AsyncAPIClient.__init__  s        {226KK%--)":k5CTCT+U+Ufgklwgxfyz  	'*#%)(C 	 		
 # 
&='*'
rn   c                .    U R                   R                  $ rf   r  rw   s    rj   r  AsyncAPIClient.is_closed  r  rn   c                T   #    U R                   R                  5       I Sh  vN   g N7f)r  N)r   r  rw   s    rj   r  AsyncAPIClient.close  s     
 ll!!###s   (&(c                   #    U $ 7frf   rg   rw   s    rj   
__aenter__AsyncAPIClient.__aenter__  s
        c                @   #    U R                  5       I S h  vN   g  N7frf   r  r  s       rj   	__aexit__AsyncAPIClient.__aexit__  s      jjls   c                   #    U$ 7fr  rg   r  s     rj   r   AsyncAPIClient._prepare_options  s     
 r  c                   #    g7fr  rg   rq  s     rj   r  AsyncAPIClient._prepare_request  s
         Fr
  c                  #    g 7frf   rg   r  s       rj   r   AsyncAPIClient.request  s
      r  c                  #    g 7frf   rg   r  s        rj   r   r    s
      r  )r  c                  #    g 7frf   rg   r  s        rj   r   r    s
      %(r  r  c          	     f  #    U R                   c!  [        [        5      " 5       I S h  vN U l         U R                  X5      n[	        U5      nUR
                  c3  UR                  R                  5       S:w  a  U R                  5       Ul        S nUR                  U R                  5      nSn[        US-   5       GHU  n[	        U5      nU R                  U5      I S h  vN nXx-
  n	U R                  X(S9n
U R                  U
5      I S h  vN   0 nU R                  b  U R                  US'   UR                   b  UR                   US'   ["        R%                  SU
R                  U
R&                  5        S n U R(                  R*                  " U
4SU=(       d    U R-                  U
S	90UD6I S h  vN n["        R%                  SU
R                  U
R&                  UR:                  UR<                  UR>                  5         URA                  5           O   Uc   S5       eU RQ                  UUUUUUS9I S h  vN $  GN GN` GN7 N! [.        R0                   a`  n["        R%                  S
SS9  U	S:  a"  U R3                  UUUS S9I S h  vN     S nAGM  ["        R%                  S5        [5        U
S	9UeS nAf[6         a`  n["        R%                  SSS9  U	S:  a"  U R3                  UUUS S9I S h  vN     S nAGMC  ["        R%                  S5        [9        U
S	9UeS nAff = f! [.        RB                   a  n["        R%                  SSS9  U	S:  ae  U RE                  URF                  5      (       aE  URF                  RI                  5       I S h  vN    U R3                  UUUUS9I S h  vN     S nAGM  URF                  RJ                  (       d#  URF                  RM                  5       I S h  vN    ["        R%                  S5        U RO                  URF                  5      S eS nAff = f GN7fr  ))r  r3   get_platformrm  r8   r%  rF  r&  r  r  r   r  r   r^  r  r  r  rR   rJ  r`   r   r  rr  r   r  r  rN   r  rO   r  r  r!  r  r  r  r  r  r  areadr  r  r  s                rj   r   r  	  s     >>! $,L#9#;;DN..w@
 #7+((0]5I5I5O5O5QUZ5Z,0,A,A,CM)*.#33D4D4DE";?3M /G 11'::G + ;))')OG''000$&F+!%!1!1v''3-4-E-E)*II3W^^W[[QH!C!%!2!2"!WT%F%Fw%F%W" " D II1$$&&  T))+, k 4n #W%WW#++!' , 
 
 	
Q <$ ; 1
 )) @		>	N$q(//&3$/ -!%	 0    		12%g6C? C		1D	A$q(//&3$/ -!%	 0    		45(9sBC4 (( T		=	M$q(T-?-?-M-M,,--/////&3$/ -!)	 0     ||--,,,,...		34;;CLLItS'T0
s	  %P1H:B5P1H=+P1	I 
A+P168I.I/I3AP1 L$%P15P.6P1=P1 P1IL!/J4J	J4P1J44L!/L0K31L6P1=LL!!P1$P+8AP&NP&*N-+P&0P178P&/O206P&&P++P1c               D  #    X!-
  nUS:X  a  [         R                  S5        O[         R                  SU5        U R                  XSU(       a  UR                  OS 5      n[         R	                  SUR
                  U5        [        R                  " U5      I S h  vN   g  N7fr  )rR   rJ  r  r!  r   r`   anyior  r   s          rj   r  AsyncAPIClient._sleep_for_retry  sz      (7!IIn%II'):;//0A`hHL\L\nrs7gNkk'"""s   BB BB r   r  c                 #    [        U5      =(       d    Un[        R                  " U5      (       a  [        U[        5      (       a  U(       a7  [        UR                  R                  R                  [        5      5      (       aU  [        U[        5      (       d  [        S[         SU 35      e[        SU5      n[        SU" UU [        U5      UUUUS95      $ U[        R                  :X  a  [        [         U5      $ [        UU [        SU5      UUUUS9n	[        UR                  R                  R                  [        5      5      (       a  [        [         U	5      $ U	R#                  5       I S h  vN $  N7f)Nr#  r$  r%  r&   r&  r  )r   rw  rx  ry  r?   r   r   r!  rD  rF   r@   r   r   rA   r   r(  r&   r)  r*  s
             rj   r   AsyncAPIClient._process_response  sO     G$/ OOF##6?33 tH$4$4$<$<$@$@AT$UVVf&677"CDTCUU`ag`h ijj <gFL 1,?!)#"/  enn$	8,,'*G4!'
   ((,,-@ABB	<00!''))))s   E/E81E62E8c                    [        XX!S9$ )N)r   r   r   r   )r   )ri   r   r   r   s       rj   r    AsyncAPIClient._request_api_list  s     TTWWrn   r3  c                  #    g 7frf   rg   r5  s        rj   rD  AsyncAPIClient.get  s
      r  r8  c                  #    g 7frf   rg   r:  s         rj   rD  r    s
      r  r;  c                  #    g 7frf   rg   r:  s         rj   rD  r    s
      %(r  r=  c               p   #    [         R                  " SSUS.UD6nU R                  X&XES9I S h  vN $  N7fr?  )r;   r@  r   rA  s          rj   rD  r    s:      #,,OEtOwO\\'\VVVVs   -646)r  r9  rE  r   rp  c                  #    g 7frf   rg   )ri   r6  rk  r  r9  rE  r   rp  s           rj   rD  AsyncAPIClient.post  s
      r  rU  c                  #    g 7frf   rg   	ri   r6  rk  r  r9  rE  r   rp  r  s	            rj   rD  r  
  s
      r  )r  r9  rE  r   r  c                  #    g 7frf   rg   r  s	            rj   rD  r    s
      %(r  )r  r9  rE  r   rp  r  c          
     <  #    Ub  Ub  [        S5      eUb  Ub  [        S5      e[        U[        5      (       a  [        R                  " S[
        SS9  [        R                  " S	SXU[        U5      I S h  vN S.UD6n	U R                  X)XxS9I S h  vN $  N! N7frJ  
r   r   rV  rR  rS  rT  r;   r@  r   r   )
ri   r6  rk  r  r9  rE  r   rp  r  rB  s
             rj   rD  r  &  s       3PQQ!4QRRdE""MMM"	 #,, 
tWRfglRmLm
qx
 \\'\VVV MnVs$   A4B6B7BBBBc          
     @  #    Ub  Ub  [        S5      eUb  Ub  [        S5      e[        U[        5      (       a  [        R                  " S[
        SS9  [        R                  " SSUUU[        U5      I S h  vN S.UD6nU R                  X'5      I S h  vN $  N" N7frW  r  rZ  s           rj   rX  AsyncAPIClient.patchB  s       3PQQ!4QRRdE""MMM"	 #,, 
,U33
 
 \\'000 4 1s$   A5B7B8BBBBc          
     >  #    Ub  Ub  [        S5      eUb  Ub  [        S5      e[        U[        5      (       a  [        R                  " S[
        SS9  [        R                  " SSXU[        U5      I S h  vN S.UD6nU R                  X'5      I S h  vN $  N" N7fr]  r  rZ  s           rj   r^  AsyncAPIClient.puta  s       3PQQ!4QRRdE""MMM"	 #,, 
dGQefkQlKl
pw
 \\'000 Lm0s$   A4B6B7BBBBr`  c                  #    Ub  Ub  [        S5      e[        U[        5      (       a  [        R                  " S[
        SS9  [        R                  " SSXUS.UD6nU R                  X&5      I S h  vN $  N7frb  rd  re  s          rj   rc  AsyncAPIClient.delete{  sx       3PQQdE""MMM"	 #,,sH$`gskrs\\'0000s   A/A81A62A8rD  rg  c               X    [         R                  " SXaUS.UD6nU R                  X#U5      $ ri  rj  rk  s           rj   rl  AsyncAPIClient.get_api_list  rn  rn   )r   r  )r  r}   r  r  r   r   r   r   r   ro  r  zhttpx.AsyncClient | Noner   r  r   r  rz   r{   r   r  rp  rq  rr  rs  rv  )
rk  rt  r   r;   rp  ru  r  type[_AsyncStreamT]rz   rZ   )
rk  rt  r   r;   rp  r   r  type[_AsyncStreamT] | Nonerz   ResponseT | _AsyncStreamTrz  r{  )r   r   r   r   r   r;   rz   AsyncPaginator[_T, AsyncPageT]r~  )r6  r}   rk  rt  r   r,   rp  ru  r  r  rz   rZ   )r6  r}   rk  rt  r   r,   rp  r   r  r  rz   r  )r6  r}   rk  rt  r  r  r9  AsyncBinaryTypes | NonerE  r  r   r,   rp  rw  rz   r&   )r6  r}   rk  rt  r  r  r9  r  rE  r  r   r,   rp  ru  r  r  rz   rZ   )r6  r}   rk  rt  r  r  r9  r  rE  r  r   r,   rp  r   r  r  rz   r  )r6  r}   rk  rt  r  r  r9  r  rE  r  r   r,   rz   r&   )r6  r}   rk  rt  r  r  r9  r  r   r,   rz   r&   )r6  r}   r   r   r   r   r  r  r   r,   rF  r}   rz   r  )rv   r~   r   r   r   r   rD   r0   rk   r  r  r  r  r   r  r   r   r  r  r   rD  rD  rX  r^  rc  rl  r   r  r  s   @rj   r   r     s0   9=6= /5>043748,
 ,
 	,

 &*,
 ,
 3,
 .,
 1,
 2,
 
,
 ,
\&$, " %	
 
$ 
		 
	  "'  %
  
    %
  ( 
   26( ( %(
 ( /( 
#( ( 15z
 z
 %z

 z
 /z
 
#z
x# ##25#@S#_t#	#, 4* !4* %	4*
 !4* 4* F4* 4* 
4*lXX X %	X
 
(X  #%!& !	
    
   #% !	
    ( 
   #%15(( !	(
  ( ( /( 
#( ( #%15
W
W !	
W
  
W 
W /
W 
#
W  !+/%)"$!&

 !	

 
 )
 #
  
 
 

 
  !+/%)"$ !	
  ) #    ( 
   !+/%)"$15(( !	(
 ( )( #(  ( ( /( 
#( ($ !+/%)"$15WW !	W
 W )W #W  W W /W 
#WB !+/%)"$11 !	1
 1 )1 #1  1 
1H !+/%)"$11 !	1
 1 )1 #1  1 
1> !+/"$11 !	1
 1 )1  1 
16 !"$99 	9
 9 9  9 9 
(9 9rn   r   )rR  extra_headersextra_query
extra_bodyr%  r   r   c                    0 nUb  XS'   Ub  [        [        U5      US'   U b  XS'   Ub  0 UR                  S0 5      EUEUS'   [        U[        5      (       d  XWS'   Ub  XGS'   [        U5      (       a  XgS'   U$ )zECreate a dict of type RequestOptions without keys of NotGiven values.r!  rK  rb   r   r%  r   )r   r'   rD  r   r%   r4   )rR  r  r  r  r%  r   r   r   s           rj   make_request_optionsr    s     !G *	 $Z <!Hw{{8R8HKHgx(($	"%4!"!,Nrn   c                      \ rS rSrSS jrSrg)rQ  i  c                    g)NTrg   rw   s    rj   __bool__ForceMultipartDict.__bool__  s    rn   rg   Nr   )rv   r~   r   r   r  r   rg   rn   rj   rQ  rQ    s    rn   rQ  c                  2    \ rS rSrSS jr\SS j5       rSrg)OtherPlatformi  c                    Xl         g rf   nameri   r  s     rj   rk   OtherPlatform.__init__      	rn   c                     SU R                    3$ )NzOther:r  rw   s    rj   __str__OtherPlatform.__str__      		{##rn   r  Nr  r}   rz   r{   r|   rv   r~   r   r   rk   r   r  r   rg   rn   rj   r  r         $ $rn   r  )MacOSLinuxWindowsFreeBSDOpenBSDiOSAndroidUnknownc                 n    [         R                  " 5       R                  5       n [         R                   " 5       R                  5       nSU;   d  SU;   a  gU S:X  a  gU S:X  a  gS	U;   a  g
U S:X  a$  [        R
                  " 5       nUS:X  a  gUS:X  a  ggU(       a  [        U5      $ g! [         a     gf = f)Nr  iphoneipadr  darwinr  windowsr  androidr  linuxfreebsdr  openbsdr  r  )r  systemr&  r  distroidr  )r  platform_name	distro_ids      rj   r  r    s    "((* ))+113 = Fm$;
 M! IIK		!	!]++G  s   AB' '
B43B4)maxsizec                   SU [        U=(       d
    [        5       5      [        [        5       5      [        5       [	        5       S.$ )Npython)zX-Stainless-LangzX-Stainless-Package-VersionzX-Stainless-OSzX-Stainless-ArchzX-Stainless-RuntimezX-Stainless-Runtime-Version)r}   r  get_architectureget_python_runtimeget_python_version)r  r  s     rj   r  r  
  s;     %'.h8,.9 0 2313'9'; rn   c                  2    \ rS rSrSS jr\SS j5       rSrg)	OtherArchi  c                    Xl         g rf   r  r  s     rj   rk   OtherArch.__init__  r  rn   c                     SU R                    3$ )Nzother:r  rw   s    rj   r  OtherArch.__str__  r  rn   r  Nr  r|   r  rg   rn   rj   r  r    r  rn   r  )x32x64armarm64unknownc                 N     [         R                  " 5       $ ! [         a     gf = fNr  )r  python_implementationr  rg   rn   rj   r  r  "  s(    --//     
$$c                 N     [         R                  " 5       $ ! [         a     gf = fr  )r  python_versionr  rg   rn   rj   r  r  )  s(    &&(( r  c                      [         R                  " 5       R                  5       n U S;   a  gU S:X  a  gU S:X  a  g[        R
                  S::  a  gU (       a  [        U 5      $ g! [         a     gf = f)	Nr  )r  aarch64r  r  x86_64r  l        r  )r  machiner&  r  sysr  r  )r  s    rj   r  r  0  sz    ""$**, && %( {{e!!)  s   #A" "
A/.A/c                    0 U EUEnUR                  5        VVs0 s H  u  p4[        U[        5      (       a  M  X4_M      snn$ s  snnf )zMerge two mappings of the same type, removing any values that are instances of `Omit`.

In cases with duplicate keys the second mapping takes precedence.
)r   r   r!   )obj1obj2mergedrf  rg  s        rj   r"  r"  J  sA     F)/W:3z%QU?VJCJWWWs
   AA)rR  Query | Noner  zHeaders | Noner  r  r  r  r%  r   r   z'float | httpx.Timeout | None | NotGivenr   zPostParser | NotGivenrz   r,   )rz   Platform)r  r}   r  zPlatform | Nonerz   r  r|   )rz   Arch)r  Mapping[_T_co, Union[_T, Omit]]r  r"  rz   zDict[_T_co, _T])
__future__r   r  rd   r  r  r  r  rw  rH  r  rR  email.utilstypesr   r   typingr   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   typing_extensionsr   r   r   r  r   r  r   r   r    r   _qsr   _filesr   r   _typesr    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   _utilsr1   r2   r3   r4   r5   r6   _compatr7   r8   r9   _modelsr:   r;   r<   r=   	_responser>   r?   r@   rA   
_constantsrB   rC   rD   rE   rF   rG   rH   
_streamingrI   rJ   rK   rL   rM   rN   rO   rP   _utils._jsonrQ   	getLoggerrv   rR   r   rS   rU   rV   rW   rY   rZ   httpx._configr[   r  ImportErrorr]   r   r   r   r   r  r  r   r   r   r  DefaultHttpxClientr  r   r  httpx_aiohttpHttpxAiohttpClientr  DefaultAsyncHttpxClientDefaultAioHttpClientr  r   r  r}   rQ  r  r   r  r  r  r!  r  r  r  r"  rg   rn   rj   <module>r;     sX   " 
                " < ;          8    & P O 8 8 U U    I H  (''1^ 1 K':;	\)=>
 T]4(:VC[1{3/?@ 3-Q0B 0Bf:6|WR[ :6z.a8B< .ab$WR^, $N&gHRL'"+ &gR uU\\5CTCT5T/UV+5kRUFV9V3WX@878 @8F#%,, #  -/ M9Ju||VC[89 M9`#u00 #'' @ @ ' #// !,,_60	5 	H9Z 1 1;s3C CD H9Z $( $""&7@)2"" "" 	"
 "  " 5" '" "Jc4i 
$ $ 		
'T 4 $ $ Y GHHI4	X
)	X
)	X 	Xs>  - '-l'  yy 1 1 yys$   =M& ;M; &M87M8;NN