
    2h
                   Z   % 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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.J/r/  S	SK0J1r1J2r2J3r3J4r4J5r5J6r6J7r7J8r8J9r9J:r:J;r;J<r<J=r=J>r>J?r?  S	SK@JArAJBrBJCrCJDrDJErEJFrFJGrG  S	SKHJIrIJJrJJKrK  S	SKLJMrMJNrNJOrOJPrP  S	SKQJRrRJSrSJTrTJUrU  S	SKVJWrWJXrXJYrYJZrZJ[r[J\r\J]r]  S	SK^J_r_J`r`JaraJbrb  S	SK*JcrcJdrdJereJfrf  S	SKgJhrh  \	R                  " \j5      rkS\lS'   \kR                  \A" 5       5        \" SSS9rn\" SSS9ro\" S5      rp\" SSS 9rq\" S!\_\   S9rr\" S"\a\   S9rs\(       a	  S S#KtJuru  \urvO S S#KtJurv   " S% S&5      rx " S' S(\M\\p   5      ry " S) S*\y\p   \\p   5      rz " S+ S,\\p\o4   5      r{ " S- S.\y\p   \\p   5      r|\" S/\\$R                  \$R                  4   S9r\" S0\\_\   \a\   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                  \_\   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                  \a\   4   5      rSSSSS\1\1SB.               SSSC jjr " SD SE\\S4   5      r " SF SG5      r\\\ SH   4   rSTSI jr\F" SSJ9SUSK j5       r " SL SM5      r\\\ SN   4   rSVSO jrSVSP jrSWSQ jr      SXSR jrg! \w a    \6" S$5      rv GNf = f! \w 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)	NOT_GIVENBodyOmitQueryHeadersTimeoutNotGiven	ResponseT
AnyMapping
PostParserRequestFilesHttpxSendArgsRequestOptionsHttpxRequestFilesModelBuilderProtocol)SensitiveHeadersFilteris_dictis_listasyncifyis_given	lru_cache
is_mapping)PYDANTIC_V2
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)LegacyAPIResponsez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)PageInfot   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     K/var/www/auris/envauris/lib/python3.13/site-packages/openai/_base_client.py__init__PageInfo.__init__~       
     c                   g re   rf   )rh   ra   s     ri   rj   rk      rl   rm   c                   g re   rf   )rh   rc   s     ri   rj   rk      rl   rm   r_   rc   ra   c               (    Xl         X l        X0l        g re   rp   )rh   r_   rc   ra   s       ri   rj   rk      s     	rm   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__rc   ra   rh   s    ri   __repr__PageInfo.__repr__   sv    88nn--.eDHH:Q??99nn--.fTYYKqAA..))*(4;;-qAArm   )rc   ra   r_   N)r_   r   returnNone)ra   r#   ry   rz   )rc   r!   ry   rz   )r_   r^   rc   rb   ra   r`   ry   rz   ry   str)ru   
__module____qualname____firstlineno____doc____annotations__r   rj   r    r   rw   __static_attributes__rf   rm   ri   r\   r\   t   s    
 

  
	    
	    
	  ( )#,	 	 		
 !	 
	 B Brm   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)rh   itemss     ri   has_next_pageBasePage.has_next_page   s*    $$&""$D00rm   c                    g re   rf   rv   s    ri   r   BasePage.next_page_info   s    Crm   c                    g re   rf   rv   s    ri   r   BasePage._get_page_items   s    rm   c                    [         R                  " [        [        U R                  R
                  5      5      R                  UR
                  5      $ re   )httpxQueryParamsr   r   r   ra   mergerg   s     ri   _params_from_urlBasePage._params_from_url   s3      c4==+?+?!@AGG

SSrm   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)ra   z*Pagination is only supported with mappingszUnexpected PageInfo state)r7   r   _strip_raw_response_header
isinstancera   r&   r_   r   	copy_withdictr|   rc   r5   	TypeError	json_data
ValueError)rh   infooptionsra   r_   s        ri   _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5rm   rf   Nry   bool)ry   zOptional[PageInfo])ry   zIterable[_T])r_   r   ry   zhttpx.QueryParams)r   r\   ry   r:   )ru   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   rf   rm   ri   r   r      s<    	 %0MH!1"}FH$1 8T6rm   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    [         (       a  [        U SS 5      c  0 U l        X l        Xl        X0l        g N__pydantic_private__r6   getattrr   r   r   r   )rh   clientmodelr   s       ri   _set_private_attributes$BaseSyncPage._set_private_attributes   /     ;74)?FN(*D%rm   c              #  p   #    U R                  5        H  nUR                  5        H  nUv   M	     M      g 7fre   
iter_pagesr   rh   pageitems      ri   __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re   r   get_next_pagerh   r   s     ri   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   rt   rh   r   r   s      ri   r   BaseSyncPage.get_next_page
  sZ    ""$k  ''-||--dkkX_-``rm   r   r   r   r   N)r   r   r   r   r   r:   ry   rz   )ry   zIterator[_T])rh   rR   ry   zIterator[SyncPageT])rh   rR   ry   rR   )ru   r}   r~   r   pydanticr   r   r   r   r   r   r   r   rf   rm   ri   r   r      sP    %113G]3     %	 
 
 *
