§
    ÒÁ³gƒ0  ã                  ó  — d dl mZ d dlZd dlZd dlZd dlZd dlmZmZm	Z	m
Z
mZmZmZmZmZmZ d dlmZ d dlmZmZ d dlmZ d dlZddlmZmZmZmZ dd	lmZmZ  ed
¦  «        Z  ede	e!df         ¬¦  «        Z" ede
e#e!f         ¬¦  «        Z$ edee!         ¬¦  «        Z% ededef         ¬¦  «        Z&erddl'm(Z(m)Z) dyd„Z*dzd„Z+d{d%„Z,d|d(„Z-d}d*„Z.d~d-„Z/dd/„Z0d€d2„Z1d�d4„Z2d‚d7„Z3dƒd9„Z4d„d;„Z5d…d=„Z6d†d?„Z7d@dAdBœd‡dG„Z8dˆdI„Z9d‰dL„Z: edM¦  «        Z; edN¦  «        Z<edŠdP„¦   «         Z=ed‹dS„¦   «         Z=edŒdT„¦   «         Z=d�dV„Z=dŽdX„Z>d�dZ„Z?d�d\„Z@d‘d^„ZAd’d`„ZBd“db„ZCd”dd„ZDd•df„ZEd–dh„ZFd—dl„ZGd˜dm„ZHdndoœd™dq„ZIdšds„ZJd›dv„ZKdœdx„ZLdS )�é    )ÚannotationsN)
ÚTYPE_CHECKINGÚAnyÚTupleÚMappingÚTypeVarÚCallableÚIterableÚSequenceÚcastÚoverload)ÚPath)ÚdateÚdatetime)Ú	TypeGuardé   )ÚNotGivenÚ	FileTypesÚ
NotGivenOrÚHeadersLike)Ú
parse_dateÚparse_datetimeÚ_TÚ_TupleT.)ÚboundÚ	_MappingTÚ
_SequenceTÚ	CallableT)ÚAzureOpenAIÚAsyncAzureOpenAIÚtúIterable[Iterable[_T]]Úreturnúlist[_T]c                ó   — d„ | D ¦   «         S )Nc                ó   — g | ]	}|D ]}|‘ŒŒ
S © r'   )Ú.0ÚsublistÚitems      úR/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/openai/_utils/_utils.pyú
<listcomp>zflatten.<locals>.<listcomp>'   s%   € Ð6Ð6Ð6�W¨gÐ6Ð6 dˆDÐ6Ð6Ð6Ð6ó    r'   )r!   s    r+   Úflattenr.   &   s   € Ø6Ð6 Ð6Ñ6Ô6Ð6r-   ÚqueryúMapping[str, object]ÚpathsúSequence[Sequence[str]]úlist[tuple[str, FileTypes]]c          	     ó`   — g }|D ](}|                      t          | |dd¬¦  «        ¦  «         Œ)|S )zÄRecursively extract files from the given dictionary based on specified paths.

    A path may look like this ['foo', 'files', '<array>', 'data'].

    Note: this mutates the given dictionary.
    r   N©ÚindexÚflattened_key)ÚextendÚ_extract_items)r/   r1   ÚfilesÚpaths       r+   Úextract_filesr<   *   sE   € ð *,€EØð Oð OˆØ�Š•^ E¨4°qÈÐMÑMÔMÑNÔNÐNÐNØ€Lr-   ÚobjÚobjectr;   úSequence[str]r6   Úintr7   ú
str | Nonec               ó,  ‡‡‡— 	 ‰‰         }nX# t           $ rK t          | t          ¦  «        rg cY S ddlm}  || ‰¬¦  «         ‰€J ‚‰t          t          | ¦  «        fgcY S w xY w‰dz  Št          | ¦  «        rf	 t          ‰¦  «        ‰k    r|  	                    |¦  «        }n| |         }n# t          $ r g cY S w xY w‰€|Šn	‰d|› d�z  Št          |‰‰‰¬¦  «        S t          | ¦  «        r%|dk    rg S t          ˆˆˆfd	„| D ¦   «         ¦  «        S g S )
Nr   )Úassert_is_file_content)Úkeyé   ú[ú]r5   z<array>c           	     óD   •— g | ]}t          |‰‰‰�‰dz   nd¬¦  «        ‘ŒS )Nz[]r5   )r9   )r(   r*   r7   r6   r;   s     €€€r+   r,   z"_extract_items.<locals>.<listcomp>o   sV   ø€ ð ð ð ð õ ØØØØ:GÐ:S -°$Ñ"6Ð"6ÐY]ð	ñ ô ðð ð r-   )Ú
IndexErrorÚ
isinstancer   Ú_filesrC   r   r   Úis_dictÚlenÚpopÚKeyErrorr9   Úis_listr.   )r=   r;   r6   r7   rD   rC   r*   s    ```   r+   r9   r9   =   sÀ  øøø€ ð7Ø�5ŒkˆˆøÝð 7ð 7ð 7Ý�c�8Ñ$Ô$ð 	àˆIˆIˆIð 	4Ð3Ð3Ð3Ð3Ð3ð 	Ð˜s¨Ð6Ñ6Ô6Ð6ØÐ(Ð(Ð(Ø¥¥Y°Ñ 4Ô 4Ð5Ð6Ð6Ð6Ð6ð7øøøð 
ˆQ�J€EÝˆs�|„|ð $
ð
	å�D‘	”	˜eÒ#Ð#Ø—w’w˜s‘|”|��à˜3”x�øøÝð 	ð 	ð 	ð ˆIˆIˆIð		øøøð
 Ð ØˆMˆMà˜Z ˜Z˜Z˜ZÑ'ˆMÝØØØØ'ð	
ñ 
ô 
ð 	
õ 
�‰Œð 
Ø�)ÒÐØˆIåðð ð ð ð ð ð  ðñ ô ñ

ô 

ð 
	
ð €Is&   … Ž!A#±/A#Á"A#Á;1B- Â-B<Â;B<úNotGivenOr[_T]úTypeGuard[_T]c                ó.   — t          | t          ¦  «         S ©N©rJ   r   ©r=   s    r+   Úis_givenrW   ~   s   € Ý˜#�xÑ(Ô(Ð(Ð(r-   úTypeGuard[tuple[object, ...]]c                ó,   — t          | t          ¦  «        S rT   ©rJ   ÚtuplerV   s    r+   Úis_tupler\   Œ   ó   € Ý�c�5Ñ!Ô!Ð!r-   ú_TupleT | objectúTypeGuard[_TupleT]c                ó,   — t          | t          ¦  «        S rT   rZ   rV   s    r+   Ú
is_tuple_tra   �   r]   r-   úTypeGuard[Sequence[object]]c                ó,   — t          | t          ¦  «        S rT   ©rJ   r   rV   s    r+   Úis_sequencere   ”   ó   € Ý�c�8Ñ$Ô$Ð$r-   ú_SequenceT | objectúTypeGuard[_SequenceT]c                ó,   — t          | t          ¦  «        S rT   rd   rV   s    r+   Úis_sequence_trj   ˜   rf   r-   úTypeGuard[Mapping[str, object]]c                ó,   — t          | t          ¦  «        S rT   ©rJ   r   rV   s    r+   Ú
is_mappingrn   œ   ó   € Ý�c�7Ñ#Ô#Ð#r-   ú_MappingT | objectúTypeGuard[_MappingT]c                ó,   — t          | t          ¦  «        S rT   rm   rV   s    r+   Úis_mapping_trs       ro   r-   úTypeGuard[dict[object, object]]c                ó,   — t          | t          ¦  «        S rT   )rJ   ÚdictrV   s    r+   rL   rL   ¤   ó   € Ý�c�4Ñ Ô Ð r-   úTypeGuard[list[object]]c                ó,   — t          | t          ¦  «        S rT   )rJ   ÚlistrV   s    r+   rP   rP   ¨   rw   r-   úTypeGuard[Iterable[object]]c                ó,   — t          | t          ¦  «        S rT   )rJ   r
   rV   s    r+   Úis_iterabler}   ¬   rf   r-   r*   c                óâ   — t          | ¦  «        r1t          t          d„ |                      ¦   «         D ¦   «         ¦  «        S t	          | ¦  «        rt          t          d„ | D ¦   «         ¦  «        S | S )z­Minimal reimplementation of copy.deepcopy() that will only copy certain object types:

    - mappings, e.g. `dict`
    - list

    This is done for performance reasons.
    c                ó4   — i | ]\  }}|t          |¦  «        “ŒS r'   ©Údeepcopy_minimal)r(   ÚkÚvs      r+   ú
