HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/Python311/Lib/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-311.pyc
�

�mi+���ddlmZddlZddlmZmZmZmZmZddl	m
Z
ddlmZddl
mZerddlmZGd�d	��ZdS)
�)�annotationsN)�IO�
TYPE_CHECKING�Any�Mapping�cast)�msgpack)�CaseInsensitiveDict)�HTTPResponse)�PreparedRequestc�J�eZdZdZ	ddd�Zdd�Z	ddd�Z	ddd�Z	ddd�ZdS)�
Serializer�4N�requestr�responser�body�bytes | None�return�bytesc���t|j��}|�C|�d���}tj|��|_t
|��|_d|d�|j���D��|j	|j
t|j��|j
d�i}i|d<d|vrx|d�d��}|D]Z}t|�����}|j�|d��}|�t|��}||d|<�[d�d	|j�����|�|��g��S)
NF)�decode_contentrc�N�i|]"\}}t|��t|����#S�)�str)�.0�k�vs   �DD:\Python311\Lib\site-packages\pip/_vendor/cachecontrol/serialize.py�
<dictcomp>z$Serializer.dumps.<locals>.<dictcomp>)s*��P�P�P�t�q�!�C��F�F�C��F�F�P�P�P�)r�headers�status�version�reasonr�vary�,�,�cc=)r
r!�read�io�BytesIO�_fp�len�length_remaining�itemsr"r#rr$r�split�strip�get�join�
serde_version�encode�	serialize)	�selfrrr�response_headers�data�varied_headers�header�header_values	         r�dumpszSerializer.dumpss��6I���6
�6
���	2��=�=��=�6�6�D��:�d�+�+�H�L�(+�D�	�	�H�%�
��P�P�x�7G�7M�7M�7O�7O�P�P�P�"�/�#�+��h�o�.�.�"*�"9�
��	
����V���%�%�	4�-�f�5�;�;�C�@�@�N�(�
4�
4���V���*�*�,�,��&��2�2�6�4�@�@���5�#&�|�#4�#4�L�'3��V��V�$�$��y�y�4�� 2�4�4�;�;�=�=�t�~�~�d�?S�?S�T�U�U�Ur r9�dict[str, Any]c�T�tttj|d�����S)NT)�use_bin_type)rrr	r=)r7r9s  rr6zSerializer.serialize>s!���E�7�=��D�A�A�A�B�B�Br �	body_file�IO[bytes] | None�HTTPResponse | Nonec��|sdS|�d|j�d������sdS|dd�}|�|||��S)Nr(r&�)�
startswithr4r5�	_loads_v4)r7rr9rAs    r�loadszSerializer.loadsAsj���	��4����:�T�%7�:�:�:�A�A�C�C�D�D�	��4��A�B�B�x���~�~�g�t�Y�7�7�7r �cached�Mapping[str, Any]c��d|�di��vrdS|�di�����D]'\}}|j�|d��|krdS�(|d�d��}t	|dd���}|�dd	��d
kr|�d��||dd<	|�tj|��}n|}n7#t$r*tj|�d����}YnwxYw|d�dd��td|d
d�|d��S)z`Verify our vary headers match and construct a real urllib3
        HTTPResponse object.
        �*r%Nrrr!)r9ztransfer-encoding��chunked�utf8�strictF)r�preload_contentr)
r2r/r!�popr
r*r+�	TypeErrorr5r)	r7rrIrAr;�value�body_rawr!rs	         r�prepare_responsezSerializer.prepare_responseSs����&�*�*�V�R�(�(�(�	��4�$�Z�Z���3�3�9�9�;�;�	�	�M�F�E���"�"�6�4�0�0�E�9�
��t�t�
��*�%�)�)�&�1�1��,?��
�#�I�.�-
�-
�-
���;�;�*�B�/�/�9�<�	-��K�K�+�,�,�,�(/��z��9�%�
	7��
!��z�(�+�+��� �����	7�	7�	7��:�h�o�o�f�5�5�6�6�D�D�D�	7����	�z����x��.�.�.��S��u�S�S��z�@R�S�S�Ss�C7�71D+�*D+c��	tj|d���}n#t$rYdSwxYw|�|||��S)NF)�raw)r	rH�
ValueErrorrV)r7rr9rArIs     rrGzSerializer._loads_v4�sY��	��]�4�U�3�3�3�F�F���	�	�	��4�4�	�����$�$�W�f�i�@�@�@s��
'�')N)rrrrrrrr)r9r>rr)rrr9rrArBrrC)rrrIrJrArBrrC)	�__name__�
__module__�__qualname__r4r=r6rHrVrGrr rrrs��������M�"�	(V�(V�(V�(V�(V�TC�C�C�C�'+�	8�8�8�8�8�,'+�	2T�2T�2T�2T�2T�p'+�	A�A�A�A�A�A�Ar r)�
__future__rr*�typingrrrrr�pip._vendorr	�pip._vendor.requests.structuresr
�pip._vendor.urllib3r�pip._vendor.requestsrrrr r�<module>rcs���#�"�"�"�"�"�	�	�	�	�8�8�8�8�8�8�8�8�8�8�8�8�8�8�������?�?�?�?�?�?�,�,�,�,�,�,��5�4�4�4�4�4�4�AA�AA�AA�AA�AA�AA�AA�AA�AA�AAr