arm   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 re   )r   r   r   	_page_cls)rh   r   r   page_clsr   s        ri   rj   AsyncPaginator.__init__  s     !rm   c                >    U R                  5       R                  5       $ re   )	_get_page	__await__rv   s    ri   r   AsyncPaginator.__await__"  s    ~~))++rm   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   )resprh   s    ri   _parser)AsyncPaginator._get_page.<locals>._parser&  s2    ((kk|| ) 
 Krm   )r   rT   ry   rT   )r   post_parserr   requestr   )rh   r   s   ` ri   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re   )r   rT   r   s      ri   	__aiter__AsyncPaginator.__aiter__2  s4     J
  	$J 	$s$   3-

31/1	313)r   r   r   r   N)
r   AsyncAPIClientr   r:   r   Type[AsyncPageT]r   r   ry   rz   )ry   z Generator[Any, None, AsyncPageT])ry   rT   ry   zAsyncIterator[_T])	ru   r}   r~   r   rj   r   r   r   r   rf   rm   ri   r   r     sG    
"
" %
" #	
"
 
" 

",Irm   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    [         (       a  [        U SS 5      c  0 U l        Xl        X l        X0l        g r   r   )rh   r   r   r   s       ri   r   %BaseAsyncPage._set_private_attributes?  r   rm   c                  #    U R                  5         S h  vN nUR                  5        H  nU7v   M
     M'   N"
 g 7fre   r   r   s      ri   r   BaseAsyncPage.__aiter__L  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re   r   r   s     ri   r   BaseAsyncPage.iter_pagesQ  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      ri   r   BaseAsyncPage.get_next_pageZ  sc     ""$k  ''-\\33DKKdnn^e3ffffs   A&A/(A-)A/r   N)r   r   r   r   r   r:   ry   rz   r   )rh   rT   ry   zAsyncIterator[AsyncPageT])rh   rT   ry   rT   )ru   r}   r~   r   r   r   r   r   r   r   r   r   r   rf   rm   ri   r   r   <  sP    &224G^4     %	 
 
 
grm   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
BaseClientii  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 `openai.DEFAULT_MAX_RETRIES`)r   _enforce_trailing_slashr   r   r   r   _custom_headers_custom_queryr   r   	_platformr   )rh   versionbase_urlr   r   r   r   r   s           ri   rj   BaseClient.__init__s  sw      55c(mD&-3)/R+F(#' *. b  rm   c                ~    UR                   R                  S5      (       a  U$ UR                  UR                   S-   S9$ )N   /raw_path)r  endswithr   rg   s     ri   r   "BaseClient._enforce_trailing_slash  s6    <<  &&J}}cllT&9}::rm   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striprc   loads	Exception_make_status_error)rh   r  r  err_msgerr_texts        ri    _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re   )NotImplementedError)rh   r  r  r  s       ri   r  BaseClient._make_status_error  s     "##rm   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)
rh   r   r  r   headers_dictr   idempotency_headerheaderlower_custom_headersr   s
             ri   _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   )rh   r_   	merge_urlmerge_raw_paths       ri   _prepare_urlBaseClient._prepare_url  sZ     H	$$!]]33i6H6H6O6OPT6UUN==**N*CCrm   c                    [        5       $ re   )rI   rv   s    ri   _make_sse_decoderBaseClient._make_sse_decoder  s
    |rm   c                  [         R                  [        R                  5      (       a  [         R	                  S[        US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 R/                  U5      US'   U(       d  [        [0        [3        5       5      nU R5                  UR6                  5      n	SU	R8                  ;   a!  SU	R8                  R;                  SS5      0US'   UR<                  R?                  5       S:g  n
U
(       a  [A        U5      (       a  UOS US'   XS'   O$UR)                  SS 5        UR)                  SS 5        U RB                  RD                  " SU[G        URH                  [J        5      (       a  U RH                  OURH                  UR<                  U	U(       a6  U RL                  RO                  [        [P        [R        [T        4   U5      5      OS S.UD6$ )NzRequest options: %sT)exclude_unsetz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_sni_hostname-
extensionsgetrc   files)r   r   methodr_   ra   rf   )+rQ   isEnabledForloggingDEBUGdebugr8   r   
extra_jsonr   r!   r5   r!  r   typer+  default_queryra   r@  rA  
startswithpopr0   r   _serialize_multipartformr-   ForceMultipartDictr2  r_   hostreplacerB  r%  r3   r   build_requestr   r   r&   qs	stringifyr   r|   r   )rh   r   r  kwargsr   r   ra   content_typerA  prepared_urlis_body_alloweds              ri   _build_requestBaseClient._build_request  sz    GMM**II+Zt-TU!#%%	)  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,###$2L4E4E4M4McSV4W#XF< !....0E9*29*=*=Y4F6N#7OKK-JJvt$ ||)) 
$.w$I$IDLLw>>
 JP477$$T'#s(*;V%DEUY
 
 	
rm   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)rQ  stringify_itemsr@  r1   append)rh   r;  r   
serializedkeyvalueexistings          ri   rL  #BaseClient._serialize_multipartform-  s|    '' #	 ( 
 )+
JC!~~c*H"'3 x  &#+"3
%  ( rm   c                    [        UR                  5      (       d  U$ [        UR                  5      nUR                  [        [
        5      n[        U5      (       a  X2l        [        [        [           U5      $ U$ re   )	r3   r   r   rK  rF   r    r   r	   r'   )rh   cast_tor   r   override_cast_tos        ri   _maybe_override_cast_to"BaseClient._maybe_override_cast_toK  sb    ((N w'
 #;;'>	J$%%%OY)9::rm   c                F    UR                   R                  [        5      S:H  $ )Nstream)r   r@  rE   rh   r   s     ri   _should_stream_response_body'BaseClient._should_stream_response_body\  s    ""#678CCrm   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_r`  )r  r  )r   r'   objectinspectisclass