<dictcomp>z$deepcopy_minimal.<locals>.<dictcomp>¹   s'   € ÐIÐIÐI±D°A°q˜Õ,¨QÑ/Ô/ÐIÐIÐIr-   c                ó,   — g | ]}t          |¦  «        ‘ŒS r'   r€   )r(   Úentrys     r+   r,   z$deepcopy_minimal.<locals>.<listcomp>»   s!   € ÐCÐCÐC°UÕ)¨%Ñ0Ô0ÐCÐCÐCr-   )rn   r   r   ÚitemsrP   )r*   s    r+   r�   r�   °   so   € õ �$ÑÔð KÝ•BÐIÐI¸D¿JºJ¹L¼LÐIÑIÔIÑJÔJÐJÝˆt�}„}ð EÝ•BÐCÐC¸dÐCÑCÔCÑDÔDÐDØ€Kr-   z, Úor)ÚdelimÚfinalÚseqr‰   ÚstrrŠ   c               óÜ   — t          | ¦  «        }|dk    rdS |dk    r| d         S |dk    r| d         › d|› d| d         › �S |                     | d d…         ¦  «        d|› d| d         › �z   S )Nr   Ú rE   r   ú éÿÿÿÿ)rM   Újoin)r‹   r‰   rŠ   Úsizes       r+   Ú
human_joinr“   À   sŽ   € Ýˆs‰8Œ8€DØˆq‚y€yØˆràˆq‚y€yØ�1Œvˆàˆq‚y€yØ�a”&Ð+Ð+˜5Ð+Ð+ 3 q¤6Ð+Ð+Ð+à�:Š:�c˜#˜2˜#”hÑÔÐ"7 eÐ"7Ð"7¨c°"¬gÐ"7Ð"7Ñ7Ð7r-   Ústringc                ó   — d| › d�S )zOAdd single quotation marks around the given string. Does *not* do any escaping.ú'r'   )r”   s    r+   Úquoter—   Î   s   € àˆvˆ=ˆ=ˆ=Ðr-   Úvariantsú Callable[[CallableT], CallableT]c                 ó   ‡ — dˆ fd„}|S )a4  Decorator to enforce a given set of arguments or variants of arguments are passed to the decorated function.

    Useful for enforcing runtime validation of overloaded functions.

    Example usage:
    ```py
    @overload
    def foo(*, a: str) -> str: ...


    @overload
    def foo(*, b: bool) -> str: ...


    # This enforces the same constraints that a static type checker would
    # i.e. that either a or b must be passed to the function
    @required_args(["a"], ["b"])
    def foo(*, a: str | None = None, b: bool | None = None) -> str: ...
    ```
    Úfuncr   r#   c                ó¾   •‡ ‡— t          j        ‰ ¦  «        j        }d„ |                     ¦   «         D ¦   «         Št	          j        ‰ ¦  «        dˆ ˆˆfd„¦   «         }|S )Nc                óB   — g | ]\  }}|j         |j        |j        hv ¯|‘ŒS r'   )ÚkindÚPOSITIONAL_ONLYÚPOSITIONAL_OR_KEYWORD)r(   ÚnameÚparams      r+   r,   z0required_args.<locals>.inner.<locals>.<listcomp>ë   sL   € ð 
