OwlCyberSecurity - MANAGER
Edit File: _header_value_parser.cpython-311.opt-2.pyc
� �����/�gM��������������� ��������$���� �d�dl�Z�d�dlZd�dlZd�dlmZ�d�dlmZ�d�dlmZ �d�dlm Z �d�dlmZ��ed������������Z e �ed������������z��Z�ed ������������Zee z��Ze�ed ������������z ��Ze�ed������������z ��Ze�ed������������z���ed ������������z ��Zee z��Ze�ed ������������z��Zee z��Ze�ed������������z ��ZddhZeez��Zd��Zd��Z�e�j��������de�j��������e�j��������z��������������Z�G�d��de ������������Z!�G�d��de!������������Z"�G�d��de!������������Z#�G�d��de!������������Z$�G�d��de!������������Z%�G�d��de"������������Z&�G�d ��d!e!������������Z'�G�d"��d#e!������������Z(�G�d$��d%e!������������Z)�G�d&��d'e!������������Z*�G�d(��d)e*������������Z+�G�d*��d+e"������������Z,�G�d,��d-e!������������Z-�G�d.��d/e!������������Z.�G�d0��d1e!������������Z/�G�d2��d3e!������������Z0�G�d4��d5e!������������Z1�G�d6��d7e!������������Z2�G�d8��d9e!������������Z3�G�d:��d;e!������������Z4�G�d<��d=e!������������Z5�G�d>��d?e!������������Z6�G�d@��dAe!������������Z7�G�dB��dCe!������������Z8�G�dD��dEe!������������Z9�G�dF��dGe!������������Z:�G�dH��dIe!������������Z;�G�dJ��dKe!������������Z<�G�dL��dMe$������������Z=�G�dN��dOe!������������Z>�G�dP��dQe!������������Z?�G�dR��dSe!������������Z@�G�dT��dUe!������������ZA�G�dV��dWeA������������ZB�G�dX��dYe!������������ZC�G�dZ��d[e!������������ZD�G�d\��d]e!������������ZE�G�d^��d_e!������������ZF�G�d`��dae!������������ZG�G�db��dceG������������ZH�G�dd��deeG������������ZI�G�df��dge!������������ZJ�G�dh��die!������������ZK�G�dj��dke!������������ZL�G�dl��dmeL������������ZM�G�dn��doeM������������ZN�G�dp��dqe!������������ZO�G�dr��dseP������������ZQ�G�dt��dueQ������������ZR�G�dv��dweQ������������ZS�G�dx��dyeR������������ZT�G�dz��d{e jU��������������������ZV�eSd d|������������ZW�eSd}d~������������ZXdeX_Y��������deX_Z���������eSd�d�������������Z[�e�j��������d��\��������������������d��]��������������������e ������������������������������������j^��������Z_�e�j��������d��\���������������������e�j`��������d��]��������������������e������������������������������������������������ja��������Zb�e�j��������d�������������jc��������Zd�e�j��������d��\���������������������e�j`��������d��]��������������������e������������������������������������������������ja��������Ze�e�j��������d��\���������������������e�j`��������d��]��������������������e������������������������������������������������ja��������Zf�e�j��������d��\���������������������e�j`��������d��]��������������������e������������������������������������������������ja��������Zgd���Zhd���Zid���Zjd�d��Zkd���Zld���Zmd���Znd���Zod���Zpd���Zqd���Zrd���Zsd���Ztd���Zud���Zvd���Zwd���Zxd���Zyd���Zzd���Z{d���Z|d���Z}d���Z~d���Zd���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�d���Z�dS�)������N)� hexdigits)� itemgetter)�_encoded_words)�errors)�utilsz �(z ()<>@,:;.\"[]�.z."(z/?=z*'%�%� � c������������������r����� �t����������|����������������������������������dd���������������������������������dd������������S�)N�\�\\�"z\")�str�replace��values��� �A/opt/alt/python311/lib64/python3.11/email/_header_value_parser.py�make_quoted_pairsr���c���s1������E��u�:�:���d�F�+�+�3�3�C��?�?�?�����c������������������,�����t����������|�������������}d|��d�S�)Nr���)r���)r����escapeds��� r����quote_stringr���h���s��������&�&�G��w�>�>�>�r���z� =\? # literal =? [^?]* # charset \? # literal ? [qQbB] # literal 'q' or 'b', case insensitive \? # literal ? .*? # encoded word \?= # literal ?= c���������������������������e�Zd�ZdZdZdZ��fd�Zd��Z��fd�Ze d����������������Z e d����������������Zd��Ze d ����������������Z e d ����������������Zd��Zdd �Zdd�Zdd�Z��xZS�)� TokenListNTc������������������H�������t������������������������j��������|i�|���g�|�_��������d�S��N)�super�__init__�defects)�self�args�kw� __class__s��� �r���r ���zTokenList.__init__����s*������������$�%�"�%�%�%�����r���c������������������@�����d����������������������d��|�D���������������������������S�)N��c��������������3����4���K����|�]}t����������|������������V����d�S�r����r�����.0�xs��� r���� <genexpr>z$TokenList.__str__.<locals>.<genexpr>�����(����������,�,�!�s�1�v�v�,�,�,�,�,�,r�����join�r"���s��� r����__str__zTokenList.__str__����s#�������w�w�,�,�t�,�,�,�,�,�,r���c������������������������d����������������������|�j��������j��������t�����������������������������������������������������������������������S��Nz{}({})��formatr%����__name__r����__repr__�r"���r%���s��� �r���r8���zTokenList.__repr__����s3����������t�~�6�"�W�W�-�-�/�/�1��1�� 1r���c������������������@�����d����������������������d��|�D���������������������������S�)Nr'���c��������������3����2���K����|�]}|j���������� |j���������V����d�S�r���r���r*���s��� r���r-���z"TokenList.value.<locals>.<genexpr>����s+����������8�8�1���8�q�w�8�8�8�8�8�8r���r/���r1���s��� r���r���zTokenList.value����s#�������w�w�8�8��8�8�8�8�8�8r���c������������������@�����t����������d��|�D���������������|�j��������������������S�)Nc��������������3����$���K����|�]}|j���������V����d�S�r���)�all_defectsr*���s��� r���r-���z(TokenList.all_defects.<locals>.<genexpr>����s$����������0�0�a�A�M�0�0�0�0�0�0r���)�sumr!���r1���s��� r���r>���zTokenList.all_defects����s#�������0�0�4�0�0�0�$�,�?�?�?r���c������������������6�����|�d���������������������������������������������S��Nr���)�startswith_fwsr1���s��� r���rB���zTokenList.startswith_fws����s�������A�w�%�%�'�'�'r���c������������������6����� �t����������d��|�D���������������������������S�)Nc��������������3����$���K����|�]}|j���������V����d�S�r���)� as_ew_allowed)r+����parts��� r���r-���z*TokenList.as_ew_allowed.<locals>.<genexpr>����s%����������7�7�$�4�%�7�7�7�7�7�7r���)�allr1���s��� r���rE���zTokenList.as_ew_allowed����s"������O��7�7�$�7�7�7�7�7�7r���c������������������H�����g�}|�D�]}|����������������������|j����������������������|S�r���)�extend�comments)r"���rJ����tokens��� r���rJ���zTokenList.comments����s2���������� ,�� ,�E��O�O�E�N�+�+�+�+��r���c�����������������$�����t����������|�|�������������S�)N��policy)�_refold_parse_tree�r"���rN���s��� r����foldzTokenList.fold����s������!�$�v�6�6�6�6r���r'���c������������������L�����t����������|����������������������|��������������������������d�S�)N��indent)�print�ppstr�r"���rT���s��� r����pprintzTokenList.pprint����s$������ �d�j�j��j�'�'�(�(�(�(�(r���c������������������T�����d����������������������|����������������������|�������������������������S�)Nr���rS���)r0����_pprW���s��� r���rV���zTokenList.ppstr����s"�������y�y������0�0�1�1�1r���c��������������#����n��K����d����������������������||�j��������j��������|�j��������������������V���|�D�]K}t ����������|d������������s|d����������������������|������������z���V����-|���������������������|dz���������������E�d�{V�����L|�j��������rd����������������������|�j��������������������}nd}d����������������������||������������V���d�S�)Nz{}{}/{}(rZ���z* !! invalid element in token list: {!r}z z Defects: {}r'���z{}){})r6���r%���r7���� token_type�hasattrrZ���r!���)r"���rT���rK����extras��� r���rZ���z TokenList._pp����s����������������N�#��O����� �� �� ���� 4�� 4�E��5�%�(�(�� 4���!5�5;�V�E�]�]�C��D��D��D��D��!�9�9�V�F�]�3�3�3�3�3�3�3�3�3�3��<�� �"�)�)�$�,�7�7�E�E��E��n�n�V�U�+�+�+�+�+�+�+r����r'���)r7���� __module__�__qualname__r\����syntactic_break�ew_combine_allowedr ���r2���r8����propertyr���r>���rB���rE���rJ���rQ���rX���rV���rZ���� __classcell__�r%���s���@r���r���r���}���s9���������������J��O������������-��-��-�1��1��1��1��1���9��9���X�9���@��@���X�@�(��(��(���8��8���X�8��������X��7��7��7�)��)��)��)�2��2��2��2�,��,��,��,��,��,��,��,r���r���c��������������������:�����e�Zd�Zed����������������Zed����������������ZdS�)�WhiteSpaceTokenListc�����������������������dS��N� ��r1���s��� r���r���zWhiteSpaceTokenList.value������������sr���c�����������������������d��|�D���������������S�)Nc������������������2�����g�|�]}|j���������d�k����� |j����������S�)�comment)r\����contentr*���s��� r���� <listcomp>z0WhiteSpaceTokenList.comments.<locals>.<listcomp>����s&������C�C�C�a�1�<��+B�+B�� �+B�+B�+Br���rl���r1���s��� r���rJ���zWhiteSpaceTokenList.comments����s������C�C�4�C�C�C�Cr���N)r7���r`���ra���rd���r���rJ���rl���r���r���rh���rh�������sM�������������� ������X����D��D���X�D��D��Dr���rh���c�������������������������e�Zd�ZdZdS�)�UnstructuredTokenList�unstructuredN�r7���r`���ra���r\���rl���r���r���rt���rt�������s���������������J�J�Jr���rt���c�������������������������e�Zd�ZdZdS�)�Phrase�phraseNrv���rl���r���r���rx���rx�����������������������J�J�Jr���rx���c�������������������������e�Zd�ZdZdS�)�Word�wordNrv���rl���r���r���r|���r|�����������������������J�J�Jr���r|���c�������������������������e�Zd�ZdZdS�)�CFWSList�cfwsNrv���rl���r���r���r����r��������r~���r���r����c�������������������������e�Zd�ZdZdS�)�Atom�atomNrv���rl���r���r���r����r��������r~���r���r����c�������������������������e�Zd�ZdZdZdS�)�TokenrK���FN)r7���r`���ra���r\����encode_as_ewrl���r���r���r����r��������s���������������J��L�L�Lr���r����c�������������������������e�Zd�ZdZdZdZdZdS�)�EncodedWord�encoded-wordN)r7���r`���ra���r\����cte�charset�langrl���r���r���r����r��������s"���������������J� �C��G��D�D�Dr���r����c��������������������T�����e�Zd�ZdZed����������������Zed����������������Zed����������������ZdS�)�QuotedString� quoted-stringc������������������8�����|�D�]}|j���������dk����r |j��������c�S��d�S��N�bare-quoted-string�r\���r����r"���r,���s��� r���rq���zQuotedString.content����s9�������� �� �A��|�3�3�3��w�����4� �� r���c������������������������g�}|�D�]J}|j���������dk����r#|���������������������t����������|��������������������������0|���������������������|j����������������������Kd���������������������|������������S�)Nr����r'���)r\����appendr���r���r0���)r"����resr,���s��� r����quoted_valuezQuotedString.quoted_value����sf���������� $�� $�A��|�3�3�3�� � �3�q�6�6�"�"�"�"�� � �1�7�#�#�#�#��w�w�s�|�|�r���c������������������8�����|�D�]}|j���������dk����r |j��������c�S��d�S�r����r�����r"���rK���s��� r����stripped_valuezQuotedString.stripped_value����s=�������� #�� #�E���#7�7�7��{�"�"�"��8� #�� #r���N)r7���r`���ra���r\���rd���rq���r����r����rl���r���r���r����r��������sh�������������� �J� ������X�� �������X����#��#���X�#��#��#r���r����c��������������������.�����e�Zd�ZdZd��Zed����������������ZdS�)�BareQuotedStringr����c������������������Z�����t����������d���������������������d��|�D���������������������������������������S�)Nr'���c��������������3����4���K����|�]}t����������|������������V����d�S�r���r)���r*���s��� r���r-���z+BareQuotedString.__str__.<locals>.<genexpr> ��s(����������#9�#9�q�C��F�F�#9�#9�#9�#9�#9�#9r���)r���r0���r1���s��� r���r2���zBareQuotedString.__str__ ��s+�������B�G�G�#9�#9�D�#9�#9�#9�9�9�:�:�:r���c������������������@�����d����������������������d��|�D���������������������������S�)Nr'���c��������������3����4���K����|�]}t����������|������������V����d�S�r���r)���r*���s��� r���r-���z)BareQuotedString.value.<locals>.<genexpr>��r.���r���r/���r1���s��� r���r���zBareQuotedString.value���#�������w�w�,�,�t�,�,�,�,�,�,r���N)r7���r`���ra���r\���r2���rd���r���rl���r���r���r����r������sC��������������%�J�;��;��;���-��-���X�-��-��-r���r����c��������������������J�����e�Zd�ZdZd��Zd��Zed����������������Zed����������������ZdS�)�Commentrp���c������������������l�������d����������������������t����������dg��fd���D���������������dggg�������������������������S�)Nr'���r���c������������������:������g�|�]}�����������������������|��������������S�rl���)�quote)r+���r,���r"���s��� �r���rr���z#Comment.__str__.<locals>.<listcomp>��s#�������9�9�9�q�T�Z�Z��]�]�9�9�9r����))r0���r?���r1���s���`r���r2���zComment.__str__��sP��������w�w�s� �E�9�9�9�9�D�9�9�9� �E��� "� #��#��$��$�� $r���c������������������������|j���������dk����rt����������|������������S�t����������|���������������������������������dd���������������������������������dd���������������������������������dd������������S�)Nrp���r���r���r���z\(r����z\))r\���r���r���)r"���r���s��� r���r����z Comment.quote��sc��������y�(�(��u�:�:���5�z�z�!�!�$��/�/�7�7�"%�u�.��.�.5�g�"%�u�/.��/.� .r���c������������������@�����d����������������������d��|�D���������������������������S�)Nr'���c��������������3����4���K����|�]}t����������|������������V����d�S�r���r)���r*���s��� r���r-���z"Comment.content.<locals>.<genexpr>%��r.���r���r/���r1���s��� r���rq���zComment.content#��r����r���c�����������������������|�j���������gS�r���)rq���r1���s��� r���rJ���zComment.comments'��s��������~�r���N) r7���r`���ra���r\���r2���r����rd���rq���rJ���rl���r���r���r����r������sm���������������J�$��$��$�.��.��.���-��-���X�-��������X�����r���r����c��������������������T�����e�Zd�ZdZed����������������Zed����������������Zed����������������ZdS�)�AddressListzaddress-listc�����������������������d��|�D���������������S�)Nc������������������(�����g�|�]}|j���������d�k����� |��S�)�address�r\���r*���s��� r���rr���z)AddressList.addresses.<locals>.<listcomp>1���$������;�;�;�a�1�<��#:�#:��#:�#:�#:r���rl���r1���s��� r���� addresseszAddressList.addresses/���������;�;�4�;�;�;�;r���c������������������6�����t����������d��|�D���������������g�������������S�)Nc��������������3����:���K����|�]}|j���������d�k����� |j��������V����dS��r����N�r\���� mailboxesr*���s��� r���r-���z(AddressList.mailboxes.<locals>.<genexpr>5��s<�����������>��>��Q�\�9�%<�%<���K�%<�%<�%<�%<�>��>r����r?���r1���s��� r���r����zAddressList.mailboxes3���6��������>��>�!�>��>��>�?A�C��C�� Cr���c������������������6�����t����������d��|�D���������������g�������������S�)Nc��������������3����:���K����|�]}|j���������d�k����� |j��������V����dS�r�����r\���� all_mailboxesr*���s��� r���r-���z,AddressList.all_mailboxes.<locals>.<genexpr>:��s<�����������>��>��Q�\�9�%<�%<���O�%<�%<�%<�%<�>��>r���r����r1���s��� r���r����zAddressList.all_mailboxes8��r����r���N)r7���r`���ra���r\���rd���r����r����r����rl���r���r���r����r����+��sp���������������J� �<��<���X�<���C��C���X�C���C��C���X�C��C��Cr���r����c��������������������T�����e�Zd�ZdZed����������������Zed����������������Zed����������������ZdS�)�Addressr����c������������������B�����|�d���������j���������dk����r |�d���������j��������S�d�S�)Nr����group�r\����display_namer1���s��� r���r����zAddress.display_nameB��s)��������7���(�(���7�'�'��)�(r���c������������������v�����|�d���������j���������dk����r |�d���������gS�|�d���������j���������dk����rg�S�|�d���������j��������S��Nr����mailbox�invalid-mailboxr����r1���s��� r���r����zAddress.mailboxesG��sE��������7���*�*���G�9�� �!�W� �#4� 4� 4��I��A�w� � r���c�����������������������|�d���������j���������dk����r |�d���������gS�|�d���������j���������dk����r |�d���������gS�|�d���������j��������S�r����r����r1���s��� r���r����zAddress.all_mailboxesO��sL��������7���*�*���G�9�� �!�W� �#4� 4� 4���G�9���A�w�$�$r���N)r7���r`���ra���r\���rd���r����r����r����rl���r���r���r����r����>��sh���������������J� �(��(���X�(���!��!���X�!���%��%���X�%��%��%r���r����c��������������������>�����e�Zd�ZdZed����������������Zed����������������ZdS�)�MailboxList�mailbox-listc�����������������������d��|�D���������������S�)Nc������������������(�����g�|�]}|j���������d�k����� |��S�)r����r����r*���s��� r���rr���z)MailboxList.mailboxes.<locals>.<listcomp>]��r����r���rl���r1���s��� r���r����zMailboxList.mailboxes[��r����r���c�����������������������d��|�D���������������S�)Nc������������������$�����g�|�] }|j���������d�v��|��S�))r����r����r����r*���s��� r���rr���z-MailboxList.all_mailboxes.<locals>.<listcomp>a��s/�������?��?��?�a��|�=�=�=���=�=�=r���rl���r1���s��� r���r����zMailboxList.all_mailboxes_��s"������?��?�4��?��?��?�� ?r���N�r7���r`���ra���r\���rd���r����r����rl���r���r���r����r����W��sM���������������J� �<��<���X�<���?��?���X�?��?��?r���r����c��������������������>�����e�Zd�ZdZed����������������Zed����������������ZdS�)� GroupList� group-listc������������������F�����|�r|�d���������j���������dk����rg�S�|�d���������j��������S��Nr���r����r����r1���s��� r���r����zGroupList.mailboxesi��s-�������� �t�A�w�)�^�;�;��I��A�w� � r���c������������������F�����|�r|�d���������j���������dk����rg�S�|�d���������j��������S�r����r����r1���s��� r���r����zGroupList.all_mailboxeso��s-�������� �t�A�w�)�^�;�;��I��A�w�$�$r���Nr����rl���r���r���r����r����e��sM���������������J� �!��!���X�!� ��%��%���X�%��%��%r���r����c��������������������T�����e�Zd�ZdZed����������������Zed����������������Zed����������������ZdS�)�Groupr����c������������������B�����|�d���������j���������dk����rg�S�|�d���������j��������S��N����r����r����r1���s��� r���r����zGroup.mailboxesz��s&��������7���-�-��I��A�w� � r���c������������������B�����|�d���������j���������dk����rg�S�|�d���������j��������S�r����r����r1���s��� r���r����zGroup.all_mailboxes���s&��������7���-�-��I��A�w�$�$r���c�����������������������|�d���������j���������S�rA���)r����r1���s��� r���r����zGroup.display_name���s�������A�w�#�#r���N)r7���r`���ra���r\���rd���r����r����r����rl���r���r���r����r����v��sh���������������J� �!��!���X�!� ��%��%���X�%� ��$��$���X�$��$��$r���r����c�������������������������e�Zd�ZdZed����������������Zed����������������Zed����������������Zed����������������Zed����������������Z dS�)�NameAddr� name-addrc������������������F�����t����������|�������������dk����rd�S�|�d���������j��������S��N����r���)�lenr����r1���s��� r���r����zNameAddr.display_name���s#�������t�9�9��>�>��4��A�w�#�#r���c�����������������������|�d���������j���������S��N����� local_partr1���s��� r���r����zNameAddr.local_part���s�������B�x�"�"r���c�����������������������|�d���������j���������S�r������domainr1���s��� r���r����zNameAddr.domain���s�������B�x��r���c�����������������������|�d���������j���������S�r����)�router1���s��� r���r����zNameAddr.route���s�������B�x�~�r���c�����������������������|�d���������j���������S�r������ addr_specr1���s��� r���r����zNameAddr.addr_spec���s�������B�x�!�!r���N� r7���r`���ra���r\���rd���r����r����r����r����r����rl���r���r���r����r�������s����������������J� �$��$���X�$� ��#��#���X�#��������X���������X����"��"���X�"��"��"r���r����c��������������������j�����e�Zd�ZdZed����������������Zed����������������Zed����������������Zed����������������ZdS�)� AngleAddrz angle-addrc������������������8�����|�D�]}|j���������dk����r |j��������c�S��d�S��N� addr-spec)r\���r����r����s��� r���r����zAngleAddr.local_part���s;�������� $�� $�A��|�{�*�*��|�#�#�#��+� $�� $r���c������������������8�����|�D�]}|j���������dk����r |j��������c�S��d�S�r�����r\���r����r����s��� r���r����zAngleAddr.domain���s8�������� �� �A��|�{�*�*��x�����+� �� r���c������������������8�����|�D�]}|j���������dk����r |j��������c�S��d�S�)N� obs-route)r\����domainsr����s��� r���r����zAngleAddr.route���s;�������� !�� !�A��|�{�*�*��y� � � ��+� !�� !r���c�����������������������|�D�];}|j���������dk����r.|j��������r |j��������c�S�t����������|j��������������������|j��������z���c�S��<dS�)Nr����z<>)r\���r����r����r���r����s��� r���r����zAngleAddr.addr_spec���s`�������� �� �A��|�{�*�*��<��D��;�&�&�&�'���5�5���C�C�C�C� �+���4r���N) r7���r`���ra���r\���rd���r����r����r����r����rl���r���r���r����r�������s����������������J� �$��$���X�$� �� �� ���X� � ��!��!���X�!� �������X�����r���r����c��������������������(�����e�Zd�ZdZed����������������ZdS�)�ObsRouter����c�����������������������d��|�D���������������S�)Nc������������������2�����g�|�]}|j���������d�k����� |j����������S�r����r����r*���s��� r���rr���z$ObsRoute.domains.<locals>.<listcomp>���s&������C�C�C�Q�!�,�(�*B�*B���*B�*B�*Br���rl���r1���s��� r���r���zObsRoute.domains���s������C�C�$�C�C�C�Cr���N)r7���r`���ra���r\���rd���r���rl���r���r���r��r�����s7���������������J� �D��D���X�D��D��Dr���r��c�������������������������e�Zd�ZdZed����������������Zed����������������Zed����������������Zed����������������Zed����������������Z dS�)�Mailboxr����c������������������B�����|�d���������j���������dk����r |�d���������j��������S�d�S��Nr���r����r����r1���s��� r���r����zMailbox.display_name���s)��������7���,�,���7�'�'��-�,r���c�����������������������|�d���������j���������S�rA���r����r1���s��� r���r����zMailbox.local_part�����������A�w�!�!r���c�����������������������|�d���������j���������S�rA���r����r1���s��� r���r����zMailbox.domain���s�������A�w�~�r���c������������������B�����|�d���������j���������dk����r |�d���������j��������S�d�S�r ��)r\���r����r1���s��� r���r����z Mailbox.route���s(��������7���,�,���7�=� ��-�,r���c�����������������������|�d���������j���������S�rA���r����r1���s��� r���r����zMailbox.addr_spec���s�������A�w� � r���Nr����rl���r���r���r��r�����s����������������J� �(��(���X�(���"��"���X�"��������X����!��!���X�!���!��!���X�!��!��!r���r��c��������������������8�����e�Zd�ZdZed����������������ZexZxZxZZ dS�)�InvalidMailboxr����c�����������������������d�S�r���rl���r1���s��� r���r����zInvalidMailbox.display_name�����������tr���Nr����rl���r���r���r��r�����sB��������������"�J� ������X���/;�:�J�:��:�%�)�)�)r���r��c��������������������6�������e�Zd�ZdZdZe��fd���������������Z��xZS�)�Domainr����Fc������������������t������d����������������������t������������������������j�������������������������������������������������������S��Nr'����r0���r���r����splitr9���s��� �r���r����z Domain.domain����'��������w�w�u�w�w�}�*�*�,�,�-�-�-r���)r7���r`���ra���r\���rE���rd���r����re���rf���s���@r���r��r�����sL����������������J��M� �.��.��.��.���X�.��.��.��.��.r���r��c�������������������������e�Zd�ZdZdS�)�DotAtom�dot-atomNrv���rl���r���r���r��r����s���������������J�J�Jr���r��c�������������������������e�Zd�ZdZdZdS�)�DotAtomTextz dot-atom-textTN�r7���r`���ra���r\���rE���rl���r���r���r��r����s�������������� �J��M�M�Mr���r��c�������������������������e�Zd�ZdZdZdS�)� NoFoldLiteralzno-fold-literalFNr��rl���r���r���r!��r!�� ��s��������������"�J��M�M�Mr���r!��c��������������������n�����e�Zd�ZdZdZed����������������Zed����������������Zed����������������Zed����������������Z dS�)�AddrSpecr����Fc�����������������������|�d���������j���������S�rA���r����r1���s��� r���r����zAddrSpec.local_part��r��r���c������������������F�����t����������|�������������dk�����rd�S�|�d���������j��������S�)N����r����)r����r����r1���s��� r���r����zAddrSpec.domain��s"�������t�9�9�q�=�=��4��B�x��r���c������������������������t����������|�������������dk�����r |�d���������j��������S�|�d���������j�������������������������������������������|�d���������j��������z���|�d���������j�������������������������������������������z���S�)Nr&��r���r����r����)r����r����rstrip�lstripr1���s��� r���r���zAddrSpec.value��sW�������t�9�9�q�=�=���7�=� ��A�w�}�#�#�%�%�d�1�g�m�3�D��G�M�4H�4H�4J�4J�J�Jr���c������������������������t����������|�j��������������������}t����������|������������t����������|t����������z ��������������k����rt ����������|�j��������������������}n|�j��������}|�j��������� |dz���|�j��������z���S�|S�)N�@)�setr����r����� DOT_ATOM_ENDSr���r����)r"����nameset�lps��� r���r����zAddrSpec.addr_spec$��se�������d�o�&�&���w�<�<�#�g�m�3�4�4�4�4��d�o�.�.�B�B���B��;�"���8�d�k�)�)�� r���N) r7���r`���ra���r\���rE���rd���r����r����r���r����rl���r���r���r#��r#����s����������������J��M� �"��"���X�"��������X�� ��K��K���X�K� �������X�����r���r#��c�������������������������e�Zd�ZdZdZdS�)�ObsLocalPartzobs-local-partFNr��rl���r���r���r1��r1��0��s��������������!�J��M�M�Mr���r1��c��������������������L�������e�Zd�ZdZdZed����������������Ze��fd���������������Z��xZS�)�DisplayNamezdisplay-nameFc�����������������������t����������|�������������}t����������|������������dk����r|j��������S�|d���������j��������dk����r|���������������������d�������������n7|d���������d���������j��������dk����r t����������|d���������dd�����������������������|d<���|d���������j��������dk����r|������������������������������������n7|d���������d���������j��������dk����r t����������|d���������d�d����������������������|d<���|j��������S�)Nr���r����r����r����)r���r����r���r\����pop)r"���r����s��� r���r����zDisplayName.display_name;��s���������o�o���s�8�8�q�=�=��9���q�6���&�&��G�G�A�J�J�J�J��1�v�a�y�#�v�-�-�"�3�q�6�!�"�"�:�.�.��A���r�7���'�'��G�G�I�I�I�I��2�w�r�{�%��/�/�#�C��G�C�R�C�L�1�1��B���y�r���c������������������t�����d}|�j���������rd}n|�D�]}|j��������dk����rd}�t����������|�������������dk����rt|rrdx}}|�d���������j��������dk����s|�d���������d���������j��������dk����rd}|�d���������j��������dk����s|�d���������d���������j��������dk����rd}|t����������|�j��������������������z���|z���S�t������������������������j��������S�) NFTr����r���r'���r����rk���r����)r!���r\���r����r���r����r���r���)r"���r����r,����pre�postr%���s��� �r���r���zDisplayName.valueL��s�����������<�� !��E�E��� !�� !���<�?�2�2� �E���t�9�9��>�>�e�>��O�C�$��A�w�!�6�)�)�T�!�W�Q�Z�-B�F�-J�-J����B�x�"�F�*�*�d�2�h�r�l�.E�v�.M�.M����|�D�$5�6�6�6�t�;�;��7�7�=� r���) r7���r`���ra���r\���rc���rd���r����r���re���rf���s���@r���r3��r3��6��sh����������������J��� ������X�� ��!��!��!��!���X�!��!��!��!��!r���r3��c��������������������B�����e�Zd�ZdZdZed����������������Zed����������������ZdS�)� LocalPartz local-partFc������������������X�����|�d���������j���������dk����r |�d���������j��������S�|�d���������j��������S�)Nr���r����)r\���r����r���r1���s��� r���r���zLocalPart.valuee��s-��������7���0�0���7�'�'���7�=� r���c������������������ ����t�����������g}t�����������}d}|�d���������t�����������gz���D�]�}|j��������dk����r�|r6|j��������dk����r+|d���������j��������dk����rt����������|d�d����������������������|d<���t����������|t����������������������}|rG|j��������dk����r<|d���������j��������dk����r+|���������������������t����������|dd������������������������������������n|���������������������|�������������|d���������}|}��t����������|dd����������������������}|j��������S�)NFr���r�����dotr����r����)�DOTr\���r���� isinstancer����r���)r"���r�����last� last_is_tl�tok�is_tls��� r���r����zLocalPart.local_partl��s�������e����� ���7�c�U�?�� �� �C��~��'�'���� /�s�~��6�6���H�'�6�1�1�#�D��"��I�.�.��B���s�I�.�.�E��� �$�/�U�2�2���F�%��/�/�� � �9�S����W�-�-�.�.�.�.�� � �3�����r�7�D��J�J���A�b�D� �"�"���y�r���N)r7���r`���ra���r\���rE���rd���r���r����rl���r���r���r:��r:��`��sR���������������J��M� �!��!���X�!��������X�����r���r:��c��������������������L�������e�Zd�ZdZdZe��fd���������������Zed����������������Z��xZS�)� DomainLiteralzdomain-literalFc������������������t������d����������������������t������������������������j�������������������������������������������������������S�r��r��r9���s��� �r���r����zDomainLiteral.domain���r��r���c������������������8�����|�D�]}|j���������dk����r |j��������c�S��d�S�)N�ptextr����r����s��� r����ipzDomainLiteral.ip���s8�������� �� �A��|�w�&�&��w�����'� �� r���) r7���r`���ra���r\���rE���rd���r����rI��re���rf���s���@r���rE��rE�����sg���������������!�J��M� �.��.��.��.���X�.��������X���������r���rE��c�������������������������e�Zd�ZdZdZdZdS�)�MIMEVersionzmime-versionN)r7���r`���ra���r\����major�minorrl���r���r���rK��rK�����s���������������J��E��E�E�Er���rK��c��������������������J�����e�Zd�ZdZdZdZdZed����������������Zed����������������Z dS�)� Parameter� parameterF�us-asciic������������������.�����|�j���������r |�d���������j��������ndS�r����)� sectioned�numberr1���s��� r����section_numberzParameter.section_number���s�������"&��6�t�A�w�~�~�Q�6r���c�����������������������|�D�]N}|j���������dk����r |j��������c�S�|j���������dk����r-|D�]*}|j���������dk����r|D�]}|j���������dk����r |j��������c�c�c�S���+�OdS�)Nr���r����r����r'���)r\���r����r����s��� r����param_valuezParameter.param_value���s���������� <�� <�E���7�*�*��+�+�+�+���?�2�2�"��<��<�E��'�+?�?�?�%*��<��<�E�$�/�7�:�:�',�';� ;� ;� ;� ;� ;� ;� ;�� ;����rr���N) r7���r`���ra���r\���rS���extendedr����rd���rU��rW��rl���r���r���rO��rO�����s\���������������J��I��H��G� �7��7���X�7� �������X�����r���rO��c�������������������������e�Zd�ZdZdS�)�InvalidParameter�invalid-parameterNrv���rl���r���r���rZ��rZ�����s��������������$�J�J�Jr���rZ��c��������������������(�����e�Zd�ZdZed����������������ZdS�)� Attribute� attributec������������������V�����|�D�]%}|j������������������������������d������������r |j��������c�S��&d�S�)N�attrtext)r\����endswithr���r����s��� r���r����zAttribute.stripped_value���sG�������� #�� #�E���(�(��4�4�� #��{�"�"�"� #� #�� #r���N�r7���r`���ra���r\���rd���r����rl���r���r���r]��r]�����s2���������������J� �#��#���X�#��#��#r���r]��c�������������������������e�Zd�ZdZdZdS�)�Section�sectionN)r7���r`���ra���r\���rT��rl���r���r���rd��rd�����s���������������J� �F�F�Fr���rd��c��������������������(�����e�Zd�ZdZed����������������ZdS�)�Valuer���c�����������������������|�d���������}|j���������dk����r|�d���������}|j������������������������������d������������r|j��������S�|�j��������S�)Nr���r����r����)r����r^��zextended-attribute)r\���ra��r����r���r����s��� r���r����zValue.stripped_value���sS�������Q�����v�%�%���G�E���$�$�D�F��F�� (��'�'��z�r���Nrb��rl���r���r���rg��rg�����s2���������������J� ������X�����r���rg��c��������������������2�����e�Zd�ZdZdZed����������������Zd��ZdS�)�MimeParameters�mime-parametersFc��������������#������K����i�}|�D�]y}|j������������������������������d������������s�|d���������j���������dk����r�/|d���������j�������������������������������������������}||vrg�||<���||������������������������������|j��������|f��������������z|�����������������������������������D��]4\��}}t����������|t����������d�������������������������}|d���������d���������}|j ��������}|j ��������sgt����������|������������dk����rT|d���������d���������dk����rB|d���������d���������j�����������������������������t����������j��������d�������������������������|d�d����������}g�}d}|D��]j\��} } | |k����r`| j ��������s-| j�����������������������������t����������j��������d��������������������������@| j�����������������������������t����������j��������d�������������������������|dz ��}| j��������}| j ��������r� �t ����������j�����������������������������|������������} �|���������������������|d ������������}n-#�t(����������t*����������f$�r�|���������������������d d ������������}Y�nw�xY�wt-����������j��������|������������r+| j�����������������������������t����������j�����������������������������������n1#�t*����������$�r$�t ����������j�����������������������������|d�������������}Y�nw�xY�w|���������������������|���������������ld ���������������������|������������}||fV�����6d�S�)NrP��r���r^��)�keyr����z.duplicate parameter name; duplicate(s) ignoredz+duplicate parameter name; duplicate ignoredz(inconsistent RFC2231 parameter numbering�surrogateescaperQ��zlatin-1)�encodingr'���)r\���ra��r����stripr����rU���items�sortedr���r����rX��r����r!���r����InvalidHeaderDefectrW���urllib�parse�unquote_to_bytes�decode�LookupError�UnicodeEncodeErrorr����_has_surrogates�UndecodableBytesDefect�unquoter0���)r"����paramsrK����name�parts�first_paramr�����value_parts�irU���paramr���s��� r���r}��zMimeParameters.params���sF�������������� ?�� ?�E��#�,�,�[�9�9�� ���Q�x�"�k�1�1����8�>�'�'�)�)�D��6�!�!�!��t���4�L����!5�u� =�>�>�>�>�!�<�<�>�>��3 ��3 �K�D�%��5�j��m�m�4�4�4�E���(�1�+�K�!�)�G���'�� &�C��J�J��N�N���8�A�;�!�#�#��!�H�Q�K�'�.�.�v�/I�H�0J��0J��K��K��K�!�"�1�"�I�E���K��A�).��! *��! *�%���!�Q�&�&��!�>��I�� �,�,�V�-G�I�.K��.K��L��L��L� �� �,�,�V�-G�F�.H��.H��I��I��I��Q����)���>��R�R� &�� =� =�e� D� D��P�$)�L�L��:K�$L�$L�E�E�� +�-?�@��P��P��P� �%*�L�L��=N�$O�$O�E�E�E�P�����!�0��7�7��R�!�M�0�0��1N�1P�1P�Q�Q�Q����.��P��P��P��!'�� 4� 4�U�Y� 4� O� O���� P���� ��"�"�5�)�)�)�)��G�G�K�(�(�E���+�����g3 ��3 s$����I&�"G9�9'H#�"H#�&+J�Jc����������� ������������g�}|�j���������D�]S\��}}|r7|���������������������d���������������������|t����������|��������������������������������������>|���������������������|��������������Td���������������������|������������}|rd|z���ndS�)N�{}={}z; rk���r'���)r}��r����r6���r���r0���)r"���r}��r~��r���s��� r���r2���zMimeParameters.__str__&��s����������;�� $�� $�K�D�%��� $�� � �g�n�n�T�<��3F�3F�G�G�H�H�H�H�� � �d�#�#�#�#����6�"�"��%�-�s�V�|�|�2�-r���N)r7���r`���ra���r\���rb���rd���r}��r2���rl���r���r���rj��rj�����sJ��������������"�J��O� �C��C���X�C�J.��.��.��.��.r���rj��c��������������������(�����e�Zd�ZdZed����������������ZdS�)�ParameterizedHeaderValueFc������������������R�����t����������|�������������D�]}|j��������dk����r |j��������c�S��i�S�)Nrk��)�reversedr\���r}��r����s��� r���r}��zParameterizedHeaderValue.params7��s>�������d�^�^�� $�� $�E���#4�4�4��|�#�#�#��5�� r���N)r7���r`���ra���rb���rd���r}��rl���r���r���r���r���1��s4����������������O� ������X�����r���r���c�������������������������e�Zd�ZdZdZdZdZdS�)�ContentTypezcontent-typeF�text�plainN)r7���r`���ra���r\���rE����maintype�subtyperl���r���r���r���r���?��s"���������������J��M��H��G�G�Gr���r���c�������������������������e�Zd�ZdZdZdZdS�)�ContentDispositionzcontent-dispositionFN)r7���r`���ra���r\���rE����content_dispositionrl���r���r���r���r���F��s ��������������&�J��M����r���r���c�������������������������e�Zd�ZdZdZdZdS�)�ContentTransferEncodingzcontent-transfer-encodingF�7bitN)r7���r`���ra���r\���rE���r����rl���r���r���r���r���L��s��������������,�J��M� �C�C�Cr���r���c�������������������������e�Zd�ZdZdZdS�)�HeaderLabelzheader-labelFNr��rl���r���r���r���r���R��s���������������J��M�M�Mr���r���c�������������������������e�Zd�ZdZdZd��ZdS�)�MsgIDzmsg-idFc������������������0�����t����������|�������������|j��������z���S�r���)r����lineseprP���s��� r���rQ���z MsgID.fold[��s�������4�y�y�6�>�)�)r���N)r7���r`���ra���r\���rE���rQ���rl���r���r���r���r���W��s-���������������J��M�*��*��*��*��*r���r���c�������������������������e�Zd�ZdZdS�)� MessageIDz message-idNrv���rl���r���r���r���r���`��s���������������J�J�Jr���r���c�������������������������e�Zd�ZdZdS�)�InvalidMessageIDzinvalid-message-idNrv���rl���r���r���r���r���d��s��������������%�J�J�Jr���r���c�������������������������e�Zd�ZdZdS�)�Header�headerNrv���rl���r���r���r���r���h��rz���r���r���c��������������������~�������e�Zd�ZdZdZdZ��fd�Z��fd�Zd��Ze d����������������Z d��fd� Zd��Ze d ����������������Z d ��Z��xZS�)�TerminalTc������������������h������t���������������������������������������������|�|������������}||_��������g�|_��������|S�r���)r����__new__r\���r!���)�clsr���r\���r"���r%���s��� �r���r���zTerminal.__new__v��s-��������w�w���s�E�*�*��$�������r���c������������������������d����������������������|�j��������j��������t�����������������������������������������������������������������������S�r4���r5���r9���s��� �r���r8���zTerminal.__repr__|��s,����������t�~�6����8H�8H�8J�8J�K�K�Kr���c������������������N�����t����������|�j��������j��������dz���|�j��������z����������������d�S�)N�/)rU���r%���r7���r\���r1���s��� r���rX���zTerminal.pprint��s'������ �d�n�%��+�d�o�=�>�>�>�>�>r���c������������������*�����t����������|�j��������������������S�r���)�listr!���r1���s��� r���r>���zTerminal.all_defects���s�������D�L�!�!�!r���r'���c����������� ��������������d����������������������||�j��������j��������|�j��������t �����������������������������������������������������������|�j��������sdnd����������������������|�j��������������������������������gS�)Nz {}{}/{}({}){}r'���z {})r6���r%���r7���r\���r���r8���r!���)r"���rT���r%���s��� �r���rZ���zTerminal._pp���s_��������&�&���N�#��O��G�G������l�B�B�B����T�\�(B�(B������� r���c�����������������������d�S�r���rl���r1���s��� r����pop_trailing_wszTerminal.pop_trailing_ws���r��r���c�����������������������g�S�r���rl���r1���s��� r���rJ���zTerminal.comments���s������� r���c������������������.�����t����������|�������������|�j��������fS�r���)r���r\���r1���s��� r����__getnewargs__zTerminal.__getnewargs__���s�������4�y�y�$�/�*�*r���r_���)r7���r`���ra���rE���rc���rb���r���r8���rX���rd���r>���rZ���r���rJ���r���re���rf���s���@r���r���r���p��s�����������������M����O����������L��L��L��L��L�?��?��?���"��"���X�"������������������������X��+��+��+��+��+��+��+r���r���c��������������������*�����e�Zd�Zed����������������Zd��ZdS�)�WhiteSpaceTerminalc�����������������������dS�rj���rl���r1���s��� r���r���zWhiteSpaceTerminal.value���rm���r���c�����������������������dS�)NTrl���r1���s��� r���rB���z!WhiteSpaceTerminal.startswith_fws���s�������tr���N�r7���r`���ra���rd���r���rB���rl���r���r���r���r������s<�������������� ������X����������r���r���c��������������������*�����e�Zd�Zed����������������Zd��ZdS�)� ValueTerminalc�����������������������|�S�r���rl���r1���s��� r���r���zValueTerminal.value���s�������r���c�����������������������dS�)NFrl���r1���s��� r���rB���zValueTerminal.startswith_fws���s�������ur���Nr���rl���r���r���r���r������s<�������������� ������X����������r���r���c��������������������*�����e�Zd�Zed����������������Zd��ZdS�)�EWWhiteSpaceTerminalc�����������������������dS�r��rl���r1���s��� r���r���zEWWhiteSpaceTerminal.value���s�������rr���c�����������������������dS�r��rl���r1���s��� r���r2���zEWWhiteSpaceTerminal.__str__���s�������rr���N)r7���r`���ra���rd���r���r2���rl���r���r���r���r������s<�������������� ������X����������r���r���c�������������������������e�Zd�ZdS�)�_InvalidEwErrorN)r7���r`���ra���rl���r���r���r���r������s��������������;�;r���r���r=���,zlist-separatorFr+��zroute-component-markerz([{}]+)r'���z[^{}]+z[\x00-\x20\x7F]c���������������������� �t����������|�������������}|r,|�j�����������������������������t����������j��������|�������������������������t����������j��������|�������������r.|�j�����������������������������t����������j��������d�������������������������d�S�d�S�)Nz*Non-ASCII characters found in header token)�_non_printable_finderr!���r����r����NonPrintableDefectr���rz��r{��)�xtext�non_printabless��� r����_validate_xtextr������s�������J�*�5�1�1�N���H� � ���V�6�~�F�F�G�G�G���U�#�#��;� � ���V�:�8�:��:�� ;�� ;�� ;�� ;�� ;�;��;r���c������������������n���� �t����������|�d������������^}}g�}d}d}t����������t����������|������������������������D�]D}||���������dk����r |rd}d}nd}�|rd}n||���������|v�r�n!|���������������������||�����������������������E|dz���}d���������������������|������������d���������������������||d�����������g|z���������������|fS�)Nr����Fr���Tr'���)� _wsp_splitter�ranger����r����r0���)r����endchars�fragment� remainder�vchars�escape�had_qp�poss��� r����_get_ptext_to_endcharsr������s���������)���2�2��H�y� �F� �F� �F��S��]�]�#�#�������C�=�D� � ��� ����������� ��F�F� �c�]�h� &� &��E�� � �h�s�m�$�$�$�$��A�g�� �7�7�6�?�?�B�G�G�X�c�d�d�^�$4�y�$@�A�A�6�I�Ir���c����������������������� �|�������������������������������������}t����������|�d�t����������|�������������t����������|������������z ������������d������������}||fS�)N�fws)r)��r���r����)r����newvaluer���s��� r����get_fwsr�����sK���������|�|�~�~�H� �U�#<�C��J�J�s�8�}�}�$<�#<�=�u� E� E�C���=�r����vtextc����������������������� �t������������������������}|����������������������d������������s't����������j��������d���������������������|��������������������������|�dd��������������������������������dd������������^}}||�dd�����������k����r't����������j��������d���������������������|��������������������������d���������������������|������������}t����������|������������dk����rW|d���������t����������v�rH|d���������t����������v�r9|� ��������������������d������������dk�����r |���������������������dd������������^}}|dz���|z���}t����������|�����������������������������������������������dk����r,|j �����������������������������t����������j��������d �������������������������|�|_ ��������d���������������������|������������}� �t����������j��������d|z���dz���������������\��}}} } n<#�t ����������t"����������f$�r(�t%����������d ���������������������|j ���������������������������������w�xY�w||_��������| |_��������|j �����������������������������| �������������|r�|d���������t,����������v�r(t/����������|������������\��}}|���������������������|��������������9t1����������|d������������^}}t3����������||������������} t5����������| �������������|���������������������| �������������d���������������������|������������}|��|�r;|�d���������t,����������vr,|j �����������������������������t����������j��������d�������������������������||�fS�)N�=?z"expected encoded word but found {}r����z?=r����r'���r����?zwhitespace inside encoded wordz!encoded word format invalid: '{}'z.missing trailing whitespace after encoded-word)r����� startswithr����HeaderParseErrorr6���r��r0���r����r����countr!���r����rs��r�����_ewrw��� ValueError�KeyErrorr���r����r����rI����WSPr���r���r���r���)r���� terminal_type�ewrB��r����remstr�restr���r����r����r!���rK����charsr���s��� r����get_encoded_wordr�����s������� ���B����D�!�!��@��%�0�7�7��>�>�@��@�� @��A�B�B�i�o�o�d�A�.�.�O�C�)� �e�A�B�B�i����%�0�7�7��>�>�@��@�� @� �W�W�Y� � �F��F���a����q� �Y����q� �Y���� � �#������!�<�<��a�0�0���y��D�j�4��� �3�9�9�;�;���!��� � ���&�4�,�.��.�� /�� /�� /� �B�F��G�G�I���E�@�'*�z�$��*�t�2C�'D�'D�$��g�t�W�W����!��@��@��@��/�6�6�r�v�>�>�@��@�� @�@������B�J��B�G��J���g���� �� "���7�c�>�>�!�$�-�-�K�E�4��I�I�e�����)�$��2�2��� ��e�]�3�3������� � � �%�����w�w�y�!�!����� "�� ��?��q���$�$� � ���&�4�<�>��>�� ?�� ?�� ?� �u�9�s����F.��.9G'c���������������������� �t������������������������}|��r�|�d���������t����������v�r(t����������|�������������\��}}�|���������������������|��������������:d}|����������������������d������������r� �t����������|�d������������\��}}�d}t ����������|������������dk����r?|d���������j��������dk����r.|j�����������������������������t����������j ��������d�������������������������d}|r=t ����������|������������d k����r*|d ���������j��������dk����rt����������|d���������d������������|d<���|���������������������|���������������#�t����������$�r�d}Y�nt����������j ��������$�r�Y�nw�xY�wt����������|�d ������������^}}|r1t�������������������������������|������������r|����������������������d������������^}}t%����������|d������������}t'����������|�������������|���������������������|�������������d���������������������|������������}�|����|S�) Nr���Tr����utextr����r���z&missing whitespace before encoded wordFr�������r����r'���)rt���r���r���r����r���r���r����r\���r!���r���rs��r���r���r���r����rfc2047_matcher�search� partitionr���r���r0���)r���ru���rK����valid_ew�have_wsrB��r���r���s��� r����get_unstructuredr���K��s)������,�)�*�*�L� ��(#���8�s�?�?�"�5�>�>�L�E�5�����&�&�&�������D�!�!�� � �/��w�?�?���u�����|�$�$�q�(�(�#�B�'�2�e�;�;�$�,�3�3�F�4N�D�5F��5F��G��G��G�"'����5�s�<�0�0�1�4�4�#�B�'�2�n�D�D�+?�(��,�e�,5��,5��R�(��#�#�E�*�*�*���%�#�� !�� !�� !� �����*�� �� �� ���� ����"�(��q�1�1���i���� 4��.�.�s�3�3�� 4�#�o�o�d�3�3�O�C�)��c�7�+�+����������E�"�"�"���� �"�"��Q���(#�R��s����"D��D>�-D>�=D>c������������������r����� �t����������|�d������������\��}}�}t����������|d������������}t����������|�������������||�fS�)Nz()rH��)r���r���r����r���rH���_s��� r����get_qp_ctextr������sE������ ��-�U�D�9�9�O�E�5�!��u�g�.�.�E��E�����%�<�r���c������������������r����� �t����������|�d������������\��}}�}t����������|d������������}t����������|�������������||�fS�)Nr���rH��)r���r���r���r���s��� r����get_qcontentr������sE��������-�U�C�8�8�O�E�5�!��%��)�)�E��E�����%�<�r���c���������������������� �t����������|�������������}|s't����������j��������d���������������������|��������������������������|�����������������������������������}|�t����������|������������d�����������}�t ����������|d������������}t����������|�������������||�fS�)Nzexpected atext but found '{}'�atext)�_non_atom_end_matcherr���r���r6���r����r����r���r���)r����mr���s��� r���� get_atextr������s�������� � �e�$�$�A���;��%�+�2�2�5�9�9�;��;�� ;� �G�G�I�I�E��#�e�*�*�+�+��E��%��)�)�E��E�����%�<�r���c����������������������� �|�d���������dk����r't����������j��������d���������������������|��������������������������t������������������������}|�dd�����������}�|�r3|�d���������dk����r't ����������|�������������\��}}�|���������������������|�������������|��r/|�d���������dk�����r"|�d���������t����������v�rt����������|�������������\��}}�n�|�d�d����������dk����r�d} �t����������|�������������\��}}�|j �����������������������������t����������j ��������d�������������������������d }n'#�t�����������j��������$�r�t ����������|�������������\��}}�Y�nw�xY�w|rNt����������|������������dk����r;|d ���������j��������dk����r*|d���������j��������d k����rt����������|d ���������d������������|d <���nt ����������|�������������\��}}�|���������������������|�������������|�r |�d���������dk������"|�s0|j �����������������������������t����������j ��������d�������������������������||�fS�||�dd�����������fS�)Nr���r���zexpected '"' but found '{}'r����r����r���Fz!encoded word inside quoted stringTr����r���r���r����z"end of header inside quoted string)r���r���r6���r����r���r����r���r���r���r!���rs��r����r\���r���)r����bare_quoted_stringrK���r���s��� r����get_bare_quoted_stringr������sJ������� �Q�x�3����%�*�1�1�%�8�8�:��:�� :�)�+�+���!�"�"�I�E���)��q��S���#�E�*�*���u��!�!�%�(�(�(� ��)�E�!�H��O�O���8�s�?�?�"�5�>�>�L�E�5�5� �2�A�2�Y�$� � ��H� 3�/��6�6���u�"�*�1�1�&�2L�7�39��39��:��:��:������*�� 3�� 3�� 3�+�E�2�2���u�u�u� 3������� 7�C� 2�3�3�a�7�7�&�r�*�5��>�>�*�2�.�9�^�K�K�-A�*�2�.��.7��.7�&�r�*���(��.�.�L�E�5��!�!�%�(�(�(�+���)�E�!�H��O�O�,���)��"�)�)�&�*D�0�+2��+2�� 3�� 3�� 3�!�5�(�(��u�Q�R�R�y�(�(s����A�D��!D*�)D*c������������������"���� �|�r3|�d���������dk����r't����������j��������d���������������������|��������������������������t������������������������}|�dd�����������}�|�r�|�d���������dk����rv|�d���������t����������v�rt����������|�������������\��}}�n1|�d���������dk����rt ����������|�������������\��}}�nt����������|�������������\��}}�|���������������������|�������������|�r|�d���������dk�����v|�s0|j �����������������������������t����������j ��������d�������������������������||�fS�||�dd�����������fS�)Nr���r���zexpected '(' but found '{}'r����r����zend of header inside comment)r���r���r6���r����r���r����get_commentr���r����r!���rs��)r���rp���rK���s��� r���r��r�����s7������ � ��9��q��S����%�)�0�0��7�7�9��9�� 9��i�i�G��!�"�"�I�E� ���E�!�H��O�O���8�s�?�?�"�5�>�>�L�E�5�5� �1�X��_�_�&�u�-�-�L�E�5�5�'��.�.�L�E�5����u��������E�!�H��O�O���������v�9�*� ,�� ,�� -�� -�� -���~���E�!�"�"�I��r���c����������������������� �t������������������������}|�ri|�d���������t����������v�rZ|�d���������t����������v�rt����������|�������������\��}}�nt ����������|�������������\��}}�|���������������������|�������������|�r|�d���������t����������v��Z||�fS�rA���)r�����CFWS_LEADERr���r���r��r����)r���r����rK���s��� r����get_cfwsr����s����������:�:�D� ���E�!�H��+�+���8�s�?�?�"�5�>�>�L�E�5�5�&�u�-�-�L�E�5����E��������E�!�H��+�+����;�r���c������������������V���� �t������������������������}|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������t ����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS�rA���)r����r��r��r����r���)r���� quoted_stringrK���s��� r����get_quoted_stringr����s���������!�N�N�M���$��q��[�(�(�������u����U�#�#�#�)�%�0�0�L�E�5����������$��q��[�(�(�������u����U�#�#�#��%��r���c������������������f���� �t������������������������}|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������j��������d���������������������|��������������������������|����������������������d������������r; �t����������|�������������\��}}�n9#�t ����������j��������$�r�t����������|�������������\��}}�Y�nw�xY�wt����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS�)Nr���zexpected atom but found '{}'r���)r����r��r��r����� ATOM_ENDSr���r���r6���r���r���r���)r���r����rK���s��� r����get_atomr ��!��sN��������6�6�D�����q��[�(�(�������u����E������:��q��Y�&�&��%�*�1�1�%�8�8�:��:�� :��������(� ,�+�E�2�2�L�E�5�5���&�� ,�� ,�� ,��%�U�+�+�L�E�5�5�5� ,���� �!��'�'���u��K�K���������q��[�(�(�������u����E������;�s����B)��)!C �C c����������������������� �t������������������������}|�r|�d���������t����������v�r't����������j��������d���������������������|��������������������������|�ry|�d���������t����������vrjt����������|�������������\��}}�|���������������������|�������������|�r0|�d���������dk����r$|���������������������t�����������������������|�dd�����������}�|�r|�d���������t����������v�j|d���������t����������u�r*t����������j��������d���������������������d|�z����������������������������||�fS�)Nr���z8expected atom at a start of dot-atom-text but found '{}'r ���r����r����z4expected atom at end of dot-atom-text but found '{}')r��r ��r���r���r6���r���r����r>��)r���� dot_atom_textrK���s��� r����get_dot_atom_textr ��<��s������� �M�M�M���:�E�!�H� �)�)��%��'+�+1�6�%�=�=�:��:�� :� ���E�!�H�I�-�-� ��'�'���u����U�#�#�#��� �U�1�X��_�_�� � ��%�%�%��!�"�"�I�E�����E�!�H�I�-�-���R��C����%��'�#�V�C��I�.�.�0��0�� 0��%��r���c����������������������� �t������������������������}|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������|����������������������d������������r; �t����������|�������������\��}}�n9#�t����������j��������$�r�t����������|�������������\��}}�Y�nw�xY�wt����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS�)Nr���r���) r��r��r��r����r���r���r���r���r ��)r����dot_atomrK���s��� r����get_dot_atomr��O��s������ ��y�y�H��Q�x�;���������u���������������0� 4�+�E�2�2�L�E�5�5���&�� 4�� 4�� 4��-�U�3�3�L�E�5�5�5� 4���� �)��/�/���u��O�O�E��������q��[�(�(�������u���������U�?�s����A/��/!B�Bc������������������b���� �|�d���������t�����������v�rt����������|�������������\��}}�nd�}|�st����������j��������d�������������|�d���������dk����rt ����������|�������������\��}}�nH|�d���������t ����������v�r't����������j��������d���������������������|��������������������������t����������|�������������\��}}�|�|g|d�d�<���||�fS�)Nr���z5Expected 'atom' or 'quoted-string' but found nothing.r���z1Expected 'atom' or 'quoted-string' but found '{}')r��r��r���r���r���SPECIALSr6���r ��)r����leaderrK���s��� r����get_wordr��h��s��������� �Q�x�;��� ���� ��������E��%�C�E��E�� E��Q�x��}�}�(��/�/���u�u� �q��X� � ��%��'7�7=�v�e�}�}�F��F�� F�� ������u� ���H��b�q�b� ��%�<�r���c���������������������� �t������������������������} �t����������|�������������\��}}�|���������������������|�������������nA#�t����������j��������$�r/�|j�����������������������������t����������j��������d�������������������������Y�nw�xY�w|��r |�d���������t����������vr�|�d���������dk����rQ|���������������������t�����������������������|j�����������������������������t����������j ��������d�������������������������|�dd�����������}�n� �t����������|�������������\��}}�nd#�t����������j��������$�rR�|�d���������t����������v�r?t����������|�������������\��}}�|j�����������������������������t����������j ��������d�������������������������n��Y�nw�xY�w|���������������������|�������������|�r|�d���������t����������v��||�fS�)Nzphrase does not start with wordr���r ���zperiod in 'phrase'r����zcomment found without atom)rx���r��r����r���r���r!���rs���PHRASE_ENDSr>���ObsoleteHeaderDefectr��r��)r���ry���rK���s��� r���� get_phraser�����s������ ���X�X�F�0�������u�� � �e�������"��0��0��0�����f�8�-�/��/�� 0�� 0�� 0�� 0�� 0�0�������!�E�!�H�K�/�/���8�S�=�=��M�M�#�����N�!�!�&�"=�$�#&��#&�� '�� '�� '��!�"�"�I�E�E� �'������u�u���*�� �� �� ���8�{�*�*�#+�E�?�?�L�E�5��N�)�)�&�*E�4�+6��+6��7��7��7��7���7��7� ����� �M�M�%� � � �!���!�E�!�H�K�/�/�"��5�=�s"����'9��;A7�6A7�*C=��=AE�Ec���������������������� �t������������������������}d�}|�d���������t����������v�rt����������|�������������\��}}�|�s't����������j��������d���������������������|�������������������������� �t ����������|�������������\��}}�nh#�t����������j��������$�rV� �t����������|�������������\��}}�n?#�t����������j��������$�r-�|�d���������dk����r|�d���������t����������v�r��t������������������������}Y�nw�xY�wY�nw�xY�w|�|g|d�d�<���|� ��������������������|�������������|�r�|�d���������dk����s|�d���������t����������vr�t����������t����������|������������|�z���������������\��}}�|j ��������dk����r-|j��������� ��������������������t����������j��������d�������������������������n,|j��������� ��������������������t����������j��������d�������������������������||d<��� �|j�����������������������������d�������������n<#�t&����������$�r/�|j��������� ��������������������t����������j��������d�������������������������Y�nw�xY�w||�fS�) Nr���z"expected local-part but found '{}'r����invalid-obs-local-partz<local-part is not dot-atom, quoted-string, or obs-local-partz,local-part is not a dot-atom (contains CFWS)�asciiz)local-part contains non-ASCII characters))r:��r��r��r���r���r6���r��r��r��r���r�����get_obs_local_partr���r\���r!���rs��r��r����encodery���NonASCIILocalPartDefect)r���r����r��rK����obs_local_parts��� r����get_local_partr �����sl����������J� �F��Q�x�;��� ���� �����@��%�0�7�7��>�>�@��@�� @� �#�E�*�*���u�u���"�� �� �� � �#�E�?�?�L�E�5�5���&�� �� �� ��Q�x�4���E�!�H��$;�$;���K�K�E�E�E� ������ ��������H��b�q�b� ����e������'�%��(�D�.�.�E�!�H�K�$?�$?� 2�3�z�?�?�U�3J� K� K�����$�(@�@�@���%�%�f�&@�N�'P��'P�� Q�� Q�� Q�� Q�� ��%�%�f�&A�>�'@��'@�� A�� A�� A�&� �1� �>������(�(�(�(����>��>��>���!�!�&�"@�;�#=��#=�� >�� >�� >�� >�� >�>������u��sH����A0��0C��B�C�9C�C�C�C�C� F;��;6G4�3G4c������������������ ���� �t������������������������}d}|��r�|�d���������dk����s|�d���������t����������v�r�|�d���������dk����rU|r,|j�����������������������������t ����������j��������d�������������������������|���������������������t�����������������������d}|�dd�����������}���|�d���������dk����rb|���������������������t����������|�d���������d�������������������������|�dd�����������}�|j�����������������������������t ����������j��������d �������������������������d}��|r=|d ���������j��������dk����r,|j�����������������������������t ����������j��������d������������������������� �t����������|�������������\��}}�d}n7#�t����������j ��������$�r%�|�d���������t����������vr��t����������|�������������\��}}�Y�nw�xY�w|���������������������|�������������|�r|�d���������dk������|�d���������t����������v���|d���������j��������dk����s"|d���������j��������d k����r=|d���������j��������dk����r,|j�����������������������������t ����������j��������d�������������������������|d ���������j��������dk����s"|d ���������j��������d k����r=|d���������j��������dk����r,|j�����������������������������t ����������j��������d�������������������������|j��������rd|_��������||�fS�)NFr���r���r ���zinvalid repeated '.'Tr�����misplaced-specialz/'\' character outside of quoted-string/ccontentr����r=��zmissing '.' between wordsr����z!Invalid leading '.' in local partr���z"Invalid trailing '.' in local partr��) r1��r��r!���r����r���rs��r>��r���r\���r��r���r��r��)r���r���last_non_ws_was_dotrK���s��� r���r��r�����s�������!�^�^�N��� ��%�U�1�X�t�^�^�u�Q�x�{�'B�'B���8�s�?�?�"�� -��&�-�-�f�.H�*�/,��/,��-��-��-��!�!�#�&�&�&�"&���!�"�"�I�E�� �1�X�t�^�^��!�!�-��a��0C�#E��#E�� F�� F�� F��!�"�"�I�E��"�)�)�&�*D�B�+D��+D�� E�� E�� E�"'����� .�n�R�0�;�u�D�D��"�)�)�&�*D�+�+-��+-�� .�� .�� .� +�#�E�?�?�L�E�5�"'�����&�� +�� +�� +��Q�x�{�*�*��#�E�?�?�L�E�5�5�5� +����� ���e�$�$�$�7���%�U�1�X�t�^�^�u�Q�x�{�'B�'B�8� �q��$��-�-��1��(�&�0�0��1��(�%�/�/���%�%�f�&@�/�'1��'1�� 2�� 2�� 2��r��%��.�.��2��)�6�1�1��2��)�5�0�0���%�%�f�&@�0�'2��'2�� 3�� 3�� 3����=�$<��!��5� � s�����E��1F �F c������������������������ �t����������|�d������������\��}}�}t����������|d������������}|r,|j�����������������������������t ����������j��������d�������������������������t ����������|�������������||�fS�)Nz[]rH��z(quoted printable found in domain-literal)r���r���r!���r����r���r��r���)r���rH��r���s��� r���� get_dtextr%����sz������ ��2�%��>�>��E�5�&��%��)�)�E� ��9� � ���V�8�6�8��8�� 9�� 9�� 9��E�����%�<�r���c�����������������������|�rdS�|����������������������t����������j��������d�������������������������|����������������������t����������dd�������������������������dS�)NFz"end of input inside domain-literal�]�domain-literal-endT)r����r���rs��r���)r����domain_literals��� r����_check_for_early_dl_endr*����s]����������u����&�4�,�.��.��/��/��/����-��-A�B�B�C�C�C��4r���c������������������N���� �t������������������������}|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������|�st ����������j��������d�������������|�d���������dk����r't ����������j��������d���������������������|��������������������������|�dd�����������}�t����������|�|������������r||�fS�|���������������������t����������dd�������������������������|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������t����������|�������������\��}}�|���������������������|�������������t����������|�|������������r||�fS�|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������t����������|�|������������r||�fS�|�d���������dk����r't ����������j��������d���������������������|��������������������������|���������������������t����������dd �������������������������|�dd�����������}�|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS�) Nr���zexpected domain-literal�[z6expected '[' at start of domain-literal but found '{}'r����zdomain-literal-startr'��z4expected ']' at end of domain-literal but found '{}'r(��)rE��r��r��r����r���r���r6���r*��r���r���r���r%��)r���r)��rK���s��� r����get_domain_literalr-��"��s;�������#�_�_�N��Q�x�;���������u����e�$�$�$���A��%�&?�@�@�@��Q�x�3����%��'!�!'�����0��0�� 0��!�"�"�I�E��u�n�5�5��%��u�$�$����-��-C�D�D�E�E�E��Q�x�3����u�~�~���u����e�$�$�$��U�#�#�L�E�5����%� � � ��u�n�5�5��%��u�$�$��Q�x�3����u�~�~���u����e�$�$�$��u�n�5�5��%��u�$�$��Q�x�3����%��'!�!'�����0��0�� 0����-��-A�B�B�C�C�C��!�"�"�I�E���%��q��[�(�(�������u����e�$�$�$��5� � r���c���������������������� �t������������������������}d�}|�d���������t����������v�rt����������|�������������\��}}�|�s't����������j��������d���������������������|��������������������������|�d���������dk����r5t ����������|�������������\��}}�|�|g|d�d�<���|���������������������|�������������||�fS� �t����������|�������������\��}}�n'#�t����������j��������$�r�t����������|�������������\��}}�Y�nw�xY�w|�r |�d���������dk����rt����������j��������d�������������|�|g|d�d�<���|���������������������|�������������|�r�|�d���������dk����r�|j �����������������������������t����������j��������d�������������������������|d���������j��������dk����r |d���������|d�d��<���|�rc|�d���������dk����rW|���������������������t�����������������������t����������|�d d�����������������������\��}}�|���������������������|�������������|�r|�d���������dk�����W||�fS�) Nr���zexpected domain but found '{}'r,��r+��zInvalid Domainr ���z(domain is not a dot-atom (contains CFWS)r��r����)r��r��r��r���r���r6���r-��r����r��r ��r!���r��r\���r>��)r���r����r��rK���s��� r���� get_domainr/��I��s��������X�X�F� �F��Q�x�;��� ���� �����<��%�,�3�3�E�:�:�<��<�� <��Q�x�3���)�%�0�0���u�����E�"�1�"�I�� � �e�����u�}��'�#�E�*�*���u�u���"��'��'��'�������u�u�u�'������8��q��S����%�&6�7�7�7� ���H��b�q�b� � �M�M�%������!��q��S�������f�9�6�8��8�� 9�� 9�� 9��!�9��:�-�-��q� �F�1�1�1�I��� !��a��C����M�M�#����#�E�!�"�"�I�.�.�L�E�5��M�M�%� � � ���� !��a��C�����5�=�s����B1��1!C�Cc���������������������� �t������������������������}t����������|�������������\��}}�|���������������������|�������������|�r|�d���������dk����r0|j�����������������������������t ����������j��������d�������������������������||�fS�|���������������������t ����������dd�������������������������t����������|�dd�����������������������\��}}�|���������������������|�������������||�fS�)Nr���r+��z#addr-spec local part with no domain�address-at-symbolr����)r#��r ��r����r!���r���rs��r���r/��)r���r����rK���s��� r���� get_addr_specr2��o��s���������� � �I�!�%�(�(�L�E�5� ���U������ �E�!�H��O�O��� � ��!;�1�"3��"3�� 4�� 4�� 4��%��� ���]�3�(;�<�<�=�=�=��e�A�B�B�i�(�(�L�E�5� ���U�����e��r���c����������������������� �t������������������������}|�r�|�d���������dk����s|�d���������t����������v�r�|�d���������t����������v�r(t����������|�������������\��}}�|���������������������|�������������n0|�d���������dk����r$|���������������������t�����������������������|�dd�����������}�|�r|�d���������dk�����u|�d���������t����������v���|�r|�d���������dk����r't����������j��������d���������������������|��������������������������|���������������������t�����������������������t����������|�dd�����������������������\��}}�|���������������������|�������������|�r�|�d���������dk����r�|���������������������t�����������������������|�dd�����������}�|�sn�|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������|�d���������dk����rI|���������������������t�����������������������t����������|�dd�����������������������\��}}�|���������������������|�������������|�r|�d���������dk������|�st����������j��������d�������������|�d���������dk����r't����������j��������d���������������������|��������������������������|���������������������t����������dd �������������������������||�dd�����������fS�) Nr���r���r����r+��z(expected obs-route domain but found '{}'z%end of header while parsing obs-route�:z4expected ':' marking end of obs-route but found '{}'zend-of-obs-route-marker)r��r��r��r����� ListSeparatorr���r���r6����RouteComponentMarkerr/��r���)r���� obs_routerK���s��� r���� get_obs_router8����s��������� � �I� ���U�1�X�s�]�]�e�A�h�+�&=�&=���8�{�"�"�#�E�?�?�L�E�5����U�#�#�#�#� �1�X��_�_����]�+�+�+��!�"�"�I�E� ����U�1�X�s�]�]�e�A�h�+�&=�&=����F�E�!�H��O�O��%�6�=�=�e�D�D�F��F�� F� ���)�*�*�*��e�A�B�B�i�(�(�L�E�5� ���U���� ��$�E�!�H�c�M�M�����'�'�'��a�b�b� ���� ����8�{�"�"�#�E�?�?�L�E�5����U�#�#�#���8�s�?�?����1�2�2�2�%�e�A�B�B�i�0�0�L�E�5����U�#�#�#����$�E�!�H�c�M�M����O��%�&M�N�N�N��Q�x�3����%��('�'-�v�e�}�}�6��6�� 6� ���]�3�(A�B�B�C�C�C��e�A�B�B�i��r���c������������������(���� �t������������������������}|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������|�r|�d���������dk����r't ����������j��������d���������������������|��������������������������|���������������������t����������dd�������������������������|�dd�����������}�|�d���������dk����r]|���������������������t����������dd�������������������������|j�����������������������������t ����������j ��������d�������������������������|�dd�����������}�||�fS� �t����������|�������������\��}}�n�#�t����������j��������$�r�� �t����������|�������������\��}}�|j�����������������������������t ����������j��������d �������������������������n:#�t����������j��������$�r(�t ����������j��������d ���������������������|��������������������������w�xY�w|���������������������|�������������t����������|�������������\��}}�Y�nw�xY�w|���������������������|�������������|�r|�d���������dk����r|�dd�����������}�n,|j�����������������������������t ����������j ��������d�������������������������|���������������������t����������dd�������������������������|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS�)Nr����<z"expected angle-addr but found '{}'zangle-addr-startr�����>zangle-addr-endznull addr-spec in angle-addrz*obsolete route specification in angle-addrz.expected addr-spec or obs-route but found '{}'z"missing trailing '>' on angle-addr) r����r��r��r����r���r���r6���r���r!���rs��r2��r8��r��)r���� angle_addrrK���s��� r����get_angle_addrr=�����s�����������J��Q�x�;���������u����%� � � ���@�E�!�H��O�O��%�0�7�7��>�>�@��@�� @����m�C�);�<�<�=�=�=��!�"�"�I�E�� �Q�x�3������-��-=�>�>�?�?�?���!�!�&�"<�*�#,��#,�� -�� -�� -��a�b�b� ���5� � �,�$�U�+�+���u�u���"�� ,�� ,�� ,� P�(��/�/�L�E�5���%�%�f�&A�<�'>��'>�� ?�� ?�� ?�� ?���&�� P�� P�� P��)�@�G�G��N�N�P��P�� P� P����� ���%� � � �$�U�+�+���u�u�u� ,��������e������3��q��S����a�b�b� �����!�!�&�"<�0�#2��#2�� 3�� 3�� 3����m�C�)9�:�:�;�;�;���!��q��[�(�(�������u����%� � � ��u��s*����D%��%G�5>E4�3G�47F+�+*G�Gc����������������������� �t������������������������}t����������|�������������\��}}�|���������������������|d�d������������������������|j��������d�d�����������|_��������||�fS�r���)r3��r��rI���r!���)r���r����rK���s��� r����get_display_namer?�����s]���������=�=�L��e�$�$�L�E�5�����a�a�a��!�!�!� �=����+�L�����r���c������������������j���� �t������������������������}d�}|�d���������t����������v�r;t����������|�������������\��}}�|�s't����������j��������d���������������������|�������������������������|�d���������dk����r�|�d���������t����������v�r't����������j��������d���������������������|��������������������������t����������|�������������\��}}�|�s't����������j��������d���������������������|�������������������������|�|g|d���������d�d�<���d�}|���������������������|�������������t����������|�������������\��}}�|�|g|d�d�<���|���������������������|�������������||�fS�)Nr���z!expected name-addr but found '{}'r:��) r����r��r��r���r���r6���r��r?��r����r=��)r���� name_addrr��rK���s��� r���� get_name_addrrB�����sf�������� � �I� �F��Q�x�;��� ���� ����� D��)�3�:�:�6�B�B�D��D�� D��Q�x�3�����8�{�"�"��)�3�:�:�5�A�A�C��C�� C�'��.�.���u��� C��)�3�:�:�5�A�A�C��C�� C���"�8�E�!�H�R�a�R�L��F��������!�%�(�(�L�E�5� ���H��b�q�b� � ���U�����e��r���c���������������������� �t������������������������} �t����������|�������������\��}}�nc#�t����������j��������$�rQ� �t ����������|�������������\��}}�n:#�t����������j��������$�r(�t����������j��������d���������������������|��������������������������w�xY�wY�nw�xY�wt ����������d��|j��������D���������������������������rd|_��������|� ��������������������|�������������||�fS�)Nzexpected mailbox but found '{}'c��������������3����J���K����|�]}t����������|t����������j��������������������V����d�S�r���)r?��r���rs��r*���s��� r���r-���zget_mailbox.<locals>.<genexpr>��sC�����������3��3����a��3�4�4��3��3��3��3��3��3r���r����) r��rB��r���r���r2��r6����anyr>���r\���r����)r���r����rK���s��� r����get_mailboxrF����s������ ��i�i�G�A�$�U�+�+���u�u���"��A��A��A� A�(��/�/�L�E�5�5���&�� A�� A�� A��)�1�8�8��?�?�A��A�� A� A������5�A�������3��3� %� 1�3��3��3��3��3��/�.����N�N�5�����E�>��&����$��B�A�B�7A>�>B�Bc������������������,���� �t������������������������}|�r�|�d���������|vrv|�d���������t����������v�r4|���������������������t����������|�d���������d�������������������������|�dd�����������}�n't ����������|�������������\��}}�|���������������������|�������������|�r |�d���������|v�v||�fS�)Nr���r"��r����)r��r��r����r���r��)r���r����invalid_mailboxrK���s��� r����get_invalid_mailboxrJ����s���������%�&�&�O� ��*�E�!�H�H�,�,���8�{�"�"��"�"�=��q��1D�$F��$F�� G�� G�� G��!�"�"�I�E�E�%�e�,�,�L�E�5��"�"�5�)�)�)����*�E�!�H�H�,�,���E�!�!r���c���������������������� �t������������������������}|��rd|�d���������dk�����rW �t����������|�������������\��}}�|���������������������|��������������n}#�t����������j��������$��rj�d�}|�d���������t ����������v�r�t ����������|�������������\��}}�|�r |�d���������dv�rB|���������������������|�������������|j�����������������������������t����������j��������d�������������������������n�t����������|�d������������\��}}�|�|g|d�d�<���|���������������������|�������������|j�����������������������������t����������j ��������d�������������������������n�|�d���������dk����r-|j�����������������������������t����������j��������d�������������������������n^t����������|�d������������\��}}�|�|g|d�d�<���|���������������������|�������������|j�����������������������������t����������j ��������d�������������������������Y�nw�xY�w|�rm|�d���������dvrc|d���������}d|_��������t����������|�d������������\��}}�|���������������������|�������������|j�����������������������������t����������j ��������d�������������������������|�r0|�d���������dk����r$|���������������������t�����������������������|�d d�����������}�|�r |�d���������dk������W||�fS�) Nr����;z,;zempty element in mailbox-listzinvalid mailbox in mailbox-listr���r����r����r����)r����rF��r����r���r���r��r��r!���r��rJ��rs��r\���rI���r5��)r����mailbox_listrK���r��r����s��� r����get_mailbox_listrN��*��s������ ���=�=�L� ��(�E�!�H��O�O� 8�&�u�-�-�L�E�5�����&�&�&�&���&�� 8�� 8�� 8��F��Q�x�;�&�&� (���� ����� <��a��D� 0� 0� �'�'��/�/�/� �(�/�/��0K�7�19��19��:��:��:��:��$7�u�d�#C�#C�L�E�5��)�%+�H��b�q�b� � �'�'��.�.�.� �(�/�/��0J�9�1;��1;��<��<��<��<��q��S����$�+�+�F�,G�3�-5��-5��6��6��6��6�� 3�5�$�?�?���u��%�!'��E�"�1�"�I��#�#�E�*�*�*��$�+�+�F�,F�5�-7��-7��8��8��8���/ 8����2��� 4�U�1�X�T�)�)��#�2�&�G�!2�G��.�u�d�;�;�L�E�5��N�N�5�!�!�!�� �'�'��(B�1�)3��)3�� 4�� 4�� 4��� �U�1�X��_�_���� �.�.�.��!�"�"�I�E�Q���(�E�!�H��O�O�R����s����'A �� E7G�Gc���������������������� �t������������������������}|�s0|j�����������������������������t����������j��������d�������������������������||�fS�d�}|�r�|�d���������t ����������v�r~t ����������|�������������\��}}�|�sE|j�����������������������������t����������j��������d�������������������������|���������������������|�������������||�fS�|�d���������dk����r|���������������������|�������������||�fS�t����������|�������������\��}}�t����������|j ��������������������dk����r\|�|���������������������|�������������|� ��������������������|�������������|j�����������������������������t����������j��������d�������������������������||�fS�|�|g|d�d�<���|���������������������|�������������||�fS�)Nzend of header before group-listr���zend of header in group-listrL��zgroup-list with empty entries)r����r!���r����r���rs��r��r��rN��r����r����rI���r��)r���� group_listr��rK���s��� r����get_group_listrQ��c��s�����������J���!���!�!�&�"<�-�#/��#/�� 0�� 0�� 0��5� � � �F���%��q��[�(�(� ���� ����� %�� ��%�%�f�&@�-�'/��'/�� 0�� 0�� 0����f�%�%�%��u�$�$���8�s�?�?����f�%�%�%��u�$�$�#�E�*�*�L�E�5� �5�����"�"������f�%�%�%����%� � � ���!�!�&�"=�+�#-��#-�� .�� .�� .��5� � � ���H��b�q�b� ����e�����u��r���c���������������������� �t������������������������}t����������|�������������\��}}�|�r|�d���������dk����r't����������j��������d���������������������|��������������������������|���������������������|�������������|���������������������t ����������dd�������������������������|�dd�����������}�|�r;|�d���������dk����r/|���������������������t ����������dd�������������������������||�dd�����������fS�t����������|�������������\��}}�|���������������������|�������������|�s-|j�����������������������������t����������j ��������d�������������������������n3|�d���������dk����r't����������j��������d ���������������������|��������������������������|���������������������t ����������dd�������������������������|�dd�����������}�|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS�) Nr���r4��z8expected ':' at end of group display name but found '{}'zgroup-display-name-terminatorr����rL��zgroup-terminatorzend of header in groupz)expected ';' at end of group but found {})r����r?��r���r���r6���r����r���rQ��r!���rs��r��r��)r���r����rK���s��� r���� get_grouprS�����s�������� �G�G�E�#�E�*�*�L�E�5���9�E�!�H��O�O��%��'*�*0�&��-�-�9��9�� 9� �L�L����� �L�L��s�$C�D�D�E�E�E��!�"�"�I�E��� ��q��S��� ���]�3�(:�;�;�<�<�<��e�A�B�B�i���!�%�(�(�L�E�5� �L�L�������G� � ���V�7�$�&��&�� '�� '�� '�� '� �q��S����%�7�>�>�u�E�E�G��G�� G� �L�L��s�$6�7�7�8�8�8��!�"�"�I�E�����q��[�(�(�������u� ���U�����%�<�r���c������������������@���� �t������������������������} �t����������|�������������\��}}�nc#�t����������j��������$�rQ� �t ����������|�������������\��}}�n:#�t����������j��������$�r(�t����������j��������d���������������������|��������������������������w�xY�wY�nw�xY�w|���������������������|�������������||�fS�)Nzexpected address but found '{}')r����rS��r���r���rF��r6���r����)r���r����rK���s��� r����get_addressrU�����s�������� ��i�i�G�A� ��'�'���u�u���"��A��A��A� A�&�u�-�-�L�E�5�5���&�� A�� A�� A��)�1�8�8��?�?�A��A�� A� A������5�A������N�N�5�����E�>�rG��c���������������������� �t������������������������}|��rm �t����������|�������������\��}}�|���������������������|��������������n�#�t����������j��������$��r�}d�}|�d���������t ����������v�r�t ����������|�������������\��}}�|�r|�d���������dk����rC|���������������������|�������������|j�����������������������������t����������j��������d��������������������������nt����������|�d������������\��}}�|�|g|d�d�<���|���������������������t����������|g�������������������������|j�����������������������������t����������j��������d�������������������������n�|�d���������dk����r-|j�����������������������������t����������j��������d�������������������������nlt����������|�d������������\��}}�|�|g|d�d�<���|���������������������t����������|g�������������������������|j�����������������������������t����������j��������d�������������������������Y�d�}~nd�}~ww�xY�w|�ru|�d���������dk����ri|d���������d���������}d|_��������t����������|�d������������\��}}�|� ��������������������|�������������|j�����������������������������t����������j��������d�������������������������|�r$|���������������������t�����������������������|�dd�����������}�|���m||�fS�) Nr���r���z"address-list entry with no contentzinvalid address in address-listzempty element in address-listr����r����r����)r����rU��r����r���r���r��r��r!���r��rJ��r����rs��r\���rI���r5��)r����address_listrK����errr��r����s��� r����get_address_listrY�����s���������=�=�L� ��(� 8�&�u�-�-�L�E�5�����&�&�&�&���&�� 8�� 8�� 8��F��Q�x�;�&�&� (���� ����� <��a��C��� �'�'��/�/�/� �(�/�/��0K�<�1>��1>��?��?��?��?��$7�u�c�#B�#B�L�E�5��)�%+�H��b�q�b� � �'�'����(8�(8�9�9�9� �(�/�/��0J�9�1;��1;��<��<��<��<��q��S����$�+�+�F�,G�3�-5��-5��6��6��6��6�� 3�5�#�>�>���u��%�!'��E�"�1�"�I��#�#�G�U�G�$4�$4�5�5�5��$�+�+�F�,F�5�-7��-7��8��8��8����������/ 8����2��� 4�U�1�X��_�_��#�2�&�q�)�G�!2�G��.�u�c�:�:�L�E�5��N�N�5�!�!�!�� �'�'��(B�1�)3��)3�� 4�� 4�� 4��� ���� �.�.�.��!�"�"�I�E�Q���(�R����s����'=��G� FG�Gc������������������H���� �t������������������������}|�s't����������j��������d���������������������|��������������������������|�d���������dk����r't����������j��������d���������������������|��������������������������|���������������������t����������dd�������������������������|�dd�����������}�t ����������|�������������\��}}�|���������������������|�������������|�r|�d���������dk����r't����������j��������d���������������������|��������������������������|���������������������t����������dd �������������������������||�dd�����������fS�) Nz'expected no-fold-literal but found '{}'r���r,��z;expected '[' at the start of no-fold-literal but found '{}'zno-fold-literal-startr����r'��z9expected ']' at the end of no-fold-literal but found '{}'zno-fold-literal-end)r!��r���r���r6���r����r���r%��)r����no_fold_literalrK���s��� r����get_no_fold_literalr\�����s4������#�o�o�O���E��%�5�<�<�U�C�C�E��E�� E��Q�x�3����%� �#�V�E�]�]�,��,�� ,�����=��.E�F�F�G�G�G��!�"�"�I�E��U�#�#�L�E�5����5�!�!�!���,�E�!�H��O�O��%� �#�V�E�]�]�,��,�� ,�����=��.C�D�D�E�E�E��E�!�"�"�I�%�%r���c������������������(���� �t������������������������}|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������|�r|�d���������dk����r't ����������j��������d���������������������|��������������������������|���������������������t����������dd�������������������������|�dd�����������}� �t����������|�������������\��}}�n�#�t����������j��������$�r}� �t����������|�������������\��}}�|j �����������������������������t ����������j��������d�������������������������n:#�t����������j��������$�r(�t ����������j��������d���������������������|��������������������������w�xY�wY�nw�xY�w|���������������������|�������������|�r|�d���������dk����rk|j �����������������������������t ����������j��������d �������������������������|�r9|�d���������d k����r-|���������������������t����������d d�������������������������|�dd�����������}�||�fS�|���������������������t����������dd�������������������������|�dd�����������}� �t����������|�������������\��}}�n�#�t����������j��������$�r�� �t����������|�������������\��}}�n�#�t����������j��������$�r�} �t����������|�������������\��}}�|j �����������������������������t ����������j��������d �������������������������n:#�t����������j��������$�r(�t ����������j��������d���������������������|��������������������������w�xY�wY�d�}~nd�}~ww�xY�wY�nw�xY�w|���������������������|�������������|�r|�d���������d k����r|�dd�����������}�n,|j �����������������������������t ����������j��������d�������������������������|���������������������t����������d d�������������������������|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS�)Nr���r:��zexpected msg-id but found '{}'zmsg-id-startr����zobsolete id-left in msg-idz4expected dot-atom-text or obs-id-left but found '{}'r+��zmsg-id with no id-rightr;��z msg-id-endr1��zobsolete id-right in msg-idzFexpected dot-atom-text, no-fold-literal or obs-id-right but found '{}'zmissing trailing '>' on msg-id)r���r��r��r����r���r���r6���r���r ��r��r!���r��rs��r\��r/��)r����msg_idrK����es��� r���� get_msg_idr`����s������ ��W�W�F�����q��[�(�(�������u�� � �e������<�E�!�H��O�O��%�,�3�3�E�:�:�<��<�� <� �M�M�-��^�4�4�5�5�5��!�"�"�I�E�1�(��/�/���u�u���"�� 1�� 1�� 1� 1�-�e�4�4�L�E�5��N�!�!�&�"=�,�#.��#.�� /�� /�� /�� /���&�� 1�� 1�� 1��)�"�"(�&��-�-�1��1�� 1� 1���� /�� /� 1������M�M�%������ �E�!�H��O�O�����f�8�%�'��'�� (�� (�� (� ��� �U�1�X��_�_��M�M�-��\�:�:�;�;�;��!�"�"�I�E��u�}�� �M�M�-��%8�9�9�:�:�:��!�"�"�I�E� 5�(��/�/���u�u���"��5��5��5� 5�.�u�5�5�L�E�5�5���&�� 5�� 5�� 5� 5�)�%�0�0���u���%�%�f�&A�1�'3��'3��4��4��4��4���*�� 5�� 5�� 5��-�&�&,�f�U�m�m�5��5��5� 5����4��4��4��4��4����� 5������5������M�M�%������/��q��S����a�b�b� �������f�8�,�.��.�� /�� /�� /� �M�M�-��\�2�2�3�3�3�����q��[�(�(�������u�� � �e�����5�=�sx����+B>��>E �>D �E � 7E�E � E � H��K�,H?�>K�?K�>J� K �7K�K �K� K�K�Kc����������������������� �t������������������������} �t����������|�������������\��}}�|���������������������|�������������|�r?|j�����������������������������t ����������j��������d���������������������|��������������������������������������ny#�t����������j��������$�rg}t����������|�������������}t����������|������������}|j�����������������������������t ����������j��������d���������������������|�������������������������������������Y�d�}~nd�}~ww�xY�w|S�)NzUnexpected {!r}zInvalid msg-id: {!r}) r���r`��r����r!���r���rs��r6���r���r���r���)r���� message_idrK����exs��� r����parse_message_idrd��U��s#���������J�2�!�%�(�(���u����%� � � ���� 2���%�%�f�&@�!�(�(��/�/�'1��'1�� 2�� 2�� 2�����"��K��K��K� ��'�'��%�e�,�,� ���!�!��&�'=�'D�'D�R�'H�'H�I�I� K�� K�� K�� K�� K�� K�� K�� K�����K������s����'A:��:C0� AC+�+C0c���������������������� �t������������������������}|�s.|j�����������������������������t����������j��������d�������������������������|S�|�d���������t ����������v�rUt ����������|�������������\��}}�|���������������������|�������������|�s,|j�����������������������������t����������j��������d�������������������������d}|�rM|�d���������dk����rA|�d���������t ����������vr2||�d���������z ��}|�dd�����������}�|�r|�d���������dk����r|�d���������t ����������v�2|�����������������������������������sc|j�����������������������������t����������j��������d� ��������������������|�������������������������������������|���������������������t����������|d�������������������������n7t����������|������������|_��������|���������������������t����������|d �������������������������|�r6|�d���������t ����������v�r't ����������|�������������\��}}�|���������������������|�������������|�r|�d���������dk����rZ|j���������,|j�����������������������������t����������j��������d �������������������������|�r#|���������������������t����������|�d�������������������������|S�|���������������������t����������dd�������������������������|�dd�����������}�|�r6|�d���������t ����������v�r't ����������|�������������\��}}�|���������������������|�������������|�s5|j���������,|j�����������������������������t����������j��������d �������������������������|S�d}|�r5|�d���������t ����������vr&||�d���������z ��}|�dd�����������}�|�r|�d���������t ����������v�&|�����������������������������������sc|j�����������������������������t����������j��������d� ��������������������|�������������������������������������|���������������������t����������|d�������������������������n7t����������|������������|_ ��������|���������������������t����������|d �������������������������|�r6|�d���������t ����������v�r't ����������|�������������\��}}�|���������������������|�������������|�rO|j�����������������������������t����������j��������d �������������������������|���������������������t����������|�d�������������������������|S�)Nz%Missing MIME version number (eg: 1.0)r���z0Expected MIME version number but found only CFWSr'���r ���r����z1Expected MIME major version number but found {!r}r����digitsz0Incomplete MIME version; found only major numberzversion-separatorz1Expected MIME minor version number but found {!r}z'Excess non-CFWS text after MIME version)rK��r!���r����r����HeaderMissingRequiredValuer��r���isdigitrs��r6���r����intrL��rM��)r����mime_versionrK���rf��s��� r����parse_mime_versionrk��q��s������� ��=�=�L������#�#�F�$E�3�%5��%5�� 6�� 6�� 6����Q�x�;���������u����E�"�"�"��� E�� �'�'��(I�B�)D��)D�� E�� E�� E� �F� ���E�!�H��O�O��a���(C�(C��%��(����a�b�b� ������E�!�H��O�O��a���(C�(C���>�>����=���#�#�F�$>�?�F�F�v�N�N�%P��%P�� Q�� Q�� Q����M�&�'�:�:�;�;�;�;� ��[�[������M�&�(�;�;�<�<�<���#��q��[�(�(�������u����E�"�"�"����E�!�H��O�O���)�� �'�'��(B�B�)D��)D�� E�� E�� E��� ?���� �e�W� =� =�>�>�>������ �c�+>�?�?�@�@�@��!�"�"�I�E���#��q��[�(�(�������u����E�"�"�"������)�� �'�'��(B�B�)D��)D�� E�� E�� E��� �F� ���E�!�H�K�/�/��%��(����a�b�b� ������E�!�H�K�/�/���>�>����=���#�#�F�$>�?�F�F�v�N�N�%P��%P�� Q�� Q�� Q����M�&�'�:�:�;�;�;�;� ��[�[������M�&�(�;�;�<�<�<���#��q��[�(�(�������u����E�"�"�"���;���#�#�F�$>�5�%7��%7�� 8�� 8�� 8����M�%��9�9�:�:�:��r���c������������������4���� �t������������������������}|�r�|�d���������dk����rx|�d���������t����������v�r4|���������������������t����������|�d���������d�������������������������|�dd�����������}�n't ����������|�������������\��}}�|���������������������|�������������|�r|�d���������dk�����x||�fS�)Nr���rL��r"��r����)rZ��r��r����r���r��)r����invalid_parameterrK���s��� r����get_invalid_parameterrn�����s���������)�*�*�� ��,�E�!�H��O�O���8�{�"�"��$�$�]�5��8�3F�&H��&H�� I�� I�� I��!�"�"�I�E�E�%�e�,�,�L�E�5��$�$�U�+�+�+����,�E�!�H��O�O���e�#�#r���c���������������������� �t����������|�������������}|s't����������j��������d���������������������|��������������������������|�����������������������������������}|�t����������|������������d�����������}�t ����������|d������������}t����������|�������������||�fS�)Nzexpected ttext but found '{}'�ttext)�_non_token_end_matcherr���r���r6���r����r����r���r���)r���r���rp��s��� r���� get_ttextrr�����s��������� �u�%�%�A���;��%�+�2�2�5�9�9�;��;�� ;� �G�G�I�I�E��#�e�*�*�+�+��E��%��)�)�E��E�����%�<�r���c����������������������� �t������������������������}|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������j��������d���������������������|��������������������������t����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS��Nr���zexpected token but found '{}') r����r��r��r����� TOKEN_ENDSr���r���r6���rr��)r����mtokenrK���s��� r���� get_tokenrw�����s����������W�W�F�����q��[�(�(�������u�� � �e������;��q��Z�'�'��%�+�2�2�5�9�9�;��;�� ;��U�#�#�L�E�5� �M�M�%��������q��[�(�(�������u�� � �e�����5�=�r���c���������������������� �t����������|�������������}|s't����������j��������d���������������������|��������������������������|�����������������������������������}|�t����������|������������d�����������}�t ����������|d������������}t����������|�������������||�fS�)Nz expected attrtext but found {!r}r`��)�_non_attribute_end_matcherr���r���r6���r����r����r���r����r���r���r`��s��� r����get_attrtextr{�����s��������� #�5�)�)�A���>��%�.�5�5�e�<�<�>��>�� >��w�w�y�y�H��#�h�-�-�.�.�!�E��X�z�2�2�H��H�����U�?�r���c����������������������� �t������������������������}|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������j��������d���������������������|��������������������������t����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS�rt��) r]��r��r��r�����ATTRIBUTE_ENDSr���r���r6���r{���r���r^��rK���s��� r���� get_attributer�� ��s������������I��� ��q��[�(�(�������u����������;��q��^�+�+��%�+�2�2�5�9�9�;��;�� ;���&�&�L�E�5� ���U������ ��q��[�(�(�������u���������e��r���c���������������������� �t����������|�������������}|s't����������j��������d���������������������|��������������������������|�����������������������������������}|�t����������|������������d�����������}�t ����������|d������������}t����������|�������������||�fS�)Nz)expected extended attrtext but found {!r}�extended-attrtext)�#_non_extended_attribute_end_matcherr���r���r6���r����r����r���r���rz��s��� r����get_extended_attrtextr��� ��s��������� ,�E�2�2�A���G��%�7�>�>�u�E�E�G��G�� G��w�w�y�y�H��#�h�-�-�.�.�!�E��X�':�;�;�H��H�����U�?�r���c����������������������� �t������������������������}|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������j��������d���������������������|��������������������������t����������|�������������\��}}�|���������������������|�������������|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������||�fS�rt��) r]��r��r��r�����EXTENDED_ATTRIBUTE_ENDSr���r���r6���r���r~��s��� r����get_extended_attributer���- ��s������������I��� ��q��[�(�(�������u����������;��q��4�4�4��%�+�2�2�5�9�9�;��;�� ;�(��/�/�L�E�5� ���U������ ��q��[�(�(�������u���������e��r���c���������������������� �t������������������������}|�r|�d���������dk����r't����������j��������d���������������������|��������������������������|���������������������t����������dd�������������������������|�dd�����������}�|�r|�d��������������������������������������������s't����������j��������d���������������������|��������������������������d}|�rK|�d��������������������������������������������r1||�d���������z ��}|�dd�����������}�|�r|�d���������������������������������������������1|d���������dk����r2|dk����r,|j�����������������������������t����������j��������d �������������������������t����������|������������|_ ��������|���������������������t����������|d �������������������������||�fS�)Nr����*zExpected section but found {}zsection-markerr����z$Expected section number but found {}r'����0z'section number has an invalid leading 0rf��)rd��r���r���r6���r����r���rh��r!���rs��ri��rT��)r���re��rf��s��� r����get_sectionr���C ��s���������i�i�G���0�E�!�H��O�O��%�&E�&L�&L�(-�'/��'/��0��0�� 0��N�N�=��&6�7�7�8�8�8��!�"�"�I�E���@��a��(�(�*�*��@��%��'1�17�����@��@�� @� �F� ���E�!�H�$�$�&�&����%��(����a�b�b� ������E�!�H�$�$�&�&�����a�y�C���F�c�M�M�����v�9�9� ;�� ;�� <�� <�� <���[�[�G�N��N�N�=���2�2�3�3�3��E�>�r���c���������������������� �t������������������������}|�st����������j��������d�������������d�}|�d���������t����������v�rt ����������|�������������\��}}�|�s't����������j��������d���������������������|�������������������������|�d���������dk����rt ����������|�������������\��}}�nt����������|�������������\��}}�|�|g|d�d�<���|���������������������|�������������||�fS�)Nz&Expected value but found end of stringr���z Expected value but found only {}r���) rg��r���r���r��r��r6���r��r���r����)r����vr��rK���s��� r���� get_valuer���a ��s��������� ���A���P��%�&N�O�O�O� �F��Q�x�;��� ���� �����@��%��'0�06��v���@��@�� @��Q�x�3���(��/�/���u�u�-�e�4�4���u� ���H��b�q�b� ��H�H�U�O�O�O��e�8�Or���c������������������T���� �t������������������������}t����������|�������������\��}}�|���������������������|�������������|�r|�d���������dk����rC|j�����������������������������t ����������j��������d���������������������|�������������������������������������||�fS�|�d���������dk����r� �t����������|�������������\��}}�d|_��������|���������������������|�������������n#�t����������j ��������$�r�Y�nw�xY�w|�st ����������j ��������d�������������|�d���������dk����r4|���������������������t����������dd�������������������������|�dd�����������}�d|_��������|�d���������d k����rt ����������j ��������d �������������|���������������������t����������d d�������������������������|�dd�����������}�d�}|�r6|�d���������t����������v�r't����������|�������������\��}}�|���������������������|�������������d�}|}|j���������r|��r|�d���������dk�����rt����������|�������������\��}}|j��������}d }|j��������dk����r4|r|d���������dk����rd}nBt#����������|������������\��}} | r| d���������dk����rd}n �t%����������|������������\��}} | sd}n#��Y�nxY�w|r_|j�����������������������������t ����������j��������d�������������������������|���������������������|�������������|D�]} | j��������dk����rg�| d�d��<���| }�n�|}�n.d�}|j�����������������������������t ����������j��������d�������������������������|�r|�d���������dk����rd�}nt)����������|�������������\��}}�|j��������r|j��������dk����rW|�r|�d���������dk����r|���������������������|�������������|�|}�||�fS�|j�����������������������������t ����������j��������d�������������������������|�sI|j�����������������������������t ����������j��������d�������������������������|���������������������|�������������|�||�fS��nC|�>|D�]} | j��������dk����r�n�| j��������dk�����|���������������������| �������������| j��������|_��������|�d���������dk����r't ����������j ��������d���������������������|��������������������������|���������������������t����������dd�������������������������|�dd�����������}�|�rt|�d���������dk����rht#����������|�������������\��}}�|���������������������|�������������|j��������|_��������|�r|�d���������dk����r't ����������j ��������d���������������������|��������������������������|���������������������t����������dd�������������������������|�dd�����������}�|��t1������������������������}|�rr|�d���������t2����������v�rt5����������|�������������\��}}�n9|�d���������dk����rt����������dd������������}|�dd�����������}�nt7����������|�������������\��}}�|���������������������|�������������|��r|}nt)����������|�������������\��}}�|���������������������|�������������|�|}�||�fS�)Nr���rL��z)Parameter contains name ({}) but no valuer���TzIncomplete parameterzextended-parameter-markerr�����=zParameter not followed by '='�parameter-separatorr���F�'z5Quoted string value for extended parameter is invalidr����zZParameter marked as extended but appears to have a quoted string value that is non-encodedzcApparent initial-extended-value but attribute was not marked as extended or was not initial sectionz(Missing required charset/lang delimitersr���r`��z=Expected RFC2231 char/lang encoding delimiter, but found {!r}zRFC2231-delimiterz;Expected RFC2231 char/lang encoding delimiter, but found {}�DQUOTE)rO��r��r����r!���r���rs��r6���r���rS��r���r���rX��r��r��r��r����rU��r{��r���r\���r���r���r����r����rg��r���r���r���)r���r���rK���r��r����appendto�qstring�inner_value� semi_validr����tr���s��� r���� get_parameterr���w ��s�������� �K�K�E� ��'�'�L�E�5� �L�L��������E�!�H��O�O� � ���V�7��9%�%+�V�E�]�]�4��4�� 5�� 5�� 5��e�|���Q�x�3��� �&�u�-�-�L�E�5�"�E�O��L�L��������&�� �� �� ��D� ������ B��)�*@�A�A�A���8�s�?�?��L�L��s�,G�H�H�I�I�I��!�"�"�I�E�!�E�N��Q�x�3����%�&E�F�F�F� �L�L��s�$9�:�:�;�;�;��!�"�"�I�E� �F�����q��[�(�(�������u� ���U�����I��H��~��$<�%��$<�E�!�H��O�O��/�u�5�5�����,��� ���1�$�$��� &�{�1�~��4�4�!� � �*�;�7�7���t���&�D��G�s�N�N�!%�J�� &�3�K�@�@���t����&�!%�J��� ��������� <��M� � ��!;�G�"I��"I�� J�� J�� J��L�L��!�!�!��� �� ���<�#7�7�7��A�a�a�a�D� �H��E��8�� �E�E��I��M� � ��!;�:�";��";�� <�� <�� <�� ��(��q��S������ ��'�'���u��>�� F�U�1�A�5�5��� ��a��C����O�O�E�"�"�"��$�!���%�<�� � ���V�7� D�E��E�� F�� F�� F����� � ���V�7�6�8��8�� 9�� 9�� 9�����������%�<��������� �� ���<�#6�6�6��E��7� �L�J�&�&��O�O�A�����G�E�M���8�s�?�?��)��+F�FL�f�U�m�m�U��U�� U���� �c�+>�?�?�@�@�@��a�b�b� ���� K�U�1�X��_�_�'��.�.�L�E�5��O�O�E�"�"�"���E�J��� K�E�!�H��O�O��-��/<�<B�F�5�M�M�K��K��K���� �c�+>�?�?�@�@�@��a�b�b� �����G�G���� ��Q�x�3���&�u�~�~���u�u��q��S���%�c�8�4�4���a�b�b� ���+�E�2�2���u� �H�H�U�O�O�O���� ����� ��'�'���u��O�O�E���������%�<�s����.C��C�C�-I��Ic������������������$���� �t������������������������}|��r� �t����������|�������������\��}}�|���������������������|��������������n#�t����������j��������$��r}d�}|�d���������t ����������v�rt ����������|�������������\��}}�|�s|���������������������|�������������|cY�d�}~S�|�d���������dk����rD|�|���������������������|�������������|j�����������������������������t����������j��������d�������������������������npt����������|�������������\��}}�|r|g|d�d�<���|���������������������|�������������|j�����������������������������t����������j��������d� ��������������������|�������������������������������������Y�d�}~nd�}~ww�xY�w|�r�|�d���������dk����ru|d���������}d|_��������t����������|�������������\��}}�|���������������������|�������������|j�����������������������������t����������j��������d� ��������������������|�������������������������������������|�r-|���������������������t����������dd�������������������������|�d d�����������}�|����|S�) Nr���rL��zparameter entry with no contentzinvalid parameter {!r}r����r[��z)parameter with invalid trailing text {!r}r���r����)rj��r���r����r���r���r��r��r!���rs��rn��r6���r\���rI���r���)r����mime_parametersrK���rX��r��r���s��� r����parse_mime_parametersr��� ��sl�������%�&�&�O� ��#� =�(��/�/�L�E�5��"�"�5�)�)�)�)���&�� =�� =�� =��F��Q�x�;�&�&� (���� ����� '��&�&�v�.�.�.�&�&�&�&�&�&�&��Q�x�3����%�#�*�*�6�2�2�2��'�.�.�v�/I�5�07��07��8��8��8��8�� 5�U�;�;���u���)�!'��E�"�1�"�I��&�&�u�-�-�-��'�.�.�v�/I�,�3�3�E�:�:�0<��0<��=��=��=����������# =����&��� L�U�1�X��_�_��$�B�'�E�2�E��0��7�7�L�E�5��L�L������#�*�*�6�+E�;�B�B�5�I�I�,K��,K�� L�� L�� L��� ��"�"�=��6K�#L�#L�M�M�M��!�"�"�I�E�G���#�H��s"����'=��E� ;E�E�C�E�Ec���������������������� �|r�|d���������dk����rx|d���������t�����������v�r4|����������������������t����������|d���������d�������������������������|dd�����������}n't����������|������������\��}}|����������������������|�������������|r|d���������dk�����x|sd�S�|����������������������t����������dd�������������������������|����������������������t ����������|dd������������������������������������d�S�)Nr���rL��r"��r����r���)r��r����r���r��r���)� tokenlistr���rK���s��� r����_find_mime_parametersr���9 ��s�����������$�E�!�H��O�O���8�{�"�"����]�5��8�5H�I�I�J�J�J��!�"�"�I�E�E�%�e�,�,�L�E�5����U�#�#�#� ���$�E�!�H��O�O������� ���]�3�(=�>�>�?�?�?� ���*�5����9�5�5�6�6�6�6�6r���c����������������������� �t������������������������}d}|�s.|j�����������������������������t����������j��������d�������������������������|S� �t����������|�������������\��}}�nf#�t����������j��������$�rT�|j�����������������������������t����������j��������d���������������������|��������������������������������������t����������||��������������|cY�S�w�xY�w|���������������������|�������������|�r|�d���������dk����r@|j�����������������������������t����������j��������d�������������������������|�rt����������||��������������|S�|j ������������������������������������������������������������������������������|_ ��������|���������������������t����������dd�������������������������|�dd�����������}� �t����������|�������������\��}}�nf#�t����������j��������$�rT�|j�����������������������������t����������j��������d ���������������������|��������������������������������������t����������||��������������|cY�S�w�xY�w|���������������������|�������������|j ������������������������������������������������������������������������������|_��������|�s|S�|�d���������d k����rU|j�����������������������������t����������j��������d���������������������|��������������������������������������|` |`t����������||��������������|S�|���������������������t����������d d�������������������������|���������������������t!����������|�dd������������������������������������|S�) NFz"Missing content type specificationz(Expected content maintype but found {!r}r���r���zInvalid content typezcontent-type-separatorr����z'Expected content subtype but found {!r}rL��z<Only parameters are valid after content type, but found {!r}r���)r���r!���r����r���rg��rw��r���rs��r6���r���r���rp���lowerr���r���r���r���)r����ctype�recoverrK���s��� r����parse_content_type_headerr���I ��s������� �M�M�E��G���� � ���V�>�0�2��2�� 3�� 3�� 3���� ��'�'���u�u���"������� � ���V�7�6�=�=�e�D�D�F��F�� G�� G�� G��e�U�+�+�+����� ���� � �L�L���������E�!�H��O�O� � ���V�7�"�$��$�� %�� %�� %��� 0�!�%��/�/�/����[�&�&�(�(�.�.�0�0�E�N� �L�L��s�$<�=�=�>�>�>��!�"�"�I�E�� ��'�'���u�u���"������� � ���V�7�5�<�<�U�C�C�E��E�� F�� F�� F��e�U�+�+�+����� ���� � �L�L������K�%�%�'�'�-�-�/�/�E�M�������Q�x�3��� � ���V�7� ������(��(�� )�� )�� )�� �N�E�M��e�U�+�+�+��� �L�L��s�$9�:�:�;�;�;� �L�L�&�u�Q�R�R�y�1�1�2�2�2��Ls&����A��A B9�8B9�=F��A G3�2G3c������������������^���� �t������������������������}|�s.|j�����������������������������t����������j��������d�������������������������|S� �t����������|�������������\��}}�nf#�t����������j��������$�rT�|j�����������������������������t����������j��������d���������������������|��������������������������������������t����������||��������������|cY�S�w�xY�w|���������������������|�������������|j ������������������������������������������������������������������������������|_ ��������|�s|S�|�d���������dk����rQ|j�����������������������������t����������j��������d���������������������|��������������������������������������t����������||��������������|S�|���������������������t����������dd�������������������������|���������������������t����������|�dd������������������������������������|S�)NzMissing content dispositionz+Expected content disposition but found {!r}r���rL��zCOnly parameters are valid after content disposition, but found {!r}r���r����)r���r!���r����r���rg��rw��r���rs��r6���r���r���rp��r���r���r���r���)r����disp_headerrK���s��� r���� parse_content_disposition_headerr���� ��s��������%�&�&�K������"�"�6�#D�)�$+��$+�� ,�� ,�� ,���� ��'�'���u�u���"���������"�"�6�#=�9�@�@��G�G�$I��$I�� J�� J�� J��k�5�1�1�1����� ���� ����u����&+�k�&7�&7�&9�&9�&?�&?�&A�&A�K�#�������Q�x�3�����"�"�6�#=� ������$(��$(�� )�� )�� )�� �k�5�1�1�1������}�S�*?�@�@�A�A�A����,�U�1�2�2�Y�7�7�8�8�8��s����A��A B7�6B7c���������������������� �t������������������������}|�s.|j�����������������������������t����������j��������d�������������������������|S� �t����������|�������������\��}}�|���������������������|�������������|j������������������������������������������������������������������������������|_ ��������nT#�t����������j ��������$�rB�|j�����������������������������t����������j��������d���������������������|��������������������������������������Y�nw�xY�w|�s|S�|�r�|j�����������������������������t����������j��������d�������������������������|�d���������t����������v�r4|���������������������t����������|�d���������d�������������������������|�dd�����������}�n't����������|�������������\��}}�|���������������������|�������������|���|S�)Nz!Missing content transfer encodingz1Expected content transfer encoding but found {!r}z*Extra text after content transfer encodingr���r"��r����)r���r!���r����r���rg��rw��r���rp��r���r����r���rs��r6���r��r���r��)r���� cte_headerrK���s��� r����&parse_content_transfer_encoding_headerr���� ��s��������)�*�*�J������!�!�&�"C�/�#1��#1�� 2�� 2�� 2���5� ��'�'���u� � ���%� � � ���*�*�,�,�2�2�4�4� ������"��P��P��P���!�!�&�"<�?�F�F�u�M�M�#O��#O�� P�� P�� P�� P�� P�P���������� ��%���!�!�&�"<�8�#:��#:�� ;�� ;�� ;���8�{�"�"����m�E�!�H�6I�J�J�K�K�K��!�"�"�I�E�E�%�e�,�,�L�E�5����e�$�$�$����%���s����B��AC*�)C*c�����������������������d}|�r>|�d���������r6|�d���������d���������t�����������v�r!|�d���������d���������}|�d���������d�d����������|�d<���|S�)Nr'���r����)r���)�lines�wsps��� r����_steal_trailing_WSP_if_existsr���� ��sS������ �C���#��r���#�u�R�y��}��3�3��B�i��m���"�I�c�r�c�N��b� ��Jr���c���������������������� �|j���������pt����������j��������}|j��������rdnd}dg}d�}d�}d}d}t ����������dd������������} t����������|�������������} | �r�| ���������������������d������������}|| u�r|dz��}�"t����������|������������}|s@|j��������dv�rt����������� ��������������������|�������������}nt����������� ��������������������|�������������} �|���������������������|�������������|} n5#�t����������$�r(�t����������d ��|j��������D���������������������������rd } nd} d}Y�nw�xY�w|j��������dk����rt!����������||||���������������|�r|�s|j��������s�d}d�}|j��������r�|���������������������|� ������������d�t)����������|j�������������������������������}|j��������|vr_t)����������|������������|t)����������|d���������������������z ��k����r$t-����������|������������}|���������������������|�������������|dxx���������|z ��cc<������t1����������|d������������st����������|������������| z���} d}���|j��������r;|�| |k����r|d k����s|dk����r| dk����rd�}t3����������|||||j��������| ������������}| }d}���d�}d}t)����������|������������|t)����������|d���������������������z ��k����r|dxx���������|z ��cc<�����7|j��������rWt)����������|������������dz���|k����rAt-����������|������������}|s|�����������������������������������r|���������������������||z����������������d�}���t1����������|d������������srt����������|������������}|j��������dk����r0t9����������dd������������gd��|D���������������z���t9����������dd������������gz���}|j��������s|dz ��}|���������������������| �������������|| z���} ��|j��������r|s| ���������������������d|�������������d}��:t-����������|������������}|s|�����������������������������������r|���������������������||z����������������n|dxx���������|z ��cc<���| ���|j�����������������������������|������������|j��������z���S�)N�utf-8rQ��r'���r���F�wrap_as_ew_blockedr����)rH��r���c��������������3����J���K����|�]}t����������|t����������j��������������������V����d�S�r���)r?��r���r{��r*���s��� r���r-���z%_refold_parse_tree.<locals>.<genexpr>� ��sC�����������.��.����a��!>�?�?��.��.��.��.��.��.r����unknown-8bitTrk��rM���r����r��r����r���rH��c������������������H�����g�|�]}t����������t����������|������������d��������������� S�)rH��)r���r���)r+����ps��� r���rr���z&_refold_parse_tree.<locals>.<listcomp>C��s;�������(��(��(���#�#4�Q�#7�#7��A�A��(��(��(r���)�max_line_length�sys�maxsize�utf8r���r���r5��r���r\���� SPECIALSNL� isdisjoint�NLSETr��ry��rE��r>����_fold_mime_parametersrE���rb���rQ���r����r���r���r����r]����_fold_as_ewrc���rB���r����insertr0���)� parse_treerN����maxlenro��r����last_ew�last_charsetr���� want_encoding�end_ew_not_allowedr��rF����tstrr�����encoded_part�newline�newpartss��� r���rO���rO���� ��s�������� #� 2�s�{�F� �+�5�w�w�:�H� �D�E��G��L����M�!�"�&:�;�;������E� ��s��y�y��|�|���%�%�%��!�#����4�y�y���� ;���"4�4�4�$.�$9�$9�$�$?�$?� ?� � ��%*�$4�$4�T�$:�$:� :� � !��K�K��!�!�!��G�G��!�� !�� !�� !���.��.� �,�.��.��.��.��.�� "�(����"�� �M�M�M� !������?�/�/�/�!�$��v�x�@�@�@����) &�!3��) &��%�� !� %� ����'�� !�#'�9�9�F�9�#;�#;�<Q�c�&�.�>Q�>Q�=Q�<Q�#R�L��~�\�9�9��|�,�,�v��E�"�I���/F�F�F�&C�E�&J�&J�G�!�L�L��1�1�1��b� � � �\�1� � � � � ��4��*�*�� &��T� � �U�*�� %� ���#�� &���'��|�+�+�!�^�3�3�!�W�,�,��J�1F�1F�"�G�%�d�E�6�7�&*�&=�w�H��H��&�� %� ����� %� ���t�9�9���U�2�Y���/�/�/��"�I�I�I���I�I�I��� � �� ��D� � �A� ��'�'�3�E�:�:�G��� �$�-�-�/�/�� ����W�t�^�,�,�,�����t�X�&�&�� ��D�z�z�H���"6�6�6� �#�3��0�0�1�(��(�&�(��(��(�(��#�3��0�0�1�2��� ��%�� 4�"�a�'�"���� 2�3�3�3��u�$�E����� �&8�� �� �L�L��D�!�!�!� �M��/��6�6���� �d�)�)�+�+�� ��L�L��4��(�(�(�(�� �"�I�I�I���I�I�I�g���s�h��>���u�%�%���6�6s����>C��/D�Dc������������������z���� �|�B|r@t����������t����������|d���������|d�����������|�z���������������������������}�|d���������d�|����������|d<���|�d���������t����������v�r]|�d���������}|�dd�����������}�t����������|d���������������������|k����r"|���������������������t����������|�������������������������|dxx���������|z ��cc<���d}|�d���������t����������v�r|�d���������}|�d�d����������}�|�t����������|d���������������������n|}|dk����rdn|} t����������| ������������dz���} | dz���|k����rt ����������j��������d�������������|�r�|t����������|d���������������������z ��}|| z ��}|dk����r|���������������������d ��������������;|�d�|����������} t����������j ��������| | � ������������}t����������|������������|z ��}|dk����r8| d�d����������} t����������j ��������| | � ������������}t����������|������������|z ��}|dk�����8|dxx���������|z ��cc<���|�t����������| ������������d�����������}�|�r*|���������������������d �������������t����������|d���������������������}|���|dxx���������|z ��cc<���|r|nd�S�)Nr����r���r����r'���rQ��r�������z3max_line_length is too small to fit an encoded wordrk���)r����) r���r���r���r����r����r���r���r���r���r��)� to_encoder���r���r���rc���r�����leading_wsp�trailing_wsp�new_last_ew� encode_as� chrome_len�remaining_space� text_space�to_encode_word�encoded_word�excesss��� r���r���r���Z��s������ ����1����U�2�Y�w�x�x�0�9�<�=�=�?��?� ��"�I�h�w�h�'��b� ���|�s���� ��l���a�b�b�M� ���b� �N�N�f�$�$��L�L�6�u�=�=�>�>�>� �b� � � �[� � � � ��L���}���� ��}���c�r�c�N� �$+�O�#�e�B�i�.�.�.��K�"�j�0�0���g�I���Y���!�#�J��Q��6�!�!��%�A�C��C�� C����)� �3�u�R�y�>�>�1��$�z�1� ���?�?��L�L������"�;�J�;�/���z�.�)�D�D�D���\�"�"�_�4���q�j�j��,�C�R�C�0�N��:�n�i�H�H�H�L���&�&��8�F���q�j�j�� �b� � � �\�!� � � ��c�.�1�1�2�2�3� ��� )��L�L������e�B�i�.�.�K�+���)�,� �"�I�I�I���I�I�I�,�6�;�;�$�6r���c����������� ����������� �|�j���������D��]O\��}}|d�����������������������������������������������������������������d������������s|dxx���������dz ��cc<���|}d} �|���������������������|�������������d}n-#�t����������$�r �d}t����������j��������|������������rd}d}nd}Y�nw�xY�w|r:t����������j��������� ��������������������|d |� ������������} d� ��������������������||| ������������} n#d� ��������������������|t����������|������������������������} t����������|d���������������������t����������| ������������z���d z���|k�����r|d���������dz���| z���|d<�����+t����������| ������������dz���|k����r|� ��������������������d| z������������������[d}|dz���}|r�t����������|������������t����������t����������|������������������������z���dz���t����������|������������z���} || dz���k����rd}|| z ��dz ��x}} �|d�|����������}t����������j��������� ��������������������|d |� ������������} t����������| ������������|k����rn|d z��}�F|� ��������������������d� ��������������������|||| �������������������������d }|d z ��}||d�����������}|r|dxx���������dz ��cc<���|���Qd�S�)Nr����rL���strictFTr���rn��r���r'���)�safer���z {}*={}''{}r���r����rk���r����r���z''r&���N���z {}*{}*={}{})r}��r(��ra��r��ry��r���rz��rt��ru��r����r6���r���r����r����r���)rF���r���r���ro��r~��r���r����� error_handler�encoding_required� encoded_valuer���re���extra_chromer���� splitpoint�maxchars�partials��� r���r���r������s���������{��:!��:!���e���R�y���!�!�*�*�3�/�/�� ��"�I�I�I���I�I�I��� � � "��L�L��"�"�"� %����!�� "�� "�� "� $���$�U�+�+�� "�(�� 1� � �!���� "������� =�"�L�.�.��B�}��/��6��6�M��&�&�t�W�m�D�D�D�D��>�>�$��U�(;�(;�<�<�D��u�R�y�>�>�C��I�I�%��)�F�2�2��b� �C��$�.�E�"�I�� ��Y�Y��]�f� $� $��L�L��t��$�$�$�������~���� !��T���S��W���%6�%6�6��:�S��=N�=N�N�J���a��'�'� ���$*�Z�$7�!�$;�;�J�� �����,�� &�� 2� 2��"�]��!3��!<��!<� ��}�%�%��1�1���a�� � �� �L�L��.�.��g�|�]�<��<�� =�� =�� =��L��q�L�G��*�+�+�&�E��� !��b� � � �S� � � � �-��� !��I:!��:!s����A)�)'B�B)r���)��rer���rt���stringr����operatorr����emailr���r���r���r���r,��r���r��r��r ��r-��r��� TSPECIALSru��� ASPECIALSr}��r���r���r���r���r����compile�VERBOSE� MULTILINEr���r���r���rh���rt���rx���r|���r����r����r����r����r����r����r����r����r����r����r����r����r����r����r��r��r��r��r��r��r!��r#��r1��r3��r:��rE��rK��rO��rZ��r]��rd��rg��rj��r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r>��r5��rE���rb���r6��r6���r0���r��r���r����matchr����findallr���rq��ry��r���r���r���r���r���r���r���r���r���r���r��r��r��r ��r ��r��r��r��r ��r��r%��r*��r-��r/��r2��r8��r=��r?��rB��rF��rJ��rN��rQ��rS��rU��rY��r\��r`��rd��rk��rn��rr��rw��r{��r��r���r���r���r���r���r���r���r���r���r���r���rO���r���r���rl���r���r����<module>r������s�����C�J� � � � �� � � � �� � � � ��������������������������'��'��'��'��'��'�������������������������� �c�%�j�j���C�C��H�H�n���3�� � ���s�N� ��C�C��H�H�$� ����U���#�� ���E� � � "�c�c�#�h�h�.� � ��_� ����E� � �"� ��S���(�3�3�s�8�8�3��� �t��� �� � �@��@��@� �������"�*�����Z�"�,�� �� ��@,��@,��@,��@,��@,���@,��@,��@,�FD��D��D��D��D�)��D��D��D� �� �� �� �� �I�� �� �� ����������Y����������������9����������������"����������������9����������������I������� ���������)�������#��#��#��#��#�9��#��#��#�6 -�� -�� -�� -�� -�|�� -�� -�� -����������!�������4C��C��C��C��C�)��C��C��C�&%��%��%��%��%�i��%��%��%�2?��?��?��?��?�)��?��?��?�%��%��%��%��%� ��%��%��%�"$��$��$��$��$�I��$��$��$�*"��"��"��"��"�y��"��"��"�6��������� �������DD��D��D��D��D�y��D��D��D�!��!��!��!��!�i��!��!��!�6;��;��;��;��;�Y��;��;��;�.��.��.��.��.�Y��.��.��.����������i����������������)������� ���������I������� ���������y�������B���������9�������'!��'!��'!��'!��'!�&��'!��'!��'!�T!��!��!��!��!� ��!��!��!�H �� �� �� �� �I�� �� �� � ���������)���������������� �������8%��%��%��%��%�y��%��%��%� #��#��#��#��#� ��#��#��#����������i����������������I�������S.��S.��S.��S.��S.�Y��S.��S.��S.�l���������y����������������*����������������1����������������i����������������)������� *��*��*��*��*�I��*��*��*�����������������&��&��&��&��&�y��&��&��&����������Y�������(+��(+��(+��(+��(+�s��(+��(+��(+�V�������������������������H����������������-�������<��<��<��<��<�f�-��<��<��<���m�C������ �c�#3�4�4� �#� ��� %� ���$�}�S�*B�C�C���.��� �:�,�,�R�W�W�S�\�\�:�:�;�;�A� �"�� �9�#3�#3� �B�I�b�g�g�i� � �!�!�$#��$#��$��$�$)���"�� �#5�6�6�>���#���I�$4�$4� �B�I�b�g�g�j�!�!�"�"�%$��%$��%��%�%*���'�R�Z� �(8�(8� �B�I�b�g�g�n�%�%�&�&�)(��)(��)��)�).���&0�b�j��1A�1A� �B�I�b�g�g�-�.�.�/�/�21��21��'2��'2�27��$�;��;��;�J��J��J�< �� �� �/��/��/��/�bA��A��A�F�����" �� �� ������ ))��))��))�V�����2����� �� �� �$�����6 �� �� �&�����2 �� �� �D$��$��$�L%��%��%�N-!��-!��-!�^�����(�����%!��%!��%!�N$��$��$�L����� ' ��' ��' �R,��,��,�\����������<�����*"��"��"�$6��6��6�r#��#��#�J�����<�����:4��4��4�n&��&��&�,B��B��B�J�����8B��B��B�H$��$��$�$�����&�����.�����&�����.�����$�����,�����<�����,L��L��L�\2��2��2�h7��7��7� 7��7��7�r�����<�����^�����B7��B7��B7�H?7��?7��?7�BI!��I!��I!��I!��I!r���