issubclassr.   buildr   r;   r<   r   ValidationErrorrO   )rh   r;  rd  r  errs        ri   _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       $ re   r   rv   s    ri   rQ  BaseClient.qsw  s
    }rm   c                    g re   rf   rv   s    ri   custom_authBaseClient.custom_auth{  s    rm   c                    0 $ re   rf   rv   s    ri   auth_headersBaseClient.auth_headers  s    	rm   c                r    SSU R                   S.U R                  5       EU R                  EU R                  E$ )Nzapplication/json)Acceptr9  z
User-Agent)
user_agentplatform_headersr~  r   rv   s    ri   r"  BaseClient.default_headers  sN     ).//
 ##%	

 
 ""
 	
rm   c                    0 U R                   E$ re   )r   rv   s    ri   rI  BaseClient.default_query  s    
  
 	
rm   c                    g)zQValidate the given default headers and custom headers.

Does nothing by default.
Nrf   )rh   r   r   s      ri   r#  BaseClient._validate_headers  s     	rm   c                L    U R                   R                   SU R                   3$ )Nz/Python )rt   ru   r   rv   s    ri   r  BaseClient.user_agent  s"    ..))*(4==/BBrm   c                    U R                   $ re   )r   rv   s    ri   r  BaseClient.base_url  s    ~~rm   c                p    U R                  [        U[        5      (       a  UO
[        U5      5      U l        g re   )r   r   r   r   rg   s     ri   r  r    s)    55ZS=Q=QcWZ[^W_`rm   c                >    [        U R                  U R                  S9$ )N)platform)r  r   r  rv   s    ri   r  BaseClient.platform_headers  s      GGrm   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)	r@  floatr   r   emailutilsparsedate_tz	mktime_tztime)rh   response_headersretry_ms_headerretry_headerretry_date_tuple
retry_dates         ri   _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  minrD   powrB   r   )
rh   remaining_retriesr   r  r   retry_after
nb_retriessleep_secondsjitterr   s
             ri   _calculate_retry_timeout#BaseClient._calculate_retry_timeout  s     --d.>.>? 445EF"q;'<"'< (= 8$?
 /#c:2FFX TFH_$(!Q,w-A-rm   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   r@  rQ   rF  r  )rh   r  should_retry_headers      ri   _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		.!rm   c                2    S[         R                  " 5        3$ )Nzstainless-python-retry-)uuiduuid4rv   s    ri   _idempotency_keyBaseClient._idempotency_key  s    (77rm   )	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] | Nonery   rz   )r_   r   ry   r   )r  httpx.Responsery   rL   )r  r|   r  ro  r  r  ry   z_exceptions.APIStatusError)r   r:   r  r   ry   zhttpx.Headers)r_   r|   ry   r   )ry   zSSEDecoder | SSEBytesDecoder)r   r:   r  r   ry   httpx.Request)r;  zMapping[object, object]ry   dict[str, object])rd  type[ResponseT]r   r:   ry   r  )r   r  ry   r   )r;  ro  rd  r  r  r  ry   r'   )ry   r   )ry   zhttpx.Auth | None)ry   zdict[str, str])ry   zdict[str, str | Omit])ry   r  )r   r$   r   r$   ry   rz   r{   )ry   r   )r_   z	URL | strry   rz   )ry   Dict[str, str]re   )r  Optional[httpx.Headers]ry   zfloat | None)r  r   r   r:   r  r  ry   r  )r  r  ry   r   )$ru   r}   r~   r   r   r   rC   rA   rj   r   r  r  r+  r2  r5  rW  rL  rf  rk  rv  propertyrQ  r{  r~  r"  rI  r#  r  r  setterr  r  r  r  r  r   rf   rm   ri   r   r   i  sv   MN((!%%##8<5< /*93748  	
 &*  ( 1 2 
4;
N N 
N,$$ 	$
 !$ 
$$ TU 4 	P
$P
 	P

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

		  	 
		 C C   __a aH /L 59	.. %. 2	.
 
.0!F8rm   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_redirectsTrf   
setdefaultrA   rG   superrj   rh   rS  rt   s     ri   rj   _DefaultHttpxClient.__init__  E    )_5($=>,d3"6"rm   rf   rS  r   ry   rz   ru   r}   r~   r   rj   r   __classcell__rt   s   @ri   r  r        # #rm   r  c                      \ rS rSrSS jrSrg)SyncHttpxClientWrapperi&  c                j    U R                   (       a  g  U R                  5         g ! [         a     g f = fre   )r  closer  rv   s    ri   __del__SyncHttpxClientWrapper.__del__'  s,    >>	JJL 		s   % 
22rf   Nry   rz   ru   r}   r~   r   r  r   rf   rm   ri   r  r  &  s    rm   r  c                  <  ^  \ 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0 SSS#.             SES$ jj5       r\S0 SS%.               SFS& jj5       r\S0 SSS'.               SGS( jj5       rS0 SSSS).               SGS* jjrS0 S+.         SHS, jjrSS0 S-.           SIS. jjrS0 S+.         SHS/ jjrS0 S0S1.             SJS2 jjrS3rU =r$ )Kr   i1  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   )r3   r   HTTPX_DEFAULT_TIMEOUTrA   r   r   Clientr   rH  r  rj   r   r%   r  r   )
rh   r  r  r   r   r  r   r   r   rt   s
            ri   rj   SyncAPIClient.__init__5  s        {226KK%--)":k5<<+P+Pabfgrbsatu  	'*#%)(C 	 		
 # 
&<'*'
rm   c                .    U R                   R                  $ re   r   r  rv   s    ri   r  SyncAPIClient.is_closedc      ||%%%rm   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  rv   s    ri   r  SyncAPIClient.closef  s&     4##LL  $rm   c                    U $ re   rf   rv   s    ri   	__enter__SyncAPIClient.__enter__p  s    rm   c                $    U R                  5         g re   r  rh   exc_typeexcexc_tbs       ri   __exit__SyncAPIClient.__exit__s  s     	

rm   c                    U$ z#Hook for mutating the given optionsrf   rh   r   s     ri   _prepare_optionsSyncAPIClient._prepare_options{  s	    
 rm   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.
Nrf   rj  s     ri   _prepare_requestSyncAPIClient._prepare_request  s     rm   c                   g re   rf   rh   rd  r   ri  
stream_clss        ri   r   SyncAPIClient.request  s     rm   Fri  c                   g re   rf   rh   rd  r   ri  s       ri   r   r    s     rm   ri  r  c                   g re   rf   r   s        ri   r   r    s      #rm   c          	        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Hl  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        [        R                  SUR8                  R;                  S5      5         UR=                  5           O   Uc   S5       eU RM                  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M5  [        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 RA                  URB                  5      (       a3  URB                  RE                  5         U R-                  UUUUS9   S nAGM  URB                  RF                  (       d  URB                  RI                  5         [        R                  S5        U RK                  URB                  5      S eS nAff = fNr@  r   r   r  authr  zSending HTTP Request: %s %sri  )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request_id: %szx-request-idz!Encountered httpx.HTTPStatusErrorzRe-raising status errorz0could not resolve response (should never happen))rd  r   r  ri  r  r  )'rf  r7   r$  rB  r%  r  r  r   ranger  rW  r  r{  r  rQ   rF  r_   r   sendrk  r   TimeoutException_sleep_for_retryrM   r  rN   r  reason_phraser   r@  raise_for_statusHTTPStatusErrorr  r  r  r  r&  r  _process_responserh   rd  r   ri  r  input_optionsr  r   r  r  r   rS  ru  s                ri   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$$&&   II&(8(8(<(<^(LMT))+, m 4p #W%WW#%%!' & 
 	
C )) @		>	N$q())&3$/ -!%	 *  		12%g6C? C		1D	A$q())&3$/ -!%	 *  		45(9sBC6 (( T		=	M$q(T-?-?-M-MLL&&())&3$/ -!)	 *   ||--LL%%'		34;;CLLItS'TsP   65H'K&K#-,I? I??K#,K?KK#&O:A&O'A&OO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)rQ   rF  r  r   r   r_   r  sleeprh   r  r   r   r  r  r   s          ri   r  SyncAPIClient._sleep_for_retry"  sq     (7!IIn%II'):;//0A`hHL\L\nrs7gN

7rm   r   r  c               t   UR                   R                  R                  [        5      S:X  a  [	        [
        [        UU UUUUUS95      $ [        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       $ )Nr  rawr   rd  ri  r  r   r  !API Response types must subclass ; Received type[BaseAPIResponse[Any]]r  )r   r   r@  rE   r   r'   rP   r   rp  rq  rr  r>   r   r=   r   r@   r   Responseparse
rh   rd  r   r  ri  r  r  originresponse_clsapi_responses
             ri   r  SyncAPIClient._process_response0  s    ##''(;<F! #!)#"/  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!!##rm   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   rh   s    ri   r   0SyncAPIClient._request_api_list.<locals>._parserz  s&    (( ) 
 Krm   Fr  )r   rR   ry   rR   )r   r   )rh   r   r   r   r   s   `` ` ri   r   SyncAPIClient._request_api_listt  s,    	 	 &||D'%|88rm   r   ri  c                   g re   rf   rh   pathrd  r   ri  s        ri   r@  SyncAPIClient.get  s     rm   r   c                   g re   rf   rh   r/  rd  r   ri  r  s         ri   r@  r0    s     rm   r   r  c                   g re   rf   r3  s         ri   r@  r0    s      #rm   r   ri  r  c          
     p    [         R                  " SSUS.UD6n[        [        U R	                  X&XES95      $ Nr@  )rB  r_   r  rf   )r:   	constructr   r'   r   rh   r/  rd  r   ri  r  optss          ri   r@  r0    s:     #,,OEtOwO It||G&|`aarm   )r  r   rA  ri  c                   g re   rf   )rh   r/  rd  r  r   rA  ri  s          ri   postSyncAPIClient.post  s     rm   )r  r   rA  c                   g re   rf   rh   r/  rd  r  r   rA  ri  r  s           ri   r=  r>    s     rm   )r  r   rA  r  c                   g re   rf   r@  s           ri   r=  r>    s      #rm   )r  r   rA  ri  r  c          
         [         R                  " SSX[        U5      S.UD6n[        [        U R                  X(XgS95      $ Nr=  rB  r_   r   rA  r  rf   )r:   r9  r   r   r'   r   )	rh   r/  rd  r  r   rA  ri  r  r;  s	            ri   r=  r>    sI     #,, 
t>%;P
T[
 It||G&|`aarm   r  r   c               V    [         R                  " SSXS.UD6nU R                  X%5      $ NpatchrB  r_   r   rf   r:   r9  r   rh   r/  rd  r  r   r;  s         ri   rH  SyncAPIClient.patch  s.     #,,aGaY`a||G**rm   r  rA  r   c          	     j    [         R                  " SSX[        U5      S.UD6nU R                  X&5      $ NputrD  rf   )r:   r9  r   r   rh   r/  rd  r  rA  r   r;  s          ri   rP  SyncAPIClient.put  s>     #,, 
d.:O
SZ
 ||G**rm   c               V    [         R                  " SSXS.UD6nU R                  X%5      $ NdeleterI  rf   rJ  rK  s         ri   rU  SyncAPIClient.delete  s.     #,,bH$bZab||G**rm   r@  r  r   rB  c               X    [         R                  " SXaUS.UD6nU R                  X#U5      $ NrI  rf   r:   r9  r   rh   r/  r   r   r  r   rB  r;  s           ri   get_api_listSyncAPIClient.get_api_list  3     #,,`FPT`X_`%%e488rm   )r   )r  r|   r  r  r   r   r   !float | Timeout | None | NotGivenr  zhttpx.Client | Noner   r  r   r  r   r   ry   rz   r   r  rh   rU   ry   rU   r  ztype[BaseException] | Noner  zBaseException | Noner  zTracebackType | Nonery   rz   r   r:   ry   r:   r   r  ry   rz   )
rd  Type[ResponseT]r   r:   ri  Literal[True]r  zType[_StreamT]ry   rX   rd  rd  r   r:   ri  Literal[False]ry   r'   )
rd  rd  r   r:   ri  r   r  zType[_StreamT] | Nonery   ResponseT | _StreamT)
rd  rd  r   r:   ri  r   r  type[_StreamT] | Nonery   rh  
r  r   r   r   r   r:   r  zhttpx.Response | Nonery   rz   rd  rd  r   r:   r  r  ri  r   r  z1type[Stream[Any]] | type[AsyncStream[Any]] | Noner  r   ry   r'   )r   Type[object]r   Type[SyncPageT]r   r:   ry   rR   
r/  r|   rd  rd  r   r,   ri  rg  ry   r'   )r/  r|   rd  rd  r   r,   ri  re  r  type[_StreamT]ry   rX   )r/  r|   rd  rd  r   r,   ri  r   r  ri  ry   rh  )r/  r|   rd  rd  r  Body | Noner   r,   rA  RequestFiles | Noneri  rg  ry   r'   )r/  r|   rd  rd  r  rp  r   r,   rA  rq  ri  re  r  ro  ry   rX   )r/  r|   rd  rd  r  rp  r   r,   rA  rq  ri  r   r  ri  ry   rh  
r/  r|   rd  rd  r  rp  r   r,   ry   r'   r/  r|   rd  rd  r  rp  rA  rq  r   r,   ry   r'   )r/  r|   r   rl  r   rm  r  rp  r   r,   rB  r|   ry   rR   )ru   r}   r~   r   r   r   rC   r    rj   r  r  r  r  r  r  r   r   r  r  r   r@  r=  rH  rP  rU  r\  r   r  r  s   @ri   r   r   1  s   4818 /5>+/3748,
 ,
 	,

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

 v
 *v
 
