o
    g©Zha
  ã                   @   s¬   U d dl Z d dlZd dlmZ d dlmZmZmZ ee	fZ
eee ee	 f ed< ddeee	f dedefd	d
„Zddeee	f dede	fdd„Zdefdd„Zg d¢ZdS )é    N)ÚPath)ÚTupleÚTypeÚUnionÚstring_typesÚasciiÚxÚencodingÚreturnc                 C   ó   t | tƒs
|  |¡S | S ©N)Ú
isinstanceÚstrÚdecode©r   r	   © r   úK/var/www/html/lang_env/lib/python3.10/site-packages/elasticsearch/compat.pyÚto_str   ó   

r   c                 C   r   r   )r   ÚbytesÚencoder   r   r   r   Úto_bytes    r   r   c                  C   s”   z?t  d¡d } ttj|  jƒ}|jdk}|r|j}tt	 
¡ ƒD ]\}}t|jƒ}~|r1||jvs7|s<||kr<|  W S q W dS  tyI   Y dS w )zMDynamically determine warning stacklevel for warnings based on the call stackÚ.r   z__init__.py)Ú__name__Ú	partitionr   ÚsysÚmodulesÚ__file__ÚnameÚparentÚ	enumerateÚinspectÚstackÚfilenameÚparentsÚKeyError)Úmodule_nameÚmodule_pathZmodule_is_folderÚlevelÚframeÚframe_filenamer   r   r   Úwarn_stacklevel&   s.   

þ
ý
€òþþr+   )r   r   r   r+   )r   )r!   r   Úpathlibr   Útypingr   r   r   r   r   r   Ú__annotations__r   r   Úintr+   Ú__all__r   r   r   r   Ú<module>   s   
   $