+
    Q?jH                      ^ RI Ht ^ RIt^ RIHtHtHtHtHt ^ RI	H
t
HtHt ^ RIt^RIHt ^RIHt ^RIHtHtHt ^RIHtHtHtHtHtHtHtHtHt ^R	I H!t!H"t"H#t#H$t$ ^R
I%H&t& ^RI'H(t(H)t)H*t* ^RI+H,t,H-t- ^RI.H/t/ ^RI0H1t1H2t2H3t3H4t4 ^RI5H6t6H7t7 ^RI8H9t9H:t:H;t;H<t<H=t=H>t>H?t? ^RIH@t@HAtA ^RIBHCtCHDtDHEtE ^RIFHGtGHHtH ]'       d   ^RIIHJtJHKtKHLtLHMtMHNtNHOtOHPtPHQtQHRtRHStSHTtTHUtUHVtVHWtWHXtXHYtYHZtZH[t[H\t\H]t]H^t^H_t_ ^RI`HataHbtb ^RIcHdtdHete ^RIfHgtgHhth ^RIiHjtjHktk ^RIlHmtmHntn ^RIoHptpHqtq ^RIrHstsHttt ^RIuHvtvHwtw ^RIxHytyHztz ^RI{H|t|H}t} ^RI~HtHt ^R IHtHt ^R!IHtHt ^R"IHtHt ^R#IHtHt ^R$IHtHt ^R%IHtHt ^R&IHtHt ^R'IHtHt ^R(IHtHt ^R)IHtHt ^R*IHtHt ^R+IHtHt . R=OtR.tR/ R0 ltR1 R2 lt ! R3 R,]D4      t ! R4 R-]E4      t ! R5 R64      t ! R7 R84      t ! R9 R:4      t ! R; R<4      t]t]tR# )>    )annotationsN)TYPE_CHECKINGAnyMappingCallable	Awaitable)SelfUnpackoverride)_exceptionsQuerystring)WorkloadIdentityWorkloadIdentityAuthX509WorkloadIdentity)	OmitHeadersTimeoutNotGiven	TransportProxiesTypesHttpxSendArgsRequestOptions	not_given)is_given
is_mappingis_mapping_tget_async_library)cached_property)normalize_httpx_urlis_httpx2_sync_clientis_httpx2_async_client)SecurityOptionsFinalRequestOptions)__version__)	_Provider_provider_name_ProviderRuntime_configure_provider)StreamAsyncStream)MTLS_API_BASE_URLSyncX509WorkloadIdentityAuthAsyncX509WorkloadIdentityAuthvalidate_x509_api_urlis_x509_workload_identityvalidate_x509_api_credentialsvalidate_x509_request_authority)OpenAIErrorAPIStatusError)DEFAULT_MAX_RETRIESSyncAPIClientAsyncAPIClient)DataResidencyresolve_data_residency)betachatadminaudioevalsfilesimagesmodelsskillsvideosbatchesuploadsrealtime	responses
containers
embeddingscompletionsfine_tuningmoderationsconversationsvector_storescontent_provenance_checks)Files
AsyncFiles)ImagesAsyncImages)ModelsAsyncModels)VideosAsyncVideos)BatchesAsyncBatches)Beta	AsyncBeta)Chat	AsyncChat)
EmbeddingsAsyncEmbeddings)Admin
AsyncAdmin)Audio
AsyncAudio)CompletionsAsyncCompletions)Evals
AsyncEvals)ModerationsAsyncModerations)SkillsAsyncSkills)UploadsAsyncUploads)RealtimeAsyncRealtime)WebhooksAsyncWebhooks)	ResponsesAsyncResponses)
ContainersAsyncContainers)
FineTuningAsyncFineTuning)ContentProvenanceChecksAsyncContentProvenanceChecks)ConversationsAsyncConversations)VectorStoresAsyncVectorStoresOpenAIAsyncOpenAIzworkload-identity-authc               $    V ^8  d   QhRRRRRR/#    headersr   headerstrreturnbool )formats   "w/home/vela/workspace/domain/tn-silver/web/tn-site/.runtime/imagegen-venv/lib/python3.14/site-packages/openai/_client.py__annotate__r   l   s!     9 9 9# 9$ 9    c                   a SP                  4       o\        ;QJ d    V3R  lV  4       F  '       g   K   R# 	  R# ! V3R  lV  4       4      # )c              3  H   <"   T F  qP                  4       S8H  x  K  	  R # 5iN)lower).0keyr   s   & r   	<genexpr>_has_header.<locals>.<genexpr>n   s     8yy{f$s   "TF)r   anyr   r   s   &fr   _has_headerr   l   s7    \\^F3883383838888r   c               $    V ^8  d   QhRRRRRR/# r   r   )r   s   "r   r   r   q   s&     d d d# d$ dr   c                   a SP                  4       o\        ;QJ d-    V3R  lV P                  4        4       F  '       g   K   R# 	  R# ! V3R  lV P                  4        4       4      # )c              3  ~   <"   T F2  w  rVP                  4       S8H  ;'       d    \        V\        4      x  K4  	  R # 5ir   )r   
isinstancer   )r   r   valuer   s   &  r   r   &_has_omitted_header.<locals>.<genexpr>s   s2     cSbZSsyy{f$@@E4)@@Sbs    ==TF)r   r   itemsr   s   &fr   _has_omitted_headerr   q   sK    \\^F3cSZS`S`Sbc33c3c3cSZS`S`Sbcccr   c            &        a  ] tR t^vt$ R]R&   R]R&   R]R&   R]R&   R]R&   R]R	&   R
]R&   R]R&   R]R&   R]R&   R]R&    ]]R R l4       4       t]P                  R R l4       tRRRRRRRRRRR	RRRR]	RRRRR]	R]
RRRRR RR!R"R#R$/R% V 3R& lllt]R' R( l4       t]R) R* l4       t]R+ R, l4       t]R- R. l4       t]R/ R0 l4       t]R1 R2 l4       t]R3 R4 l4       t]R5 R6 l4       t]R7 R8 l4       t]R9 R: l4       t]R; R< l4       t]R= R> l4       t]R? R@ l4       t]RA RB l4       t]RC RD l4       t]RE RF l4       t]RG RH l4       t]RI RJ l4       t]RK RL l4       t]RM RN l4       t ]RO RP l4       t!]RQ RR l4       t"]RS RT l4       t#]RU RV l4       t$]RW RX l4       t%]]RY RZ l4       4       t&R[R"/R\ V 3R] lllt']R^ R_ l4       t(]R` Ra l4       t)]Rb Rc l4       t*]]Rd Re l4       4       t+]Rf Rg l4       t,]]Rh V 3Ri ll4       4       t-]Rj Rk l4       t.]Rl V 3Rm ll4       t/]Rn Ro l4       t0]Rp V 3Rq ll4       t1Rr Rs lt2RRRRRRR]	RRRRR	RRRR]	RRR]	R RR]	RRRtRRRRuRR#RRv/ /Rw Rx llt3]3t4]Ry Rz l4       t5R{t6V ;t7# )|r~   r   api_key
str | Noneadmin_api_key.WorkloadIdentity | X509WorkloadIdentity | Noneworkload_identityorganizationprojectwebhook_secretz:WorkloadIdentityAuth | SyncX509WorkloadIdentityAuth | None_workload_identity_auth_Provider | None	_provider_ProviderRuntime | None_provider_runtimer   _base_url_was_defaultstr | httpx2.URL | Nonewebsocket_base_urlc                   V ^8  d   QhRR/# r   r   z
httpx2.URLr   )r   s   "r   r   OpenAI.__annotate__         * r   c                	    V P                   # r   	_base_urlselfs   &r   base_urlOpenAI.base_url        ~~r   c                    V ^8  d   QhRRRR/# r   urlzhttpx2.URL | strr   Noner   )r   s   "r   r   r           + +, + +r   c                	    \        V4      p\        V P                  4      '       d   \        V4       V P	                  V4      V n        R V n        R# FNr    r0   r   r/   _enforce_trailing_slashr   r   r   r   normalized_urls   && r   r   r      ?    ,S1$T%;%;<<!.155nE%*"r   Nproviderr   data_residencytimeoutmax_retriesdefault_headersdefault_queryhttp_client_strict_response_validationF_enforce_credentialsTc          $     `    V ^8  d   QhRRRRRRRRRRR	RR
RRRRRRRRRRRRRRRRRRRRRRR /# )!r   r   str | Callable[[], str] | Noner   r   r   r   r   r   r   r   r   r   "str | httpx2.URL | None | NotGivenr   DataResidency | Noner   r   r   !float | Timeout | None | NotGivenr   intr   Mapping[str, str] | Noner   Mapping[str, object] | Noner   httpx2.Client | Noner   r   r   r   r   r   )r   s   "r   r   r      s     t* t* 0t* "	t*
 Jt* !t* t* #t* #t* 5t* -t* 4t* 3t* t* 2t*  3!t*( *)t*: &*;t*< #=t*> 
?t*r   c                 < \        WWzR7      pRpVeq   \        V4      pRV3RV3RV3RV33 UUu. uF  w  ppVf   K  VNK  	  pppV'       d+   RP                  R V 4       4      p\        R	V R
V R24      h\	        V4      pWpn        VV n        Ve   V\        8w  d   Ve   \        R4      h\        V4      '       d   VP                  4       pVf   TMRV n
        Ve   RV n        RV n        RV n        MVe   \        V n        RV n        RV n        MaVf    \        P                  P!                  R4      p\#        V4      '       d   RV n        Wn        MT;'       g    RV n        RV n        RV n        Vf$   Vf    \        P                  P!                  R4      pVf   TMRV n        VfF   V'       d>   V P                  '       g,   V P                  f   Vf   V P$                  f   \        R4      hVf$   Vf    \        P                  P!                  R4      pW@n        Vf$   Vf    \        P                  P!                  R4      pWPn        Vf    \        P                  P!                  R4      pW`n        Wn        \        V4      '       d   TpRpM Vf   RpRpMRV9   d   RpTpM\        R4      hVe   VP.                  pM#Vf    \        P                  P!                  R4      pVRJ ;'       d    VRJ V n        Vf   Ve   \2        MRpVe   \5        V4       Vf    \        P                  P!                  R4      MRpVe|   / pVP7                  R4       FK  pVP9                  R4      pV^ 8  g   K  VV^,           R P;                  4       VVRV P;                  4       &   KM  	  / VC\=        V4      '       d   TM/ Cp\>        SV `  \B        VVVVVVVR7       Ve-   \E        VP                  4       V PF                  VR7      V n        M)Ve&   \I        V\K        V PF                  4      R7      V n        \L        V n'        R# u uppi )a`  Construct a new synchronous OpenAI client instance.

This automatically infers the following arguments from their corresponding environment variables if they are not provided:
- `api_key` from `OPENAI_API_KEY`
- `admin_api_key` from `OPENAI_ADMIN_KEY`
- `organization` from `OPENAI_ORG_ID`
- `project` from `OPENAI_PROJECT_ID`
- `webhook_secret` from `OPENAI_WEBHOOK_SECRET`