v
p #25@S_t	, B$ !B$ %	B$
 !B$ B$ FB$ B$ 
B$H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* !"$	+	+ !		+
 	+  	+ 
	+  !%)"$++ !	+
 + #+  + 
+& !"$	+	+ !		+
 	+  	+ 
	+" !"$99 	9
 9 9  9 9 
9 9rm   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     ri   rj   !_DefaultAsyncHttpxClient.__init__  r  rm   rf   r  r  r  s   @ri   ru  ru    r  rm   ru  c                  ,   ^  \ rS rSrSU 4S jjrSrU =r$ )_DefaultAioHttpClienti-  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     ri   rj   _DefaultAioHttpClient.__init__.  sE    i9h(AB0$7G&v&rm   rf   r  r  r  s   @ri   ry  ry  -  s    	' 	'rm   ry  c                      \ rS rSrSS jrSrg)ry  i(  c                    [        S5      e)NzVTo use the aiohttp client you must have installed the package with the `aiohttp` extra)r   )rh   _kwargss     ri   rj   r{  )  s    wxxrm   rf   N)r~  r   ry   rz   )ru   r}   r~   r   rj   r   rf   rm   ri   ry  ry  (  s    	yrm   c                      \ rS rSrSS jrSrg)AsyncHttpxClientWrapperiF  c                    U R                   (       a  g  [        R                  " 5       R                  U R	                  5       5        g ! [
         a     g f = fre   )r  asyncioget_running_loopcreate_taskacloser  rv   s    ri   r  AsyncHttpxClientWrapper.__del__G  s@    >>	$$&224;;=A 		s   2A 
AArf   Nr  r  rf   rm   ri   r  r  F  s    rm   r  c                  :  ^  \ 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0 SS$.             SDS% jj5       r\SS0 S&.               SES' jj5       r\SS0 SS(.               SFS) jj5       rSS0 SSS*.               SFS+ jjrS0 S,.         SGS- jjrSS0 S&.           SHS. jjrS0 S,.         SGS/ jjrS0 S0S1.             SIS2 jjrS3rU =r$ )Jr   iR  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  )r3   r   r  rA   r   r   AsyncClientr   rH  r  rj   r   r%   r  r   )
rh   r  r  r   r   r   r  r   r   rt   s
            ri   rj   AsyncAPIClient.__init__V  s        {226KK%--)":k5CTCT+U+Ufgklwgxfyz  	'*#%)(C 	 		
 # 
&='*'
rm   c                .    U R                   R                  $ re   r  rv   s    ri   r  AsyncAPIClient.is_closed  r  rm   c                T   #    U R                   R                  5       I Sh  vN   g N7f)r  N)r   r  rv   s    ri   r  AsyncAPIClient.close  s     
 ll!!###s   (&(c                   #    U $ 7fre   rf   rv   s    ri   
__aenter__AsyncAPIClient.__aenter__  s
        c                @   #    U R                  5       I S h  vN   g  N7fre   r  r  s       ri   	__aexit__AsyncAPIClient.__aexit__  s      jjls   c                   #    U$ 7fr  rf   r  s     ri   r  AsyncAPIClient._prepare_options  s     
 r  c                   #    g7fr  rf   rj  s     ri   r  AsyncAPIClient._prepare_request  s
         Fr  c                  #    g 7fre   rf   r  s       ri   r   AsyncAPIClient.request  s
      r  c                  #    g 7fre   rf   r   s        ri   r   r    s
      r  )r  c                  #    g 7fre   rf   r   s        ri   r   r    s
      %(r  r  c          	       #    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H  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        ["        R%                  SUR>                  RA                  S5      5         URC                  5           O   Uc   S5       eU RS                  UUUUUUS9I S h  vN $  GNB GN GNf 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Mr  ["        R%                  S5        [9        U
S	9UeS nAff = f! [.        RD                   a  n["        R%                  SSS9  U	S:  ae  U RG                  URH                  5      (       aE  URH                  RK                  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RH                  RL                  (       d#  URH                  RO                  5       I S h  vN    ["        R%                  S5        U RQ                  URH                  5      S eS nAff = f GN7fr	  )*r  r2   get_platformrf  r7   r$  rB  r%  r  r  r   r  r  rW  r  r{  r  rQ   rF  r_   r   r  rk  r   r  r  rM   r  rN   r  r  r   r@  r  r  r  r  r  r  areadr  r  r  s                ri   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$$&&   II&(8(8(<(<^(LMT))+, m 4p #W%WW#++!' , 
 
 	
S <$ ; 1
 )) @		>	N$q(//&3$/ -!%	 0    		12%g6C? C		1D	A$q(//&3$/ -!%	 0    		45(9sBC6 (( T		=	M$q(T-?-?-M-M,,--/////&3$/ -!)	 0     ||--,,,,...		34;;CLLItS'T0
s	  %Q I)B5Q I,+Q 	I/
A+Q 68I4.I2/I43A;Q /M?%Q $Q%Q ,Q /Q 2I44M/K#7J:8K#=Q K##M0/ML" M%Q ,MMQ Q'AQ>O?QOQQ &8QP!6QQQ 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  )rQ   rF  r  r   r   r_   anyior  r  s          ri   r  AsyncAPIClient._sleep_for_retryE  sz      (7!IIn%II'):;//0A`hHL\L\nrs7gNkk'"""s   BB BB r   r  c                 #    UR                   R                  R                  [        5      S:X  a  [	        [
        [        UU UUUUUS95      $ [        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  )r   r   r@  rE   r   r'   rP   r   rp  rq  rr  r>   r   r?   r   r@   r   r!  r"  r#  s
             ri   r   AsyncAPIClient._process_responseS  s     ##''(;<F! #!)#"/  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   F9G;G <Gc                    [        XX!S9$ )N)r   r   r   r   )r   )rh   r   r   r   s       ri   r    AsyncAPIClient._request_api_list  s     TTWWrm   r,  c                  #    g 7fre   rf   r.  s        ri   r@  AsyncAPIClient.get  s
      r  r1  c                  #    g 7fre   rf   r3  s         ri   r@  r    s
      r  r4  c                  #    g 7fre   rf   r3  s         ri   r@  r    s
      %(r  r6  c               p   #    [         R                  " SSUS.UD6nU R                  X&XES9I S h  vN $  N7fr8  rJ  r:  s          ri   r@  r    s:      #,,OEtOwO\\'\VVVVs   -646)r  rA  r   ri  c                  #    g 7fre   rf   )rh   r/  rd  r  rA  r   ri  s          ri   r=  AsyncAPIClient.post  s
      r  rM  c                  #    g 7fre   rf   rh   r/  rd  r  rA  r   ri  r  s           ri   r=  r    s
      r  )r  rA  r   r  c                  #    g 7fre   rf   r  s           ri   r=  r    s
      %(r  )r  rA  r   ri  r  c          	        #    [         R                  " SSX[        U5      I S h  vN S.UD6nU R                  X(XgS9I S h  vN $  N! N7frC  r:   r9  r   r   )	rh   r/  rd  r  rA  r   ri  r  r;  s	            ri   r=  r    sV      #,, 
tAUV[A\;\
`g
 \\'\VVV <]Vs!   "A
AA
AA
A
rE  c               r   #    [         R                  " SSXS.UD6nU R                  X%5      I S h  vN $  N7frG  rJ  rK  s         ri   rH  AsyncAPIClient.patch  s7      #,,aGaY`a\\'0000   .757c          	        #    [         R                  " SSX[        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rO  r  rQ  s          ri   rP  AsyncAPIClient.put  sR      #,, 
d@TUZ@[:[
_f
 \\'000 ;\0s!   "AAAA	A	Ac               r   #    [         R                  " SSXS.UD6nU R                  X%5      I S h  vN $  N7frT  rJ  rK  s         ri   rU  AsyncAPIClient.delete  s7      #,,bH$bZab\\'0000r  r@  rW  c               X    [         R                  " SXaUS.UD6nU R                  X#U5      $ rY  rZ  r[  s           ri   r\  AsyncAPIClient.get_api_list%  r^  rm   )r   r  )r  r|   r  r  r   r   r   r   r   r_  r  zhttpx.AsyncClient | Noner   r  r   r  ry   rz   r   r  r`  ra  rb  rc  rf  )
rd  rd  r   r:   ri  re  r  type[_AsyncStreamT]ry   rY   )
rd  rd  r   r:   ri  r   r  type[_AsyncStreamT] | Nonery   ResponseT | _AsyncStreamTrj  rk  )r   r   r   r   r   r:   ry   AsyncPaginator[_T, AsyncPageT]rn  )r/  r|   rd  rd  r   r,   ri  re  r  r  ry   rY   )r/  r|   rd  rd  r   r,   ri  r   r  r  ry   r  )r/  r|   rd  rd  r  rp  rA  rq  r   r,   ri  rg  ry   r'   )r/  r|   rd  rd  r  rp  rA  rq  r   r,   ri  re  r  r  ry   rY   )r/  r|   rd  rd  r  rp  rA  rq  r   r,   ri  r   r  r  ry   r  rr  rs  )r/  r|   r   r   r   r   r  rp  r   r,   rB  r|   ry   r  )ru   r}   r~   r   r   r   rC   r    rj   r  r  r  r  r  r  r   r   r  r  r   r@  r=  rH  rP  rU  r\  r   r  r  s   @ri   r   r   R  s   9=6= /5>043748,
 ,
 	,

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

 {
 /{
 
#{
z# ##25#@S#_t#	#, B* !B* %	B*
 !B* B* FB* B* 
B*H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* !"$	1	1 !		1
 	1  	1 
	1  !%)"$11 !	1
 1 #1  1 
1& !"$	1	1 !		1
 	1  	1 
	1" !"$99 	9
 9 9  9 9 
(9 9rm   r   )query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   rG  ra   r   r$  r   )r   r(   r@  r   r&   r3   )r  r  r  r  r$  r   r   r   s           ri   make_request_optionsr  3  s     !G *	 $Z <!Hw{{8R8HKHgx(($	"%4!"!,Nrm   c                      \ rS rSrSS jrSrg)rM  iX  c                    g)NTrf   rv   s    ri   __bool__ForceMultipartDict.__bool__Y  s    rm   rf   Nr   )ru   r}   r~   r   r  r   rf   rm   ri   rM  rM  X  s    rm   rM  c                  2    \ rS rSrSS jr\SS j5       rSrg)OtherPlatformi]  c                    Xl         g re   namerh   r  s     ri   rj   OtherPlatform.__init__^      	rm   c                     SU R                    3$ )NzOther:r  rv   s    ri   __str__OtherPlatform.__str__a      		{##rm   r  Nr  r|   ry   rz   r{   ru   r}   r~   r   rj   r   r  r   rf   rm   ri   r  r  ]       $ $rm   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      ri   r  r  u  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     ri   r  r    s;     %'.h8,.9 0 2313'9'; rm   c                  2    \ rS rSrSS jr\SS j5       rSrg)	OtherArchi  c                    Xl         g re   r  r  s     ri   rj   OtherArch.__init__  r  rm   c                     SU R                    3$ )Nzother:r  rv   s    ri   r  OtherArch.__str__  r  rm   r  Nr  r{   r  rf   rm   ri   r  r    r  rm   r  )x32x64armarm64unknownc                 N     [         R                  " 5       $ ! [         a     gf = fNr  )r  python_implementationr  rf   rm   ri   r  r    s(    --//     
$$c                 N     [         R                  " 5       $ ! [         a     gf = fr  )r  python_versionr  rf   rm   ri   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    ri   r  r    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mergedr_  r`  s        ri   r!  r!    sA     F)/W:3z%QU?VJCJWWWs
   AA)r  Query | Noner  zHeaders | Noner  r  r  rp  r$  r   r   z'float | httpx.Timeout | None | NotGivenr   zPostParser | NotGivenry   r,   )ry   Platform)r  r|   r  zPlatform | Nonery   r  r{   )ry   Arch)r  Mapping[_T_co, Union[_T, Omit]]r  r  ry   zDict[_T_co, _T])
__future__r   r  rc   r  r  r  r  rp  rD  r  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.   _utilsr/   r0   r1   r2   r3   r4   r5   _compatr6   r7   r8   _modelsr9   r:   r;   r<   	_responser=   r>   r?   r@   
_constantsrA   rB   rC   rD   rE   rF   rG   
_streamingrH   rI   rJ   rK   rL   rM   rN   rO   _legacy_responserP   	getLoggerru   rQ   r   	addFilterrR   rT   rU   rV   rX   rY   httpx._configrZ   r  ImportErrorr\   r   r   r   r   r  r  r   r   r   r  DefaultHttpxClientr  r   ru  httpx_aiohttpHttpxAiohttpClientry  DefaultAsyncHttpxClientDefaultAioHttpClientr  r   r  r|   rM  r  r  r  r  r  r  r  r  r  r!  rf   rm   ri   <module>r.     sh   " 
               " < ;          8    " h g g 8 8 U U    I H  0''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f878 f8R#%,, #  -/ h9Ju||VC[89 h9V#u00 #'' @ @ ' #// !,,_60	5 	^9Z 1 1;s3C CD ^9F $( $""&7@)2"" "" 	"
 "  " 5" '" "Jc4i 
$ $ 		
'T 4 $ $ Y GHHI4	X
)	X
)	X 	Xa;  - '-n%  yy 1 1 yys$   M6 N 6NNN*)N*