ð 
ð 
á��eØŒzàÔ%ØÔ+ððð ð ðð ð r-   Úargsr>   Úkwargsr#   c                 óH  •‡
— t          ¦   «         Š
t          | ¦  «        D ]g\  }}	 ‰
                     ‰|         ¦  «         Œ"# t          $ r9 t	          ‰j        › dt          ‰¦  «        › dt          | ¦  «        › d�¦  «        d ‚w xY w|                     ¦   «         D ]}‰
                     |¦  «         Œ‰D ]!}t          ˆ
fd„|D ¦   «         ¦  «        }|r nÅŒ"t          ‰¦  «        dk    r t          d„ ‰D ¦   «         ¦  «        }d|› d�}n‚t          ‰¦  «        d	k    sJ ‚t          t          ‰d	         ¦  «        ‰
z
  ¦  «        }	t          |	¦  «        dk    rd
t          d„ |	D ¦   «         ¦  «        › �}ndt          |	d	         ¦  «        › �}t	          |¦  «        ‚ ‰| i |¤ŽS )Nz	() takes z argument(s) but z were givenc              3  ó    •K  — | ]}|‰v V — Œ	d S rT   r'   )r(   r¢   Úgiven_paramss     €r+   ú	<genexpr>z@required_args.<locals>.inner.<locals>.wrapper.<locals>.<genexpr>  s(   øè è € ÐJÐJ¸˜u¨Ð4ÐJÐJÐJÐJÐJÐJr-   rE   c                óP   — g | ]#}d t          d„ |D ¦   «         d¬¦  «        z   dz   ‘Œ$S )ú(c                ó,   — g | ]}t          |¦  «        ‘ŒS r'   ©r—   ©r(   Úargs     r+   r,   zLrequired_args.<locals>.inner.<locals>.wrapper.<locals>.<listcomp>.<listcomp>
  s   € Ð*IÐ*IÐ*I¸#­5°©:¬:Ð*IÐ*IÐ*Ir-   Úand)rŠ   ú))r“   )r(   Úvariants     r+   r,   zArequired_args.<locals>.inner.<locals>.wrapper.<locals>.<listcomp>
  sA   € ÐvÐvÐvÐbi˜�zÐ*IÐ*IÀÐ*IÑ*IÔ*IÐQVÐWÑWÔWÑWÐZ]Ñ]ÐvÐvÐvr-   z,Missing required arguments; Expected either z arguments to be givenr   zMissing required arguments: c                ó,   — g | ]}t          |¦  «        ‘ŒS r'   r¬   r­   s     r+   r,   zArequired_args.<locals>.inner.<locals>.wrapper.<locals>.<listcomp>  s   € ÐHgÐHgÐHgÐX[ÍÈsÉÌÐHgÐHgÐHgr-   zMissing required argument: )ÚsetÚ	enumerateÚaddrI   Ú	TypeErrorÚ__name__rM   ÚkeysÚallr“   rz   r—   )r£   r¤   ÚiÚ_rD   r±   ÚmatchesÚ
