https://t.me/RX1948
Server : nginx/1.24.0
System : Linux ip-172-31-33-48 6.14.0-1011-aws #11~24.04.1-Ubuntu SMP Fri Aug 1 02:07:25 UTC 2025 x86_64
User : www-data ( 33)
PHP Version : 8.3.6
Disable Function : NONE
Directory :  /lib/python3/dist-packages/botocore/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3/dist-packages/botocore/__pycache__/compat.cpython-312.pyc
�

ցf<+��n�ddlZddlZddlZddlZddlZddlZddlmZddlZddl	Z	ddl
Z
ddlZddlm
Z
ddlmZddlmZddlZddlmZddlmZddlmZej2e�ZGd	�d
e�ZddlmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'ddlm(Z(dd
l)m*Z+ddl,m-Z-ddl.m/Z/ddl0m1Z1e+Z2e3Z3e!Z4d�Z5d�Z6d4d�Z7d5d�Z8	ddl9m:cm;Z<e<j�ZAddlBZBd�ZCeDd��ZEeDd��ZFeEe_EeFe_Fd�ZGd�ZH	ej��dZJd�ZLd6d�ZMd�ZNd�ZO	ddlPZQej�j�d d!�ZTeTj��d"k(ZVd#ZWe
j�d$eWzd%z�ZYd&ZZd'j�eZeW�(�Z\eZe\d)�Z]gd*�Z^d+Z_d,d-j�e^D�cgc]}|e]z��	c}�zd.zZad/e_zd0zZbd1eazd,zebzd2zZce
j�d$eczd%z�Zdeed3�Zf	ddlgZgdZhy#e=$r
ddl>m:cm?Z<Y��>wxYw#eK$rdZJY��wxYw#e=$rdZVY��wxYwcc}w#e=$rdZhYywxYw)7�N)�HTTPMessage)�OrderedDict)�MutableMapping)�floor)�MD5UnavailableError)�tzlocal)�
exceptionsc��eZdZy)�HTTPHeadersN)�__name__�
__module__�__qualname__���1/usr/lib/python3/dist-packages/botocore/compat.pyrr%s��rr)
�quote�	urlencode�unquote�unquote_plus�urlparse�urlsplit�
urlunsplit�urljoin�	parse_qsl�parse_qs)�HTTPResponse)�IOBase)�encodebytes)�
formatdate)�zip_longestc�v�|jjjjj	|�y)z|Set the timeout of the socket from an HTTPResponse.

    :param http_response: An instance of ``httplib.HTTPResponse``

    N)�_fp�fp�raw�_sock�
settimeout)�
http_response�timeouts  r�set_socket_timeoutr)@s*���������"�"�-�-�g�6rc�2�tj|�dS)N�)�inspect�getfullargspec)�funcs r�accepts_kwargsr/Hs���!�!�$�'��*�*rc��|S�Nr��s�encoding�errorss   r�ensure_unicoder6Ms���Hrc��t|t�r|j||�St|t�r|St	dt|��d���)Nz Expected str or bytes, received �.)�
isinstance�str�encode�bytes�
ValueError�typer2s   r�ensure_bytesr?QsE���!�S���x�x��&�)�)��!�U����
�7��Q��y��B�
C�Crc�R�tjddtjd��y)N�ignorez+A true SSLContext object is not available.*z.*urllib3\.util\.ssl_)�message�category�module)�warnings�filterwarningsr	�InsecurePlatformWarningrrr�filter_ssl_warningsrHbs"������=��3�3�'�	rc�N�|�}|j�D]
\}}|||<�|Sr1)�items)�cls�d�new_instance�key�values     r�	from_dictrPls2���5�L��g�g�i�"�
��U�!��S��"��rc�2�|�}|D]
\}}|||<�|Sr1r)rK�pairsrMrNrOs     r�
from_pairsrSts,���5�L��"�
��U�!��S��"��rc�0�tj|�}|S)zI
    This used to be a compat shim for 2.6 but is now just an alias.
    )�copy)�kwargs�copy_kwargss  rrWrW�s���)�)�F�#�K��rc�"�|j�S)z�
    Returns the total seconds in a ``datetime.timedelta``.

    This used to be a compat shim for 2.6 but is now just an alias.

    :param delta: The timedelta object
    :type delta: ``datetime.timedelta``
    )�
total_seconds)�deltas rrYrY�s����� � rTFc�L�trtj|i|��St��)a:
    Attempts to get an md5 hashing object.

    :param args: Args to pass to the MD5 constructor
    :param kwargs: Key word arguments to pass to the MD5 constructor
    :return: An MD5 hashing object if available. If it is unavailable, None
        is returned if raise_error_if_unavailable is set to False.
    )�
