AlkantarClanX12

Your IP : 18.217.10.200


Current Path : /opt/alt/python312/lib64/python3.12/re/__pycache__/
Upload File :
Current File : //opt/alt/python312/lib64/python3.12/re/__pycache__/_parser.cpython-312.pyc

�

�Q�f���B�dZddl�dZdZed�Zed�Zed�Zed�Zed	�Z	ee
eeh�Z
eeeeeeeh�Zeed
�feed�feed�feed
�feed�feed�feed�feed�fd�Zeefeefeefeeefgfeeefgfeeefgfeeefgfeeefgfeee fgfee!fd�
Z"e#e$e%e&e'e(e)e*d�Z+e(e$ze*zZ,e-e)zZ.dZ/Gd�d�Z0Gd�d�Z1Gd�d�Z2d�Z3d�Z4d�Z5d�Z6d&d �Z7d!�Z8d"�Z9d'd$�Z:d%�Z;y#)(zInternal support module for sre�)�*z.\[{()*+?^$|z*+?{�
0123456789�01234567�0123456789abcdefABCDEF�4abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZz 	

����
�
�	��\)z\a�\bz\fz\nz\rz\tz\vz\\)
z\Arz\Bz\dz\Dz\sz\Sz\wz\Wz\Z)�i�L�m�s�x�a�t�ulc�<�eZdZd�Zed��Zdd�Zd�Zd�Zd�Z	y)	�Statec�L�d|_i|_dg|_d|_i|_y)N�)�flags�	groupdict�groupwidths�lookbehindgroups�grouprefpos��selfs �1/opt/alt/python312/lib64/python3.12/re/_parser.py�__init__zState.__init__Ms*����
���� �6��� $������c�,�t|j�S�N)�lenrr"s r$�groupszState.groupsSs���4�#�#�$�$r&Nc��|j}|jjd�|jtkDrt	d��|�>|j
j
|d�}|�t	d|||fz��||j
|<|S)Nztoo many groupsz7redefinition of group name %r as group %d; was group %d)r*r�append�	MAXGROUPS�errorr�get)r#�name�gid�ogids    r$�	opengroupzState.opengroupVs����k�k��������%��;�;��"��)�*�*����>�>�%�%�d�D�1�D����+�.2�C�$�-?�@�A�A�#&�D�N�N�4� ��
r&c�>�|j�|j|<yr()�getwidthr)r#r1�ps   r$�
closegroupzState.closegroupbs�� !�
�
������r&c�F�||jkxr|j|duSr()r*r)r#r1s  r$�
checkgroupzState.checkgroupds&���T�[�[� �F�T�%5�%5�c�%:�$�%F�Fr&c��|j�C|j|�s|jd��||jk\r|jd��yy)N�cannot refer to an open groupz?cannot refer to group defined in the same lookbehind subpattern)r r9r.)r#r1�sources   r$�checklookbehindgroupzState.checklookbehindgroupgsX��� � �,��?�?�3�'��l�l�#B�C�C��d�+�+�+��l�l�$;�<�<�,�-r&r()
�__name__�
__module__�__qualname__r%�propertyr*r3r7r9r=�r&r$rrKs0����%��%��-�G�<r&rc�L�eZdZdd�Zd
d�Zd�Zd�Zd�Zd�Zd�Z	d	�Z
d
�Zd�Zy)�
SubPatternNc�6�||_|�g}||_d|_yr()�state�data�width)r#rFrGs   r$r%zSubPattern.__init__qs!����
��<��D���	���
r&c��ttf}|jD�]�\}}t|dzt	|�zd��|t
ur3t�|D]#\}}t|dzdzt	|�z|��%�^|turHt�t|d�D],\}}|rt|dzdz�|j|dz��.��|turP|\}}}	td|�|j|dz�|	s��t|dzdz�|	j|dz���t|t�r t�|j|dz���6t||�rjd}
|D]S}t|t�r#|
s
t�|j|dz�d}
�6|
s
td	d��t|d��d}
�U|
r���t����td|����y)
Nz  �)�endr�OR�ELSEFT� )�tuple�listrG�print�str�IN�BRANCH�	enumerate�dump�GROUPREF_EXISTS�
isinstancerD)r#�level�seqtypes�op�avrr�	condgroup�item_yes�item_no�nls           r$rVzSubPattern.dumpxs����4�=���i�i�F�B���%��*�s�2�w�&�B�/��R�x����E�B���5��7�D�.�3�r�7�2�A�6� ��v����%�b��e�,�D�A�q���e�D�j�4�/�0��F�F�5��7�O�-���&�/1�,�	�8�W��b�)�$��
�
�e�A�g�&���%��*�v�-�.��L�L��q��)��B�
�+�������a�� ��B��)����A�!�!�Z�0�!�!�G����u�Q�w��!��!�!�#�2�.��a�R�(�"�����G��b�"�
�O r&c�,�t|j�Sr()�reprrGr"s r$�__repr__zSubPattern.__repr__�s���D�I�I��r&c�,�t|j�Sr()r)rGr"s r$�__len__zSubPattern.__len__�s���4�9�9�~�r&c��|j|=yr(�rG�r#�indexs  r$�__delitem__zSubPattern.__delitem__�s���I�I�e�r&c��t|t�r#t|j|j|�S|j|Sr()rX�slicerDrFrGrhs  r$�__getitem__zSubPattern.__getitem__�s5���e�U�#��d�j�j�$�)�)�E�*:�;�;��y�y���r&c�"�||j|<yr(rg�r#ri�codes   r$�__setitem__zSubPattern.__setitem__�s����	�	�%�r&c�<�|jj||�yr()rG�insertros   r$rszSubPattern.insert�s���	�	�����%r&c�:�|jj|�yr()rGr,)r#rps  r$r,zSubPattern.append�s���	�	����r&c��|j�|jSdx}}|jD�]�\}}|turHt}d}|dD]-}|j	�\}}t||�}t
||�}�/||z}||z}�W|tur|j	�\}}||z}||z}�}|tur!|dj	�\}}||z}||z}��|tvrB|dj	�\}}|||dzz}|dtk(r	|rt}��|||dzz}��|tvr|dz}|dz}��|tur(|jj|\}}||z}||z}��4|turX|dj	�\}}|d�/|dj	�\}}t||�}t
||�}nd}||z}||z}���|t us���nt|t�t|t�f|_|jS)Nrr����)rHrGrT�MAXWIDTHr5�min�max�ATOMIC_GROUP�
SUBPATTERN�_REPEATCODES�	MAXREPEAT�
_UNITCODES�GROUPREFrFrrW�SUCCESS)	r#�lo�hir[r\r�j�l�hs	         r$r5zSubPattern.getwidth�s���:�:�!��:�:�����R��i�i�F�B���V�|������Q�%�B��;�;�=�D�A�q��A�q�	�A��A�q�	�A� ��!�V���!�V���|�#��{�{�}���1��!�V���!�V���z�!��"�v���(���1��!�V���!�V���|�#��!�u�~�~�'���1��!�b��e�)�^���a�5�I�%�!�!�B��a�"�Q�%�i��B��z�!��!�V���!�V���x���z�z�-�-�b�1���1��!�V���!�V����&��!�u�~�~�'���1��a�5�$��a�5�>�>�+�D�A�q��A�q�	�A��A�q�	�A��A��!�V���!�V���w���W �X��X�&��B��(9�9��
��z�z�r&r(�r)
r>r?r@r%rVrcrerjrmrqrsr,r5rBr&r$rDrDos5���)�T��� � �&��2r&rDc�Z�eZdZd�Zd�Zd�Zd�Zd�Zd�Ze	d��Z
d�Zd	�Zd
d
�Z
d�Zy)�	Tokenizerc��t|t�|_||_|jst|d�}||_d|_d|_|j�y)N�latin1r)rXrR�istext�string�decoded_stringri�next�_Tokenizer__next)r#r�s  r$r%zTokenizer.__init__�sI�� ���-�������{�{����*�F�$�����
���	����
r&c�:�|j}	|j|}|dk(r|dz
}	||j|z
}|dz|_||_y#t$r
d|_YywxYw#t$r/t	d|j
t
|j
�dz
�d�wxYw)Nrrzbad escape (end of pattern))rir��
IndexErrorr�r.r�r))r#ri�chars   r$�__nextzTokenizer.__next�s����
�
��	��&�&�u�-�D��4�<��Q�J�E�
I���+�+�E�2�2���Q�Y��
���	���	��D�I��	���
I��9� �K�K��T�[�[�)9�A�)=�?�DH�I�
I�s�A�A"�A�A�"8Bc�D�||jk(r|j�yy)NTF�r�r�)r#r�s  r$�matchzTokenizer.matchs���4�9�9���K�K�M��r&c�>�|j}|j�|Sr(r�)r#�thiss  r$r/z
Tokenizer.gets���y�y�����
��r&c�z�d}t|�D]*}|j}||vr|S||z
}|j��,|S�NrJ)�ranger�r�)r#�n�charset�result�_�cs      r$�getwhilezTokenizer.getwhile	sK�����q��A��	�	�A������
�
�a�K�F��K�K�M���
r&c��d}	|j}|j�|�4|s|jd|z��|jd|zt|���||k(r|s|jd|zd��	|S||z
}�w)NrJzmissing zmissing %s, unterminated namer)r�r�r.r))r#�
terminatorr0r�r�s     r$�getuntilzTokenizer.getuntils�������	�	�A��K�K�M��y���*�*�Z�$�%6�7�7��j�j�!@�:�!M�!$�V��.�.��J����*�*�Z�$�%6��:�:���
�
�a�K�F�r&c�N�|jt|jxsd�z
Sr��rir)r�r"s r$�posz
Tokenizer.pos"s���z�z�C��	�	��R�0�0�0r&c�N�|jt|jxsd�z
Sr�r�r"s r$�tellzTokenizer.tell%s���z�z�C��	�	��R�0�0�0r&c�2�||_|j�yr()rir�rhs  r$�seekzTokenizer.seek's����
����
r&c��|js!|jdd�jd�}t||j|j�|z
�S)N�ascii�backslashreplace)r��encode�decoder.r�r�)r#�msg�offsets   r$r.zTokenizer.error+sC���{�{��*�*�W�&8�9�@�@��I�C��S�$�+�+�t�y�y�{�V�';�<�<r&c���|js3|j�s#d|z}|j|t|�|z��|j	�s#d|z}|j|t|�|z��y)Nzbad character in group name %azbad character in group name %r)r��isasciir.r)�isidentifier)r#r0r�r�s    r$�checkgroupnamezTokenizer.checkgroupname0sj�����t�|�|�~�2�T�9�C��*�*�S�#�d�)�f�"4�5�5�� � �"�2�T�9�C��*�*�S�#�d�)�f�"4�5�5�#r&Nr�)r>r?r@r%r�r�r/r�r�rAr�r�r�r.r�rBr&r$r�r��sH���� �
��� �1��1�1��=�
6r&r�c��tj|�}|r|Stj|�}|r
|dtur|S	|dd}|dk(rZ||j	dt
�z
}t
|�dk7r|jd|zt
|���tt|ddd�fS|dk(rf|jrZ||j	dt
�z
}t
|�d	k7r|jd|zt
|���tt|ddd�fS|d
k(rs|jrg||j	dt
�z
}t
|�dk7r|jd|zt
|���t|ddd�}t|�t|fS|d
k(rg|jr[ddl}|jd�s|jd��|jdd�}	t|j!|��}t|fS|t&vrS||j	dt&�z
}t|ddd�}|dkDr|jd|zt
|���t|fS|t(vrt*�t
|�dk(r:|t,vr|jd|zt
|���tt|d�fS	|jd|zt
|���#t"t$f$r,|jd|zt
|�t
d�z�d�wxYw#t*$rY�gwxYw)Nrrrwr��incomplete escape %s�r��U��
�N�{�	missing {�}�character name�undefined character name %r�\N{}��.octal escape value %s outside of range 0-0o377�
bad escape %s)�ESCAPESr/�
CATEGORIESrSr��	HEXDIGITSr)r.�LITERAL�intr��chr�unicodedatar�r��ord�lookup�KeyError�	TypeError�	OCTDIGITS�DIGITS�
ValueError�ASCIILETTERS)r<�escaperpr�r��charnames      r$�
_class_escaper�8s���;�;�v��D�����>�>�&�!�D���Q��2�
���1
��1�Q�K����8��f�o�o�a��3�3�F��6�{�a���l�l�#9�F�#B�C��K�P�P��C��q�r�
�B�/�/�/�
�#�X�&�-�-��f�o�o�a��3�3�F��6�{�a���l�l�#9�F�#B�C��K�P�P��C��q�r�
�B�/�/�/�
�#�X�&�-�-��f�o�o�a��3�3�F��6�{�b� ��l�l�#9�F�#B�C��K�P�P��F�1�2�J��#�A���F��A�:��
�#�X�&�-�-���<�<��$��l�l�;�/�/����s�,<�=�H�
K���*�*�8�4�5���A�:��
�)�^��f�o�o�a��3�3�F��F�1�2�J��"�A��5�y��l�l�$3�5;�$<�=@��[�J�J��A�:��
�&�[����v�;�!���L� ��l�l�?�V�#;�S��[�I�I��C��q�	�N�*�*���,�,���/��V��
=�=��)�i�(�
K��l�l�#@�8�#K�#&�x�=�3�w�<�#?�A�FJ�K�
K��$�
��
�sM�A#L�#A*L�A7L�A	L�K�*L�2AL�
AL�;K=�=L�	L�Lc���tj|�}|r|Stj|�}|r|S	|dd}|dk(rZ||jdt�z
}t|�dk7r|j
d|zt|���tt|ddd�fS|dk(rf|jrZ||jdt�z
}t|�dk7r|j
d|zt|���tt|ddd�fS|d	k(rs|jrg||jd
t�z
}t|�dk7r|j
d|zt|���t|ddd�}t|�t|fS|dk(rg|jr[d
dl}|jd�s|j
d��|jdd�}	t|j|��}t|fS|dk(r.||jdt$�z
}tt|ddd
�fS|t&v�r|j(t&vr�||j�z
}|dt$vrj|dt$vr_|j(t$vrM||j�z
}t|ddd
�}|dkDr|j
d|zt|���t|fSt|dd�}||j*krF|j-|�s|j
dt|���|j/||�t0|fS|j
d|zt|�dz
��t|�dk(r:|t2vr|j
d|zt|���tt|d�fS	|j
d|zt|���#t t"f$r,|j
d|zt|�td�z�d�wxYw#t4$rY�gwxYw)Nrrwrr�r�r�rr�r�r�r�r�rr�r�r�r�r�r��0r�r�r;�invalid group reference %dr�)r�r/r�r�r�r)r.r�r�r�r�r�r�r�r�r�r�r�r�r�r�r*r9r=r�r�r�)r<r�rFrpr�r�r��groups        r$�_escaper�ts����>�>�&�!�D�����;�;�v��D����B
��1�Q�K����8��f�o�o�a��3�3�F��6�{�a���l�l�#9�F�#B�C��K�P�P��C��q�r�
�B�/�/�/�
�#�X�&�-�-��f�o�o�a��3�3�F��6�{�a���l�l�#9�F�#B�C��K�P�P��C��q�r�
�B�/�/�/�
�#�X�&�-�-��f�o�o�a��3�3�F��6�{�b� ��l�l�#9�F�#B�C��K�P�P��F�1�2�J��#�A���F��A�:��
�#�X�&�-�-���<�<��$��l�l�;�/�/����s�,<�=�H�
K���*�*�8�4�5���A�:��
�#�X��f�o�o�a��3�3�F��C��q�r�
�A�.�.�.�
�&�[��{�{�f�$��&�*�*�,�&���1�I��*�v�a�y�I�/E��K�K�9�,��f�j�j�l�*�F��F�1�2�J��*�A��5�y�$�l�l�,;�=C�,D�+.�v�;�8�8�#�A�:�%���q�r�
�O�E��u�|�|�#��'�'��.� �,�,�'F�'*�6�{�4�4��*�*�5�&�9����&��,�,�;�e�C�S��[�ST�_�U�U��v�;�!���L� ��l�l�?�V�#;�S��[�I�I��C��q�	�N�*�*���,�,���/��V��
=�=��K�i�(�
K��l�l�#@�8�#K�#&�x�=�3�w�<�#?�A�FJ�K�
K��F�
��
�sZ�A#O&�A*O&�A7O&�;A	O&�N(�O&�'2O&�B"O&�=A"O&� A(O&�(;O#�#O&�&	O2�1O2c�>�ttj|��Sr()rP�dict�fromkeys)�itemss r$�_uniqr��s����
�
�e�$�%�%r&c
���g}|j}|j}|j�}	|t||||dz|xr|��|d�sn|s|jt
z}�=t
|�dk(r|dSt|�}	d}	|D]}
|
sn0|	�|
d}	�|
d|	k7s�n|D]}
|
d=�|j|	��<	g}|D]_}
t
|
�dk7rnq|
d\}}
|tur|j||
f��7|tur |
ddtur|j|
��_n#|jtt|�f�|S|jtd|ff�|S)Nr�|r)r,r�r��_parser�SRE_FLAG_VERBOSEr)rDr�rS�NEGATE�extendr�rT)r<rF�verbose�nestedr��itemsappend�sourcematch�start�
subpattern�prefix�item�setr[r\s              r$�
_parse_subr��s���
�E��,�,�K��,�,�K��K�K�M�E�
��F�6�5�'�6�A�:�%�:�3�e�)�5�	6��3�����k�k�$4�4�G�
��5�z�Q���Q�x���E�"�J�����D����~��a����a��F�"��
�����G�����f�%��
�
�C����t�9��>���a����B�
��=��J�J��B�x� �
�2�X�"�Q�%��(�&�0��J�J�r�N���	���2�u�S�z�*�+������v��e�}�-�.��r&c�~�t|�}|j}|j}|j}t}	t
}
	|j}|��nn|dvr�nh|�|r |tvr�)|dk(r	|�}|�|dk(rn��@|ddk(rt|||�}||��n|tvr|t|
|�f��n|dk(�r|j�dz
}
g}|j}|jdk(r0ddl}|jd	|j�zt|d
z��|d�}	|�}|�#|jd
|j�|
z
��|dk(r|r�n|ddk(r
t!||�}nm|r]|dvrY|j|k(rJddl}|jd|dk(rdn|dk(rdn|dk(rdnd|j�dz
fzt|d
z��t|
|�f}|d��rY|�}|�#|jd
|j�|
z
��|dk(r1|dt"ur|dd}||�|t|
d�f��n|ddk(r
t!||�}nF|dk(r3ddl}|jd|j�dz
zt|d
z��t|
|�f}|dtk7s|dtk7r2d|�d|��}|j|t	|�dzt	|�z��|d}|d}||kr2d|�d|��}|j|t	|�dzt	|�z��|t$||ff�n|dt"ur|dd}||���6t'|�}|	|�dk(r3|ddtur%|r|t(|ddf��	n||d��	n|r|j+dt,df�|t"|f��n�|t.v�rj|j�}
|dk(rd\}}�ne|dk(r
dt0}}�nV|dk(r
dt0}}�nG|dk(�r3|jd k(r|t|
|�f���dt0}}d!x}}|jt2vr||�z
}|jt2vr�|d"�r0|jt2vr ||�z
}|jt2vr�n|}|d �s'|t|
|�f�|j5|
����|rt7|�}|t0k\rt9d#��|rUt7|�}|t0k\rt9d#��||kr1|jd$|j�|
z
��t;d%����|r|d&d}nd}|r|ddt<ur/|jd'|j�|
z
t	|�z��|ddt>vr/|jd(|j�|
z
t	|�z��|ddt@ur|dd\}}}}|�|s|s|}|d�rtB|||ff|d&<�n�|d�rtD|||ff|d&<�n�tF|||ff|d&<�nu|d)k(r|tHdf��n`|d*k(�r|j�dz
} d}!d+}"d}#d}d}|d��rE|�}|�|jd,��|d-k(�r&|d.�r&|jKd/d0�}#|jM|#d��n�|d1�r�|jKd2d0�}#|jM|#d�|jNj|#�}$|$�#d3|#z}|j|t	|#�dz��|jQ|$�s|jd4t	|#�dz��|jS|$|�|tT|$f���T|�}|�|jd,��|jd5|zt	|�dz��|d6k(rd+}!�n�|dk(r>	|j�#|jd7|j�| z
��|�d2k(rn�;���|d8vr�d}%|d.k(r`|�}|�|jd,��|d9vr!|jd:|zt	|�dz��d&}%|jV}&|&�|jX|_+t[||||dz�}|%dkr	&�d|_+|d2�s#|jd;|j�| z
��|d1k(r|t\|%|ff�n|t^|%|ff����|d*k(�rE|jKd2d0�}'|'ja�r|'jc�sS|jM|'d�|jNj|'�}(|(��5d3|'z}|j|t	|'�dz��t7|'�}(|(s|jd<t	|'�dz��|(tdk\r#d=|(z}|j|t	|'�dz��|(|jfvr,|j�t	|'�z
dz
|jf|(<|'ja�r|'jc�saddl}|jd>|jhrtk|'�n
tm|'�|j�t	|'�z
dz
fztn|d
z��|jS|(|�tq||||dz�})|jd?�r1tq||||dz�}*|jd?k(r|jd@��d}*|jd2�s#|jd;|j�| z
��|tr|(|)|*ff���|d/k(rd+}!d}"n�|ttvs|dk(rStw|||�}+|+�<|r|r#|jdA|j�| z
��|jxtzz}��e|+\}}d+}!n!|jdB|zt	|�dz��|!r	|j}|#�}nd}|xs	|tzzxr
|tzz}-t[|||-|dz�}|jd2�s#|jd;|j�| z
��|�|j�||�|"r|�J�|t�|f�nQ|t@||||ff�n>|dk(r|t<t�f�n&|dCk(r|t<t�f�nt;dD������~t�t	|��ddd&�D]+}.||.\}/}0|/t@us�|0\}}}}|��|r�!|r�$|||.|.dz�-|S#t$r.},|j|,j~t	|#�dz�d�d},~,wwxYw)ENTz|)�#rrr�[rz"Possible nested set at position %dr���
stacklevel�^zunterminated character set�]z-&~|zPossible set %s at position %d�-�
difference�&�intersection�~zsymmetric difference�unionz&Possible set difference at position %drwzbad character range �?)rrr�+r�r�rJ�,z"the repetition number is too largez"min repeat greater than max repeatzunsupported quantifier rvznothing to repeatzmultiple repeat�.�(Fzunexpected end of pattern�P�<�>�
group name�=�)�unknown group name %rr;zunknown extension ?P�:zmissing ), unterminated commentz=!<z=!zunknown extension ?<z"missing ), unterminated subpatternzbad group numberr��-bad character in group name %s at position %dr�z/conditional backref with more than two branchesz/global flags not at the start of the expressionzunknown extension ?�$zunsupported special character )ErDr,r/r�r)r�r��
WHITESPACEr��
SPECIAL_CHARSr�r��warnings�warn�
FutureWarningr.r�rS�RANGEr��NOT_LITERALrsr��REPEAT_CHARSr~r�r�r��
OverflowError�AssertionError�ATr}r|�
MIN_REPEAT�POSSESSIVE_REPEAT�
MAX_REPEAT�ANYr�r�rr9r=r�r r*r��ASSERT�
ASSERT_NOT�	isdecimalr�r-r!r�rbr��DeprecationWarningr�rW�FLAGS�_parse_flagsrr�r3r�r7r{�AT_BEGINNING�AT_ENDr�)1r<rFr�r��firstr��subpatternappend�	sourcegetr��_len�_ordr�rp�herer��	setappendr�negate�code1�that�code2r�r�r�ryrzr�r�r��	add_flags�	del_flagsr6r��capture�atomicr0r1�dirr �condnamer]r^r_r�err�sub_verboserr[r\s1                                                 r$r�r�s�
���E�"�J�"�(�(���
�
�I��,�,�K��D��D�
��{�{���<���4�<������z�!���s�{��$�;�D��|�t�t�|������7�d�?��6�4��/�D��T�"�
��
&��g�t�D�z�2�3�
�S�[��;�;�=�1�$�D��C��
�
�I��{�{�c�!���
�
�8�6�;�;�=�H�!�f�q�j���!��%�F�� �{���<� �,�,�'C�'-�{�{�}�t�';�=�=��3�;�3���!�W��_�)�&�$�7�E��t�v�~�&�+�+��2E�'� �
�
�<�04����26�#�+��:>�#�+� 6� '� &���
�� 1�@3�3�*�f�q�j�&��$�T�$�Z�/�E��s�#�$�;�D��|�$�l�l�+G�+1�;�;�=�4�+?�A�A��s�{� ��8�r�>�$)�!�H�Q�K�E�!�%�(�!�7�D��I�"6�7���A�w�$�� -�f�d� ;���3�;�+�$�M�M� H�$*�K�K�M�A�$5�!7� -�&�1�*�*��
!(��d�� 3���Q�x�7�*�e�A�h�'�.A��=A�4�H��$�l�l�3��D�	�A�
��D�	�0I�J�J��q��B��q��B��B�w�=A�4�H��$�l�l�3��D�	�A�
��D�	�0I�J�J��u�r�2�h�/�0��Q�x�2�~� %�a������e�$�s�v��*�C��C�y�A�~�#�a�&��)�w�"6��$�k�3�q�6�!�9�%=�>�$�S��V�,���J�J�q�6�4�.�1�!�"�c��+�
�\�
!��;�;�=�D��s�{����S�����i�S������i�S������;�;�#�%�$�g�t�D�z�%:�;���i�S�����R��k�k�V�+��)�+�%�B��k�k�V�+��s�#� �+�+��/��i�k�)��!�+�+��/��B�"�3�'�$�g�t�D�z�%:�;��K�K��%����b�'�C��i�'�+�,P�Q�Q���b�'�C��i�'�+�,P�Q�Q��S�y�$�l�l�+O�+1�;�;�=�4�+?�A�A�%�D�%J�K�K��!�"�#������4��7�1�:��+��l�l�#6�#)�;�;�=�4�#7�#�d�)�#C�E�E��A�w�q�z�\�)��l�l�#4�#)�;�;�=�4�#7�#�d�)�#C�E�E��A�w�q�z�Z�'�15�a����.��y�)�Q��=��9��D��3��",�s�C��.>�!?�
�2���S�!�"3�c�3��5E�!F�
�2��#-�s�C��.>�!?�
�2��
�S�[��c�4�[�)�
�S�[��K�K�M�A�%�E��G��F��D��I��I��3�� �{���<� �,�,�'B�C�C��3�;�"�3�'�%���s�L�A���-�-�d�A�6�$�S�)�%���s�L�A���-�-�d�A�6�#�o�o�1�1�$�7���;�"9�D�"@�C�"(�,�,�s�C��I��M�"B�B�$�/�/��4�"(�,�,�/N�/2�4�y�1�}�#>�>��2�2�3��?�(�(�C��9� � )�{���<�"(�,�,�/J�"K�K�$�l�l�+A�D�+H�+.�t�9�q�=�:�:��S�[�#�G��S�[��!�;�;�.�"(�,�,�/P�/5�{�{�}�u�/D�#F�F�$�;�#�-�!����U�]��C��s�{�(�{���<�"(�,�,�/J�"K�K��t�+�"(�,�,�/E��/L�/2�4�y�1�}�#>�>� ��+0�+A�+A�(�+�3�5:�\�\�E�2�"�6�5�'�6�A�:�F�A��Q�w�+�3�59�E�2�&�s�+�$�l�l�+O�+1�;�;�=�5�+@�B�B��s�{�(�&�3��(�);�<�(�*�s�A�h�)?�@���S�[�%���s�L�A�H�$�.�.�0�X�5E�5E�5G��-�-�h��:�$)�O�O�$7�$7��$A�	�$�,�"9�H�"D�C�"(�,�,�s�C��M�A�4E�"F�F�$'��M�	�(�"(�,�,�/A�/2�8�}�q�/@�#B�B�$�	�1�">��"J�C�"(�,�,�s�C��M�A�4E�"F�F�$�E�,=�,=�=� &���
��H�
� =�� A�"�-�-�i�8�!)� 2� 2� 4��9I�9I�9K�+�$�M�M� O�39�=�=��h��e�H�o�!'�����X��!>��!B�!D�!D�!3�v��z�	*���.�.�y�&�A�%�f�e�W�f�q�j�I�H��|�|�C�(�"(�����!��"L��!�;�;�#�-�"(�,�,�/`�"a�a�"&��!�<�<��,�$�l�l�+O�+1�;�;�=�5�+@�B�B�$�o�	�8�W�7U�%V�W���S�[�#�G�!�F��U�]�d�c�k�(����=�E��}�$�
�"(�,�,�0C�/5�{�{�}�u�/D�#F�F�#(�+�+�0@�"@�� �+0�(�I�y�#�G� �,�,�'<�t�'C�'*�4�y�1�}�6�6��I�!�O�O�D�1�E���#�E�	�4D�(D�>� )�,<� <�=�
��6�5�+�v��z�B�A��<�<��$��l�l�#G�#)�;�;�=�5�#8�:�:�� �� � ���*���}�$�}� �,��!2�3� �*�u�i��A�.N�!O�P�
�S�[��b�,�/�0�
�S�[��b�&�\�*�!�t�!M�N�N�M�R�3�z�?�
#�D�b�D�
)���A����B�
���-/�*�E�9�i���}�Y�y�%&�
�1�a��c�"�*����G�I� �,�,�s�w�w��D�	�A�
�>�D�H��I�s�
t�	t<�)t7�7t<c�X�|j}d}d}|dk7r�	t|}|jr|dk(r+d}|j|��|dk(rd}|j|��||z}|tzr|tz|k7rd}|j|��|�}|�|jd��|d	vrn8|tvr/|j�rd
nd}|j|t
|�����|dk(r|xj|zc_y|tzr|jdd
��|dk(r�|�}|�|jd��|tvr/|j�rd
nd}|j|t
|���	t|}|tzrd}|j|��||z}|�}|�|jd��|dk(rn8|tvr/|j�rd
nd}|j|t
|�����|dk(sJ�|tzr|jdd
��||zr|jdd
��||fS)Nrr�rz8bad inline flags: cannot use 'L' flag with a str patternrz:bad inline flags: cannot use 'u' flag with a bytes patternz9bad inline flags: flags 'a', 'u' and 'L' are incompatiblezmissing -, : or )z)-:zunknown flagr
z,bad inline flags: cannot turn on global flagrzmissing flagz8bad inline flags: cannot turn off flags 'a', 'u' and 'L'z	missing :rz-bad inline flags: cannot turn off global flagz(bad inline flags: flag turned on and off)	r/r%r�r.�
TYPE_FLAGS�isalphar)r�GLOBAL_FLAGS)r<rFr�r+r4r5�flagr�s        r$r&r&}sF���
�
�I��I��I��s�{����;�D��}�}��3�;�T�C� �,�,�s�+�+��3�;�V�C� �,�,�s�+�+����I��z�!�	�J�(>�4�'G�Q���l�l�3�'�'��;�D��|��l�l�#6�7�7��u�}���5� �(,����n�<O���l�l�3��D�	�2�2�+�,�s�{�
���y� ����<���l�l�I�1�M�M��s�{��{���<��,�,�~�.�.��u��$(�L�L�N�.��C��,�,�s�C��I�.�.����;�D��j� �P���l�l�3�'�'����I��;�D��|��l�l�;�/�/��s�{���5� �(,����n�K���l�l�3��D�	�2�2���3�;��;��<���l�l�J�A�N�N��9���l�l�E�q�I�I��i��r&c��t|t�r>|tzrtd��|tzs|t
z}|S|t
zrtd��|S|t
zrtd��|tzr|tzrtd��|S)Nz)cannot use LOCALE flag with a str patternz(ASCII and UNICODE flags are incompatiblez,cannot use UNICODE flag with a bytes patternz'ASCII and LOCALE flags are incompatible)rXrR�SRE_FLAG_LOCALEr��SRE_FLAG_ASCII�SRE_FLAG_UNICODE)�srcrs  r$�	fix_flagsrF�s����#�s���?�"��H�I�I��~�%��%�%�E��L��%�
%��G�H�H��L�	�#�#��K�L�L��?�"�u�~�'=��F�G�G��Lr&Nc� �t|�}|�
t�}||_||_t	|||t
zd�}t
||jj�|j_|j�"|jdk(sJ�|jd��|jjD]D}||jjk\s�d|z}t|||jj|��|tzr|j�|S)Nrr
zunbalanced parenthesisr�)r�rrrRr�r�rFrFr�r.r!r*�SRE_FLAG_DEBUGrV)rRrrFr<r6�gr�s       r$�parserJ�s����s�^�F��}�����E�K��E�I��6�5�%�*:�":�A�>�A��c�1�7�7�=�=�1�A�G�G�M�
�{�{���{�{�c�!�!�!��l�l�3�4�4�
�W�W�
 �
 ���������.��2�C���S�!�'�'�"5�"5�a�"8�9�9�!�

�~��	�����Hr&c	����
���t|���j}g�g�
�
j}�
��fd������fd�}�j}	|�}|��n�|ddk(�r~|d}|dk(�r7�j	d�s�jd	���j
d
d�}|j�r|j�s�j|d�	||}	n�t|�}	|	tk\r!�jd
|	zt|�dz��|j�r|j�s^ddl}
|
j!d�j"rt%|�n
t'|��j)�t|�z
dz
fzt*d��||	t|�dz��nD|dk(rZ�j,t.vr&||�z
}�j,t.vr
||�z
}|t1t|ddd�dz��n�|t2vr�d}�j,t2vr~||�z
}|t.vrl|dt.vra�j,t.vrO||�z
}d}t|ddd�}|dkDr�jd|zt|���|t1|��|sI|t|dd�t|�dz
�n'	t1t4|d�}||�n||�������S#t$rtd|z�d�wxYw#t$r*|t6vr�jd|zt|��d�Y�jwxYw)Nc�����jr!�jdj���n/�jdj��jd���dd�=y)NrJzlatin-1)r�r,�joinr�)�literalr�rs���r$�
addliteralz"parse_template.<locals>.addliteral�sH����8�8��M�M�"�'�'�'�*�+�
�M�M�"�'�'�'�*�1�1�)�<�=��A�Jr&c�~��|�jkDr�jd|z|�����j|�y)Nr�)r*r.r,)rir�rO�patternr�rs  ����r$�addgroupz parse_template.<locals>.addgroup�s7����7�>�>�!��'�'�6��>��D�D����
�
�e�r&TrrrrIr	z	missing <r
rrr�r�r�r�r�r�Frwr�r�)r�r/r,�
groupindexr�r.r�r#r�r�r�r�r�r-r)rrr�rbr�r�r$r�r�r�r�r�r�)r<rQ�sget�lappendrRrTr�r�r0rir�isoctalrOrNr�rs `          @@@@r$�parse_templaterX�s)���	�&��A��5�5�D�
�F��G��n�n�G���
�#�#�J�
��v���<����7�d�?��Q��A��C�x��w�w�s�|��'�'�+�.�.��z�z�#�|�4�����(�T�\�\�^��$�$�T�1�-�S� *�4� 0�� ��I�E��	�)��g�g�&B�U�&J�&)�$�i�!�m�5�5� �N�N�,�����'� �
�
�K�+,�8�8�T�$�Z��t���V�V�X��D�	�1�A�5�7�7�/�1�	&�����D�	�A�
�.��c���6�6�Y�&��D�F�N�D��v�v��*��������C��Q�R��!�,�t�3�4�5��f�����6�6�V�#��D�F�N�D��Y��4��7�i�+?����)�+������"&����Q�R��!�,���u�9�"#�'�'�+:�<@�+A�BE�d�)�#M�M���A�����S��a�b��]�C��I��M�:�S��w�t�}�Q�/�0�D���
��D�M�y�z�L��M��_$�S�(�)@�4�)G�H�d�R�S��P �S��L�(��g�g�o��&<�c�$�i�H�d�R�)�S�s�K.�=L
�.L�
0L=�<L=)F)rN)<�__doc__�
_constantsrr�	frozensetr�r�r�r�rrrrr}r rrSr�r�CATEGORYrr�r�r�AT_BEGINNING_STRING�AT_BOUNDARY�AT_NON_BOUNDARY�CATEGORY_DIGIT�CATEGORY_NOT_DIGIT�CATEGORY_SPACE�CATEGORY_NOT_SPACE�
CATEGORY_WORD�CATEGORY_NOT_WORD�
AT_END_STRINGr��SRE_FLAG_IGNORECASErB�SRE_FLAG_MULTILINE�SRE_FLAG_DOTALLr�rC�SRE_FLAG_TEMPLATErDr%r=rHr?rxrrDr�r�r�r�r�r�r&rFrJrXrBr&r$�<module>rks��&���
���	�<�	 ���j�!�	��.�/�	��O�P��
�}�
%�
��*�j�2C�D�E��
��U�B���h�G�
H�
�
�S��Y���S��Y���S��Y���S��Y���S��Y���S��Y���S��Y���S��Y��	��
�#�$������ ��(�N�+�,�-��(�.�/�0�1��(�N�+�,�-��(�.�/�0�1��(�M�*�+�,��(�-�.�/�0��
���
�
�	�	�	�	�	�	�	�	���o�
-�0@�
@�
�� 1�1����"<�"<�Hu�u�nP6�P6�d:>�xK>�Z&�:�x{�z: �x� 
�6Tr&