variationsÚmsgÚmissingr§   r›   Ú
positionalr˜   s             @€€€r+   Úwrapperz-required_args.<locals>.inner.<locals>.wrapperõ   s	  øø€ å%(¡U¤UˆLÝ! $™œð  ð  ‘��1ð Ø ×$Ò$ Z°¤]Ñ3Ô3Ð3Ð3øÝ!ð  ð  ð  Ý#Øœ=ÐkÐkµ3°z±?´?ÐkÐkÕUXÐY]ÑU^ÔU^ÐkÐkÐkñô àð ð øøøð
 —{’{‘}”}ð &ð &�Ø× Ò  Ñ%Ô%Ð%Ð%à#ð %ð %�ÝÐJÐJÐJÐJÀ'ÐJÑJÔJÑKÔK�Øð Ø�Eðõ �x‘=”= 1Ò$Ð$Ý!+ØvÐvÐmuÐvÑvÔvñ"ô "�Jð lÈÐkÐkÐk�C�Cå˜x™=œ=¨1Ò,Ð,Ð,Ð,õ #¥3 x°¤{Ñ#3Ô#3°lÑ#BÑCÔC�GÝ˜7‘|”| aÒ'Ð'Øj½ZÐHgÐHgÐ_fÐHgÑHgÔHgÑ=hÔ=hÐjÐj˜˜àO½EÀ'È!Ä*Ñ<MÔ<MÐOÐO˜Ý ‘n”nÐ$Ø�4˜Ð( Ð(Ð(Ð(s   ¦AÁAB)r£   r>   r¤   r>   r#   r>   )ÚinspectÚ	signatureÚ