MD5_AVAILABLE�hashlib�md5r)�argsrVs  r�get_md5r`�s$����{�{�D�+�F�+�+�!�#�#rc�p�|�tj}|dk(rt|�Stj|�S)N�win32)�sys�platform�_windows_shell_split�shlex�split)r3rds  r�compat_shell_splitrh�s2�����<�<���7��#�A�&�&��{�{�1�~�rc
��|sgSg}g}d}d}|D]�}|dk(r|dz
}�|dk(ra|dkDrG|jdtt|dz��z�|dz}d}|dk(r|jd��_|}|jd��t|dvrC|sA|dkDr|jd|z�d}|s��|jdj|��g}��|dkDr|jd|z�d}|j|���|rt	d	|����|dkDr|jd|z�|r |jdj|��|S)
aSplits up a windows command as the built-in command parser would.

    Windows has potentially bizarre rules depending on where you look. When
    spawning a process via the Windows C runtime (which is what python does
    when you call popen) the rules are as follows:

    https://docs.microsoft.com/en-us/cpp/cpp/parsing-cpp-command-line-arguments

    To summarize:

    * Only space and tab are valid delimiters
    * Double quotes are the only valid quotes
    * Backslash is interpreted literally unless it is part of a chain that
      leads up to a double quote. Then the backslashes escape the backslashes,
      and if there is an odd number the final backslash escapes the quote.

    :param s: The command string to split up into parts.
    :return: A list of command components.
    Fr�\��"r+�)� �	z No closing quotation in string: )�append�intr�joinr=)r3�
components�buff�	is_quoted�num_backslashes�	character�	remainders       rrere�s~��(
��	��J�
�D��I��O��1#�	����

�q� �O�
�#�
���"����D�3�u�_�q�-@�'A�#B�B�C�+�a�/�	�"#����>��K�K��$��&�
�I�
�K�K��O�
�+�
%�i���"����D�?�2�3�"#����!�!�"�'�'�$�-�0�����"����D�?�2�3�"#���K�K�	�"�c1#�h��;�A�3�?�@�@�������D�?�*�+�����"�'�'�$�-�(��rc�R�tjdk(rddlm}t|fStfS)Nrbr��
tzwinlocal)rcrd�dateutil.tzr{rrzs r�get_tzinfo_optionsr}s&���|�|�w��*���$�$��z�r�BOTO_DISABLE_CRT�false�truez(?:[0-9]{1,3}\.){3}[0-9]{1,3}�^�$z[0-9A-Fa-f]{1,4}z(?:{hex}:{hex}|{ipv4}))�hex�ipv4)r��ls32)	z(?:%(hex)s:){6}%(ls32)sz::(?:%(hex)s:){5}%(ls32)sz%(?:%(hex)s)?::(?:%(hex)s:){4}%(ls32)sz2(?:(?:%(hex)s:)?%(hex)s)?::(?:%(hex)s:){3}%(ls32)sz6(?:(?:%(hex)s:){0,2}%(hex)s)?::(?:%(hex)s:){2}%(ls32)sz/(?:(?:%(hex)s:){0,3}%(hex)s)?::%(hex)s:%(ls32)sz'(?:(?:%(hex)s:){0,4}%(hex)s)?::%(ls32)sz&(?:(?:%(hex)s:){0,5}%(hex)s)?::%(hex)sz(?:(?:%(hex)s:){0,6}%(hex)s)?::zDABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789._!\-~z(?:�|�)z
(?:%25|%)(?:[z]|%[a-fA-F0-9]{2})+z\[z)?\]z	
)NN)zutf-8�strictr1)irU�datetimercr,rEr]�http.clientr�loggingrf�re�os�collectionsr�collections.abcr�mathr�six�botocore.exceptionsrr|r�urllib3r	�	getLoggerr�loggerr�urllib.parserrrrrrrrrrr�ior�_IOBase�base64r�email.utilsr�	itertoolsr �	file_type�zip�unquote_strr)r/r6r?�xml.etree.cElementTree�etree�cElementTree�ETree�ImportError�xml.etree.ElementTree�ElementTree�
ParseError�
XMLParseError�jsonrH�classmethodrPrSrWrYr^r\r=r`rhrer}�awscrt.auth�awscrt�environ�get�disabled�lower�HAS_CRT�IPV4_PAT�compile�IPV4_RE�HEX_PAT�format�LS32_PAT�_subs�_variations�UNRESERVED_PATrr�IPV6_PAT�ZONE_ID_PAT�IPV6_ADDRZ_PAT�
IPV6_ADDRZ_RE�	frozenset�UNSAFE_URL_CHARS�gzip�HAS_GZIP)�xs0r�<module>r�s�����
����#���	�	�#�*��
�3���	��	�	�8�	$��	�+�	����%� ��"�!��	�	����7�+�

�D�*�*�*�� � �
���
��
��
��
��"���#����	!���G�K�K�M��M�
$��[�|	����z�z�~�~�0�'�:�H��.�.�"�f�,�,�G�,��
�"�*�*�S�8�^�c�)�
*��
��#�*�*�w�X�*�F����*����,L���3�8�8��<�1�Q��Y�<�=�=��C����.�1F�F����!�F�*�[�8�7�B����
�
�3��/�#�5�6�
��X�&�����H��}�*�)�)�*��|���M���\���G���N=�����H��sN�?	G5�H
�!4H�H%
�.H*�5H�H�
H�H�H"�!H"�*H4�3H4

https://t.me/RX1948 - 2025