When `provider` is supplied, authentication and the base URL are configured by that provider instead.
`data_residency` selects an OpenAI regional endpoint and cannot be combined with
`base_url`, `websocket_base_url`, or `provider`.
r   r   Nr   r   r   r   , c              3  .   "   T F  pR V R 2x  K  	  R# 5i`Nr   r   names   & r   r   "OpenAI.__init__.<locals>.<genexpr>        %Hid$qki   -`provider` cannot be combined with top-level 9. Move provider authentication and routing options into `(...)`.FThe `api_key` and `workload_identity` arguments are mutually exclusive OPENAI_API_KEYOPENAI_ADMIN_KEYMissing credentials. Please pass an `api_key`, `workload_identity`, `admin_api_key`, or set the `OPENAI_API_KEY` or `OPENAI_ADMIN_KEY` environment variable.OPENAI_ORG_IDOPENAI_PROJECT_IDOPENAI_WEBHOOK_SECRETr   VInvalid `workload_identity` configuration: expected an X.509 or subject-token identityOPENAI_BASE_URLhttps://api.openai.com/v1OPENAI_CUSTOM_HEADERS
:versionr   r   r   r   custom_headerscustom_queryr   r   r   r   r   _use_httpx2)(r9   r'   joinr3   r)   r   r   %WORKLOAD_IDENTITY_API_KEY_PLACEHOLDERr0   copyr   r   _api_key_providerr   osenvirongetcallabler   r   r   r   r   r   r   r,   r/   splitfindstripr   super__init__r%   r-   _clientr   r!   r*   _default_stream_clsr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   provider_runtimeprovider_namer   r   	conflicts	formattedx509_identitysubject_token_identitycustom_headers_envparsedlinecolon	__class__s   &$$$$$$$$$$$$$$$$$            r   r
  OpenAI.__init__   sc   Z *x
 59*84M ($m4(*;<*	$	$KD%  $  	  II%Hi%HH	!CI; ONN[_\ce 
  38<!!17.S#SXiXufgg$%677 1 6 6 86F6N!2TX'DL%)D"+/D(*@DL%)D"+/D(**..)9:  !CJ&&}}")-&+/D( %5%=JJNN+=>M.>.F]D $$LLL&&.!)""* o  $4$<::>>/:L(?/7jjnn%89G!ZZ^^,CDN,"4$%677-M%)"& M%)",, M%6"vww''00Hzz~~&78H%5%=%R%R(dBR",9,E(KfH$!(+HXH`RZZ^^,CDfj)%'F*006		#A:37	3D3J3J3LF4<--/0 7 gf|O?\?\ObdfO##*&(C 	 		
 $+G"/"4"4"6DLL^i,D( $/+?"81$,,?,D(
 $* C	
   	Q Q c                   V ^8  d   QhRR/# )r   r   rd   r   )r   s   "r   r   r   O       ! ![ !r   c                    ^RI Hp V! V 4      # )
Given a prompt, the model will return one or more predicted completions, and can also return the probabilities of alternative tokens at each position.
)rd   )resources.completionsrd   )r   rd   s   & r   rJ   OpenAI.completionsN      
 	74  r   c                   V ^8  d   QhRR/# )r   r   r\   r   )r   s   "r   r   r   X        d r   c                	    ^RI Hp V! V 4      # )   )r\   )resources.chatr\   )r   r\   s   & r   r;   OpenAI.chatW      (Dzr   c                   V ^8  d   QhRR/# )r   r   r^   r   )r   s   "r   r   r   ^  s        J  r   c                    ^RI Hp V! V 4      # )u
Get a vector representation of a given input that can be easily consumed by machine learning models and algorithms.
)r^   )resources.embeddingsr^   )r   r^   s   & r   rI   OpenAI.embeddings]  s    
 	5$r   c                   V ^8  d   QhRR/# )r   r   rP   r   )r   s   "r   r   r   g  s      u r   c                    ^RI Hp V! V 4      # )d
Files are used to upload documents that can be used with features like Assistants and Fine-tuning.
)rP   )resources.filesrP   )r   rP   s   & r   r?   OpenAI.filesf  s    
 	+T{r   c                   V ^8  d   QhRR/# )r   r   rR   r   )r   s   "r   r   r   p         r   c                    ^RI Hp V! V 4      # )JGiven a prompt and/or an input image, the model will generate a new image.)rR   )resources.imagesrR   )r   rR   s   & r   r@   OpenAI.imageso       	-d|r   c                   V ^8  d   QhRR/# )r   r   rx   r   )r   s   "r   r   r   w  s     - -+B -r   c                	    ^RI Hp V! V 4      # )r%  )rx   )#resources.content_provenance_checksrx   )r   rx   s   & r   rO    OpenAI.content_provenance_checksv  s    P&t,,r   c                   V ^8  d   QhRR/# )r   r   rb   r   )r   s   "r   r   r   }        u r   c                	    ^RI Hp V! V 4      # )r%  )rb   )resources.audiorb   )r   rb   s   & r   r=   OpenAI.audio|      *T{r   c                   V ^8  d   QhRR/# )r   r   rh   r   )r   s   "r   r   r     r  r   c                    ^RI Hp V! V 4      # )U
Given text and/or image inputs, classifies if those inputs are potentially harmful.
)rh   )resources.moderationsrh   )r   rh   s   & r   rL   OpenAI.moderations  r!  r   c                   V ^8  d   QhRR/# )r   r   rT   r   )r   s   "r   r   r     r4  r   c                    ^RI Hp V! V 4      # ):List and describe the various models available in the API.)rT   )resources.modelsrT   )r   rT   s   & r   rA   OpenAI.models  r9  r   c                   V ^8  d   QhRR/# )r   r   rv   r   )r   s   "r   r   r     s        Z  r   c                	    ^RI Hp V! V 4      # )r%  )rv   )resources.fine_tuningrv   )r   rv   s   & r   rK   OpenAI.fine_tuning  s    5$r   c                   V ^8  d   QhRR/# )r   r   r|   r   )r   s   "r   r   r     s     " "| "r   c                	    ^RI Hp V! V 4      # )r%  )r|   )resources.vector_storesr|   )r   r|   s   & r   rN   OpenAI.vector_stores  s    9D!!r   c                   V ^8  d   QhRR/# )r   r   rp   r   )r   s   "r   r   r           ( r   c                	    ^RI Hp V! V 4      # )r%  )rp   )resources.webhooksrp   )r   rp   s   & r   webhooksOpenAI.webhooks      0~r   c                   V ^8  d   QhRR/# )r   r   rZ   r   )r   s   "r   r   r     r#  r   c                	    ^RI Hp V! V 4      # )r%  )rZ   )resources.betarZ   )r   rZ   s   & r   r:   OpenAI.beta  r(  r   c                   V ^8  d   QhRR/# )r   r   rX   r   )r   s   "r   r   r            r   c                    ^RI Hp V! V 4      # );Create large batches of API requests to run asynchronously.)rX   )resources.batchesrX   )r   rX   s   & r   rD   OpenAI.batches       	/t}r   c                   V ^8  d   QhRR/# )r   r   rl   r   )r   s   "r   r   r     rb  r   c                    ^RI Hp V! V 4      # )4Use Uploads to upload large files in multiple parts.)rl   )resources.uploadsrl   )r   rl   s   & r   rE   OpenAI.uploads  rg  r   c                   V ^8  d   QhRR/# )r   r   r`   r   )r   s   "r   r   r     r?  r   c                	    ^RI Hp V! V 4      # )r%  )r`   )resources.adminr`   )r   r`   s   & r   r<   OpenAI.admin  rC  r   c                   V ^8  d   QhRR/# )r   r   rr   r   )r   s   "r   r   r     s      9 r   c                	    ^RI Hp V! V 4      # )r%  )rr   )resources.responsesrr   )r   rr   s   & r   rG   OpenAI.responses  s    2r   c                   V ^8  d   QhRR/# )r   r   rn   r   )r   s   "r   r   r     rW  r   c                	    ^RI Hp V! V 4      # )r%  )rn   )resources.realtimern   )r   rn   s   & r   rF   OpenAI.realtime  r\  r   c                   V ^8  d   QhRR/# )r   r   rz   r   )r   s   "r   r   r     s     # #} #r   c                    ^RI Hp V! V 4      # ),Manage conversations and conversation items.)rz   )resources.conversationsrz   )r   rz   s   & r   rM   OpenAI.conversations  s     	;T""r   c                   V ^8  d   QhRR/# )r   r   rf   r   )r   s   "r   r   r     s      u r   c                    ^RI Hp V! V 4      # ),Manage and run evals in the OpenAI platform.)rf   )resources.evalsrf   )r   rf   s   & r   r>   OpenAI.evals  s     	+T{r   c                   V ^8  d   QhRR/# )r   r   rt   r   )r   s   "r   r   r     s        J  r   c                	    ^RI Hp V! V 4      # )r%  )rt   )resources.containersrt   )r   rt   s   & r   rH   OpenAI.containers  s    4$r   c                   V ^8  d   QhRR/# )r   r   rj   r   )r   s   "r   r   r            r   c                	    ^RI Hp V! V 4      # )r%  )rj   )resources.skillsrj   )r   rj   s   & r   rB   OpenAI.skills      ,d|r   c                   V ^8  d   QhRR/# )r   r   rV   r   )r   s   "r   r   r     r  r   c                	    ^RI Hp V! V 4      # )r%  )rV   )resources.videosrV   )r   rV   s   & r   rC   OpenAI.videos  r  r   c                   V ^8  d   QhRR/# )r   r   OpenAIWithRawResponser   )r   s   "r   r   r     s     + +#8 +r   c                	    \        V 4      # r   )r  r   s   &r   with_raw_responseOpenAI.with_raw_response  s    $T**r   c                   V ^8  d   QhRR/# )r   r   OpenAIWithStreamedResponser   )r   s   "r   r   r     s     0 0)C 0r   c                	    \        V 4      # r   )r  r   s   &r   with_streaming_responseOpenAI.with_streaming_response      )$//r   c                   V ^8  d   QhRR/# r   r   r   r   )r   s   "r   r   r          4 4K 4r   c                	    \        R R7      # brackets)array_formatr   r   s   &r   qs	OpenAI.qs       
33r   retriedc          
     ,    V ^8  d   QhRRRRRRRRRR	/# 