parametersr‡   Ú	functoolsÚwraps)r›   ÚparamsrÁ   rÀ   r˜   s   `  @€r+   Úinnerzrequired_args.<locals>.inneré   s…   øøø€ ÝÔ" 4Ñ(Ô(Ô3ˆð
ð 
à%Ÿ|š|™~œ~ð
ñ 
ô 
ˆ
õ 
Œ˜Ñ	Ô	ð!	)ð !	)ð !	)ð !	)ð !	)ð !	)ð !	)ñ 
Ô	ð!	)ðF ˆr-   )r›   r   r#   r   r'   )r˜   rÈ   s   ` r+   Úrequired_argsrÉ   Ó   s)   ø€ ð,0ð 0ð 0ð 0ð 0ð 0ðd €Lr-   Ú_KÚ_VÚNonec                ó   — d S rT   r'   rV   s    r+   Ústrip_not_givenrÎ   "  s   € Ø(+¨r-   úMapping[_K, _V | NotGiven]údict[_K, _V]c                ó   — d S rT   r'   rV   s    r+   rÎ   rÎ   &  s   € ØFIÀcr-   c                ó   — d S rT   r'   rV   s    r+   rÎ   rÎ   *  s   € Ø,/¨Cr-   úobject | Nonec                óh   — | €dS t          | ¦  «        s| S d„ |                      ¦   «         D ¦   «         S )zHRemove all top-level keys where their values are instances of `NotGiven`Nc                óD   — i | ]\  }}t          |t          ¦  «        °||“ŒS r'   rU   ©r(   rD   Úvalues      r+   r„   z#strip_not_given.<locals>.<dictcomp>6  s-   € ÐXÐXÐX™:˜3 ½JÀuÍhÑ<WÔ<WÐXˆC�ÐXÐXÐXr-   )rn   r‡   rV   s    r+   rÎ   rÎ   .  s;   € à
€{Øˆtå�c‰?Œ?ð Øˆ
àXÐX¨¯ª©¬ÐXÑXÔXÐXr-   Úvalc                ó$   — t          | d¬¦  «        S )Né
   )Úbase)r@   ©rØ   s    r+   Úcoerce_integerrÝ   9  s   € Ýˆs˜ÐÑÔÐr-   Úfloatc                ó    — t          | ¦  «        S rT   )rÞ   rÜ   s    r+   Úcoerce_floatrà   =  s   € Ý�‰:Œ:Ðr-   Úboolc                ó&   — | dk    p| dk    p| dk    S )NÚtrueÚ1Úonr'   rÜ   s    r+   Úcoerce_booleanræ   A  s   € Ø�&Š=Ð5˜C 3šJÐ5¨#°ª+Ð5r-   ú
int | Nonec                ó(   — | €d S t          | ¦  «        S rT   )rÝ   rÜ   s    r+   Úmaybe_coerce_integerré   E  ó   € Ø
€{ØˆtÝ˜#ÑÔÐr-   úfloat | Nonec                ó(   — | €d S t          | ¦  «        S rT   )rà   rÜ   s    r+   Úmaybe_coerce_floatrí   K  s   € Ø
€{ØˆtÝ˜ÑÔÐr-   úbool | Nonec                ó(   — | €d S t          | ¦  «        S rT   )ræ   rÜ   s    r+   Úmaybe_coerce_booleanrð   Q  rê   r-   Úprefixc                ó^   — |                       |¦  «        r| t          |¦  «        d…         S | S )zXRemove a prefix from a string.

    Backport of `str.removeprefix` for Python < 3.9
    N)Ú
