� !A?hw��� gd�ZdZdZdZdZ ddlmZmZn#e$rdZdZYnwxYwd�Z d �Z dd �Z dd �Z dd �Z dd�Zd�Zd�Zd�Zedkr e��dSdS))�encode�decode� encodestring� decodestring�=�Ls0123456789ABCDEF��)�a2b_qp�b2a_qpNc�X� |dvr|S|dkr|S|tkpd|cxkodknc S)N� �_� �~)�ESCAPE)�c� quotetabs�headers �3/opt/alt/python-internal/lib64/python3.11/quopri.py� needsquotingrsT��� �F�{�{����D�y�y�� � ��;� 1�t�q�0�0�0�0�D�0�0�0�0�1�1rc�� t|��}ttt|dzt|dzf��zS)N�)�ordr�bytes�HEX�rs r�quoter$s8��#� �A���A� �E�3�q�"�u�:�s�1�R�4�y�1�2�2� 2�2rFc�� t�=|���}t|||���}|�|��dS|dfd�}d} |���}|s�ng} d} |dd�dkr |dd�}d} |D]e} t | f��} t | ||��rt | ��} |r| dkr| �d���P| �| ���f|� ||��t� | ��} t| ��tkrG|| dtdz �d � ��| tdz d�} t| ��tk�G| }��(|�||| � ��dSdS) N�rr� c� �|rF|dd�dvr:|�|dd�t|dd���z|z��dS|dkr'|�t|��|z��dS|�||z��dS)N�����r �.)�writer)�s�output�lineEnds rr$zencode..write;s��� � &��2�3�3��6�!�!� �L�L��3�B�3��%��"�#�#��-�-�/�'�9� :� :� :� :� :� �$�Y�Y� �L�L��q���G�+� ,� ,� ,� ,� ,� �L�L��W�� %� %� %� %� %r�rr"rrs= )r') r �readr$�readlinerrr�append� EMPTYSTRING�join�len� MAXLINESIZE) �inputr&rr�data�odatar$�prevline�line�outline�strippedr�thislines rrr,s��� ����z�z�|�|���t�y��@�@�@��� � �U��������&�&�&�&��H���~�~����� � ����� ����9�� � �����9�D��H�� "� "�A��q�d� � �A��A�y�&�1�1� ��!�H�H��� "�!�t�)�)����t�$�$�$�$����q�!�!�!�!� � � �E�(�O�O�O��#�#�G�,�,���(�m�m�k�)�)� �E�(�>�K��M�>�*�F� ;� ;� ;� ;�� �A� ���/�H� �(�m�m�k�)�)� ��?�B�� ��h��)�)�)�)�)�)��rc��t�t|||���Sddlm}||��}|��}t||||��|���S)Nrr ��BytesIO)r �ior:r�getvalue)r%rrr:�infp�outfps rrrjsk�� ���a�9�V�<�<�<�<������� �7�1�:�:�D� �G�I�I�E� �4�� �6�*�*�*� �>�>� � �rc ��� t�<|���}t||���}|�|��dSd} |���}|s�n�dt |��}}|dkrH||dz |�dkr7d} |dz }|dkr)||dz |�dvr|dz }|dkr||dz |�dv�nd} ||kr�|||dz�} | dkr |r |dz}|dz}n�| t kr || z}|dz}n�|dz|kr| sd} n�|dz|kr)||dz|d z�t kr|t z}|d z}n�|d z|krnt ||dz|d z���rQt ||d z|d z���r4|tt||dz|d z���f��z}|d z}n || z}|dz}||k��| s|�|dz��d}���|r|�|��dSdS) N�rrr(r r s rr��) r r)r$r*r.r�ishexr�unhex) r0r&rr1r2�newr4�i�n�partialrs rrrus���G����z�z�|�|���t�F�+�+�+��� � �U������ �C���~�~������U��#�d�)�)�1�� �q�5�5�T�!�A�#�a�%�[�E�)�)��G�Q�q�S���a�%�%�D��1��Q��K�8�3�3��a�C���a�%�%�D��1��Q��K�8�3�3���G��!�e�e��Q�q��s�U� �A��D�y�y�V�y��D�j��a��c�!�!��f����A�g��1�Q�3�q�q��1�����'����U��1��q���T�!�A�#�a��c�'�]�f�4�4��F�l���!��A�A��1��q���U�4��!��A�a�C��=�1�1��e�D��1��Q�q�S��M�6J�6J���E�5��a��c�!�A�#�g��#7�#7�"9�:�:�:���!��A�A��A�g��1�Q�3�q��!�e�e�� � �L�L��u�� %� %� %��C�7�8 ��� � �S�������rc��t�t||���Sddlm}||��}|��}t|||���|���S)Nr@r r9)r r;r:rr<)r%rr:r=r>s rrr�sj�� ���a��'�'�'�'������� �7�1�:�:�D� �G�I�I�E� �4��v�&�&�&�&� �>�>� � �rc�d� d|cxkodkncpd|cxkodkncpd|cxkodkncS)N�0�9�a�f�A�F�rs rrCrC�si��N� �1� � � � �� � � � � F��� 1� 1� 1� 1�T� 1� 1� 1� 1� F�T�Q�5F�5F�5F�5F�$�5F�5F�5F�5F�Frc�0� d}|D]�}t|f��}d|cxkrdkrnntd��}nEd|cxkrdkrnntd��dz }n"d |cxkrd krnntd ��dz }|d zt|��|z z}��|S) Nr rKrL�0rMrN�a� rOrPr)rr)r%�bitsrrFs rrDrD�s���8� �D� � &� &�� �1�$�K�K�� �1� � � � �� � � � � ��C���A�A� �Q� � � � �$� � � � � ��C���� �A�A� �Q� � � � �$� � � � � ��D� � �"� �A��B�w�#�a�&�&�1�*�%��� �Krc���ddl}ddl} |�|jdd�d��\}}nt#|j$rg}|j|_t |��t d��t d��t d��|�d��Yd}~nd}~wwxYwd}d}|D]\}}|d krd }|d krd }�|r2|r0|j|_t d ��|�d��|sd g}d} |D]�} | d kr |jj } nK t| d��} n9#t$r,}|j� | �d|�d���d} Yd}~�Xd}~wwxYw |rt| |jj ��nt| |jj |��| d kr| �����#| d kr| ���wwxYw| r|�| ��dSdS)Nr r(�tdz"usage: quopri [-t | -d] [file] ...z-t: quote tabsz-d: decode; default encoderAFz-tTz-dz -t and -d are mutually exclusive�-�rbz: can't open (z) )�sys�getopt�argv�error�stderr�stdout�print�exit�stdin�buffer�open�OSErrorr$rr�close) r[r\�opts�args�msg�deco�tabs�orT�sts�file�fps r�mainrq�s_���J�J�J��M�M�M���]�]�3�8�A�B�B�<��6�6� ��d�d�� �<�����Z�� � �c� � � � �2�3�3�3� ����� �*�+�+�+� ���� � � � � � � � ����� ���� �D� �D��"�"���1� ��9�9�T�d� ��9�9�T�d�� �����Z�� � �0�1�1�1� ���� � � � ����� �C����� �3�;�;���!�B�B� ��$��%�%����� � � �� � � �D�D�D�#�#�#�!F�G�G�G������������ ���� �� 4��r�3�:�,�-�-�-�-��r�3�:�,�d�3�3�3��s�{�{���� � � ����s�{�{���� � � � ����� �� ���� � � � � ��s9�&1� B"�AB�B"�D%�% E�/"E�E�8F2�2G�__main__)F)FF)�__all__rr/rr,�binasciir r � ImportErrorrrrrrrrCrDrq�__name__rQrr�rws:��O� ?� >� >�� ��� ���� ��'�'�'�'�'�'�'�'�'������ �F� �F�F�F����� 2� 2� 2�3�3�3�<*�<*�<*�<*�|����)�)�)�)�V����G�G�G� ���$*�*�*�\ �z����D�F�F�F�F�F��s �� $�$