r   requesthttpx2.Requeststreamr   r  kwargsUnpack[HttpxSendArgs]r   httpx2.Responser   )r   s   "r   r   r     sC     /Z /Z/Z 	/Z
 /Z (/Z 
/Zr   c          	     	$  < R pRpV P                   pVe   \        V\        4      '       d^   VP                  V P                  8w  d   \	        R4      h\        VP                  V P                  R7       \        V4       \        V4       VP                  e   VP                  VR&   VP                  P                  R4      pVR\         28X  d4   VP                  4       pRV 2VP                  R&   VP                  V4      p\        V\        4      '       d>   VP                   ! V3RV P                  RVP                  P                  R4      R	V/VB p	M\"        S
V `H  ! V3R	V/VB p	V	P&                  R
8w  g   V P                   e   Vf   V	# V P                   P)                  V4       V'       g	   V'       g   V	# V	P+                  4        V P                   P-                  V4       R\         2VP                  R&   V P.                  ! V3R	VRR/VB # NFzCX.509 workload identity cannot be changed after client construction)expected_originfollow_redirectsAuthorizationBearer r  expected_authorizationr    r  T)r   r   r-   r   r3   r/   r   r   r2   r1   _follow_redirectsr   r  r   	get_token_can_retry_requestsend_api_requestr	  _send_requeststatus_codeinvalidate_tokenclose_prepare_retry_request_send_with_auth_retryr   r  r  r  r  used_access_tokenrequest_is_replayable	x509_authauthorizationresponser  s   &&$$,     r   r  OpenAI._send_with_auth_retry  s    )- %00	 )%ABB..$2H2HH%&kll%gkk4==Q/8-g6**6-6-H-H)*#OO//@M'*O)P QQ$-$7$7$9!5<=N<O3P0(1(D(DW(M%i!=>> 11 $ (/':':?'K 	
 H w,WNVNvNH3&$*F*F*NRcRkO$$556GH/O$$;;GD-45Z4[+\())'Y&Y$YRXYYr   c               (    V ^8  d   QhRRRRRRRR/# 	r   r  r  r  r   r  r  r   r  r   )r   s   "r   r   r   )  s2     
 

 	

 (
 

r   c               	    V P                   ! V3R V/VB pV P                  e4   V P                  P                  e   V P                  P                  V4      pV# )r  )r  r   normalize_responser   r  r  r  r  s   &&$, r   r  OpenAI._send_request(  sV     --gOfOO!!-$2H2H2[2[2g--@@JHr   c                    V ^8  d   QhRRRR/# r   securityr#   r   dict[str, str]r   )r   s   "r   r   r   6        o . r   c                	Z   V P                   e   / # / pVP                  RR4      '       d5   V P                  P                  4        F  w  r4VP	                  W44       K  	  VP                  RR4      '       d5   V P
                  P                  4        F  w  r4VP	                  W44       K  	  V# Nbearer_authFadmin_api_key_authr   r  _bearer_authr   
setdefault_admin_api_key_authr   r  r   r   r   s   &&   r   _auth_headersOpenAI._auth_headers5      !!-I"$<<u--"//557
""3. 8<<,e44"66<<>
""3. ?r   c                   V ^8  d   QhRR/# r   r   r  r   )r   s   "r   r   r   D       6 6n 6r   c                	<    V P                   pV'       g   / # R RV 2/# r  r  r   r   r   s   & r   r  OpenAI._bearer_authC  %    ,,I77)!455r   c                   V ^8  d   QhRR/# r  r   )r   s   "r   r   r   L       6 6n 6r   c                	r    V P                   e   / # V P                  pV'       d   V\        8X  d   / # RRV 2/# Nr  r  r   r   r   r  s   & r   auth_headersOpenAI.auth_headersJ  @     !!-I,,'%JJI77)!455r   c                   V ^8  d   QhRR/# r  r   )r   s   "r   r   r   V       < <^ <r   c                	4    V P                   pVf   / # RRV 2/# r  r   r   r   s   & r   r  OpenAI._admin_api_key_authU  *    ** I7=/!:;;r   c                   V ^8  d   QhRR/# r   r   zdict[str, str | Omit]r   )r   s   "r   r   r   ^       
 
!6 
r   c                	   < / \         SV `  CR RRV P                  e   V P                  M	\        4       RV P                  e   V P                  M	\        4       /CV P
                  C# )X-Stainless-AsyncfalseOpenAI-OrganizationOpenAI-Project)r	  r   r   r   r   _custom_headersr   r  s   &r   r   OpenAI.default_headers\  sf    
g%
!8I8I8U4#4#4[_[adll.FdllDF	

 ""
 	
r   c               $    V ^8  d   QhRRRRRR/# r   r   r   r   r   r   r   )r   s   "r   r   r   h  !     	
 	
 	
' 	
d 	
r   c                	    V P                   e   R # \        VR4      '       g   \        VR4      '       d   R # \        R4      hNr  z"Could not resolve authentication method. Expected either api_key or admin_api_key to be set. Or for one of the `Authorization` or `Authorization` headers to be explicitly omitted"r   r   r   	TypeErrorr   r   r   s   &&&r   _validate_headersOpenAI._validate_headersg  B    !!-w004GXg4h4h C
 	
r   c                    V ^8  d   QhRRRR/# r   optionsr$   r   r   )r   s   "r   r   r   t  s     1 1(; 1@S 1r   c                	&  < V P                   e5   V P                   P                  e   V P                   P                  V4      pM@V P                  e3   VP                  P	                  RR4      '       d   V P                  4        \        SV `  V4      # Nr  F)r   transform_requestr  r  r  _refresh_api_keyr	  _prepare_optionsr   r  r  s   &&r   r  OpenAI._prepare_optionss  sy    !!-%%77C00BB7K##/G4D4D4H4HX]4^4^!!#w'00r   c                    V ^8  d   QhRRRR/# r   r  r  r   r   r   )r   s   "r   r   r   ~  s     < < <4 <r   c                	    V P                   e8   V P                   P                  e   V P                   P                  V4       R # R # R # r   )r   prepare_requestr   r  s   &&r   _prepare_requestOpenAI._prepare_request}  s<    !!-$2H2H2X2X2d""227; 3e-r   c                    V ^8  d   QhRRRR/# )r   r  r#   r   httpx2.Auth | Noner   )r   s   "r   r   r     s     . ._ .9K .r   c                	   < V P                   f!   \        V P                  \        4      '       d   \        P
                  ! 4       # \        SV `  V4      # r   )r   r   r   r-   httpx2Authr	  _custom_auth)r   r  r  s   &&r   r#  OpenAI._custom_auth  s>    !!-D<X<XZv1w1w;;= w#H--r   c                   V ^8  d   QhRR/# r   r   r   r   )r   s   "r   r   r     s      # r   c                	`    V P                   e   V P                  4       V n        V P                  # r   r  r   r   s   &r   r  OpenAI._refresh_api_key  s(    !!-113DL||r   set_default_headersset_default_query_extra_kwargsc          (     h    V ^8  d   QhRRRRRRRRR	RR
RRRRRRRRRRRRRRRRRRRRRRRRRR R!R"R#/# )$r   r   r   r   r   r   r   r   _Provider | None | NotGivenr   r   r   r   r   r   r   r   r   r   r   r   r   r   int | NotGivenr   r   r*  r   r   r+  r   bool | Noner,  Mapping[str, Any]r   r	   r   )r   s   "r   r   r     s     j j 0j "	j
 Jj .j !j j #j 4j 5j -j 3j *j $j  2!j" 6#j$ 3%j& 7'j( *)j* )+j, 
-jr   c                  Ve   Ve   \        R4      hVe   Ve   \        R4      h\        V\        4      '       * ;'       d    W@P                  JpV'       d   RMV P                  pV'       d   RMV P
                  pV'       d   / MV P                  pVe   / VCVCpMVe   TpV P                  pVe   / VCVCpMVe   TpT;'       g    V P                  p\        V\        4      '       d   V P                  MTp\        WVVR7      p	RpVe   RVRVRVR	VR
V	/pMV P                  e   RVRVR	VR
V	/pMVe   TMV P                  pVe   Vf   Rp\        V P                  4      p\        V4      pVV8g  pV'       d   V P                  '       d   RMV P                  p V	RJ ;'       d    V'       * ;'       d    V P                  pRVe   TM)T;'       g!    V P                  ;'       g    V P                  RT;'       g    V P                   R	TR
T	;'       g    T /pV P"                  ! RRT;'       g    TRT;'       g    TRT;'       g    V P$                  RV
e   RMT;'       g    V P&                  R\        V\        4      '       d   V P(                  MTRTR\+        V4      '       d   TMV P,                  RTRTRVf   RMT/
VBVB p!V'       d   RV!n        V!# z
Create a new client instance re-using the same options given to the current client with optional overriding.
`data_residency` replaces the inherited HTTP and WebSocket endpoints, without changing this client.
NzPThe `default_headers` and `set_default_headers` arguments are mutually exclusivezLThe `default_query` and `set_default_query` arguments are mutually exclusiver   Fr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Tr   
ValueErrorr   r   r   r   r   r  _custom_queryr  r9   r   r0   r   r   r  r   r   r  r   r   r   r   r   "r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r*  r   r+  r   r,  provider_changedinherited_organizationinherited_projectr   paramsnext_providerpreserve_default_base_urlauth_optionsnext_workload_identitycurrent_x509	next_x509mode_changedinherited_base_urlcopieds"   &$$$$$$$$$$$$$$$$$$$              r   r   OpenAI.copy  s@   6 &+>+Jopp$):)Fkll)(H==``(R`R`B`)9t?P?P$4D$,,+;RAUAU&44O4G ,)G##$00-0F*&F!11T\\*4Xx*H*Hh)}Qc
 %*!$M7#%6HL ^^'7#%6H	L ;L:W%6]a]s]s""'8'@)-&4T5K5KLL12HII'94L)5$:T:T:TZ^ZgZg(0D(8(l(l=M(l(lRVRlRl%$0 #FF 6 6FF$,,!D!D$2D2D#%;H::(:L  
%??)?
000
 *@@T-@-@
 (6'AtGYGtGt]a]t]t	

 %/w$A$ADLLw
 $
 (0'<'<$BRBR
 $
 !
 *>)EK_
 
 
 %+/F(r   c               (    V ^8  d   QhRRRRRRRR/# 	r   err_msgr   bodyobjectr  r  r   r4   r   )r   s   "r   r   r      8     E EE 	E
 "E 
Er   c               	   \        V4      '       d   VP                  R V4      MTpVP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P
                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R	8  d   \        P                  ! WVR7      # \        WVR7      # 
errori  )r  rI  r  i  i  i  i  i  i  r   r  r  r   BadRequestErrorAuthenticationErrorPermissionDeniedErrorNotFoundErrorConflictErrorUnprocessableEntityErrorRateLimitErrorInternalServerErrorr4   r   rH  rI  r  datas   &&$$ r   _make_status_errorOpenAI._make_status_error  :    +5T*:*:txx&3&..wPTUU3&227TXYY3&44WVZ[[3&,,WdSS3&,,WdSS3&77Y]^^3&--gtTT3&227TXYYgtDDr   r  r   r   r  r   r   r   r   r   r   r   r   r   r   )8__name__
__module____qualname____firstlineno____annotations__propertyr   r   setterr   r5   r
  r   rJ   r;   rI   r?   r@   rO   r=   rL   rA   rK   rN   rZ  r:   rD   rE   r<   rG   rF   rM   r>   rH   rB   rC   r  r  r  r  r  r  r  r  r  r   r
  r  r  r#  r  r   with_optionsrZ  __static_attributes____classcell__r  s   @r   r~   r~   v   sC   LEEWW..//    __+ +t* 37t* %)	t*
 MQt* $(t* #t* &*t* &*t* 8At* 04t* 7;t* 6?t* /t* 59t*  6:!t*( -1)t*: -2;t*< &*=t* t*l ! !  
         - -
  
 ! !      
 " "
  
  
      
  
  
 # #      
  
  
 + + 0 0 4  4/Z
 /Z /Zb 
 
   6 6 6  6 < < 
  
 	
 	
 1 1 < < . .j 37j %)	j
 MQj 1:j $(j #j &*j 7;j 8Aj 04j 6?j -1j '0j  59!j" 9=#j$ 6:%j& :>'j( -1)j* ,.+j\ LE Er   c            &         a  ] tR tRt$ R]R&   R]R&   R]R&   R]R&   R]R	&   R]R
&   R]R&   R]R&   R]R&   R]R&   R]R&    ]]R R l4       4       t]P                  R R l4       tRRRRRRRRR	RR
RRRR]	RRRRR]	R]
RRR RR!RR"R#R$R%/R& V 3R' lllt]R( R) l4       t]R* R+ l4       t]R, R- l4       t]R. R/ l4       t]R0 R1 l4       t]R2 R3 l4       t]R4 R5 l4       t]R6 R7 l4       t]R8 R9 l4       t]R: R; l4       t]R< R= l4       t]R> R? l4       t]R@ RA l4       t]RB RC l4       t]RD RE l4       t]RF RG l4       t]RH RI l4       t]RJ RK l4       t]RL RM l4       t]RN RO l4       t ]RP RQ l4       t!]RR RS l4       t"]RT RU l4       t#]RV RW l4       t$]RX RY l4       t%]]RZ R[ l4       4       t&R\R#/R] V 3R^ lllt']R_ R` l4       t(]Ra Rb l4       t)]Rc Rd l4       t*]]Re Rf l4       4       t+]Rg Rh l4       t,]]Ri V 3Rj ll4       4       t-]Rk Rl l4       t.]Rm V 3Rn ll4       t/]Ro Rp l4       t0]]Rq V 3Rr ll4       4       t1Rs Rt lt2RRRRRRR]	RRR	RR
RRRR]	RRR]	R!RR]	RRRuRR RRvRR$RRw/ /Rx Ry llt3]3t4]Rz R{ l4       t5R|t6V ;t7# )}r   i"  r   r   r   r   r   r   r   r   r   z;WorkloadIdentityAuth | AsyncX509WorkloadIdentityAuth | Noner   r   r   r   r   r   r   r   r   c                   V ^8  d   QhRR/# r   r   )r   s   "r   r   AsyncOpenAI.__annotate__9  r   r   c                	    V P                   # r   r   r   s   &r   r   AsyncOpenAI.base_url7  r   r   c                    V ^8  d   QhRRRR/# r   r   )r   s   "r   r   rk  =  r   r   c                	    \        V4      p\        V P                  4      '       d   \        V4       V P	                  V4      V n        R V n        R# r   r   r   s   && r   r   rm  <  r   r   Nr   r   r   r   r   r   r   r   r   Fr   Tc          $     `    V ^8  d   QhRRRRRRRRRRR	RR
RRRRRRRRRRRRRRRRRRRRRRR /# )!r   r   )str | Callable[[], Awaitable[str]] | Noner   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   httpx2.AsyncClient | Noner   r   r   r   r   r   )r   s   "r   r   rk  D  s     t/ t/ ;t/ "	t/
 Jt/ !t/ t/ #t/ #t/ 5t/ -t/ 4t/ 3t/ t/ 2t/  3!t/( /)t/: &*;t/< #=t/> 
?t/r   c                 < \        WWzR7      pRpVeq   \        V4      pRV3RV3RV3RV33 UUu. uF  w  ppVf   K  VNK  	  pppV'       d+   RP                  R V 4       4      p\        R	V R
V R24      h\	        V4      pWpn        VV n        Ve   V\        8w  d   Ve   \        R4      h\        V4      '       d   VP                  4       pVf   TMRV n
        Ve   RV n        RV n        RV n        MVe   \        V n        RV n        RV n        MaVf    \        P                  P!                  R4      p\#        V4      '       d   RV n        Wn        MT;'       g    RV n        RV n        RV n        Vf$   Vf    \        P                  P!                  R4      pVf   TMRV n        VfF   V'       d>   V P                  '       g,   V P                  f   Vf   V P$                  f   \        R4      hVf$   Vf    \        P                  P!                  R4      pW@n        Vf$   Vf    \        P                  P!                  R4      pWPn        Vf    \        P                  P!                  R4      pW`n        Wn        \        V4      '       d   TpRpM Vf   RpRpMRV9   d   RpTpM\        R4      hVe   VP.                  pM#Vf    \        P                  P!                  R4      pVRJ ;'       d    VRJ V n        Vf   Ve   \2        MRpVe   \5        V4       Vf    \        P                  P!                  R4      MRpVe|   / pVP7                  R4       FK  pVP9                  R4      pV^ 8  g   K  VV^,           R P;                  4       VVRV P;                  4       &   KM  	  / VC\=        V4      '       d   TM/ Cp\>        SV `  \B        VVVVVVVR7       Ve-   \E        VP                  4       V PF                  VR7      V n        M)Ve&   \I        V\K        V PF                  4      R7      V n        \L        V n'        R# u uppi )a_  Construct a new async AsyncOpenAI client instance.

This automatically infers the following arguments from their corresponding environment variables if they are not provided:
- `api_key` from `OPENAI_API_KEY`
- `admin_api_key` from `OPENAI_ADMIN_KEY`
- `organization` from `OPENAI_ORG_ID`
- `project` from `OPENAI_PROJECT_ID`
- `webhook_secret` from `OPENAI_WEBHOOK_SECRET`

When `provider` is supplied, authentication and the base URL are configured by that provider instead.
`data_residency` selects an OpenAI regional endpoint and cannot be combined with
`base_url`, `websocket_base_url`, or `provider`.
r   Nr   r   r   r   r   c              3  .   "   T F  pR V R 2x  K  	  R# 5ir   r   r   s   & r   r   'AsyncOpenAI.__init__.<locals>.<genexpr>  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )(r9   r'   r   r3   r)   r   r   r   r0   r   r   r   r  r   r  r  r  r  r   r   r   r   r   r   r   r,   r/   r  r  r  r   r	  r
  r%   r.   r  r   r"   r+   r  r  s   &$$$$$$$$$$$$$$$$$            r   r
  AsyncOpenAI.__init__D  sc   Z *x
 59*84M ($m4(*;<*	$	$KD%  $  	  II%Hi%HH	!CI; ONN[_\ce 
  38<!!17.S#SXiXufgg$%677 1 6 6 86F6N!2TX'DL%)D"+/D(*@DL%)D"+/D(**..)9:  !NU&&}}")-&+/D( %5%=JJNN+=>M.>.F]D $$LLL&&.!)""* o  $4$<::>>/:L(?/7jjnn%89G!ZZ^^,CDN,"4$%677-M%)"& M%)",, M%6"vww''00Hzz~~&78H%5%=%R%R(dBR",9,E(KfH$!(+HXH`RZZ^^,CDfj)%'F*006		#A:37	3D3J3J3LF4<--/0 7 gf|O?\?\ObdfO##*&(C 	 		
 $+H"/"4"4"6DLL^i,D( $/+?"824<<@,D(
 $/ C	r  c                   V ^8  d   QhRR/# )r   r   re   r   )r   s   "r   r   rk         & &- &r   c                    ^RI Hp V! V 4      # )r  )re   )r  re   )r   re   s   & r   rJ   AsyncOpenAI.completions      
 	<%%r   c                   V ^8  d   QhRR/# )r   r   r]   r   )r   s   "r   r   rk          i r   c                	    ^RI Hp V! V 4      # )r%  )r]   )r&  r]   )r   r]   s   & r   r;   AsyncOpenAI.chat      -r   c                   V ^8  d   QhRR/# )r   r   r_   r   )r   s   "r   r   rk  
  s     % %O %r   c                    ^RI Hp V! V 4      # )r+  )r_   )r,  r_   )r   r_   s   & r   rI   AsyncOpenAI.embeddings	  s    
 	:t$$r   c                   V ^8  d   QhRR/# )r   r   rQ   r   )r   s   "r   r   rk    s        z  r   c                    ^RI Hp V! V 4      # )r0  )rQ   )r1  rQ   )r   rQ   s   & r   r?   AsyncOpenAI.files  s    
 	0$r   c                   V ^8  d   QhRR/# )r   r   rS   r   )r   s   "r   r   rk         ! ! !r   c                    ^RI Hp V! V 4      # )r6  )rS   )r7  rS   )r   rS   s   & r   r@   AsyncOpenAI.images       	24  r   c                   V ^8  d   QhRR/# )r   r   ry   r   )r   s   "r   r   rk  #  s     2 2+G 2r   c                	    ^RI Hp V! V 4      # )r%  )ry   )r<  ry   )r   ry   s   & r   rO   %AsyncOpenAI.content_provenance_checks"  s    U+D11r   c                   V ^8  d   QhRR/# )r   r   rc   r   )r   s   "r   r   rk  )          z  r   c                	    ^RI Hp V! V 4      # )r%  )rc   )rA  rc   )r   rc   s   & r   r=   AsyncOpenAI.audio(      /$r   c                   V ^8  d   QhRR/# )r   r   ri   r   )r   s   "r   r   rk  /  rx  r   c                    ^RI Hp V! V 4      # )rF  )ri   )rG  ri   )r   ri   s   & r   rL   AsyncOpenAI.moderations.  r{  r   c                   V ^8  d   QhRR/# )r   r   rU   r   )r   s   "r   r   rk  8  r  r   c                    ^RI Hp V! V 4      # )rK  )rU   )rL  rU   )r   rU   s   & r   rA   AsyncOpenAI.models7  r  r   c                   V ^8  d   QhRR/# )r   r   rw   r   )r   s   "r   r   rk  ?  s     % %_ %r   c                	    ^RI Hp V! V 4      # )r%  )rw   )rP  rw   )r   rw   s   & r   rK   AsyncOpenAI.fine_tuning>  s    :t$$r   c                   V ^8  d   QhRR/# )r   r   r}   r   )r   s   "r   r   rk  E  s     ' '0 'r   c                	    ^RI Hp V! V 4      # )r%  )r}   )rT  r}   )r   r}   s   & r   rN   AsyncOpenAI.vector_storesD  s    > &&r   c                   V ^8  d   QhRR/# )r   r   rq   r   )r   s   "r   r   rk  K       # #- #r   c                	    ^RI Hp V! V 4      # )r%  )rq   )rY  rq   )r   rq   s   & r   rZ  AsyncOpenAI.webhooksJ      5T""r   c                   V ^8  d   QhRR/# )r   r   r[   r   )r   s   "r   r   rk  Q  r}  r   c                	    ^RI Hp V! V 4      # )r%  )r[   )r_  r[   )r   r[   s   & r   r:   AsyncOpenAI.betaP  r  r   c                   V ^8  d   QhRR/# )r   r   rY   r   )r   s   "r   r   rk  W       " " "r   c                    ^RI Hp V! V 4      # )rd  )rY   )re  rY   )r   rY   s   & r   rD   AsyncOpenAI.batchesV       	4D!!r   c                   V ^8  d   QhRR/# )r   r   rm   r   )r   s   "r   r   rk  ^  r  r   c                    ^RI Hp V! V 4      # )rj  )rm   )rk  rm   )r   rm   s   & r   rE   AsyncOpenAI.uploads]  r  r   c                   V ^8  d   QhRR/# )r   r   ra   r   )r   s   "r   r   rk  e  r  r   c                	    ^RI Hp V! V 4      # )r%  )ra   )ro  ra   )r   ra   s   & r   r<   AsyncOpenAI.admind  r  r   c                   V ^8  d   QhRR/# )r   r   rs   r   )r   s   "r   r   rk  k  s     $ $> $r   c                	    ^RI Hp V! V 4      # )r%  )rs   )rs  rs   )r   rs   s   & r   rG   AsyncOpenAI.responsesj  s    7d##r   c                   V ^8  d   QhRR/# )r   r   ro   r   )r   s   "r   r   rk  q  r  r   c                	    ^RI Hp V! V 4      # )r%  )ro   )rw  ro   )r   ro   s   & r   rF   AsyncOpenAI.realtimep  r  r   c                   V ^8  d   QhRR/# )r   r   r{   r   )r   s   "r   r   rk  w  s     ( (1 (r   c                    ^RI Hp V! V 4      # )r{  )r{   )r|  r{   )r   r{   s   & r   rM   AsyncOpenAI.conversationsv  s     	@!$''r   c                   V ^8  d   QhRR/# )r   r   rg   r   )r   s   "r   r   rk  ~  s        z  r   c                    ^RI Hp V! V 4      # )r  )rg   )r  rg   )r   rg   s   & r   r>   AsyncOpenAI.evals}  s     	0$r   c                   V ^8  d   QhRR/# )r   r   ru   r   )r   s   "r   r   rk    s     % %O %r   c                	    ^RI Hp V! V 4      # )r%  )ru   )r  ru   )r   ru   s   & r   rH   AsyncOpenAI.containers  s    9t$$r   c                   V ^8  d   QhRR/# )r   r   rk   r   )r   s   "r   r   rk         ! ! !r   c                	    ^RI Hp V! V 4      # )r%  )rk   )r  rk   )r   rk   s   & r   rB   AsyncOpenAI.skills      14  r   c                   V ^8  d   QhRR/# )r   r   rW   r   )r   s   "r   r   rk    r  r   c                	    ^RI Hp V! V 4      # )r%  )rW   )r  rW   )r   rW   s   & r   rC   AsyncOpenAI.videos  r  r   c                   V ^8  d   QhRR/# )r   r   AsyncOpenAIWithRawResponser   )r   s   "r   r   rk    s     0 0#= 0r   c                	    \        V 4      # r   )r  r   s   &r   r  AsyncOpenAI.with_raw_response  r  r   c                   V ^8  d   QhRR/# )r   r   AsyncOpenAIWithStreamedResponser   )r   s   "r   r   rk    s     5 5)H 5r   c                	    \        V 4      # r   )r  r   s   &r   r  #AsyncOpenAI.with_streaming_response  s    .t44r   c                   V ^8  d   QhRR/# r  r   )r   s   "r   r   rk    r  r   c                	    \        R R7      # r  r   r   s   &r   r  AsyncOpenAI.qs  r  r   r  c          
     ,    V ^8  d   QhRRRRRRRRRR	/# r  r   )r   s   "r   r   rk    sC     /` /`/` 	/`
 /` (/` 
/`r   c          	     	  <"   R pRpV P                   pVe   \        V\        4      '       d^   VP                  V P                  8w  d   \	        R4      h\        VP                  V P                  R7       \        V4       \        V4       VP                  e   VP                  VR&   VP                  P                  R4      pVR\         28X  d<   VP                  4       G R j  xL
 pRV 2VP                  R&   VP                  V4      p\        V\        4      '       dF   VP                   ! V3RV P                  RVP                  P                  R4      R	V/VB G R j  xL
 p	M\"        S
V `H  ! V3R	V/VB G R j  xL
 p	V	P&                  R
8w  g   V P                   e   Vf   V	# V P                   P)                  V4       V'       g	   V'       g   V	# V	P+                  4       G R j  xL
  V P                   P-                  V4       R\         2VP                  R&   V P.                  ! V3R	VRR/VB G R j  xL
 #  ELX L L L[ L5ir  )r   r   r.   r   r3   r/   r   r   r2   r1   r  r   r  r   get_token_asyncr  r  r	  r  r  r  acloser  r  r  s   &&$$,     r   r  !AsyncOpenAI._send_with_auth_retry  s.     )- %00	 )%BCC..$2H2HH%&kll%gkk4==Q/8-g6**6-6-H-H)*#OO//@M'*O)P QQ*3*C*C*E$E!5<=N<O3P0(1(D(DW(M%i!>??&77 $ (/':':?'K 	
  H #W27T6TVTTH3&$*F*F*NRcRkO$$556GH/Ooo$$;;GD-45Z4[+\(//__PT_X^___1 %F
 U 	  `si   C!I$H<%A<I!H?"I=I>AI
II'I(AI7I8I?IIIIc               (    V ^8  d   QhRRRRRRRR/# r  r   )r   s   "r   r   rk    s2       	
 ( 
r   c               	L  "   V P                   ! V3R V/VB G Rj  xL
 pV P                  eq   V P                  P                  e&   V P                  P                  V4      G Rj  xL
 pV# V P                  P                  e   V P                  P                  V4      pV#  L L=5i)r  N)r  r   normalize_async_responser  r  s   &&$, r   r  AsyncOpenAI._send_request  s      33GUFUfUU!!-%%>>J!%!7!7!P!PQY!ZZ  ''::F11DDXN V [s"   B$B AB$$B"%<B$"B$c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   rk    r  r   c                	Z   V P                   e   / # / pVP                  RR4      '       d5   V P                  P                  4        F  w  r4VP	                  W44       K  	  VP                  RR4      '       d5   V P
                  P                  4        F  w  r4VP	                  W44       K  	  V# r  r  r  s   &&   r   r  AsyncOpenAI._auth_headers  r  r   c                   V ^8  d   QhRR/# r  r   )r   s   "r   r   rk    r  r   c                	<    V P                   pV'       g   / # R RV 2/# r  r  r  s   & r   r  AsyncOpenAI._bearer_auth  r  r   c                   V ^8  d   QhRR/# r  r   )r   s   "r   r   rk    r  r   c                	r    V P                   e   / # V P                  pV'       d   V\        8X  d   / # RRV 2/# r  r  r  s   & r   r  AsyncOpenAI.auth_headers  r  r   c                   V ^8  d   QhRR/# r  r   )r   s   "r   r   rk    r  r   c                	4    V P                   pVf   / # RRV 2/# r  r  r  s   & r   r  AsyncOpenAI._admin_api_key_auth  r  r   c                   V ^8  d   QhRR/# r  r   )r   s   "r   r   rk    r  r   c                	   < / \         SV `  CR R\        4        2RV P                  e   V P                  M	\	        4       RV P
                  e   V P
                  M	\	        4       /CV P                  C# )r  zasync:r  r  )r	  r   r   r   r   r   r  r   s   &r   r   AsyncOpenAI.default_headers  sr    
g%
6*;*=)>!?!8I8I8U4#4#4[_[adll.FdllDF	

 ""
 	
r   c               $    V ^8  d   QhRRRRRR/# r  r   )r   s   "r   r   rk    r  r   c                	    V P                   e   R # \        VR4      '       g   \        VR4      '       d   R # \        R4      hr  r  r	  s   &&&r   r
  AsyncOpenAI._validate_headers  r  r   c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   rk  #  s     	7 	7.A 	7FY 	7r   c                	  <"   V P                   eq   V P                   P                  e%   V P                   P                  V4      G R j  xL
 pM|V P                   P                  e   V P                   P                  V4      pMHV P                  e;   VP                  P                  RR4      '       d   V P                  4       G R j  xL
  \        SV `!  V4      G R j  xL
 #  L L L5ir  )	r   transform_async_requestr  r  r  r  r  r	  r  r  s   &&r   r  AsyncOpenAI._prepare_options"  s     !!-%%==I $ 6 6 N Nw WW''99E00BB7K##/G4D4D4H4HX]4^4^'')))W-g666 X *6s=   AC'C!	A(C'2C'C#C'C%C'#C'%C'c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   rk  /  s     < <n < <r   c                	  "   V P                   f   R # V P                   P                  e&   V P                   P                  V4      G R j  xL
  R # V P                   P                  e   V P                   P                  V4       R # R #  L=5ir   )r   prepare_async_requestr  r  s   &&r   r  AsyncOpenAI._prepare_request.  sr     !!)!!77C((>>wGGG##33?""227; @ Hs   AB		B
>B	c                   V ^8  d   QhRR/# )r   r   r  r   )r   s   "r   r   rk  :  s     # #/ #r   c                	   < V P                   f!   \        V P                  \        4      '       d   \        P
                  ! 4       # \        SV `  # r   )r   r   r   r.   r!  r"  r	  custom_authr   s   &r   r  AsyncOpenAI.custom_auth8  sB     !!-((*G2
 2
 ;;= w""r   c                   V ^8  d   QhRR/# r&  r   )r   s   "r   r   rk  B  s       r   c                	|   "   V P                   e   V P                  4       G R j  xL
 V n        V P                  #  L5ir   r(  r   s   &r   r  AsyncOpenAI._refresh_api_keyB  s3     !!-!%!7!7!99DL|| :s   "<:<r*  r+  r,  c          (     h    V ^8  d   QhRRRRRRRRR	RR
RRRRRRRRRRRRRRRRRRRRRRRRRR R!R"R#/# )$r   r   rq  r   r   r   r   r   r.  r   r   r   r   r   r   r   r   r   r   r   r   rr  r   r/  r   r   r*  r   r   r+  r   r0  r,  r1  r   r	   r   )r   s   "r   r   rk  H  s     i i ;i "	i
 Ji .i !i i #i 4i 5i -i 3i /i $i  2!i" 6#i$ 3%i& 7'i( *)i* )+i, 
-ir   c                  Ve   Ve   \        R4      hVe   Ve   \        R4      h\        V\        4      '       * ;'       d    W@P                  JpV'       d   RMV P                  pV'       d   RMV P
                  pV'       d   / MV P                  pVe   / VCVCpMVe   TpV P                  pVe   / VCVCpMVe   TpT;'       g    V P                  p\        V\        4      '       d   V P                  MTp\        WVVR7      p	RpVe   RVRVRVR	VR
V	/pMV P                  e   RVRVR	VR
V	/pMVe   TMV P                  pVe   Vf   Rp\        V P                  4      p\        V4      pVV8g  pV'       d   V P                  '       d   RMV P                  p V	RJ ;'       d    V'       * ;'       d    V P                  pRVe   TM)T;'       g!    V P                  ;'       g    V P                  RT;'       g    V P                   R	TR
T	;'       g    T /pV P"                  ! RRT;'       g    TRT;'       g    TRT;'       g    V P$                  RV
e   RMT;'       g    V P&                  R\        V\        4      '       d   V P(                  MTRTR\+        V4      '       d   TMV P,                  RTRTRVf   RMT/
VBVB p!V'       d   RV!n        V!# r3  r4  r7  s"   &$$$$$$$$$$$$$$$$$$$              r   r   AsyncOpenAI.copyH  s@   6 &+>+Jopp$):)Fkll)(H==``(R`R`B`)9t?P?P$4D$,,+;RAUAU&44O4G ,)G##$00-0F*&F!11T\\*4Xx*H*Hh)}Qc
 %*!$M7#%6HL ^^'7#%6H	L ;L:W%6]a]s]s""'8'@)-&4T5K5KLL12HII'94L)5$:T:T:TZ^ZgZg(0D(8(l(l=M(l(lRVRlRl%$0 #FF 6 6FF$,,!D!D$2D2D#%;H::(:L  
%??)?
000
 *@@T-@-@
 (6'AtGYGtGt]a]t]t	

 %/w$A$ADLLw
 $
 (0'<'<$BRBR
 $
 !
 *>)EK_
 
 
 %+/F(r   c               (    V ^8  d   QhRRRRRRRR/# rG  r   )r   s   "r   r   rk    rK  r   c               	   \        V4      '       d   VP                  R V4      MTpVP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P
                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R8X  d   \        P                  ! WVR7      # VP                  R	8  d   \        P                  ! WVR7      # \        WVR7      # rM  rO  rX  s   &&$$ r   rZ  AsyncOpenAI._make_status_error  r\  r   r]  )8r^  r_  r`  ra  rb  rc  r   r   rd  r   r5   r
  r   rJ   r;   rI   r?   r@   rO   r=   rL   rA   rK   rN   rZ  r:   rD   rE   r<   rG   rF   rM   r>   rH   rB   rC   r  r  r  r  r  r  r  r  r  r   r
  r  r  r  r  r   re  rZ  rf  rg  rh  s   @r   r   r   "  sM   LEEXX..//    __+ +t/ >Bt/ %)	t/
 MQt/ $(t/ #t/ &*t/ &*t/ 8At/ 04t/ 7;t/ 6?t/ /t/ 59t/  6:!t/( 26)t/: -2;t/< &*=t/ t/l & &  
 % %     ! ! 2 2
    
 & & ! ! % %
 ' '
 # #
  
 " " " "    
 $ $
 # #
 ( (     % %
 ! !
 ! !
 0 0 5 5 4  4/`
 /` /`b     6 6 6  6 < < 
  
 	
 	
 	7 	7 < < #  #i >Bi %)	i
 MQi 1:i $(i #i &*i 7;i 8Ai 04i 6?i 26i '0i  59!i" 9=#i$ 6:%i& :>'i( -1)i* ,.+iZ LE Er   c                     ] tR tRt$ R]R&   R R lt]R R l4       t]R R	 l4       t]R
 R l4       t	]R R l4       t
]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R  R! l4       t]R" R# l4       t]R$ R% l4       t]R& R' l4       t]R( R) l4       t]R* R+ l4       t]R, R- l4       t]R. R/ l4       t]R0 R1 l4       tR2tR3# )4r  i  r~   r  c                    V ^8  d   QhRRRR/# r   clientr~   r   r   r   )r   s   "r   r   "OpenAIWithRawResponse.__annotate__        v $ r   c                	    Wn         R # r   r  r   r  s   &&r   r
  OpenAIWithRawResponse.__init__      r   c                   V ^8  d   QhRR/# )r   r   z&completions.CompletionsWithRawResponser   )r   s   "r   r   r	         D DC Dr   c                F    ^RI Hp V! V P                  P                  4      # )r  )CompletionsWithRawResponse)r  r  r  rJ   )r   r  s   & r   rJ   !OpenAIWithRawResponse.completions      
 	F)$,,*B*BCCr   c                   V ^8  d   QhRR/# )r   r   zchat.ChatWithRawResponser   )r   s   "r   r   r	         6 6. 6r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )ChatWithRawResponse)r&  r  r  r;   )r   r  s   & r   r;   OpenAIWithRawResponse.chat      7"4<<#4#455r   c                   V ^8  d   QhRR/# )r   r   z$embeddings.EmbeddingsWithRawResponser   )r   s   "r   r   r	    s     B B@ Br   c                F    ^RI Hp V! V P                  P                  4      # )r+  )EmbeddingsWithRawResponse)r,  r  r  rI   )r   r  s   & r   rI    OpenAIWithRawResponse.embeddings  s    
 	D()@)@AAr   c                   V ^8  d   QhRR/# )r   r   zfiles.FilesWithRawResponser   )r   s   "r   r   r	    s     8 81 8r   c                F    ^RI Hp V! V P                  P                  4      # )r0  )FilesWithRawResponse)r1  r"  r  r?   )r   r"  s   & r   r?   OpenAIWithRawResponse.files  s    
 	:#DLL$6$677r   c                   V ^8  d   QhRR/# )r   r   zimages.ImagesWithRawResponser   )r   s   "r   r   r	         : :4 :r   c                F    ^RI Hp V! V P                  P                  4      # )r6  )ImagesWithRawResponse)r7  r'  r  r@   )r   r'  s   & r   r@   OpenAIWithRawResponse.images       	<$T\\%8%899r   c                   V ^8  d   QhRR/# )r   r   z@content_provenance_checks.ContentProvenanceChecksWithRawResponser   )r   s   "r   r   r	  	  s     ^ ^+k ^r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )&ContentProvenanceChecksWithRawResponse)r<  r,  r  rO   )r   r,  s   & r   rO   /OpenAIWithRawResponse.content_provenance_checks  s    _5dll6\6\]]r   c                   V ^8  d   QhRR/# )r   r   zaudio.AudioWithRawResponser   )r   s   "r   r   r	         8 81 8r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AudioWithRawResponse)rA  r1  r  r=   )r   r1  s   & r   r=   OpenAIWithRawResponse.audio      9#DLL$6$677r   c                   V ^8  d   QhRR/# )r   r   z&moderations.ModerationsWithRawResponser   )r   s   "r   r   r	    r  r   c                F    ^RI Hp V! V P                  P                  4      # )rF  )ModerationsWithRawResponse)rG  r6  r  rL   )r   r6  s   & r   rL   !OpenAIWithRawResponse.moderations  r  r   c                   V ^8  d   QhRR/# )r   r   zmodels.ModelsWithRawResponser   )r   s   "r   r   r	    r%  r   c                F    ^RI Hp V! V P                  P                  4      # )rK  )ModelsWithRawResponse)rL  r:  r  rA   )r   r:  s   & r   rA   OpenAIWithRawResponse.models  r)  r   c                   V ^8  d   QhRR/# )r   r   z%fine_tuning.FineTuningWithRawResponser   )r   s   "r   r   r	  %  s     C CB Cr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )FineTuningWithRawResponse)rP  r>  r  rK   )r   r>  s   & r   rK   !OpenAIWithRawResponse.fine_tuning$  s    D()A)ABBr   c                   V ^8  d   QhRR/# )r   r   z)vector_stores.VectorStoresWithRawResponser   )r   s   "r   r   r	  +  s     G GH Gr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )VectorStoresWithRawResponse)rT  rB  r  rN   )r   rB  s   & r   rN   #OpenAIWithRawResponse.vector_stores*  s    H*4<<+E+EFFr   c                   V ^8  d   QhRR/# )r   r   zbeta.BetaWithRawResponser   )r   s   "r   r   r	  1  r  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )BetaWithRawResponse)r_  rF  r  r:   )r   rF  s   & r   r:   OpenAIWithRawResponse.beta0  r  r   c                   V ^8  d   QhRR/# )r   r   zbatches.BatchesWithRawResponser   )r   s   "r   r   r	  7       < <7 <r   c                F    ^RI Hp V! V P                  P                  4      # )rd  )BatchesWithRawResponse)re  rK  r  rD   )r   rK  s   & r   rD   OpenAIWithRawResponse.batches6       	>%dll&:&:;;r   c                   V ^8  d   QhRR/# )r   r   zuploads.UploadsWithRawResponser   )r   s   "r   r   r	  >  rI  r   c                F    ^RI Hp V! V P                  P                  4      # )rj  )UploadsWithRawResponse)rk  rP  r  rE   )r   rP  s   & r   rE   OpenAIWithRawResponse.uploads=  rM  r   c                   V ^8  d   QhRR/# )r   r   zadmin.AdminWithRawResponser   )r   s   "r   r   r	  E  r/  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AdminWithRawResponse)ro  rT  r  r<   )r   rT  s   & r   r<   OpenAIWithRawResponse.adminD  r3  r   c                   V ^8  d   QhRR/# )r   r   z"responses.ResponsesWithRawResponser   )r   s   "r   r   r	  K  s     @ @= @r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )ResponsesWithRawResponse)rs  rX  r  rG   )r   rX  s   & r   rG   OpenAIWithRawResponse.responsesJ  s    A'(>(>??r   c                   V ^8  d   QhRR/# )r   r   z realtime.RealtimeWithRawResponser   )r   s   "r   r   r	  Q  s     > >: >r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )RealtimeWithRawResponse)rw  r\  r  rF   )r   r\  s   & r   rF   OpenAIWithRawResponse.realtimeP  s    ?&t||'<'<==r   c                   V ^8  d   QhRR/# )r   r   z*conversations.ConversationsWithRawResponser   )r   s   "r   r   r	  W  s     H HI Hr   c                F    ^RI Hp V! V P                  P                  4      # )r{  )ConversationsWithRawResponse)r|  r`  r  rM   )r   r`  s   & r   rM   #OpenAIWithRawResponse.conversationsV  s     	J+DLL,F,FGGr   c                   V ^8  d   QhRR/# )r   r   zevals.EvalsWithRawResponser   )r   s   "r   r   r	  ^  s     8 81 8r   c                F    ^RI Hp V! V P                  P                  4      # )r  )EvalsWithRawResponse)r  rd  r  r>   )r   rd  s   & r   r>   OpenAIWithRawResponse.evals]  s     	:#DLL$6$677r   c                   V ^8  d   QhRR/# )r   r   z$containers.ContainersWithRawResponser   )r   s   "r   r   r	  e  s     B B@ Br   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )ContainersWithRawResponse)r  rh  r  rH   )r   rh  s   & r   rH    OpenAIWithRawResponse.containersd  s    C()@)@AAr   c                   V ^8  d   QhRR/# )r   r   zskills.SkillsWithRawResponser   )r   s   "r   r   r	  k       : :4 :r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )SkillsWithRawResponse)r  rm  r  rB   )r   rm  s   & r   rB   OpenAIWithRawResponse.skillsj      ;$T\\%8%899r   c                   V ^8  d   QhRR/# )r   r   zvideos.VideosWithRawResponser   )r   s   "r   r   r	  q  rk  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )VideosWithRawResponse)r  rr  r  rC   )r   rr  s   & r   rC   OpenAIWithRawResponse.videosp  ro  r   r  Nr^  r_  r`  ra  rb  r
  r   rJ   r;   rI   r?   r@   rO   r=   rL   rA   rK   rN   r:   rD   rE   r<   rG   rF   rM   r>   rH   rB   rC   rf  r   r   r   r  r    s   O D D 6 6
 B B 8 8 : : ^ ^
 8 8
 D D : : C C
 G G
 6 6
 < < < < 8 8
 @ @
 > >
 H H 8 8 B B
 : :
 : :r   r  c                     ] tR tRt$ R]R&   R R lt]R R l4       t]R R	 l4       t]R
 R l4       t	]R R l4       t
]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R  R! l4       t]R" R# l4       t]R$ R% l4       t]R& R' l4       t]R( R) l4       t]R* R+ l4       t]R, R- l4       t]R. R/ l4       t]R0 R1 l4       tR2tR3# )4r  iw  r   r  c                    V ^8  d   QhRRRR/# r   r  r   r   r   r   )r   s   "r   r   'AsyncOpenAIWithRawResponse.__annotate__z        { t r   c                	    Wn         R # r   r  r  s   &&r   r
  #AsyncOpenAIWithRawResponse.__init__z  r  r   c                   V ^8  d   QhRR/# )r   r   z+completions.AsyncCompletionsWithRawResponser   )r   s   "r   r   rx  ~       I IH Ir   c                F    ^RI Hp V! V P                  P                  4      # )r  )AsyncCompletionsWithRawResponse)r  r  r  rJ   )r   r  s   & r   rJ   &AsyncOpenAIWithRawResponse.completions}      
 	K.t||/G/GHHr   c                   V ^8  d   QhRR/# )r   r   zchat.AsyncChatWithRawResponser   )r   s   "r   r   rx         ; ;3 ;r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncChatWithRawResponse)r&  r  r  r;   )r   r  s   & r   r;   AsyncOpenAIWithRawResponse.chat      <'(9(9::r   c                   V ^8  d   QhRR/# )r   r   z)embeddings.AsyncEmbeddingsWithRawResponser   )r   s   "r   r   rx    s     G GE Gr   c                F    ^RI Hp V! V P                  P                  4      # )r+  )AsyncEmbeddingsWithRawResponse)r,  r  r  rI   )r   r  s   & r   rI   %AsyncOpenAIWithRawResponse.embeddings  s    
 	I-dll.E.EFFr   c                   V ^8  d   QhRR/# )r   r   zfiles.AsyncFilesWithRawResponser   )r   s   "r   r   rx    s     = =6 =r   c                F    ^RI Hp V! V P                  P                  4      # )r0  )AsyncFilesWithRawResponse)r1  r  r  r?   )r   r  s   & r   r?    AsyncOpenAIWithRawResponse.files  s    
 	?(););<<r   c                   V ^8  d   QhRR/# )r   r   z!images.AsyncImagesWithRawResponser   )r   s   "r   r   rx         ? ?9 ?r   c                F    ^RI Hp V! V P                  P                  4      # )r6  )AsyncImagesWithRawResponse)r7  r  r  r@   )r   r  s   & r   r@   !AsyncOpenAIWithRawResponse.images       	A)$,,*=*=>>r   c                   V ^8  d   QhRR/# )r   r   zEcontent_provenance_checks.AsyncContentProvenanceChecksWithRawResponser   )r   s   "r   r   rx    s     c c+p cr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )+AsyncContentProvenanceChecksWithRawResponse)r<  r  r  rO   )r   r  s   & r   rO   4AsyncOpenAIWithRawResponse.content_provenance_checks  s    d:4<<;a;abbr   c                   V ^8  d   QhRR/# )r   r   zaudio.AsyncAudioWithRawResponser   )r   s   "r   r   rx         = =6 =r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncAudioWithRawResponse)rA  r  r  r=   )r   r  s   & r   r=    AsyncOpenAIWithRawResponse.audio      >(););<<r   c                   V ^8  d   QhRR/# )r   r   z+moderations.AsyncModerationsWithRawResponser   )r   s   "r   r   rx    r}  r   c                F    ^RI Hp V! V P                  P                  4      # )rF  )AsyncModerationsWithRawResponse)rG  r  r  rL   )r   r  s   & r   rL   &AsyncOpenAIWithRawResponse.moderations  r  r   c                   V ^8  d   QhRR/# )r   r   z!models.AsyncModelsWithRawResponser   )r   s   "r   r   rx    r  r   c                F    ^RI Hp V! V P                  P                  4      # )rK  )AsyncModelsWithRawResponse)rL  r  r  rA   )r   r  s   & r   rA   !AsyncOpenAIWithRawResponse.models  r  r   c                   V ^8  d   QhRR/# )r   r   z*fine_tuning.AsyncFineTuningWithRawResponser   )r   s   "r   r   rx    s     H HG Hr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncFineTuningWithRawResponse)rP  r  r  rK   )r   r  s   & r   rK   &AsyncOpenAIWithRawResponse.fine_tuning  s    I-dll.F.FGGr   c                   V ^8  d   QhRR/# )r   r   z.vector_stores.AsyncVectorStoresWithRawResponser   )r   s   "r   r   rx    s     L LM Lr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  ) AsyncVectorStoresWithRawResponse)rT  r  r  rN   )r   r  s   & r   rN   (AsyncOpenAIWithRawResponse.vector_stores  s    M/0J0JKKr   c                   V ^8  d   QhRR/# )r   r   zbeta.AsyncBetaWithRawResponser   )r   s   "r   r   rx    r  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncBetaWithRawResponse)r_  r  r  r:   )r   r  s   & r   r:   AsyncOpenAIWithRawResponse.beta  r  r   c                   V ^8  d   QhRR/# )r   r   z#batches.AsyncBatchesWithRawResponser   )r   s   "r   r   rx         A A< Ar   c                F    ^RI Hp V! V P                  P                  4      # )rd  )AsyncBatchesWithRawResponse)re  r  r  rD   )r   r  s   & r   rD   "AsyncOpenAIWithRawResponse.batches       	C*4<<+?+?@@r   c                   V ^8  d   QhRR/# )r   r   z#uploads.AsyncUploadsWithRawResponser   )r   s   "r   r   rx    r  r   c                F    ^RI Hp V! V P                  P                  4      # )rj  )AsyncUploadsWithRawResponse)rk  r  r  rE   )r   r  s   & r   rE   "AsyncOpenAIWithRawResponse.uploads  r  r   c                   V ^8  d   QhRR/# )r   r   zadmin.AsyncAdminWithRawResponser   )r   s   "r   r   rx    r  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncAdminWithRawResponse)ro  r  r  r<   )r   r  s   & r   r<    AsyncOpenAIWithRawResponse.admin  r  r   c                   V ^8  d   QhRR/# )r   r   z'responses.AsyncResponsesWithRawResponser   )r   s   "r   r   rx    s     E EB Er   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncResponsesWithRawResponse)rs  r  r  rG   )r   r  s   & r   rG   $AsyncOpenAIWithRawResponse.responses  s    F,T\\-C-CDDr   c                   V ^8  d   QhRR/# )r   r   z%realtime.AsyncRealtimeWithRawResponser   )r   s   "r   r   rx    s     C C? Cr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncRealtimeWithRawResponse)rw  r  r  rF   )r   r  s   & r   rF   #AsyncOpenAIWithRawResponse.realtime  s    D+DLL,A,ABBr   c                   V ^8  d   QhRR/# )r   r   z/conversations.AsyncConversationsWithRawResponser   )r   s   "r   r   rx    s     M MN Mr   c                F    ^RI Hp V! V P                  P                  4      # )r{  )!AsyncConversationsWithRawResponse)r|  r  r  rM   )r   r  s   & r   rM   (AsyncOpenAIWithRawResponse.conversations  s     	O01K1KLLr   c                   V ^8  d   QhRR/# )r   r   zevals.AsyncEvalsWithRawResponser   )r   s   "r   r   rx    s     = =6 =r   c                F    ^RI Hp V! V P                  P                  4      # )r  )AsyncEvalsWithRawResponse)r  r  r  r>   )r   r  s   & r   r>    AsyncOpenAIWithRawResponse.evals  s     	?(););<<r   c                   V ^8  d   QhRR/# )r   r   z)containers.AsyncContainersWithRawResponser   )r   s   "r   r   rx    s     G GE Gr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncContainersWithRawResponse)r  r  r  rH   )r   r  s   & r   rH   %AsyncOpenAIWithRawResponse.containers  s    H-dll.E.EFFr   c                   V ^8  d   QhRR/# )r   r   z!skills.AsyncSkillsWithRawResponser   )r   s   "r   r   rx         ? ?9 ?r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncSkillsWithRawResponse)r  r  r  rB   )r   r  s   & r   rB   !AsyncOpenAIWithRawResponse.skills      @)$,,*=*=>>r   c                   V ^8  d   QhRR/# )r   r   z!videos.AsyncVideosWithRawResponser   )r   s   "r   r   rx    r  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncVideosWithRawResponse)r  r  r  rC   )r   r  s   & r   rC   !AsyncOpenAIWithRawResponse.videos  r  r   r  Nrt  r   r   r   r  r  w  s    I I ; ;
 G G = = ? ? c c
 = =
 I I ? ? H H
 L L
 ; ;
 A A A A = =
 E E
 C C
 M M = = G G
 ? ?
 ? ?r   r  c                     ] tR tRt$ R]R&   R R lt]R R l4       t]R R	 l4       t]R
 R l4       t	]R R l4       t
]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R  R! l4       t]R" R# l4       t]R$ R% l4       t]R& R' l4       t]R( R) l4       t]R* R+ l4       t]R, R- l4       t]R. R/ l4       t]R0 R1 l4       tR2tR3# )4r  i  r~   r  c                    V ^8  d   QhRRRR/# r  r   )r   s   "r   r   'OpenAIWithStreamedResponse.__annotate__  r
  r   c                	    Wn         R # r   r  r  s   &&r   r
  #OpenAIWithStreamedResponse.__init__  r  r   c                   V ^8  d   QhRR/# )r   r   z,completions.CompletionsWithStreamingResponser   )r   s   "r   r   r         J JI Jr   c                F    ^RI Hp V! V P                  P                  4      # )r  ) CompletionsWithStreamingResponse)r  r  r  rJ   )r   r  s   & r   rJ   &OpenAIWithStreamedResponse.completions      
 	L/0H0HIIr   c                   V ^8  d   QhRR/# )r   r   zchat.ChatWithStreamingResponser   )r   s   "r   r   r  $       < <4 <r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )ChatWithStreamingResponse)r&  r  r  r;   )r   r  s   & r   r;   OpenAIWithStreamedResponse.chat#      =():):;;r   c                   V ^8  d   QhRR/# )r   r   z*embeddings.EmbeddingsWithStreamingResponser   )r   s   "r   r   r  *  s     H HF Hr   c                F    ^RI Hp V! V P                  P                  4      # )r+  )EmbeddingsWithStreamingResponse)r,  r  r  rI   )r   r  s   & r   rI   %OpenAIWithStreamedResponse.embeddings)  s    
 	J.t||/F/FGGr   c                   V ^8  d   QhRR/# )r   r   z files.FilesWithStreamingResponser   )r   s   "r   r   r  3  s     > >7 >r   c                F    ^RI Hp V! V P                  P                  4      # )r0  )FilesWithStreamingResponse)r1  r  r  r?   )r   r  s   & r   r?    OpenAIWithStreamedResponse.files2  s    
 	@)$,,*<*<==r   c                   V ^8  d   QhRR/# )r   r   z"images.ImagesWithStreamingResponser   )r   s   "r   r   r  <       @ @: @r   c                F    ^RI Hp V! V P                  P                  4      # )r6  )ImagesWithStreamingResponse)r7  r  r  r@   )r   r  s   & r   r@   !OpenAIWithStreamedResponse.images;       	B*4<<+>+>??r   c                   V ^8  d   QhRR/# )r   r   zFcontent_provenance_checks.ContentProvenanceChecksWithStreamingResponser   )r   s   "r   r   r  C  s     d d+q dr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  ),ContentProvenanceChecksWithStreamingResponse)r<  r  r  rO   )r   r  s   & r   rO   4OpenAIWithStreamedResponse.content_provenance_checksB  s    e;DLL<b<bccr   c                   V ^8  d   QhRR/# )r   r   z audio.AudioWithStreamingResponser   )r   s   "r   r   r  I       > >7 >r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AudioWithStreamingResponse)rA  r  r  r=   )r   r  s   & r   r=    OpenAIWithStreamedResponse.audioH      ?)$,,*<*<==r   c                   V ^8  d   QhRR/# )r   r   z,moderations.ModerationsWithStreamingResponser   )r   s   "r   r   r  O  r  r   c                F    ^RI Hp V! V P                  P                  4      # )rF  ) ModerationsWithStreamingResponse)rG  r  r  rL   )r   r  s   & r   rL   &OpenAIWithStreamedResponse.moderationsN  r  r   c                   V ^8  d   QhRR/# )r   r   z"models.ModelsWithStreamingResponser   )r   s   "r   r   r  X  r  r   c                F    ^RI Hp V! V P                  P                  4      # )rK  )ModelsWithStreamingResponse)rL  r  r  rA   )r   r  s   & r   rA   !OpenAIWithStreamedResponse.modelsW  r  r   c                   V ^8  d   QhRR/# )r   r   z+fine_tuning.FineTuningWithStreamingResponser   )r   s   "r   r   r  _  s     I IH Ir   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )FineTuningWithStreamingResponse)rP  r  r  rK   )r   r  s   & r   rK   &OpenAIWithStreamedResponse.fine_tuning^  s    J.t||/G/GHHr   c                   V ^8  d   QhRR/# )r   r   z/vector_stores.VectorStoresWithStreamingResponser   )r   s   "r   r   r  e  s     M MN Mr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )!VectorStoresWithStreamingResponse)rT  r  r  rN   )r   r  s   & r   rN   (OpenAIWithStreamedResponse.vector_storesd  s    N01K1KLLr   c                   V ^8  d   QhRR/# )r   r   zbeta.BetaWithStreamingResponser   )r   s   "r   r   r  k  r  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )BetaWithStreamingResponse)r_  r  r  r:   )r   r  s   & r   r:   OpenAIWithStreamedResponse.betaj  r  r   c                   V ^8  d   QhRR/# )r   r   z$batches.BatchesWithStreamingResponser   )r   s   "r   r   r  q       B B= Br   c                F    ^RI Hp V! V P                  P                  4      # )rd  )BatchesWithStreamingResponse)re  r   r  rD   )r   r   s   & r   rD   "OpenAIWithStreamedResponse.batchesp       	D+DLL,@,@AAr   c                   V ^8  d   QhRR/# )r   r   z$uploads.UploadsWithStreamingResponser   )r   s   "r   r   r  x  r  r   c                F    ^RI Hp V! V P                  P                  4      # )rj  )UploadsWithStreamingResponse)rk  r%  r  rE   )r   r%  s   & r   rE   "OpenAIWithStreamedResponse.uploadsw  r"  r   c                   V ^8  d   QhRR/# )r   r   z admin.AdminWithStreamingResponser   )r   s   "r   r   r    r  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AdminWithStreamingResponse)ro  r)  r  r<   )r   r)  s   & r   r<    OpenAIWithStreamedResponse.admin~  r  r   c                   V ^8  d   QhRR/# )r   r   z(responses.ResponsesWithStreamingResponser   )r   s   "r   r   r    s     F FC Fr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )ResponsesWithStreamingResponse)rs  r-  r  rG   )r   r-  s   & r   rG   $OpenAIWithStreamedResponse.responses  s    G-dll.D.DEEr   c                   V ^8  d   QhRR/# )r   r   z&realtime.RealtimeWithStreamingResponser   )r   s   "r   r   r    s     D D@ Dr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )RealtimeWithStreamingResponse)rw  r1  r  rF   )r   r1  s   & r   rF   #OpenAIWithStreamedResponse.realtime  s    E,T\\-B-BCCr   c                   V ^8  d   QhRR/# )r   r   z0conversations.ConversationsWithStreamingResponser   )r   s   "r   r   r    s     N NO Nr   c                F    ^RI Hp V! V P                  P                  4      # )r{  )"ConversationsWithStreamingResponse)r|  r5  r  rM   )r   r5  s   & r   rM   (OpenAIWithStreamedResponse.conversations  s     	P1$,,2L2LMMr   c                   V ^8  d   QhRR/# )r   r   z evals.EvalsWithStreamingResponser   )r   s   "r   r   r    s     > >7 >r   c                F    ^RI Hp V! V P                  P                  4      # )r  )EvalsWithStreamingResponse)r  r9  r  r>   )r   r9  s   & r   r>    OpenAIWithStreamedResponse.evals  s     	@)$,,*<*<==r   c                   V ^8  d   QhRR/# )r   r   z*containers.ContainersWithStreamingResponser   )r   s   "r   r   r    s     H HF Hr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )ContainersWithStreamingResponse)r  r=  r  rH   )r   r=  s   & r   rH   %OpenAIWithStreamedResponse.containers  s    I.t||/F/FGGr   c                   V ^8  d   QhRR/# )r   r   z"skills.SkillsWithStreamingResponser   )r   s   "r   r   r         @ @: @r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )SkillsWithStreamingResponse)r  rB  r  rB   )r   rB  s   & r   rB   !OpenAIWithStreamedResponse.skills      A*4<<+>+>??r   c                   V ^8  d   QhRR/# )r   r   z"videos.VideosWithStreamingResponser   )r   s   "r   r   r    r@  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )VideosWithStreamingResponse)r  rG  r  rC   )r   rG  s   & r   rC   !OpenAIWithStreamedResponse.videos  rD  r   r  Nrt  r   r   r   r  r    s   O J J < <
 H H > > @ @ d d
 > >
 J J @ @ I I
 M M
 < <
 B B B B > >
 F F
 D D
 N N > > H H
 @ @
 @ @r   r  c                     ] tR tRt$ R]R&   R R lt]R R l4       t]R R	 l4       t]R
 R l4       t	]R R l4       t
]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R R l4       t]R  R! l4       t]R" R# l4       t]R$ R% l4       t]R& R' l4       t]R( R) l4       t]R* R+ l4       t]R, R- l4       t]R. R/ l4       t]R0 R1 l4       tR2tR3# )4r  i  r   r  c                    V ^8  d   QhRRRR/# rw  r   )r   s   "r   r   ,AsyncOpenAIWithStreamedResponse.__annotate__  ry  r   c                	    Wn         R # r   r  r  s   &&r   r
  (AsyncOpenAIWithStreamedResponse.__init__  r  r   c                   V ^8  d   QhRR/# )r   r   z1completions.AsyncCompletionsWithStreamingResponser   )r   s   "r   r   rK         O ON Or   c                F    ^RI Hp V! V P                  P                  4      # )r  )%AsyncCompletionsWithStreamingResponse)r  rQ  r  rJ   )r   rQ  s   & r   rJ   +AsyncOpenAIWithStreamedResponse.completions      
 	Q4T\\5M5MNNr   c                   V ^8  d   QhRR/# )r   r   z#chat.AsyncChatWithStreamingResponser   )r   s   "r   r   rK         A A9 Ar   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncChatWithStreamingResponse)r&  rW  r  r;   )r   rW  s   & r   r;   $AsyncOpenAIWithStreamedResponse.chat      B-dll.?.?@@r   c                   V ^8  d   QhRR/# )r   r   z/embeddings.AsyncEmbeddingsWithStreamingResponser   )r   s   "r   r   rK    s     M MK Mr   c                F    ^RI Hp V! V P                  P                  4      # )r+  )$AsyncEmbeddingsWithStreamingResponse)r,  r\  r  rI   )r   r\  s   & r   rI   *AsyncOpenAIWithStreamedResponse.embeddings  s    
 	O3DLL4K4KLLr   c                   V ^8  d   QhRR/# )r   r   z%files.AsyncFilesWithStreamingResponser   )r   s   "r   r   rK    s     C C< Cr   c                F    ^RI Hp V! V P                  P                  4      # )r0  )AsyncFilesWithStreamingResponse)r1  r`  r  r?   )r   r`  s   & r   r?   %AsyncOpenAIWithStreamedResponse.files  s    
 	E.t||/A/ABBr   c                   V ^8  d   QhRR/# )r   r   z'images.AsyncImagesWithStreamingResponser   )r   s   "r   r   rK         E E? Er   c                F    ^RI Hp V! V P                  P                  4      # )r6  ) AsyncImagesWithStreamingResponse)r7  re  r  r@   )r   re  s   & r   r@   &AsyncOpenAIWithStreamedResponse.images       	G/0C0CDDr   c                   V ^8  d   QhRR/# )r   r   zKcontent_provenance_checks.AsyncContentProvenanceChecksWithStreamingResponser   )r   s   "r   r   rK    s     i i+v ir   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )1AsyncContentProvenanceChecksWithStreamingResponse)r<  rj  r  rO   )r   rj  s   & r   rO   9AsyncOpenAIWithStreamedResponse.content_provenance_checks  s    j@AgAghhr   c                   V ^8  d   QhRR/# )r   r   z%audio.AsyncAudioWithStreamingResponser   )r   s   "r   r   rK         C C< Cr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncAudioWithStreamingResponse)rA  ro  r  r=   )r   ro  s   & r   r=   %AsyncOpenAIWithStreamedResponse.audio      D.t||/A/ABBr   c                   V ^8  d   QhRR/# )r   r   z1moderations.AsyncModerationsWithStreamingResponser   )r   s   "r   r   rK    rO  r   c                F    ^RI Hp V! V P                  P                  4      # )rF  )%AsyncModerationsWithStreamingResponse)rG  rt  r  rL   )r   rt  s   & r   rL   +AsyncOpenAIWithStreamedResponse.moderations  rS  r   c                   V ^8  d   QhRR/# )r   r   z'models.AsyncModelsWithStreamingResponser   )r   s   "r   r   rK    rc  r   c                F    ^RI Hp V! V P                  P                  4      # )rK  ) AsyncModelsWithStreamingResponse)rL  rx  r  rA   )r   rx  s   & r   rA   &AsyncOpenAIWithStreamedResponse.models  rg  r   c                   V ^8  d   QhRR/# )r   r   z0fine_tuning.AsyncFineTuningWithStreamingResponser   )r   s   "r   r   rK    s     N NM Nr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )$AsyncFineTuningWithStreamingResponse)rP  r|  r  rK   )r   r|  s   & r   rK   +AsyncOpenAIWithStreamedResponse.fine_tuning  s    O3DLL4L4LMMr   c                   V ^8  d   QhRR/# )r   r   z4vector_stores.AsyncVectorStoresWithStreamingResponser   )r   s   "r   r   rK    s     R RS Rr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )&AsyncVectorStoresWithStreamingResponse)rT  r  r  rN   )r   r  s   & r   rN   -AsyncOpenAIWithStreamedResponse.vector_stores  s    S5dll6P6PQQr   c                   V ^8  d   QhRR/# )r   r   z#beta.AsyncBetaWithStreamingResponser   )r   s   "r   r   rK    rU  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncBetaWithStreamingResponse)r_  r  r  r:   )r   r  s   & r   r:   $AsyncOpenAIWithStreamedResponse.beta  rY  r   c                   V ^8  d   QhRR/# )r   r   z)batches.AsyncBatchesWithStreamingResponser   )r   s   "r   r   rK         G GB Gr   c                F    ^RI Hp V! V P                  P                  4      # )rd  )!AsyncBatchesWithStreamingResponse)re  r  r  rD   )r   r  s   & r   rD   'AsyncOpenAIWithStreamedResponse.batches       	I01E1EFFr   c                   V ^8  d   QhRR/# )r   r   z)uploads.AsyncUploadsWithStreamingResponser   )r   s   "r   r   rK    r  r   c                F    ^RI Hp V! V P                  P                  4      # )rj  )!AsyncUploadsWithStreamingResponse)rk  r  r  rE   )r   r  s   & r   rE   'AsyncOpenAIWithStreamedResponse.uploads  r  r   c                   V ^8  d   QhRR/# )r   r   z%admin.AsyncAdminWithStreamingResponser   )r   s   "r   r   rK    rm  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )AsyncAdminWithStreamingResponse)ro  r  r  r<   )r   r  s   & r   r<   %AsyncOpenAIWithStreamedResponse.admin  rq  r   c                   V ^8  d   QhRR/# )r   r   z-responses.AsyncResponsesWithStreamingResponser   )r   s   "r   r   rK  "  s     K KH Kr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )#AsyncResponsesWithStreamingResponse)rs  r  r  rG   )r   r  s   & r   rG   )AsyncOpenAIWithStreamedResponse.responses!  s    L24<<3I3IJJr   c                   V ^8  d   QhRR/# )r   r   z+realtime.AsyncRealtimeWithStreamingResponser   )r   s   "r   r   rK  (  s     I IE Ir   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )"AsyncRealtimeWithStreamingResponse)rw  r  r  rF   )r   r  s   & r   rF   (AsyncOpenAIWithStreamedResponse.realtime'  s    J1$,,2G2GHHr   c                   V ^8  d   QhRR/# )r   r   z5conversations.AsyncConversationsWithStreamingResponser   )r   s   "r   r   rK  .  s     S ST Sr   c                F    ^RI Hp V! V P                  P                  4      # )r{  )'AsyncConversationsWithStreamingResponse)r|  r  r  rM   )r   r  s   & r   rM   -AsyncOpenAIWithStreamedResponse.conversations-  s     	U6t||7Q7QRRr   c                   V ^8  d   QhRR/# )r   r   z%evals.AsyncEvalsWithStreamingResponser   )r   s   "r   r   rK  5  s     C C< Cr   c                F    ^RI Hp V! V P                  P                  4      # )r  )AsyncEvalsWithStreamingResponse)r  r  r  r>   )r   r  s   & r   r>   %AsyncOpenAIWithStreamedResponse.evals4  s     	E.t||/A/ABBr   c                   V ^8  d   QhRR/# )r   r   z/containers.AsyncContainersWithStreamingResponser   )r   s   "r   r   rK  <  s     M MK Mr   c                	F    ^RI Hp V! V P                  P                  4      # )r%  )$AsyncContainersWithStreamingResponse)r  r  r  rH   )r   r  s   & r   rH   *AsyncOpenAIWithStreamedResponse.containers;  s    N3DLL4K4KLLr   c                   V ^8  d   QhRR/# )r   r   z'skills.AsyncSkillsWithStreamingResponser   )r   s   "r   r   rK  B       E E? Er   c                	F    ^RI Hp V! V P                  P                  4      # )r%  ) AsyncSkillsWithStreamingResponse)r  r  r  rB   )r   r  s   & r   rB   &AsyncOpenAIWithStreamedResponse.skillsA      F/0C0CDDr   c                   V ^8  d   QhRR/# )r   r   z'videos.AsyncVideosWithStreamingResponser   )r   s   "r   r   rK  H  r  r   c                	F    ^RI Hp V! V P                  P                  4      # )r%  ) AsyncVideosWithStreamingResponse)r  r  r  rC   )r   r  s   & r   rC   &AsyncOpenAIWithStreamedResponse.videosG  r  r   r  Nrt  r   r   r   r  r    s    O O A A
 M M C C E E i i
 C C
 O O E E N N
 R R
 A A
 G G G G C C
 K K
 I I
 S S C C M M
 E E
 E Er   r  )r   r   r   r   r~   r   ClientAsyncClient)
