� ��^i���z�ddlZddlZddlZddlZddlmZddlmZddlm Z m Z m Z d�Z d�Z Gd�d e��ZdS) �N)�msgpack)�CaseInsensitiveDict�)� HTTPResponse�pickle� text_typec�P�tj|�d����S)N�ascii)�base64� b64decode�encode)�bs ��/builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/cachecontrol/serialize.py�_b64_decode_bytesr s�� � �A�H�H�W�-�-� .� .�.�c�F�t|���d��S)N�utf8)r�decode)�ss r�_b64_decode_strrs�� �Q� � � &� &�v� .� .�.rc�@�eZdZd d�Zd�Zd�Zd�Zd�Zd�Zd�Z d �Z dS) � SerializerNc ��t|j��}|�/|�d���}tj|��|_d|t d�|j���D����|j|j t|j ��|j |j d�i}i|d<d|vrx|d�d��}|D]Z}t|�����}|j�|d��}|�t|��}||d|<�[d�d t%j|d � ��g��S) NF)�decode_content�responsec3�XK�|]%\}}t|��t|��fV��&dS�N)r��.0�k�vs r� z#Serializer.dumps..2sH����!�!�59�Q��Y�q�\�\�9�Q�<�<�0�!�!�!�!�!�!r)�body�headers�status�version�reason�strictr�vary�,�,scc=4T)� use_bin_type)rr$�read�io�BytesIO�_fp�dict�itemsr%r&rr'r(r�split�strip�get�joinr�dumps) �self�requestrr#�response_headers�data�varied_headers�header� header_values rr7zSerializer.dumpssl��.�x�/?�@�@�� �<��=�=��=�6�6�D��:�d�+�+�H�L� �� �!�!�=E�=M�=S�=S�=U�=U�!�!�!���$�?�$�,�$�X�_�5�5�#�?�#+�#:� � �  ����W� � �&� &� &�-�g�6�<�<�S�A�A�N�(� 5� 5��"�6�*�*�0�0�2�2��&��2�2�6�4�@�@� ��+�#,�\�#:�#:�L�(4��W� �f�%�%��y�y�'�7�=��D�#I�#I�#I�J�K�K�Krc�j�|sdS |�dd��\}}n#t$rd}YnwxYw|dd�dkr||z}d}|�dd��d�d��} t|d �|����||��S#t $rYdSwxYw) Nr+rscc=0�scc=�=�����r z _loads_v{})r3� ValueErrorr�getattr�format�AttributeError)r8r9r;�vers r�loadszSerializer.loadsJs���� � �F� �� � �4��+�+�I�C����� � � ��C�C�C� ���� �r��r�7�f� � ���:�D��C��i�i��a� � ��$�+�+�G�4�4�� �:�7�4��!4�!4�S�!9�!9�:�:�7�D�I�I� I��� � � � �F�F� ���s� � /�/�7,B$�$ B2�1B2c�|�d|�di��vrdS|�di�����D]'\}}|j�|d��|krdS�(|d�d��}t |dd���}|�dd ��d kr|�d��||dd< t j|��}n7#t$r*t j|�d ����}YnwxYwtd|d d �|d��S)z`Verify our vary headers match and construct a real urllib3 HTTPResponse object. �*r)Nrr#r$)r;ztransfer-encoding��chunkedrF)r#�preload_content�) r5r2r$�poprr.r/� TypeErrorr r)r8r9�cachedr=�value�body_rawr$r#s r�prepare_responsezSerializer.prepare_responsehs^�� �&�*�*�V�R�(�(� (� (� �F�$�Z�Z���3�3�9�9�;�;� � �M�F�E���"�"�6�4�0�0�E�9�9����:��*�%�)�)�&�1�1��%�6�*�+=�i�+H�I�I�I�� �;�;�*�B� /� /�9� <� <� �K�K�+� ,� ,� ,�(/��z��9�%� 7��:�h�'�'�D�D��� 7� 7� 7��:�h�o�o�f�5�5�6�6�D�D�D� 7�����S��u�S�S��z�@R�S�S�Ss�C2�21D&�%D&c��dSrrN�r8r9r;s r� _loads_v0zSerializer._loads_v0�� �� �rc�|� tj|��}n#t$rYdSwxYw|�||��Sr)rrHrCrT�r8r9r;rQs r� _loads_v1zSerializer._loads_v1�sR�� ��\�$�'�'�F�F��� � � � �F�F� �����$�$�W�f�5�5�5s �� %�%c�V� tjtj|���d����}n#t tjf$rYdSwxYwt|dd��|dd<td�|dd� ��D����|dd<t|dd��|dd<td�|d� ��D����|d<|� ||��S) Nrrr#c3�XK�|]%\}}t|��t|��fV��&dSr�rrs rr"z'Serializer._loads_v2..�sO����- �- ���1��Q� � ���!3�!3� 4�- �- �- �- �- �- rr$r'c3�`K�|])\}}t|��|�t|��n|fV��*dSrr^rs rr"z'Serializer._loads_v2..�sX���� � ���1��Q� � �q�}���!3�!3�!3�!� L� � � � � � rr)) �jsonrH�zlib� decompressrrC�errorrr1r2rrTrZs r� _loads_v2zSerializer._loads_v2�sA�� ��Z���� 5� 5� <� <�V� D� D�E�E�F�F���D�J�'� � � � �F�F� ����&7�v�j�7I�&�7Q�%R�%R��z��6�"�(,�- �- ��z�*�9�5�;�;�=�=�- �- �- �) �) ��z��9�%�(7�v�j�7I�(�7S�'T�'T��z��8�$�� � ��v��,�,�.�.� � � � � ��v�� �$�$�W�f�5�5�5s�9<�A�Ac��dSrrNrVs r� _loads_v3zSerializer._loads_v3�rXrc�� tj|d���}n#t$rYdSwxYw|�||��S)NF)�raw)rrHrCrTrZs r� _loads_v4zSerializer._loads_v4�sW�� ��]�4�U�3�3�3�F�F��� � � � �F�F� �����$�$�W�f�5�5�5s �� '�'r) �__name__� __module__� __qualname__r7rHrTrWr[rdrfrirNrrrrs�������2L�2L�2L�2L�h���<$T�$T�$T�L��� 6�6�6�6�6�6�(��� 6�6�6�6�6rr)r r.r`ra� pip._vendorr�pip._vendor.requests.structuresr�compatrrrrr�objectrrNrr�rqs��� � � � � � � � � � � � � � � � �������?�?�?�?�?�?�3�3�3�3�3�3�3�3�3�3�/�/�/�/�/�/�h6�h6�h6�h6�h6��h6�h6�h6�h6�h6r