startswithrM   )r”   rñ   s     r+   Úremoveprefixrô   W  s4   € ð
 ×Ò˜Ñ Ô ð %Ø•c˜&‘k”k�m�mÔ$Ð$Ø€Mr-   Úsuffixc                ó`   — |                       |¦  «        r| dt          |¦  «         …         S | S )zXRemove a suffix from a string.

    Backport of `str.removesuffix` for Python < 3.9
    N)ÚendswithrM   )r”   rõ   s     r+   Úremovesuffixrø   a  s4   € ð
 ‡‚�vÑÔð &Ø�n�˜V™œ˜�nÔ%Ð%Ø€Mr-   r   c                óŠ   — t          | ¦  «                             ¦   «         }t          j                             | ¦  «        }||fS rT   )r   Ú
read_bytesÚosr;   Úbasename)r;   ÚcontentsÚ	file_names      r+   Úfile_from_pathrÿ   k  s9   € Ý�D‰zŒz×$Ò$Ñ&Ô&€HÝ”× Ò  Ñ&Ô&€IØ�xÐ Ð r-   Úheadersr   Úheaderc                óÂ  — |                      ¦   «         }t          | ¦  «        rK|                      ¦   «         D ]6\  }}|                      ¦   «         |k    rt          |t          ¦  «        r|c S Œ7t          j        dd„ |                     ¦   «         ¦  «        }|||                     ¦   «         |fD ]}|  	                    |¦  «        }|r|c S Œt          d|› d�¦  «        ‚)Nz([^\w])(\w)c                ó|   — |                       d¦  «        |                       d¦  «                             ¦   «         z   S )NrE   r   )ÚgroupÚupper)Úpats    r+   ú<lambda>z%get_required_header.<locals>.<lambda>z  s,   € ¸#¿)º)ÀA¹,¼,ÈÏÊÐSTÉÌ×I[ÒI[ÑI]ÔI]Ñ:]€ r-   zCould not find z header)Úlowerrs   r‡   rJ   rŒ   ÚreÚsubÚ
capitalizer  ÚgetÚ
ValueError)r   r  Úlower_headerr‚   rƒ   Úintercaps_headerÚnormalized_headerr×   s           r+   Úget_required_headerr  q  só   € Ø—<’<‘>”>€LÝ�GÑÔð à—M’M‘O”Oð 	ð 	‰DˆAˆqØ�wŠw‰yŒy˜LÒ(Ð(­Z¸½3Ñ-?Ô-?Ð(Ø���øõ ”v˜nÐ.]Ð.]Ð_e×_pÒ_pÑ_rÔ_rÑsÔsÐà$ l°F·L²L±N´NÐDTÐUð ð ÐØ—’Ð-Ñ.Ô.ˆØð 	ØˆLˆLˆLð	õ Ð6 vÐ6Ð6Ð6Ñ
7Ô
7Ð7r-   c                 óL   — 	 t          j        ¦   «         S # t          $ r Y dS w xY w)NÚfalse)ÚsniffioÚcurrent_async_libraryÚ	Exceptionr'   r-   r+   Úget_async_libraryr  „  s8   € ðÝÔ,Ñ.Ô.Ð.øÝð ð ð Øˆwˆwðøøøs   ‚ •
#¢#é€   ©Úmaxsizer  c                óV   — t          j        | ¬¦  «        }t          t          |¦  «        S )zmA version of functools.lru_cache that retains the type signature
    for the wrapped function arguments.
    r  )rÅ   Ú	lru_cacher   r   )r  rÁ   s     r+   r  r  ‹  s0   € õ Ô!Øðñ ô €Gõ •�WÑÔÐr-   Údatac                ó:  — t          | ¦  «        rd„ |                      ¦   «         D ¦   «         S t          | ¦  «        r.t          | t          t
          t          f¦  «        sd„ | D ¦   «         S t          | t          t          f¦  «        r|  	                    ¦   «         S | S )zvTranslates a mapping / sequence recursively in the same fashion
    as `pydantic` v2's `model_dump(mode="json")`.
    c                óN   — i | ]"\  }}t          |¦  «        t          |¦  «        “Œ#S r'   ©Ú	json_saferÖ   s      r+   r„   zjson_safe.<locals>.<dictcomp>š  s,   € ÐPÐPÐP±Z°S¸%•	˜#‘”¥	¨%Ñ 0Ô 0ÐPÐPÐPr-   c                ó,   — g | ]}t          |¦  «        ‘ŒS r'   r   )r(   r*   s     r+   r,   zjson_safe.<locals>.<listcomp>�  s   € Ð1Ð1Ð1 D•	˜$‘”Ð1Ð1Ð1r-   )
rn   r‡   r}   rJ   rŒ   ÚbytesÚ	bytearrayr   r   Ú	isoformat)r  s    r+   r!  r!  •  s™   € õ �$ÑÔð QØPÐPÀ4Ç:Â:Á<Ä<ÐPÑPÔPÐPå�4ÑÔð 2¥¨Dµ3½½yÐ2IÑ!JÔ!Jð 2Ø1Ð1¨DÐ1Ñ1Ô1Ð1å�$�¥4Ð(Ñ)Ô)ð  Ø�~Š~ÑÔÐà€Kr-   ÚclientúTypeGuard[AzureOpenAI]c                ó.   — ddl m} t          | |¦  «        S )Nr   )r   )Ú	lib.azurer   rJ   )r&  r   s     r+   Úis_azure_clientr*  ¥  s$   € Ø'Ð'Ð'Ð'Ð'Ð'å�f˜kÑ*Ô*Ð*r-   úTypeGuard[AsyncAzureOpenAI]c                ó.   — ddl m} t          | |¦  «        S )Nr   )r    )r)  r    rJ   )r&  r    s     r+   Úis_async_azure_clientr-  «  s%   € Ø,Ð,Ð,Ð,Ð,Ð,å�fÐ.Ñ/Ô/Ð/r-   )r!   r"   r#   r$   )r/   r0   r1   r2   r#   r3   )
r=   r>   r;   r?   r6   r@   r7   rA   r#   r3   )r=   rQ   r#   rR   )r=   r>   r#   rX   )r=   r^   r#   r_   )r=   r>   r#   rb   )r=   rg   r#   rh   )r=   r>   r#   rk   )r=   rp   r#   rq   )r=   r>   r#   rt   )r=   r>   r#   rx   )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Ø   rA   r#   rç   )rØ   rA   r#   rë   )rØ   rA   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+  )MÚ
__future__r   rû   r	  rÂ   rÅ   Útypingr   r   r   r   r   r	   r
   r   r   r   Úpathlibr   r   r   Útyping_extensionsr   r  Ú_typesr   r   r   r   Ú_compatr   r   r   r>   r   rŒ   r   r   r   r)  r   r    r.   r<   r9   rW   r\   ra   re   rj   rn   rs   rL   rP   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+   ú<module>r4     s  ðØ "Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø 	€	€	€	Ø €€€Ø Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð Ð Ð Ð Ð Ð Ø #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'à €€€à AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AØ PÐ PÐ PÐ PÐ PÐ PÐ PÐ Pà€WˆT�]„]€Ø
ˆ'�) 5¨°¨Ô#5Ð
6Ñ
6Ô
6€ØˆG�K w¨s°F¨{Ô';Ð<Ñ<Ô<€	ØˆW�\¨°&Ô)9Ð:Ñ:Ô:€
ØˆG�K x°°S°Ô'9Ð:Ñ:Ô:€	àð :Ø9Ð9Ð9Ð9Ð9Ð9Ð9Ð9ð7ð 7ð 7ð 7ðð ð ð ð&>ð >ð >ð >ðB)ð )ð )ð )ð"ð "ð "ð "ð"ð "ð "ð "ð%ð %ð %ð %ð%ð %ð %ð %ð$ð $ð $ð $ð$ð $ð $ð $ð!ð !ð !ð !ð!ð !ð !ð !ð%ð %ð %ð %ðð ð ð ð  48Àdð 8ð 8ð 8ð 8ð 8ð 8ðð ð ð ð
Hð Hð Hð HðV €WˆT�]„]€Ø€WˆT�]„]€ð 
Ø +Ð +Ð +ñ 
„Ø +ð 
Ø IÐ IÐ Iñ 
„Ø Ið 
Ø /Ð /Ð /ñ 
„Ø /ðYð Yð Yð Yðð ð ð ðð ð ð ð6ð 6ð 6ð 6ðð ð ð ðð ð ð ðð ð ð ðð ð ð ðð ð ð ð!ð !ð !ð !ð8ð 8ð 8ð 8ð&ð ð ð ð (+ð ð ð ð ð ð ðð ð ð ð +ð +ð +ð +ð0ð 0ð 0ð 0ð 0ð 0r-   