__future__r   r  typingr   r   r   r   r   typing_extensionsr	   r
   r   r!  r   r   _qsr   authr   r   r   _typesr   r   r   r   r   r   r   r   r   _utilsr   r   r   r   _compatr   _httpx2r    r!   r"   _modelsr#   r$   _versionr%   r   r&   r'   r(   r)   
_streamingr*   r+   
auth._x509r,   r-   r.   r/   r0   r1   r2   r3   r4   _base_clientr5   r6   r7   _data_residencyr8   r9   	resourcesr:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   r1  rP   rQ   r7  rR   rS   rL  rT   rU   r  rV   rW   re  rX   rY   resources.beta.betarZ   r[   resources.chat.chatr\   r]   r,  r^   r_   resources.admin.adminr`   ra   resources.audio.audiorb   rc   r  rd   re   resources.evals.evalsrf   rg   rG  rh   ri   resources.skills.skillsrj   rk   resources.uploads.uploadsrl   rm   resources.realtime.realtimern   ro   resources.webhooks.webhooksrp   rq   resources.responses.responsesrr   rs   resources.containers.containersrt   ru   !resources.fine_tuning.fine_tuningrv   rw   r<  rx   ry   %resources.conversations.conversationsrz   r{   %resources.vector_stores.vector_storesr|   r}   __all__r   r   r   r~   r   r  r  r  r  r  r  r   r   r   <module>r     sc   # 	 C C 4 4    N N
 
 
  % W W 9 ! W W D   5 
 C     0 3555844A88D8D<@DDHLNjXV
v(@ %9
d
i
E] i
EXu
E. u
EpZ: Z:zZ? Z?zZ@ Z@zZE ZEz 
r   