
    AHjHM                   "A   U d dl mZ d dlZ ej                  dd        ej                  dd       d dlZd dlZd dlZ ej                  dd      dk(  r ej                          d d	l
mZmZmZmZmZmZmZmZmZmZmZmZ d d
lmZ d dlmZmZmZmZmZmZ d dl Z d dl!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m*Z+m,Z,m,Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZD d dlEZE ej                  dd      ZFer e        eeGedf   ZHg ZIdeJd<   g ZKdeJd<   g ZLdeJd<   g ZMdeJd<   g ZNdeJd<   ed   ZOdZPdeJd<   dZQdeJd<    eR eeO            ZSdeJd<   g ZTdeJd<   i ZUdeJd<   d ZVdeJd <   dZWd!eJd"<   dZXd#eJd$<   d%ZYd&eJd'<   d%ZZd&eJd(<   dZ[d#eJd)<   d%Z\d&eJd*<   d%Z]d&eJd+<   d%Z^d&eJd,<   dZ_d-eJd.<   g Z`d/eJd0<   g Zad/eJd1<   g Zbd/eJd2<   g Zcd3eJd4<   g Zdd3eJd5<   d%Zed&eJd6<   dZfd!eJd7<   d%Zgd8eJd9<   d%Zhd&eJd:<   d%Zid&eJd;<   d%Zjd&eJd<<   dZkd&eJd=<   d%ZldZmd>eJd?<   dZnd>eJd@<   dAZoeBZpdeJdB<    eq ej                  dCd%            Zr eq ej                  dDd%            Zs eq ej                  dEd%            Ztd8eJdF<   dAZudZvd>eJdG<   dZwd>eJdH<   dZxd>eJdI<   dZyd>eJdJ<   dZzd>eJdK<   dZ{d>eJdL<   dZ|d>eJdM<   dZ}d>eJdN<   dZ~d>eJdO<   dZd>eJdP<   dZd>eJdQ<   dZd>eJdR<   dZd>eJdS<   dZd>eJdT<   dZd>eJdU<   dZd>eJdV<   dZd>eJdW<   dZd>eJdX<   dZd>eJdY<   dZd>eJdZ<   dZd>eJd[<   dZd>eJd\<   dZd>eJd]<   dZd>eJd^<   dZd>eJd_<   dZd>eJd`<   dZd>eJda<   dZd>eJdb<   dZd>eJdc<   dZd>eJdd<   dZd>eJde<   dZd>eJdf<   dZd>eJdg<   dZd>eJdh<   dZd>eJdi<   dZd>eJdj<   dZd>eJdk<   dZd>eJdl<   dZd>eJdm<   dZd>eJdn<   dZd>eJdo<   g dpg dqdrZdseJdt<   d%Zd8eJdu<   d%Zd8eJdv<   dAZdweJdx<   dZd>eJdy<   dZd>eJdz<   dZd>eJd{<   d%Zd8eJd|<   d%Zd8eJd}<   d%Zd8eJd~<   d%Zd8eJd<   d%Zd8eJd<   dZd!eJd<   deJd<   d%Zd8eJd<   d%Zd&eJd<   dZdeJd<   dZdZdZdeJd<   g ZdeJd<   dZd>eJd<   dZd>eJd<   dZd>eJd<   dZdeJd<   dZd>eJd<   dZdeJd<   dZdeJd<   dZdeJd<   i ZdeJd<   d%Zd8eJd<   d%Zd8eJd<   d dlmZ i ZdeJd<   d%Zd8eJd<   d%Zd8eJd<   d%Zd8eJd<   d%Zd8eJd<   dAZd8eJd<   dZd&eJd<   d%Zd8eJd<   d%Zd8eJd<   d%Zd8eJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   i ZdeJd<   dZdeJd<   dZdeJd<   dZd>eJd<   eCZdeJd<   d%Zd8eJd<   dZi ZdeJd<   d%Zd8eJd<   dZdeJd<   dZdeJd<   dZdeJd<    ej                  ddī      ZdeJd<    ej                  ddȫ      ZdeJd<    ej                  dd˫      ZdeJd<   d%ZdZd>eJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZdeJd<   dZd>eJd<   dZdeJd<   dZdeJd<   dZd>eJd<   dZd&eJd<   dZd&eJd<   dZd&eJd<   g ZdeJd<   g ZdeJd<   dZdeJd<   d%Zd8eJd<   d%Zd8eJd<   d%Zd8eJd<   dZd!eJd<   dZd!eJd<   dZd!eJd<   i ZdeJd<   dZdeJd<   erdZ deJd<   dAZd8eJd<   d%Zd8eJd<   d%Zd8eJd<   d%Zd8eJd<   d%Zd8eJd <   d%Zd8eJd<   d%Zd8eJd<   dZd#eJd<   dZ	d#eJd<   dZ
deJd<   dZdeJd<   dZdeJd<   dZdeJd<   d	ZdeJd
<   dAZd8eJd<   dZd#eJd<   dZdeJd<   dZd>eJd<   dZdeJd<   d%Zd8eJd<   d dlmZ  eeڐ      Zi ZdeJd<   i ZdeJd<   i ZdeJd<   d%Z G d dej8                        Z e       Zd ZdZ d>eJd<   dZ!dZ"d>eJd<   dZ#dZ$dZ%dZ&deJd <   d d!l
m'Z'  e(       Z)d"eJd#<    e(       Z*d"eJd$<    e(       Z+d"eJd%<    e(       Z,d"eJd&<    e(       Z-d"eJd'<    e(       Z.d"eJd(<    e(       Z/d"eJd)<    e(       Z0d"eJd*<    e(       Z1d"eJd+<    e(       Z2d"eJd,<    e(       Z3d"eJd-<    e(       Z4d"eJd.<    e(       Z5d"eJd/<    e(       Z6d"eJd0<    e(       Z7d"eJd1<    e(       Z8d"eJd2<    e(       Z9d"eJd3<    e(       Z:d"eJd4<    e(       Z;d"eJd5<    e(       Z<d"eJd6<    e(       Z=d"eJd7<    e(       Z>d"eJd8<    e(       Z?d"eJd9<    e(       Z@d"eJd:<    e(       ZAd"eJd;<    e(       ZBd"eJd<<    e(       ZCd"eJd=<    e(       ZDd"eJd><    e(       ZEd"eJd?<    e(       ZFd"eJd@<    e(       ZGd"eJdA<    e(       ZHd"eJdB<    e(eA      ZId"eJdC<    e(       ZJd"eJdD<    e(       ZKd"eJdE<    e(       ZLd"eJdF<    e(       ZMd"eJdG<    e(       ZNd"eJdH<    e(       ZOd"eJdI<    e(       ZPd"eJdJ<    e(       ZQd"eJdK<    e(       ZRd"eJdL<    e(       ZSd"eJdM<    e(       ZTd"eJdN<    e(       ZUd"eJdO<    e(       ZVd"eJdP<    e(       ZWd"eJdQ<    e(       ZXd"eJdR<    e(       ZYd"eJdS<    e(       ZZd"eJdT<    e(       Z[d"eJdU<    e(       Z\d"eJdV<    e(       Z]d"eJdW<    e(       Z^d"eJdX<    e(       Z_d"eJdY<    e(       Z`d"eJdZ<    e(       Zad"eJd[<    e(       Zbd"eJd\<    e(       Zcd"eJd]<    e(       Zdd"eJd^<    e(       Zed"eJd_<    e(       Zfd"eJd`<    e(       Zgd"eJda<    e(       Zhd"eJdb<    e(       Zid"eJdc<    e(       Zjd"eJdd<    e(       Zkd"eJde<    e(       Zld"eJdf<    e(       Zmd"eJdg<    e(       Znd"eJdh<    e(       Zod"eJdi<    e(       Zpd"eJdj<    e(       Zqd"eJdk<    e(       Zrd"eJdl<    e(       Zsd"eJdm<    e(       Ztd"eJdn<    e(       Zud"eJdo<    e(       Zvd"eJdp<    e(       Zwd"eJdq<    e(       Zxd"eJdr<    e(       Zyd"eJds<    e(       Zzd"eJdt<    e(       Z{d"eJdu<    e(       Z|d"eJdv<    e(       Z}d"eJdw<    e(       Z~d"eJdx<    e(       Zd"eJdy<    e(       Zd"eJdz<    e(       Zd"eJd{<    e(e8      Zd"eJd|<    e(       Zd"eJd}<    e(       Zd"eJd~<    e(       Zd"eJd<    e(       Zd"eJd<    e(       Zd"eJd<    e(       Zd"eJd<    e(       Zd"eJd<    e(       Zd"eJd<    e(       Zd"eJd<    e(       Zd"eJd<    e(       Zd"eJd<    e(       Zd"eJd<    e(       Zd"eJd<   djdZdjdZdkdldZ e        dddddddZddiZdgZdgZdgZ eRe)e*z  e+z  e,z  e/z   e(e2      z  e0z  e1z   e(e4      z  e4z  e8z  eDz  eEz   e(e6      z   e(e7      z  eGz  eFz   e(e      z  eHz  eMz  eNz   e(e      z  eTz  e2z  eOz  ePz  e.z  eQz  eRz  eJz  eSz  eUz  eWz  eXz  eZz  e[z  e\z  e]z  e_z  e`z  eaz  ebz  edz  eez  efz  egz  ehz  ecz  ejz  ekz  eVz  elz  emz  enz  e^z  eoz  esz  etz  euz  evz  ewz  exz  eyz  ezz  e|z  e}z  e~z  ez  eYz  ez  ez  ez  ez  ez  ez  ez   e(e3      z        Z e(e      Zi de)e*z  de*de+e,z  de,de/de2de4de6de7de0dede1de4e8z  e;z  e3z  e2z  e=z  eAz  eBz  eCz  deDdeHeIz  dedei dedeMdeNdedeOdePdeKeLz  deGde.deQdeRdeJdeSdeTde-deUdeWi deXdeZde[de\deFde]de_de`deaecz  dÐebdĐecdŐeddƐeedǐefdȐegdɐeheiz  dʐeji dːepeqz  d̐erd͐ekdΐeVdϐeldАemdѐendҐeodӐe^dԐesdՐetd֐eYdאeudؐevdِewdڐexdېeyi dܐezdݐe{dސe|dߐe}de~dedededeez  dede3dedededededeeeedZdseJd<   dddddddddddddddZdseJd<   e; e(e<      z   e(e=      z  e:z  eLz  eqz  eiz  ez  ZddgZdgZd dlmZ  e       Zd eJd<   ddlmZ ddlmZ ddlmZ ddlmZmZ ddlmZ ddlmZ dd	lmZ dd
lmZ  e       ZddlmZ ddlmZ ddlmZ d dlmZ ddl ddlmZmZmZmZmZmÐZÐmĐZĐmŐZ ddlƐmǐZǐmȐZȐmɐZɐmʐZʐmːZːm̐Z̐m͐Z͐mΐZΐmϐZϐmАZАmѐZѐmҐZҐmӐZӐmԐZԐmՐZՐm֐Z֐mאZאmؐZؐmِZِmڐZ ddlۭ ddlܐmݐZ ddlސmߐZߐmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ ddlmZ ddlmZ ddlmZ ddl ddl ddl ddl ddl  ddl ddl ddl ddlmZ ddlmZmZmZmZmZmÐZÐmĐZĐmŐZ ddl ddl ddl ddl	 ddl
mZmZmZ ddlmZ ddl ddl ddlmZmZmZmZmZmZmZm Z!mRZ"m#Z$m%Z&m'Z( ddl) ddl*m+Z+ d dl,m-Z. g Z/deJd<   ddl0m1Z1m2Z2 dZ3deJd <   dZ4d!eJd"<   dd#lm5Z5 dd$l6m7Z7 g Z8d%eJd&<   g Z9deJd'<   dZ:d&eJd(<   d%Z;d8eJd)<   d d*l<m=Z= dd+l>m?Z?m@Z@ dd,lAmBZB daCd-eJd-<   dmd.ZDdaEd-eJd/<   dmd0ZFe
rd d1lmGZH d d2lmIZI d d3lJmKZKmLZL d d4lMmNZN dd5lOmPZP dd6lQmRZR dd7lSmTZT dd8lUmVZV dd9lWmXZX dd:lYmZZZ dd;l[m\Z\ dd<l]m^Z^ dd=l_m`Z` dd>lambZb dd?lcmdZd dd@lemfZf ddAlgmhZh ddBlimjZj ddClkmlZl ddDlmmnZn ddElompZp ddFlqmrZr ddGlsmtZt ddHlumvZv ddIlumwZw ddJlumxZx ddKlymzZz ddLl{m|Z| ddMl}m~Z~ ddNlmZ ddOlmZ ddPlmZ ddQlmZ ddRlmZ ddSlmZ ddTlmZ ddUlmZ ddVlmZ ddWlmZ ddXlmZ ddYlmZ ddZlmZ dd[lmZ dd\lmZ dd]lmZ dd^lmZ dd_lmZ dd`lmZ ddalmZ ddblmZ ddclmZ dddlmZ ddelmZ ddflmZ ddglmZ ddhlmZ ddilmZ ddjlmZ ddklmZ ddllmZ ddmlmZ ddnlmZ ddolmZ ddplmZ ddqlÐmĐZ ddrlŐmƐZ ddslǐmȐZ ddtlɐmʐZ ddulːm̐Z ddvl͐mΐZ ddwlϐmАZ ddxlѐmҐZ ddylӐmԐZ ddzlՐm֐Z dd{lאmؐZ dd|lِmڐZ dd}lېmܐZ dd~lݐmސZ ddlߐmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z mZ ddlmZ ddlmZ ddlmZ d dlm	Z	 ddl
mZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddl m!Z! ddl"m#Z# ddl$m%Z% ddl&m'Z' ddl(m)Z) ddl*m+Z+ ddl,m-Z- ddl.m/Z/ ddl0m1Z1 ddl2m3Z3m3Z4 ddl5m6Z6 ddl7m8Z8 ddl9m:Z: ddl;m<Z< ddl=m>Z> ddl?m@Z@ ddlAmBZB ddlCmDZD ddlEmFZF ddlGmHZH deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   ddlImJZK ddlLmMZN ddlOmPZQ ddlRmSZT ddÐlUmVZW ddĐlXmYZZ ddŐl[m\Z] ddƐl^m_Z` ddǐlambZc ddȐldmeZf ddɐlgmhZi ddʐljmkZl ddːlmmnZo dd̐lpmqZr dd͐lsmtZu ddplmZv deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   deJd<   ddlwmxZx ddlymzZz ddl{m|Z| ddl}m~Z~ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZmZ ddlmZ ddlmZ ddlmZ dd lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmÐZ ddlĐmŐZ ddlƐmǐZ ddlȐmɐZ ddlʐmːZ ddl̐m͐Z ddlΐmϐZ ddlАmѐZ ddlҐmӐZ ddlԐmՐZ ddl֐mאZ ddlؐmِZ ddlڐmېZ d d lܐmݐZ d d!lސmߐZ d d"lmZmZmZmZ d d#lmZ d d$lmZmZ d%eJd&<   d'eJd(<   d)eJd*<   d)eJd+<   d,eJd-<   d.eJd/<   d.eJd0<   d.eJd1<   d.eJd2<   d.eJd3<   d.eJd4<   d.eJd5<   d.eJd6<   d.eJd7<   d.eJd8<   d9eJd:<   d;eJd<<   d=eJd><   d?eJd@<   dAeJdB<   d.eJdC<   d?eJdD<   dEeJdF<   d,eJdG<   d'eJdH<   d.eJdI<   dJeJdK<   dLeJdM<   d,eJdN<   dOeJdP<   dEeJdQ<   d?eJdR<   dSeJdT<   dUeJdV<   dWeJdX<   d dYlMmZ dZeJd[<   d d\lmZ d d]lmZmZ d d^lmZ d d_lmZ d d`lmZ daeJdb<   d dlmZ dceJdd<   d%a ej                  dedf      j                         dgv rddhlmZ dndiZy(o      )annotationsNignorez%.*conflict with protected namespace.*)messagez:.*Accessing the.*attribute on the instance is deprecated.*LITELLM_MODEDEV)CallableListOptionalDictUnionAnyLiteralget_argsTYPE_CHECKINGTupleoverloadType)DatadogInitParams)set_verbose_turn_on_debugverbose_logger	json_logs_turn_on_json	log_level)#DEFAULT_BATCH_SIZEDEFAULT_FLUSH_INTERVAL_SECONDSROUTER_MAX_FALLBACKSDEFAULT_MAX_RETRIES!DEFAULT_REPLICATE_POLLING_RETRIES'DEFAULT_REPLICATE_POLLING_DELAY_SECONDSLITELLM_CHAT_PROVIDERS"HUMANLOOP_PROMPT_CACHE_TTL_SECONDSOPENAI_CHAT_COMPLETION_PARAMSr#   OPENAI_FINISH_REASONSr$   openai_compatible_endpointsopenai_compatible_providers+openai_text_completion_compatible_providers_openai_like_providersreplicate_modelsclarifai_modelshuggingface_modelsempower_modelstogether_ai_modelsbaseten_modelsWANDB_MODELSREPEATED_STREAMING_CHUNK_LIMITrequest_timeoutopen_ai_embedding_modelscohere_embedding_modelsbedrock_embedding_modelsknown_tokenizer_config BEDROCK_INVOKE_PROVIDERS_LITERAL#BEDROCK_EMBEDDING_PROVIDERS_LITERALBEDROCK_CONVERSE_MODELSDEFAULT_MAX_TOKENSDEFAULT_SOFT_BUDGETDEFAULT_ALLOWED_FAILSCustomLoggerzList[CALLBACK_TYPES]input_callbacksuccess_callbackfailure_callbackservice_callbackaudit_log_callbacks)0lago	openmeterlogfire	literalailitellm_agentdynamic_rate_limiterdynamic_rate_limiter_v3	langsmith
prometheusoteldatadogdatadog_metricsdatadog_llm_observabilitygalileo
braintrustarizearize_phoenix	langtrace
gcs_bucketazure_storageopikargillamlflowlangfuselangfuse_otel
weave_otel	pagerduty	humanloopazure_sentinel
gcs_pubsubagentopsanthropic_cache_control_hookgeneric_apiresend_emailsendgrid_email
smtp_emaildeepevals3_v2aws_sqsvector_store_pre_call_hook	dotprompt	bitbucketgitlab	cloudzerofocusvantageposthoglevoz5Optional[_custom_logger_compatible_callbacks_literal]cold_storage_custom_loggerz(Optional[Union[List[str], Literal['*']]]logged_real_time_event_typesr	   )_known_custom_logger_compatible_callbackszRList[Union[Callable, _custom_logger_compatible_callbacks_literal, 'CustomLogger']]	callbackszDict[str, Dict[str, Any]]callback_settingsintinitialized_langfuse_clientszOptional[List[str]]langfuse_default_tagszOptional[int]langsmith_batch_sizeFzOptional[bool]$prometheus_initialize_budget_metrics!require_auth_for_metrics_endpointargilla_batch_sizedatadog_use_v1gcs_pub_sub_use_v1generic_api_use_v1zOptional[Dict[str, Any]]argilla_transformation_objectz*List[Union[str, Callable, 'CustomLogger']]_async_input_callback_async_success_callback_async_failure_callbackzList[Callable]pre_call_rulespost_call_rulesturn_off_message_logging(standard_logging_payload_excluded_fieldsboollog_raw_request_responseredact_messages_in_exceptionsredact_user_api_key_infofilter_invalid_headers#add_user_information_to_llm_headerszOptional[str]emailtokenT
max_tokensLITELLM_DROP_PARAMSLITELLM_MODIFY_PARAMS7LITELLM_USE_CHAT_COMPLETIONS_URL_FOR_ANTHROPIC_MESSAGES/use_chat_completions_url_for_anthropic_messagesapi_key
openai_keygroq_keygigachat_keydatabricks_keyopenai_like_key	azure_keyanthropic_keyreplicate_key	bytez_key
cohere_keyinfinity_keyclarifai_keymaritalk_keyai21_key
ollama_keyopenrouter_keydatarobot_keypredibase_keyhuggingface_keyvertex_projectvertex_locationpredibase_tenant_idtogetherai_api_keycloudflare_api_keyvercel_ai_gateway_keybaseten_keyllama_api_keyaleph_alpha_keynlp_cloud_keynovita_api_keysnowflake_keygradient_ai_api_key
nebius_key	wandb_key
heroku_keycometapi_keyovhcloud_keylemonade_keysap_service_keyamazon_nova_api_key)projectregion_namer   )	vertex_aibedrockwatsonxazurevertex_ai_beta)params	providersdict!common_cloud_provider_auth_paramsuse_litellm_proxy
use_clientzUnion[str, bool]
ssl_verifyssl_security_levelssl_certificatessl_ecdh_curvedisable_streaming_loggingdisable_token_counter(disable_add_transform_inline_image_block&disable_add_user_agent_to_request_tags2disable_anthropic_gemini_context_caching_transformextra_spend_tag_headersz'LLMClientCache'in_memory_llm_clients_cachesafe_memory_modeenable_azure_ad_token_refreshzOptional[Any]
proxy_authz2025-02-01-previewz
2024-03-13search_documentz'COHERE_EMBEDDING_INPUT_TYPES'#COHERE_DEFAULT_EMBEDDING_INPUT_TYPEzList['CredentialItem']credential_listllamaguard_model_nameopenai_moderations_model_namepresidio_ad_hoc_recognizerszOptional[float]&google_moderation_confidence_threshold$llamaguard_unsafe_content_categorieszOptional[Union[str, List]]blocked_user_listbanned_keywords_listallz2Literal['all', 'key-specific', 'request-specific']llm_guard_modezDict[str, GuardrailItem]guardrail_name_config_mapinclude_cost_in_streaming_usagereasoning_auto_summary)
PromptSpeczDict[str, PromptSpec]prompt_name_config_mapenable_preview_featuresreturn_response_headersenable_json_schema_validation"enable_key_alias_format_validationlogging'enable_loadbalancing_on_batch_endpoints3enable_caching_on_provider_specific_optional_paramscachingcaching_with_modelszOptional['Cache']cachedefault_in_memory_ttldefault_redis_ttl default_redis_batch_cache_expiryzDict[str, str]model_alias_mapzOptional['ModelGroupSettings']model_group_settingsg        float
max_budgetbudget_durationdefault_soft_budget#forward_traceparent_to_llm_providerr   
error_logsadd_function_to_promptzOptional[httpx.Client]client_sessionzOptional[httpx.AsyncClient]aclient_sessionzOptional[List]model_fallbacksLITELLM_MODEL_COST_MAP_URLz[https://raw.githubusercontent.com/BerriAI/litellm/main/model_prices_and_context_window.jsonstrmodel_cost_map_urlLITELLM_BLOG_POSTS_URLz$https://docs.litellm.ai/blog/rss.xmlblog_posts_url"LITELLM_ANTHROPIC_BETA_HEADERS_URLzahttps://raw.githubusercontent.com/BerriAI/litellm/main/litellm/anthropic_beta_headers_config.jsonanthropic_beta_headers_urldynamodb_table_nameOptional[Dict]s3_callback_paramsz.Optional[Union[DatadogLLMObsInitParams, Dict]] datadog_llm_observability_paramsz(Optional[Union[DatadogInitParams, Dict]]datadog_paramsaws_sqs_callback_paramsgeneric_logger_headersdefault_key_generate_paramsz-Optional[LiteLLM_UpperboundKeyGenerateParams]upperbound_key_generate_paramsz'Optional['StandardKeyGenerationConfig']key_generation_settingsdefault_internal_user_paramsz+Optional[Union[DefaultTeamSSOParams, Dict]]default_team_paramsdefault_team_settingsmax_user_budget default_max_internal_user_budgetmax_internal_user_budgetg      ?max_ui_session_budgetinternal_user_budget_durationz#Optional[Dict[str, 'BudgetConfig']]tag_budget_configmax_end_user_budgetmax_end_user_budget_iddisable_end_user_cost_tracking.disable_end_user_cost_tracking_prometheus_only-enable_end_user_cost_tracking_prometheus_onlyz	List[str]!custom_prometheus_metadata_labelscustom_prometheus_tagsprometheus_metrics_configprometheus_emit_stream_labeldisable_add_prefix_to_prompt#disable_copilot_system_to_assistantpublic_mcp_serverspublic_model_groupspublic_agent_groupsz%Dict[str, Union[str, Dict[str, Any]]]public_model_groups_linksz<Optional[Dict[str, Union[float, 'PriorityReservationDict']]]priority_reservationz'Optional['PriorityReservationSettings']priority_reservation_settingsuse_aiohttp_transportaiohttp_trust_envdisable_aiohttp_transportdisable_aiohttp_trust_env
force_ipv4network_mockdisable_stop_sequence_limitnum_retriesmax_fallbacksdefault_fallbacks	fallbackscontext_window_fallbackscontent_policy_fallbacks   allowed_fails allow_dynamic_callback_disablingnum_retries_per_requestsecret_manager_client_google_kms_resource_namezOptional['KeyManagementSystem']_key_management_systemoutput_parse_pii)get_model_cost_map)urlzDict[str, float]cost_discount_configz)Dict[str, Union[float, Dict[str, float]]]cost_margin_configzDict[str, dict]custom_prompt_dictc                      e Zd Zd Zy)MyLocalc                    d| _         y )NzHello World)user)selfs    H/root/tools/cai/cai_env/lib/python3.12/site-packages/litellm/__init__.py__init__zMyLocal.__init__  s	    !	    N)__name__
__module____qualname__rO   rP  rN  rJ  rJ    s    "rP  rJ  c                *    d| v r| d   t         _        y y )NrL  )_thread_contextrL  )event_detailss    rN  identifyrX    s    ,V4 rP  api_baseapi_versionzOptional[dict]vertex_ai_safety_settings)Setr\  open_ai_chat_completion_modelsopen_ai_text_completion_modelscohere_modelscohere_chat_modelsmistral_chat_models text_completion_codestral_modelsanthropic_modelsopenrouter_modelsdatarobot_modelsvertex_language_modelsvertex_vision_modelsvertex_chat_modelsvertex_code_chat_modelsvertex_ai_image_modelsvertex_ai_video_modelsvertex_text_modelsvertex_code_text_modelsvertex_embedding_modelsvertex_anthropic_modelsvertex_llama3_modelsvertex_deepseek_modelsvertex_ai_ai21_modelsvertex_mistral_modelsvertex_openai_modelsvertex_minimax_modelsvertex_moonshot_modelsvertex_zai_modelsai21_modelsai21_chat_modelsnlp_cloud_modelsaleph_alpha_modelsbedrock_modelsbedrock_converse_modelsfal_ai_modelsfireworks_ai_modelsfireworks_ai_embedding_modelsdeepinfra_modelsperplexity_modelswatsonx_modelsgemini_models
xai_models
zai_modelsdeepseek_modelsrunwayml_modelsazure_ai_modelsjina_ai_modelsvoyage_modelsinfinity_modelsheroku_modelsdatabricks_modelscloudflare_modelscodestral_modelsfriendliai_modelsfeatherless_ai_modelspalm_modelsgroq_modelsazure_modelsazure_anthropic_modelsazure_text_modelsanyscale_modelscerebras_modelsgaladriel_modelsnvidia_nim_modelssambanova_modelssambanova_embedding_modelsnovita_modelsassemblyai_modelssnowflake_modelsgradient_ai_modelsllama_modelsnscale_modelsnebius_modelsnebius_embedding_modelsaiml_modelsdeepgram_modelselevenlabs_modelsdashscope_modelsmoonshot_modelspublicai_models	v0_modelsmorph_modelslambda_ai_modelshyperbolic_modelsblack_forest_labs_modelsrecraft_modelscometapi_models
oci_modelsvercel_ai_gateway_modelsvolcengine_modelswandb_modelsovhcloud_modelsovhcloud_embedding_modelslemonade_modelsdocker_model_runner_modelsamazon_nova_modelsstability_modelsgithub_copilot_modelschatgpt_modelsminimax_modelsaws_polly_modelsgigachat_modelsllamagate_modelsbedrock_mantle_modelsc                `    t        j                  d      }d| v ry|j                  |       }|duS )a#  
    Excludes keys with the pattern 'bedrock/<region>/<model>'. These are in the model_prices_and_context_window.json file for pricing purposes only.

    Args:
        key (str): A key to filter.

    Returns:
        bool: True if the key matches the Bedrock pattern, False otherwise.
    z^bedrock/[a-zA-Z0-9_-]+/.+$zmonth-commitmentTN)recompilematch)keybedrock_patternis_matchs      rN  is_bedrock_pricing_only_modelr  \  s9     jj!?@OS $$S)H4rP  c                R    | j                  d      xr | j                  d      dkD   S )a(  
    Excludes model cost keys with the pattern 'ft:<model>'. These are in the model_prices_and_context_window.json file for pricing purposes only.

    Args:
        key (str): A key to filter.

    Returns:
        bool: True if the key matches the OpenAI finetune pattern, False otherwise.
    zft::   )
startswithcount)r  s    rN  is_openai_finetune_modelr  p  s(     >>% ;3!);%;;rP  c                %   | | nt         }|j                         D ]g  \  }}|j                  d      dk(  r!t        |      st        j                  |       <|j                  d      dk(  rt        j                  |       f|j                  d      dk(  rt        j                  |       |j                  d      dk(  rt        j                  |       |j                  d      dk(  rt        j                  |       |j                  d      dk(  rt        j                  |       |j                  d      dk(  rt        j                  |       :|j                  d      d	k(  rt        j
                  |       e|j                  d      d
k(  rt        j                  |       |j                  d      dk(  rt        j                  |       |j                  d      dk(  rt        j                  |       |j                  d      dk(  rt         j                  |       |j                  d      dk(  rt"        j                  |       <|j                  d      dk(  rt$        j                  |       g|j                  d      dk(  rt&        j                  |       |j                  d      dk(  rt(        j                  |       |j                  d      dk(  rt*        j                  |       |j                  d      dk(  rt,        j                  |       |j                  d      dk(  r)|j/                  dd      }t0        j                  |       P|j                  d      dk(  r)|j/                  dd      }t2        j                  |       |j                  d      dk(  r)|j/                  dd      }t4        j                  |       |j                  d      dk(  r)|j/                  dd      }t6        j                  |       |j                  d      dk(  r)|j/                  dd      }t8        j                  |       D|j                  d      dk(  r)|j/                  dd      }t:        j                  |       |j                  d      dk(  r)|j/                  dd      }t<        j                  |       |j                  d      dk(  r)|j/                  dd      }t>        j                  |       |j                  d      dk(  r)|j/                  dd      }t@        j                  |       8|j                  d      dk(  r)|j/                  dd      }tB        j                  |       u|j                  d      d k(  r)|j/                  dd      }tD        j                  |       |j                  d      d!k(  rB|j                  d"      d#k(  rtF        j                  |       tH        j                  |       |j                  d      d$k(  rtJ        j                  |       3|j                  d      d%k(  rtL        j                  |       ^|j                  d      d&k(  r"tO        |      stP        j                  |       |j                  d      d'k(  rtR        j                  |       |j                  d      d(k(  rtT        j                  |       |j                  d      d)k(  rtV        j                  |       |j                  d      d*k(  rtX        j                  |       @|j                  d      d+k(  rtZ        j                  |       k|j                  d      d,k(  r#d-|vsd.|vst\        j                  |       |j                  d      d/k(  rd-|vst^        j                  |       |j                  d      d0k(  rt`        j                  |       |j                  d      d1k(  rtb        j                  |       )|j                  d      d2k(  rtd        j                  |       T|j                  d      d3k(  rtf        j                  |       |j                  d      d4k(  rth        j                  |       |j                  d      d5k(  rtj        j                  |       |j                  d      d6k(  rtl        j                  |       	 |j                  d      d7k(  rtn        j                  |       	+|j                  d      d8k(  rtp        j                  |       	V|j                  d      d9k(  rtr        j                  |       	|j                  d      d:k(  rtt        j                  |       	|j                  d      d;k(  rtv        j                  |       	|j                  d      d<k(  rtx        j                  |       
|j                  d      d=k(  rtz        j                  |       
-|j                  d      d>k(  rt|        j                  |       
X|j                  d      d?k(  rt~        j                  |       
|j                  d      d@k(  rt        j                  |       
|j                  d      dAk(  rt        j                  |       
|j                  d      dBk(  rt        j                  |       |j                  d      dCk(  rt        j                  |       /|j                  d      dDk(  rt        j                  |       Z|j                  d      dEk(  rt        j                  |       |j                  d      dFk(  rt        j                  |       |j                  d      dGk(  rt        j                  |       |j                  d      dHk(  rt        j                  |       |j                  d      dIk(  rt        j                  |       1|j                  d      dJk(  rt        j                  |       \|j                  d      dKk(  rt        j                  |       |j                  d      dLk(  rt        j                  |       |j                  d      dMk(  rt        j                  |       |j                  d      dNk(  rt        j                  |       |j                  d      dOk(  rt        j                  |       3|j                  d      dPk(  rt        j                  |       ^|j                  d      dQk(  rt        j                  |       |j                  d      dRk(  rt        j                  |       |j                  d      dSk(  rt        j                  |       |j                  d      dTk(  rt        j                  |       
|j                  d      dUk(  rt        j                  |       5|j                  d      dVk(  rt        j                  |       `|j                  d      dWk(  rt        j                  |       |j                  d      dXk(  rt        j                  |       |j                  d      dYk(  rt        j                  |       |j                  d      dZk(  rt        j                  |       |j                  d      d[k(  rt        j                  |       7|j                  d      d\k(  rt        j                  |       b|j                  d      d]k(  rt        j                  |       |j                  d      d^k(  rt        j                  |       |j                  d      d_k(  rt        j                  |       |j                  d      d`k(  rt        j                  |       |j                  d      dak(  rt        j                  |       9|j                  d      dbk(  rt        j                  |       d|j                  d      dck(  rt        j                  |       |j                  d      ddk(  rt        j                  |       |j                  d      dek(  rt        j                  |       |j                  d      dfk(  rt        j                  |       |j                  d      dgk(  rt        j                  |       ;|j                  d      dhk(  rt        j                  |       f|j                  d      dik(  rt        j                  |       |j                  d      djk(  rt        j                  |       |j                  d      dkk(  rt        j                  |       |j                  d      dlk(  rt        j                  |       |j                  d      dmk(  rt        j                  |       =|j                  d      dnk(  sSt        j                  |       j y )oNlitellm_provideropenaitext-completion-openai
azure_textcoherecohere_chatmistral	anthropicempower
openroutervercel_ai_gateway	datarobotzvertex_ai-text-modelszvertex_ai-code-text-modelszvertex_ai-language-modelszvertex_ai-vision-modelszvertex_ai-chat-modelszvertex_ai-code-chat-modelszvertex_ai-embedding-modelszvertex_ai-anthropic_modelsz
vertex_ai/ zvertex_ai-llama_modelszvertex_ai-deepseek_modelszvertex_ai-mistral_modelszvertex_ai-ai21_modelszvertex_ai-image-modelszvertex_ai-video-modelszvertex_ai-openai_modelszvertex_ai-minimax_modelszvertex_ai-moonshot_modelszvertex_ai-zai_modelsai21modechat	nlp_cloudaleph_alphar   bedrock_converse	deepinfra
perplexityr   geminifireworks_aiz-to-zfireworks-ai-defaultzfireworks_ai-embedding-modelstext-completion-codestralxaizaifal_aideepseekrunwayml
meta_llamanscaleazure_aivoyageinfinity
databricks
cloudflare	codestral
friendliaipalmgroqr   azure_anthropicanyscalecerebras	galadriel
nvidia_nim	sambanovazsambanova-embedding-modelsnovitaznebius-chat-modelsznebius-embedding-modelsaiml
assemblyaijina_ai	snowflakegradient_aifeatherless_aideepgram
elevenlabsheroku	dashscopemoonshotpublicaiv0morph	lambda_ai
hyperbolicblack_forest_labsrecraftcometapioci
volcenginewandbovhcloudzovhcloud-embedding-modelslemonadedocker_model_runneramazon_nova	stabilitygithub_copilotchatgptminimax	aws_pollygigachat	llamagatebedrock_mantle)o
model_costitemsgetr  r]  addr^  r  r_  r`  ra  rc  r,   rd  r  re  rl  rm  rf  rg  rh  ri  rn  replacero  rp  rq  rs  rr  rj  rk  rt  ru  rv  rw  ry  rx  rz  r{  r  r|  r}  r  r  r  r  r  r  rb  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  r  r  r  r  r  r  r  r  r  r  r  r  r  r  )model_cost_map_mapr  values       rN  add_known_modelsr,  }  s   +7>ZDjjl d+
U99'(H4=U>
 +..s3YY)*.FF*..s3YY)*l:!!#&YY)*h6c"YY)*m;""3'YY)*i7##C(YY)*k9  %YY)*i7s#YY)*l:!!#&YY)*.AA$((-YY)*k9  %YY)*.EE""3'YY)*.JJ#'',YY)*.II"&&s+YY)*.GG $$S)YY)*.EE""3'YY)*.JJ#'',YY)*.JJ#'',YY)*.JJ++lB/C#'',YY)*.FF++lB/C $$S)YY)*.II++lB/C"&&s+YY)*.HH++lB/C!%%c*YY)*.EE++lB/C!%%c*YY)*.FF++lB/C"&&s+YY)*.FF++lB/C"&&s+YY)*.GG++lB/C $$S)YY)*.HH++lB/C!%%c*YY)*.II++lB/C"&&s+YY)*.DD++lB/C!!#&YY)*f4yy F* $$S)$YY)*k9  %YY)*m;""3'YY
<SAs#YY)*.@@#'',YY)*k9  %YY)*l:!!#&YY)*i7s#YY)*h6c"YY)*n<S %;3%F#'',YY)*.MMS -11#6YY)*.II,005YY)*e3NN3YY)*e3NN3YY)*h6c"YY)*j8$YY)*j8$YY)*l:S!YY)*h6c"YY)*j8$YY)*h6c"YY)*j8$YY)*l:!!#&YY)*l:!!#&YY)*k9  %YY)*l:!!#&YY)*f4OOC YY)*f4OOC YY)*g5S!YY)*.??"&&s+YY)*j8$YY)*j8$YY)*k9  %YY)*l:!!#&YY)*k9  %YY)*.JJ&**3/YY)*h6c"YY)*.BBc"YY)*.GG#'',YY)*f4OOC YY)*l:!!#&YY)*i7s#YY)*k9  %YY)*m;""3'YY)*.>>!%%c*YY)*j8$YY)*l:!!#&YY)*h6c"YY)*k9  %YY)*j8$YY)*j8$YY)*d2MM#YY)*g5S!YY)*k9  %YY)*l:!!#&YY)*.AA$((-YY)*i7s#YY)*j8$YY)*e3NN3YY)*l:!!#&YY)*g5S!YY)*j8$YY)*.II%))#.YY)*j8$YY)*.CC&**3/YY)*m;""3'YY)*k9  %YY)*.>>!%%c*YY)*i7s#YY)*i7s#YY)*k9  %YY)*j8$YY)*k9  %YY)*.>>!%%c*Id+rP  zazure/gpt-35-turbozazure/gpt-35-turbo-16kzazure/gpt-35-turbo-instructzgpt-4.1zgpt-4.1-minizgpt-4.1-nano)zgpt-35-turbozgpt-35-turbo-16kzgpt-35-turbo-instructzazure/gpt-41zazure/gpt-41-minizazure/gpt-41-nanoadaz	azure/adazpetals-team/StableBeluga2llama2maritalkr  r  r  r  r  	replicatehuggingfacetogether_aibasetenr  r  r  r   r  r   petalsollamaollama_chatr  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  nebiusr  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  clarifair  r  r  r  r  r   )r!  r"  r#  models_by_providerzgpt-3.5-turbo-16kzgpt-3.5-turbo-16k-0301zgpt-3.5-turbo-16k-0613z	gpt-4-32kzgpt-4-32k-0314zgpt-4-32k-0613zclaude-2zchat-bison-32kzcodechat-bison-32kz#openrouter/openai/gpt-3.5-turbo-16kzopenrouter/anthropic/claude-2)zgpt-3.5-turbozgpt-3.5-turbo-0301zgpt-3.5-turbo-0613zgpt-4z
gpt-4-0314z
gpt-4-0613zclaude-instant-1zclaude-instant-1.2z
chat-bisonzchat-bison@001zcodechat-bisonzcodechat-bison@001zopenrouter/openai/gpt-3.5-turboz&openrouter/anthropic/claude-instant-v1"longer_context_model_fallback_dictzdall-e-2zdall-e-3zsora-2)KeyManagementSettingsr;  _key_management_settingsr  )client)	CustomLLM)AnthropicModelInfo)AI21ChatConfigr@  )
PalmConfig)AlephAlphaConfig)GeminiModelInfo)VertexAITextEmbeddingConfig)AmazonTitanV2Config)TopazModelInfo)XAIModelInfoLlmProviders)*)create_skillacreate_skilllist_skillsalist_skills	get_skill
aget_skilldelete_skilladelete_skill)create_evalacreate_eval
list_evalsalist_evalsget_eval	aget_evaldelete_evaladelete_evalcancel_evalacancel_eval
create_runacreate_run	list_runs
alist_runsget_runaget_run
delete_runadelete_run
cancel_runacancel_run)close_litellm_async_clients)AuthenticationErrorInvalidRequestErrorBadRequestErrorImageFetchErrorNotFoundErrorPermissionDeniedErrorRateLimitErrorServiceUnavailableErrorBadGatewayErrorOpenAIErrorContextWindowExceededErrorContentPolicyViolationErrorBudgetExceededErrorAPIErrorTimeoutAPIConnectionErrorUnsupportedParamsErrorAPIResponseValidationErrorUnprocessableEntityErrorInternalServerErrorJSONSchemaValidationErrorLITELLM_EXCEPTION_TYPESMockException)BudgetManager)
run_server)Router)interactions)
_arealtimeacreate_realtime_client_secretarealtime_calls)_aresponses_websocket)acreateadeletealist	aretrievearetrieve_contentaupdatecreatedeletelistretrieveretrieve_contentupdate)AdapterItemzList[AdapterItem]adapters)VectorStoreRegistryVectorStoreIndexRegistryzOptional[VectorStoreRegistry]vector_store_registryz"Optional[VectorStoreIndexRegistry]vector_store_index_registry)rag)CustomLLMItemzList[CustomLLMItem]custom_provider_map_custom_providersdisable_hf_tokenizer_downloadglobal_disable_no_log_param)get_litellm_gateway_api_key)allm_passthrough_routellm_passthrough_route)agenerate_contentglobal_bitbucket_configc                    | a yz9Set global BitBucket configuration for prompt management.N)r  configs    rN  set_global_bitbucket_configr  3  s
     %rP  global_gitlab_configc                    | a yr  )r  r  s    rN  set_global_gitlab_configr  =  s
     "rP  )	ModelInfo)PriorityReservationSettings)AsyncHTTPHandlerHTTPHandler)Cache)AmazonConverseConfig)OpenAILikeChatConfig)GaladrielChatConfig)GithubChatConfig)AzureAnthropicConfig)BytezChatConfig)CompactifAIChatConfig)EmpowerChatConfig)MinimaxChatConfig)AiohttpOpenAIChatConfig)HuggingFaceChatConfig)HuggingFaceEmbeddingConfig)OobaboogaConfig)MaritalkConfig)OpenrouterConfig)DataRobotConfig)AnthropicConfig)AnthropicTextConfig)GroqSTTConfig)TritonConfig)TritonGenerateConfig)TritonInferConfig)TritonEmbeddingConfig)HuggingFaceRerankConfig)DatabricksConfig)DatabricksEmbeddingConfig)PredibaseConfig)ReplicateConfig)SnowflakeConfig)CohereRerankConfig)CohereRerankV2Config)AzureAIRerankConfig)InfinityRerankConfig)JinaAIRerankConfig)DeepinfraRerankConfig)HostedVLLMRerankConfig)NvidiaNimRerankConfig)NvidiaNimRankingConfig)VertexAIRerankConfig)FireworksAIRerankConfig)VoyageRerankConfig)IBMWatsonXRerankConfig)ClarifaiConfig)r@  )LlamaAPIConfig)TogetherAITextCompletionConfig)CloudflareChatConfig)NovitaConfig)PetalsConfig)OllamaChatConfig)OllamaConfig)SagemakerConfig)SagemakerChatConfig)SagemakerNovaConfig)CohereChatConfig)AnthropicMessagesConfig)#AmazonAnthropicClaudeMessagesConfig)TogetherAIConfig)NLPCloudConfig)VertexGeminiConfig)GoogleAIStudioGeminiConfig)VertexAIAnthropicConfig)VertexAILlama3Config)VertexAIAi21Config)AmazonCohereChatConfig)AmazonBedrockGlobalConfig)AmazonAI21Config)AmazonInvokeNovaConfig)AmazonQwen2Config)AmazonQwen3Config)AmazonAnthropicConfig)AmazonAnthropicClaudeConfig)AmazonCohereConfig)AmazonLlamaConfig)AmazonDeepSeekR1Config)AmazonMistralConfig)AmazonMoonshotConfig)AmazonTitanConfig)AmazonTwelveLabsPegasusConfig)AmazonInvokeConfig)AmazonBedrockOpenAIConfig)AmazonStabilityConfig)AmazonStability3Config)AmazonNovaCanvasConfig)AmazonTitanG1Config)&AmazonTitanMultimodalEmbeddingG1Config)CohereV2ChatConfig)BedrockCohereEmbeddingConfig) TwelveLabsMarengoEmbeddingConfig)AmazonNovaEmbeddingConfig)OpenAIConfigMistralEmbeddingConfig)OpenAIImageVariationConfig) DeepgramAudioTranscriptionConfig)TopazImageVariationConfig)OpenAITextCompletionConfig)GroqChatConfig)BedrockMantleChatConfig)	A2AConfig)VoyageEmbeddingConfig)VoyageContextualEmbeddingConfig)InfinityEmbeddingConfig)PerplexityEmbeddingConfig)AzureAIStudioConfig)MistralConfig)OpenAIResponsesAPIConfig)AzureOpenAIResponsesAPIConfig)$AzureOpenAIOSeriesResponsesAPIConfig)XAIResponsesAPIConfig)LiteLLMProxyResponsesAPIConfig)VolcEngineResponsesAPIConfig)ManusResponsesAPIConfig)PerplexityResponsesConfig)DatabricksResponsesAPIConfig)OpenRouterResponsesAPIConfig) GoogleAIStudioInteractionsConfig)OpenAIOSeriesConfigr$  )AnthropicSkillsConfig)BaseSkillsAPIConfig)GradientAIConfig)OpenAIGPTConfig)OpenAIGPT5Config)%OpenAIWhisperAudioTranscriptionConfig)!OpenAIGPTAudioTranscriptionConfig)OpenAIGPTAudioConfig)NvidiaNimConfig)NvidiaNimEmbeddingConfigr$  openaiOSeriesConfigr(  openAIGPTConfigr,  openAIGPTAudioConfigr)  openAIGPT5Configr-  nvidiaNimConfigr.  nvidiaNimEmbeddingConfig)
VLLMConfig)DeepSeekChatConfig)GenAIHubOrchestrationConfig)GenAIHubEmbeddingConfig)AzureOpenAIO1Config)PerplexityChatConfig)NscaleConfig)IBMWatsonXChatConfig)IBMWatsonXAIConfig)LiteLLMProxyChatConfig)DeepInfraConfig)LlamafileChatConfig)LMStudioChatConfig)LmStudioEmbeddingConfig)IBMWatsonXEmbeddingConfigzType[_VLLMConfig]r5  zType[_DeepSeekChatConfig]r6  z"Type[_GenAIHubOrchestrationConfig]r7  zType[_GenAIHubEmbeddingConfig]r8  zType[_AzureOpenAIO1Config]r9  zType[_PerplexityChatConfig]r:  zType[_NscaleConfig]r;  zType[_IBMWatsonXChatConfig]r<  zType[_IBMWatsonXAIConfig]r=  zType[_LiteLLMProxyChatConfig]r>  zType[_DeepInfraConfig]r?  zType[_LlamafileChatConfig]r@  zType[_LMStudioChatConfig]rA  zType[_LmStudioEmbeddingConfig]rB  z Type[_IBMWatsonXEmbeddingConfig]rC  zType[_VertexGeminiConfig]VertexAIConfig)FeatherlessAIConfig)CerebrasConfig)BasetenConfig)SambanovaConfig)SambaNovaEmbeddingConfig)FireworksAIConfig)FireworksAITextCompletionConfig)#FireworksAIAudioTranscriptionConfig)FireworksAIEmbeddingConfig)FriendliaiChatConfig)JinaAIEmbeddingConfig)XAIChatConfig)ZAIChatConfig)AIMLChatConfig)VolcEngineChatConfigrS  )CodestralTextCompletionConfig)AzureOpenAIAssistantsAPIConfig)HerokuChatConfig)CometAPIConfig)AzureOpenAIConfig)AzureOpenAIGPT5Config)AzureOpenAITextConfig)HostedVLLMChatConfig)HostedVLLMEmbeddingConfig)HostedVLLMResponsesAPIConfig)GithubCopilotConfig)GithubCopilotResponsesAPIConfig)GithubCopilotEmbeddingConfig)ChatGPTConfig)ChatGPTResponsesAPIConfig)GigaChatConfig)GigaChatEmbeddingConfig)NebiusConfig)WandbConfig)DashScopeChatConfig)MoonshotChatConfig)DockerModelRunnerChatConfig)V0ChatConfig)OCIChatConfig)MorphChatConfig)RAGFlowConfig)LambdaAIChatConfig)HyperbolicChatConfig)VercelAIGatewayConfig)OVHCloudChatConfig)OVHCloudEmbeddingConfig)CometAPIEmbeddingConfig)LemonadeChatConfig)SnowflakeEmbeddingConfig)AmazonNovaChatConfig)LLMClientCache)COHERE_EMBEDDING_INPUT_TYPES)BudgetConfigCredentialItemPriorityReservationDictStandardKeyGenerationConfig)GuardrailItem)DefaultTeamSSOParams#LiteLLM_UpperboundKeyGenerateParamsz"Callable[..., Tuple[float, float]]cost_per_tokenzCallable[..., float]completion_costr   response_cost_calculatormodify_integrationzCallable[..., str]get_response_stringzCallable[..., bool]supports_function_callingsupports_web_searchsupports_url_contextsupports_response_schema"supports_parallel_function_callingsupports_visionsupports_audio_inputsupports_audio_outputsupports_system_messagessupports_reasoningzCallable[..., Any]r  zCallable[..., int]get_max_tokenszCallable[..., _ModelInfoType]get_model_infozCallable[..., None]register_prompt_templatezCallable[..., dict]validate_environmentcheck_valid_keyregister_modelzCallable[..., list]encodedecode_calculate_retry_after_should_retryzCallable[..., Optional[list]]get_supported_openai_paramszCallable[..., Optional[str]]get_api_baseget_first_chars_messageszCallable[..., List]get_provider_fieldsget_valid_modelsremove_index_from_tool_callsz	Type[Any]ModelResponseListIteratorr  module_level_aclientr  module_level_client)InMemoryCacher  bedrock_tool_name_mappingsAzureOpenAIError)KeyManagementSystemr;  )r<   )DatadogLLMObsInitParams)LoggingCallbackManagerr  logging_callback_managerzList[Union[LlmProviders, str]]provider_listLITELLM_DISABLE_LAZY_LOADINGr  )1trueyesonencodingc                f   t         sddlm}  |        da ddlm}  |       }| |v r||    } ||       S | dk(  r!ddlm}  |       }d|vrddlm} ||d<   |d   S | d	k(  r!ddlm}  |       }d	|vrdd
lm	} ||d	<   |d	   S | dk(  r!ddlm}  |       }d|vrddl
m}	 |	|d<   |d   S | dk(  r+ddlm}  |       }d|vrt        d      }
 |
       |d<   |d   S dddddd}| |v r.ddlm}  |       }| |vrt        ||          }
 |
       || <   ||    S | dk(  rt        d      S | dk(  r*ddlm}  |       }d|vrddlm} t        |      |d<   |d   S | dk(  r+ddlm}  |       }d|vrt        d      } |       |d<   |d   S | dk(  r+ddlm}  |       }d|vrt        d      } |       |d<   |d   S | dk(  r)ddlm}  |       }d|vrddl}|j"                  |d<   |d   S | dv r=ddlm}m}m}m}m}m}m}m}m}m}m}m}m}m }m!}m"}m#} m$}!m%}"m&}#m'}$m(}% tS               |    S tU        dtV        d |       )!zBLazy import handler with cached registry for improved performance.r   )register_async_client_cleanupTr  )_get_lazy_import_registryr  )_get_litellm_globalsr  r  )r  r  r  r/  r$  r(  r,  r)  r-  r.  )r0  r1  r2  r3  r4  OpenAIO1Configr  rH  r.  r  r  r  _service_loggerN)rT  rV  rX  aupdate_evalrZ  r\  rS  rU  rW  update_evalrY  r[  r^  r`  rb  rf  rd  r]  r_  ra  re  rc  zmodule z has no attribute ), _async_client_cleanup_registered.litellm.llms.custom_httpx.async_client_cleanupr  _lazy_importsr  r  mainr   llms.bedrock.chat.invoke_handlerr  llms.azure.common_utilsr  __getattr__litellm.types.utilsrI  r  litellm._service_loggerr  litellm.evals.mainrT  rV  rX  r  rZ  r\  rS  rU  rW  r  rY  r[  r^  r`  rb  rf  rd  r]  r_  ra  re  rc  localsAttributeErrorrQ  )&namer  r  registryhandler_funcr  _globals	_encoding_bedrock_tool_name_mappings_AzureOpenAIErrorconfig_class_config_instancesrI  r  r  litellmrT  rV  rX  r  rZ  r\  rS  rU  rW  r  rY  r[  r^  r`  rb  rf  rd  r]  r_  ra  re  rc  s&                                         rN  r  r    s    ,	
 	&'+/( 9(*H x~D!! z7')X%3#,HZ 
## ++7')'x7 6QH12455 !!7')X-V+<H'(*++ $$7') 0&'<=L.:nH*+-.. - 6.,$>   7')x&'8'>?L)^HTN~ 011 7')(*8(,\(:H_%(( ..7')*(:*56S*T'8S8UH45788 ))7')%X5%01I%J"3I3KH/0233   7')H,**1*A*AH&')**   0	
 	
 	
 	
 	
 	
2 x~
78,.@I
JJrP  )r  r  returnr   )N)r)  r  )r  zDict[str, Any]r  None)r  r  r  r   (  
__future__r   warningsfilterwarnings	threadingosdotenv_dotenvgetenvload_dotenvtypingr   r	   r
   r   r   r   r   r   r   r   r   r   "litellm.types.integrations.datadogr   litellm._loggingr   r   r   r   r   r   r  litellm.constantsr   r   r   r   r   r    r!   r"   r#   _openai_completion_paramsr$   _openai_finish_reasonsr%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   httpxlitellm_moder  CALLBACK_TYPESr=   __annotations__r>   r?   r@   rA   +_custom_logger_compatible_callbacks_literalrr   rs   r  rt   ru   rv   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   store_audit_logsr   r   	telemetryr   r   drop_paramsmodify_paramsr   retryr   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   r   r   r   r   r   r   r   r   AZURE_DEFAULT_API_VERSIONWATSONX_DEFAULT_API_VERSIONr   r   r   r   r   r   r   r   r   r   r   r   r   "litellm.types.prompts.init_promptsr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   _current_costr   r   r  r  r  r  r  r
  suppress_debug_infor  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/  r0  r1  r2  r3  r4  r5  r6  r7  r8  r9  r:  r;  r=  r>  r?  r@  rA  rB  rC  -litellm.litellm_core_utils.get_model_cost_maprD  r$  rF  rG  rH  check_provider_endpointlocalrJ  rV  rX  rY  headersrZ  organizationr   config_pathr[  r\  setr]  r^  r_  r`  ra  rb  rc  rd  re  rf  rg  rh  ri  rj  rk  rl  rm  rn  ro  rp  rq  rr  rs  rt  ru  rv  rw  rx  ry  rz  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  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,  
azure_llmsazure_embedding_modelspetals_modelsollama_modelsmaritalk_models
model_listmodel_list_setr9  r:  all_embedding_modelsopenai_image_generation_modelsopenai_video_generation_models"litellm.types.secret_managers.mainr;  r<  utilsr=  llms.custom_llmr>  llms.anthropic.common_utilsr?  llms.ai21.chat.transformationr@  
AI21Configllms.deprecated_providers.palmrA  %llms.deprecated_providers.aleph_alpharB  llms.gemini.common_utilsrC  /llms.vertex_ai.vertex_embeddings.transformationrD  vertexAITextEmbeddingConfig1llms.bedrock.embed.amazon_titan_v2_transformationrE  llms.topaz.common_utilsrF  llms.xai.common_utilsrG  r  rI  r  skills.mainrK  rL  rM  rN  rO  rP  rQ  rR  
evals.mainrS  rT  rU  rV  rW  rX  rY  rZ  r[  r\  r]  r^  r_  r`  ra  rb  rc  rd  re  rf  integrations&llms.custom_httpx.async_client_cleanuprg  
exceptionsrh  ri  rj  rk  rl  rm  rn  ro  rp  rq  rr  rs  rt  ru  rv  rw  rx  ry  rz  r{  r|  r}  r~  budget_managerr  proxy.proxy_clir  routerr  assistants.mainbatches.mainimages.mainvideos.mainbatch_completion.mainrerank_api.main9llms.anthropic.experimental_pass_through.messages.handlerresponses.mainr  r  containers.mainocr.mainrag.mainsearch.mainrealtime_api.mainr  r  r  r  fine_tuning.main
files.mainvector_store_files.mainr  avector_store_file_creater  avector_store_file_deleter  avector_store_file_listr  avector_store_file_retriever  avector_store_file_contentr  avector_store_file_updater  vector_store_file_creater  vector_store_file_deletevector_store_file_listr  vector_store_file_retriever  vector_store_file_contentr  vector_store_file_update	schedulertypes.adapterr  litellm.anthropic_interfaceanthropic_interfacer  r  #vector_stores.vector_store_registryr  r  r  r  r  types.llms.custom_llmr  r  r  r  r  *litellm.litellm_core_utils.cli_token_utilsr  passthroughr  r  google_genair  r  r  r  r  r  _ModelInfoTyper  &litellm.llms.custom_httpx.http_handlerr  r  litellm.caching.cachingr  )llms.bedrock.chat.converse_transformationr  llms.openai_like.chat.handlerr  "llms.galadriel.chat.transformationr  llms.github.chat.transformationr  &llms.azure_ai.anthropic.transformationr  llms.bytez.chat.transformationr  $llms.compactifai.chat.transformationr   llms.empower.chat.transformationr   llms.minimax.chat.transformationr  'llms.aiohttp_openai.chat.transformationr  $llms.huggingface.chat.transformationr  )llms.huggingface.embedding.transformationr  "llms.oobabooga.chat.transformationr  llms.maritalkr  #llms.openrouter.chat.transformationr  "llms.datarobot.chat.transformationr  "llms.anthropic.chat.transformationr  (llms.anthropic.completion.transformationr  llms.groq.stt.transformationr  %llms.triton.completion.transformationr  r  r  $llms.triton.embedding.transformationr  &llms.huggingface.rerank.transformationr  #llms.databricks.chat.transformationr  $llms.databricks.embed.transformationr  "llms.predibase.chat.transformationr  "llms.replicate.chat.transformationr  "llms.snowflake.chat.transformationr  !llms.cohere.rerank.transformationr  $llms.cohere.rerank_v2.transformationr  #llms.azure_ai.rerank.transformationr  #llms.infinity.rerank.transformationr  "llms.jina_ai.rerank.transformationr  $llms.deepinfra.rerank.transformationr  &llms.hosted_vllm.rerank.transformationr  %llms.nvidia_nim.rerank.transformationr  -llms.nvidia_nim.rerank.ranking_transformationr  $llms.vertex_ai.rerank.transformationr  'llms.fireworks_ai.rerank.transformationr  !llms.voyage.rerank.transformationr  "llms.watsonx.rerank.transformationr  !llms.clarifai.chat.transformationr  #llms.meta_llama.chat.transformationr  *llms.together_ai.completion.transformationr  #llms.cloudflare.chat.transformationr  llms.novita.chat.transformationr  %llms.petals.completion.transformationr  llms.ollama.chat.transformationr  %llms.ollama.completion.transformationr  (llms.sagemaker.completion.transformationr  "llms.sagemaker.chat.transformationr  "llms.sagemaker.nova.transformationr  llms.cohere.chat.transformationr  @llms.anthropic.experimental_pass_through.messages.transformationr  Mllms.bedrock.messages.invoke_transformations.anthropic_claude3_transformationr  llms.together_ai.chatr  llms.nlp_cloud.chat.handlerr  8llms.vertex_ai.gemini.vertex_and_google_ai_studio_geminir  llms.gemini.chat.transformationr  @llms.vertex_ai.vertex_ai_partner_models.anthropic.transformationr  =llms.vertex_ai.vertex_ai_partner_models.llama3.transformationr  ;llms.vertex_ai.vertex_ai_partner_models.ai21.transformationr  r  r  llms.bedrock.common_utilsr  Cllms.bedrock.chat.invoke_transformations.amazon_ai21_transformationr  Cllms.bedrock.chat.invoke_transformations.amazon_nova_transformationr  Dllms.bedrock.chat.invoke_transformations.amazon_qwen2_transformationr  Dllms.bedrock.chat.invoke_transformations.amazon_qwen3_transformationr  Illms.bedrock.chat.invoke_transformations.anthropic_claude2_transformationr  Illms.bedrock.chat.invoke_transformations.anthropic_claude3_transformationr  Ellms.bedrock.chat.invoke_transformations.amazon_cohere_transformationr  Dllms.bedrock.chat.invoke_transformations.amazon_llama_transformationr  Gllms.bedrock.chat.invoke_transformations.amazon_deepseek_transformationr  Fllms.bedrock.chat.invoke_transformations.amazon_mistral_transformationr  Gllms.bedrock.chat.invoke_transformations.amazon_moonshot_transformationr  Dllms.bedrock.chat.invoke_transformations.amazon_titan_transformationr  Qllms.bedrock.chat.invoke_transformations.amazon_twelvelabs_pegasus_transformationr  Cllms.bedrock.chat.invoke_transformations.base_invoke_transformationr  Ellms.bedrock.chat.invoke_transformations.amazon_openai_transformationr   >llms.bedrock.image_generation.amazon_stability1_transformationr  >llms.bedrock.image_generation.amazon_stability3_transformationr  ?llms.bedrock.image_generation.amazon_nova_canvas_transformationr  1llms.bedrock.embed.amazon_titan_g1_transformationr  9llms.bedrock.embed.amazon_titan_multimodal_transformationr  "llms.cohere.chat.v2_transformationr  (llms.bedrock.embed.cohere_transformationr  4llms.bedrock.embed.twelvelabs_marengo_transformationr  -llms.bedrock.embed.amazon_nova_transformationr	  llms.openai.openair
  r  +llms.openai.image_variations.transformationr  0llms.deepgram.audio_transcription.transformationr  *llms.topaz.image_variations.transformationr  -litellm.llms.openai.completion.transformationr  llms.groq.chat.transformationr  'llms.bedrock_mantle.chat.transformationr  llms.a2a.chat.transformationr  $llms.voyage.embedding.transformationr  /llms.voyage.embedding.transformation_contextualr  &llms.infinity.embedding.transformationr  (llms.perplexity.embedding.transformationr  !llms.azure_ai.chat.transformationr   llms.mistral.chat.transformationr  $llms.openai.responses.transformationr  #llms.azure.responses.transformationr  ,llms.azure.responses.o_series_transformationr  !llms.xai.responses.transformationr  +llms.litellm_proxy.responses.transformationr  (llms.volcengine.responses.transformationr  #llms.manus.responses.transformationr  (llms.perplexity.responses.transformationr   (llms.databricks.responses.transformationr!  (llms.openrouter.responses.transformationr"  'llms.gemini.interactions.transformationr#  (llms.openai.chat.o_series_transformationr$  r  $llms.anthropic.skills.transformationr%  #llms.base_llm.skills.transformationr&  $llms.gradient_ai.chat.transformationr'  #llms.openai.chat.gpt_transformationr(  %llms.openai.chat.gpt_5_transformationr)  1llms.openai.transcriptions.whisper_transformationr*  -llms.openai.transcriptions.gpt_transformationr+  )llms.openai.chat.gpt_audio_transformationr,  #llms.nvidia_nim.chat.transformationr-  llms.nvidia_nim.embedr.  #llms.vllm.completion.transformationr5  _VLLMConfig!llms.deepseek.chat.transformationr6  _DeepSeekChatConfigllms.sap.chat.transformationr7  _GenAIHubOrchestrationConfigllms.sap.embed.transformationr8  _GenAIHubEmbeddingConfig'llms.azure.chat.o_series_transformationr9  _AzureOpenAIO1Config#llms.perplexity.chat.transformationr:  _PerplexityChatConfigllms.nscale.chat.transformationr;  _NscaleConfig llms.watsonx.chat.transformationr<  _IBMWatsonXChatConfig&llms.watsonx.completion.transformationr=  _IBMWatsonXAIConfig&llms.litellm_proxy.chat.transformationr>  _LiteLLMProxyChatConfig"llms.deepinfra.chat.transformationr?  _DeepInfraConfig"llms.llamafile.chat.transformationr@  _LlamafileChatConfig"llms.lm_studio.chat.transformationrA  _LMStudioChatConfig#llms.lm_studio.embed.transformationrB  _LmStudioEmbeddingConfig!llms.watsonx.embed.transformationrC  _IBMWatsonXEmbeddingConfig_VertexGeminiConfig'llms.featherless_ai.chat.transformationrE  llms.cerebras.chatrF  llms.baseten.chatrG  llms.sambanova.chatrH  'llms.sambanova.embedding.transformationrI  %llms.fireworks_ai.chat.transformationrJ  +llms.fireworks_ai.completion.transformationrK  4llms.fireworks_ai.audio_transcription.transformationrL  3llms.fireworks_ai.embed.fireworks_ai_transformationrM  #llms.friendliai.chat.transformationrN  %llms.jina_ai.embedding.transformationrO  llms.xai.chat.transformationrP  llms.zai.chat.transformationrQ  llms.aiml.chat.transformationrR  #llms.volcengine.chat.transformationrS  VolcEngineConfig(llms.codestral.completion.transformationrT  llms.azure.azurerU  llms.heroku.chat.transformationrV  !llms.cometapi.chat.transformationrW  "llms.azure.chat.gpt_transformationrX  $llms.azure.chat.gpt_5_transformationrY  $llms.azure.completion.transformationrZ  $llms.hosted_vllm.chat.transformationr[  )llms.hosted_vllm.embedding.transformationr\  )llms.hosted_vllm.responses.transformationr]  'llms.github_copilot.chat.transformationr^  ,llms.github_copilot.responses.transformationr_  ,llms.github_copilot.embedding.transformationr`   llms.chatgpt.chat.transformationra  %llms.chatgpt.responses.transformationrb  !llms.gigachat.chat.transformationrc  &llms.gigachat.embedding.transformationrd  llms.nebius.chat.transformationre  llms.wandb.chat.transformationrf  "llms.dashscope.chat.transformationrg  !llms.moonshot.chat.transformationrh  ,llms.docker_model_runner.chat.transformationri  llms.v0.chat.transformationrj  llms.oci.chat.transformationrk  llms.morph.chat.transformationrl   llms.ragflow.chat.transformationrm  "llms.lambda_ai.chat.transformationrn  #llms.hyperbolic.chat.transformationro  *llms.vercel_ai_gateway.chat.transformationrp  !llms.ovhcloud.chat.transformationrq  &llms.ovhcloud.embedding.transformationrr  "llms.cometapi.embed.transformationrs  !llms.lemonade.chat.transformationrt  'llms.snowflake.embedding.transformationru  $llms.amazon_nova.chat.transformationrv  #litellm.caching.llm_caching_handlerrw  litellm.types.llms.bedrockrx  ry  rz  r{  r|  litellm.types.guardrailsr}  /litellm.types.proxy.management_endpoints.ui_ssor~  r  r  litellm.llms.azure.common_utilsr  r  "litellm.integrations.custom_loggerr<   *litellm.types.integrations.datadog_llm_obsr  3litellm.litellm_core_utils.logging_callback_managerr  r  lowerr  r  rT  rP  rN  <module>r     s&   "    *Q R   R  	 299^U#u,G    A  
$ $ $ $ $ $ $ $ $ $J  ryy/  sHn45')$ ))+ & +)+ & +)+ & +,. ) ..5/1/ +d UY Q XIM F M26893 )4  	 
  
 02 , 1$% c %-1 * 1&* m *7< $n <49 !> 9$( M (!& & 
   

 
   
 ;? 7 >            
 "$ #"$ $+0 . 0 	 ) + 	 "' $ &05 ~ 5+0 . 0).  . 	 $ & 	  
 	   	
 	   	 	$
C $92992E:;YRYY6>?8<BIIGO9 /  	  
M  - "m " $ $!% %	= #} ##} #	=  
M  "m ""m ""m "-  
M   $ $#} ##} #!% % $ $!% %%) ] )$( M ($( M ('+ } +!] !#} #!% %#} # $ $#} #%) ] ) 
M  	=  
M  "m ""m ""m "!% %%) ] )1O+ !4 
 
 4  
D #
 #$( M (!% % 	   	 #( 4 '# t #16 ($ 6/4 & 4;@ 2D @/3 , 3- - $ 05 ~ 5 
M  0 * FW #%C W*,' ,'+ } +/3 } 3-1 ] 1:> & >6: $m :04 - 437 0 7EJB J68 3 8(-  -$  $ 902 - 2 !&  %	   ', t +	 #D   :> ' >	 4T   ! T ! 	   	 *.  -%) ? )48  / 8"$ $7; 4 ;
E  	   	  U  -2 #T 1 
D $  $)-& -/3, 3"& &#")) a C   bii*  #,"))(g# C   %) ] )%) N )SW  "P W;?8 ?*.  .)-  -.2 ^ 2PT  M TCG @ G/3 n 3CG @ G(, ~ ,#' '48  / 8,0 / 0)-  -/3 } 39= 6 ='+ _ +(,  ,15  5AE . E@D -~ D/1 !9 1$& 	 &,0 > 0%* d *	 d  -2 #T 1*. ' .+/ ( /+/ ( / DF @ E 	   	
 MQ!#JQ # t " 4 "' 4 '	 4  
D d  %* T ) "] !#} #$( > ( 	>  +/ . /+/ . /s )-  $ - 	   	 	   	 ,0 = /:> 7 >  $  L L$67
    
     ') O ( "ioo "
 )5 - 
!] !
,0 > 0  &)e  +&)e  +Us % C 5 S  (+  # - #  3  # !e  #E c !% C "u  $!e  #!e  #% C "u  $"u  $"u  $E c !!e  # U s " U s "E c ! U s "!e  # 3 5S  #  # % C e "#:;  ;Us 5 S  %(U s * #  3 e Us %
C %
C u u u e Us u Us  3  3  #  3  U s "5S 5S Ec !e  # 3 u u  #  3  # "%% C 'Us  3  # % C Ec Us Us "u  $5S u  3  # u u 	3 Ec  #  3  # # %e u %
C  # # % 3 %c %u !$ 3 &u "%% C '% C  #  U s "e e  # u  #  U s " (
<f+ f+R   )0:''
 
; 
   
,"$%  	
 

   

 	 
   

 
.   !" 
-#$ %& '( )* 
/+, -. /0 12 34 '5'6 78 9: ;< => ?@ A B C!D E"F G#H I$J K%L M&N O'P Q(R S)T U*V W+X Y,Z [-\ ].^ _/` a0b c1d e2f g3h i4j k5l m6n o7p q8r s9t u:v w;x y<z {=| }>~ ?@ A@B CAD EBF GCH IDJ KEL MFN OGP QHR SIT !UJ!V WKX 
/YLN
` Z
a,/MMa<a m00a %	a
 !a !a %a %a ~a #a 1a !a #  	
    a, K-a. ~ 77/a0 m1a2 m3a4 =5a6 !7a8 #9a: ;a< ~=a> m?a@ '*GGAaB %CaD  !AEaF 
:GaH 
:IaJ mKaL MaN OaP "QaR SaT mUaV WaX #YaZ #[a\ !]a^ !_a` #aab Kcad Keaf \--gah -iaj #kal man oap !qar #sat !$>>uav mwax m55yaz K{a| #}a~ ~a@ !AaB %CaD ,EaF mGaH +IaJ KaL #MaN mOaP !QaR SaT UaV 	)WaX \YaZ ![a\ #]a^ 1_a` ~aab cad 
:eaf #gah \iaj ";;kal man oap %qar !sat +uav ~wax ~yaz !{a|  !+Aa D aL )22"""$"&*.'L.M%, "D 0 	
!"#	
"#$  $	$
  !!     #-j!9  #+  E D2G2I / I  
 ' & ; ; W W  D C 5 5  :;   4 3 0 / - , 	 	 	 	 	          ,  O O            2 * ) ' '       $  H   	 	 	 	 	      
 2 1          ' & / / 
   
 8< 4 ;BF ? F   1 0+- ( -    
 	    	 %* T ) S R G F + + 59 1 8% 26 . 5" ????TT--    VU  SR  YXXX    WV??  WVVV  MLSS       WVVVVV              TSOOUU   NMSSUUSS    VU   LKMM                                     PO  ED      QP                XW     XW 
 -,$$..&&$$66 ON      ON    XW     
 "!11!CC;;3355%%551199++3311;;??--  EDAAGG        MLLLOO    VUSS          QP  TS  NMJJ    JILLRRPP          CBGG   76  76))!! ,+22,,--11(;;((--..11++&&1111--((''00&&!>>..00,,))"55  )( +*$$ 65 -- A@  @? SR  54 1011 $)   299+R0668<VV CKrP  