Your IP : 3.142.174.8


Current Path : /lib64/python3.6/__pycache__/
Upload File :
Current File : //lib64/python3.6/__pycache__/sre_parse.cpython-36.opt-1.pyc

3


 \���@s�dZddlTdZdZed�Zed�Zed�Zed�Zed	�Z	ee
eh�Zee
eeeeeh�Zeed
�feed�feed�feed
�feed�feed�feed�feed�fd�Zeefeefeefeeefgfeeefgfeeefgfeeefgfeeefgfeeefgfee fd�
Z!e"e#e$e%e&e'e(e)d�Z*e'e#Be)Be+Be(BZ,Gdd�de-�Z.Gdd�d�Z/Gdd�d�Z0Gdd�d�Z1dd�Z2dd �Z3d!d"�Z4d#d$�Z5d3d&d'�Z6d(d)�Z7d*d+�Z8d4d-d.�Z9d/d0�Z:d1d2�Z;d,S)5zInternal support module for sre�)�*z.\[{()*+?^$|z*+?{�
0123456789Z01234567Z0123456789abcdefABCDEFZ4abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZz 	

����
�
�	��\)z\az\bz\fz\nz\rz\tz\vz\\)
z\Az\bz\Bz\dz\Dz\sz\Sz\wz\Wz\Z)�i�L�m�s�x�a�t�uc@seZdZdS)�VerboseN)�__name__�
__module__�__qualname__�rr�!/usr/lib64/python3.6/sre_parse.pyrGsrc@sBeZdZdd�Zedd��Zddd�Zdd	�Zd
d�Zdd
�Z	dS)�PatterncCsd|_i|_dg|_d|_dS)Nr)�flags�	groupdict�groupwidths�lookbehindgroups)�selfrrr�__init__LszPattern.__init__cCs
t|j�S)N)�lenr)rrrr�groupsQszPattern.groupsNcCsb|j}|jjd�|jtkr$td��|dk	r^|jj|d�}|dk	rTtd|||f��||j|<|S)Nztoo many groupsz7redefinition of group name %r as group %d; was group %d)r"r�append�	MAXGROUPS�errorr�get)r�name�gid�ogidrrr�	opengroupTs

zPattern.opengroupcCs|j�|j|<dS)N)�getwidthr)rr(�prrr�
closegroup`szPattern.closegroupcCs||jko|j|dk	S)N)r"r)rr(rrr�
checkgroupbszPattern.checkgroupcCs6|jdk	r2|j|�s|jd��||jkr2|jd��dS)Nzcannot refer to an open groupz?cannot refer to group defined in the same lookbehind subpattern)rr.r%)rr(�sourcerrr�checklookbehindgroupes




zPattern.checklookbehindgroup)N)
rrrr �propertyr"r*r-r.r0rrrrrJs
rc@s`eZdZddd�Zddd�Zdd�Zd	d
�Zdd�Zd
d�Zdd�Z	dd�Z
dd�Zdd�ZdS)�
SubPatternNcCs"||_|dkrg}||_d|_dS)N)�pattern�data�width)rr3r4rrrr os
zSubPattern.__init__rcCs�d}ttf}�x�|jD�]�\}}t|dt|�dd�|tkrtt�x*|D]"\}}t|ddt|�|�qLWq|tkr�t�x:t|d�D]*\}}|r�t|dd�|j|d�q�Wq|t	k�r|\}}	}
td|�|	j|d�|
�r�t|dd�|
j|d�qt
||��r�d}x\|D]T}t
|t��rX|�sDt�|j|d�d}n"|�sjtd	dd�t|dd�d}�q(W|�s�t�qtd|�qWdS)
NTz  �)�end��OR�ELSEF� )�tuple�listr4�print�str�IN�BRANCH�	enumerate�dump�GROUPREF_EXISTS�
isinstancer2)r�level�nl�seqtypes�op�avrr�	condgroup�item_yes�item_norrrrCusH 




zSubPattern.dumpcCs
t|j�S)N)�reprr4)rrrr�__repr__�szSubPattern.__repr__cCs
t|j�S)N)r!r4)rrrr�__len__�szSubPattern.__len__cCs|j|=dS)N)r4)r�indexrrr�__delitem__�szSubPattern.__delitem__cCs&t|t�rt|j|j|�S|j|S)N)rE�slicer2r3r4)rrQrrr�__getitem__�s
zSubPattern.__getitem__cCs||j|<dS)N)r4)rrQ�coderrr�__setitem__�szSubPattern.__setitem__cCs|jj||�dS)N)r4�insert)rrQrUrrrrW�szSubPattern.insertcCs|jj|�dS)N)r4r#)rrUrrrr#�szSubPattern.appendc	Cs�|jdk	r|jSd}}�x�|jD�]�\}}|tkr�td}d}x0|dD]$}|j�\}}t||�}t||�}qJW||}||}q"|tkr�|j�\}}||}||}q"|tkr�|dj�\}}||}||}q"|t	k�r|dj�\}}|||d}|||d}q"|t
k�r,|d}|d}q"|tk�rX|jj
|\}}||}||}q"|tk�r�|dj�\}}|ddk	�r�|dj�\}}t||�}t||�}nd}||}||}q"|tkr"Pq"Wt|td�t|t�f|_|jS)Nrr8����)r5r4rA�	MAXREPEATr+�min�max�CALL�
SUBPATTERN�_REPEATCODES�
_UNITCODES�GROUPREFr3rrD�SUCCESS)	r�lo�hirIrJr�j�l�hrrrr+�sZ












zSubPattern.getwidth)N)r)
rrrr rCrOrPrRrTrVrWr#r+rrrrr2ms

(r2c@sbeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Ze	d
d��Z
dd�Zdd�Zddd�Z
dS)�	TokenizercCs@t|t�|_||_|js"t|d�}||_d|_d|_|j�dS)N�latin1r)rEr?�istext�string�decoded_stringrQ�next�_Tokenizer__next)rrkrrrr �s
zTokenizer.__init__cCs�|j}y|j|}Wntk
r.d|_dSX|dkr�|d7}y||j|7}Wn.tk
r�td|jt|j�d�d�YnX|d|_||_dS)Nrr8zbad escape (end of pattern))rQrl�
IndexErrorrmr%rkr!)rrQ�charrrr�__next�s
zTokenizer.__nextcCs||jkr|j�dSdS)NTF)rmrn)rrprrr�match�s
zTokenizer.matchcCs|j}|j�|S)N)rmrn)r�thisrrrr&�sz
Tokenizer.getcCs:d}x0t|�D]$}|j}||kr"P||7}|j�qW|S)Nr6)�rangermrn)r�n�charset�result�_�crrr�getwhileszTokenizer.getwhilecCshd}x^|j}|j�|dkr>|s*|jd��|jd|t|���||krX|sV|jdd��P||7}qW|S)Nr6zmissing group namezmissing %s, unterminated namer8)rmrnr%r!)r�
terminatorrwryrrr�getuntil
s


zTokenizer.getuntilcCs|jt|jpd�S)Nr6)rQr!rm)rrrr�possz
Tokenizer.poscCs|jt|jpd�S)Nr6)rQr!rm)rrrr�tellszTokenizer.tellcCs||_|j�dS)N)rQrn)rrQrrr�seekszTokenizer.seekrcCst||j|j�|�S)N)r%rkr~)r�msg�offsetrrrr%#szTokenizer.errorN)r)rrrr rnrrr&rzr|r1r}r~rr%rrrrrh�s		rhcCstj|�}|r|Stj|�}|r0|dtkr0|S�y�|dd�}|dkr�||jdt�7}t|�dkrx|jd|t|���tt	|dd�d�fS|dkr�|j
r�||jdt�7}t|�d	kr�|jd|t|���tt	|dd�d�fS|d
ko�|j
�rF||jdt�7}t|�dk�r$|jd|t|���t	|dd�d�}t|�t|fS|tk�r�||jdt�7}t	|dd�d�}|d
k�r�|jd|t|���t|fS|t
k�r�t�t|�dk�r�|tk�r�|jd|t|���tt|d�fSWntk
�r�YnX|jd|t|���dS)Nrr8rXr�zincomplete escape %s�r��U��
�z.octal escape value %s outside of range 0-0o377z
bad escape %s)�ESCAPESr&�
CATEGORIESr@rz�	HEXDIGITSr!r%�LITERAL�intrj�chr�	OCTDIGITS�DIGITS�
ValueError�ASCIILETTERS�ord)r/�escaperUryrrr�
_class_escape&sR





r�cCs�tj|�}|r|Stj|�}|r$|S�yt|dd�}|dkr�||jdt�7}t|�dkrl|jd|t|���tt|dd�d�fS|dkr�|j	r�||jdt�7}t|�dkr�|jd|t|���tt|dd�d�fS|d	ko�|j	�r:||jd
t�7}t|�dk�r|jd|t|���t|dd�d�}t
|�t|fS|dk�rj||jdt�7}tt|dd�d
�fS|tk�r\|j
tk�r�||j�7}|dtk�r�|dtk�r�|j
tk�r�||j�7}t|dd�d
�}|d
k�r�|jd|t|���t|fSt|dd��}||jk�rD|j|��s0|jdt|���|j||�t|fS|jd|t|�d��t|�dk�r�|tk�r�|jd|t|���tt|d�fSWntk
�r�YnX|jd|t|���dS)Nr8rXrr�zincomplete escape %sr�rr�r�r�r��0r�z.octal escape value %s outside of range 0-0o377zcannot refer to an open groupzinvalid group reference %dz
bad escape %s)r�r&r�rzr�r!r%r�r�rjr�r�r�rmr"r.r0rar�r�r�)r/r��staterUry�grouprrr�_escapeVsn







r�cCs$g}|j}|j}|j�}x.|t||||d|o4|��|d�sPqWt|�dkr\|dSt|�}|j}	x\d}
xP|D]*}|s�P|
dkr�|d}
qv|d|
krvPqvWx|D]
}|d=q�W|	|
�qlPqlWxD|D]"}t|�dks�|ddtk	r�Pq�W|	tdd�|D�f�|S|jtd|ff�|S)Nr8�|rcSsg|]}|d�qS)rr)�.0�itemrrr�
<listcomp>�sz_parse_sub.<locals>.<listcomp>)	r#rrr~�_parser!r2r�r@rA)r/r��verbose�nested�items�itemsappend�sourcematch�start�
subpattern�subpatternappend�prefixr�rrr�
_parse_sub�sD




r�cCsht||||d�}|jd�rDt||||d�}|jdkrH|jd��nd}t|�}|jt|||ff�|S)Nr8r�z/conditional backref with more than two branches)r�rrrmr%r2r#rD)r/r�rKr�r�rLrMr�rrr�_parse_sub_cond�s

r�Fc)Cst|�}|j}|j}|j}t}	t}
�
x�|j}|dkr6P|dkr@P|�|r||tkrTq&|dkr|x|�}|dkst|dkr^Pq^Wq&|ddkr�t|||�}||�q&|t	kr�|t
|
|�f�q&|dk�r4|j�d}
g}|j}|d�r�|tdf�|dd�}�x�|�}|dk�r |j
d	|j�|
��|d
k�r8||k�r8Pn&|ddk�rRt||�}nt
|
|�f}|d��r�|�}|dk�r�|j
d	|j�|
��|d
k�r�|dtk�r�|dd}||�|t
|
d�f�P|ddk�r�t||�}nt
|
|�f}|dt
k�s|dt
k�r4d||f}|j
|t|�dt|���|d}|d}||k�rvd||f}|j
|t|�dt|���|t||ff�n"|dtk�r�|dd}||��q�W|	|�dk�r�|ddt
k�r�||d�nT|	|�d
k�r&|ddtk�r&|ddt
k�r&|t|ddf�n|t|f�q&|tk�rb|j�}
|dk�r\d7\}}�nJ|dk�rtdt}}�n2|dk�r�dt}}�n|dk�r�|jdk�r�|t
|
|�f�q&dt}}d}}x|jtk�r�||�7}�q�W|d��rx"|jtk�r
||�7}�q�Wn|}|d��s8|t
|
|�f�|j|
�q&|�rXt|�}|tk�rXtd��|�r�t|�}|tk�rxtd��||k�r�|j
d|j�|
��ntd|f��|�r�|d8d�}nd}|�s�|	|�dk�r|ddtk�r|j
d|j�|
t|���|ddtk�r0|j
d|j�|
t|���|d��rNt|||ff|d9<nt|||ff|d:<q&|dk�rz|tdf�q&|dk�
r�|j�d}d}d}d}d}d}|d��	r�|�}|dk�r�|j
d��|dk�r�|d��r|jd �}|j��s�d!|}|j
|t|�d��n�|d"��r�|jd#�}|j��sHd!|}|j
|t|�d��|j j|�} | dk�rzd$|}|j
|t|�d��|j!| ��s�|j
d%t|�d��|j"| |�|t#| f�q&n2|�}|dk�r�|j
d��|j
d&|t|�d
���n�|d'k�r�d}�n�|dk�rDx4|jdk�r*|j
d(|j�|��|�d#k�r
P�q
Wq&�n�|d)k�r0d}!|dk�r�|�}|dk�rv|j
d��|d*k�r�|j
d+|t|�d
��d;}!|j$}"|"dk�r�|j%|_$t&||||d�}#|!dk�r�|"dk�r�d|_$|d#��s�|j
d,|j�|��|d"k�r|t'|!|#ff�q&|t(|!|#ff�q&�n�|dk�	r$|jd#�}$d}|$j��r�|j j|$�}|dk�	rd$|$}|j
|t|$�d��n�yt|$�}|dk�r�t)�Wn4t)k
�r�d!|$}|j
|t|$�d�d�YnX|�s�|j
d-t|$�d��|t*k�	rd.|}|j
|t|$�d��|j"||�n�|t+k�	s8|dk�	r�t,|||�}%|%dk�	r�|�	s\|�	r�ddl-}&|&j.d/|j/dd0�t|j/�d0k�	r�d1ndft0|d2d3�|j1t2@r&|r&t3�q&|%\}}d}n|j
d4|t|�d��|dk	�
r0y|j4|�}Wn<t
k
�
r.}'z|j
|'j5t|�d�d�WYdd}'~'XnX|�
rLt6|||||d�}#n,|�
s\|t2@�
od|t2@}(t&|||(|d�}#|jd#��
s�|j
d,|j�|��|dk	�
r�|j7||#�|t8||||#ff�q&|dk�
r�|tt9f�q&|d5k�
r�|jtt:f�q&td6|f��q&W|S)<Nz|)�#rrr�[r8�^zunterminated character set�]�-zbad character range %s-%srX�?r�+�{�}r6�,z"the repetition number is too largez"min repeat greater than max repeatzunsupported quantifier %rznothing to repeatzmultiple repeat�.�(Tzunexpected end of pattern�P�<�>zbad character in group name %r�=�)zunknown group name %rzcannot refer to an open groupzunknown extension ?P�:zmissing ), unterminated commentz=!<z=!zunknown extension ?<z"missing ), unterminated subpatternzbad group numberzinvalid group reference %dz-Flags not at the start of the expression %r%s�z (truncated)r�)�
stacklevelzunknown extension ?�$z unsupported special character %r)rr8rYrYrYrY);r2r#r&rrr!r�rm�
WHITESPACEr��
SPECIAL_CHARSr�r~�NEGATEr%r�r@�RANGE�NOT_LITERAL�REPEAT_CHARSrZr�rr��
OverflowError�AssertionError�ATr_�
MIN_REPEAT�
MAX_REPEAT�ANYr|�isidentifierrr.r0rarr"r��ASSERT�
ASSERT_NOTr�r$�FLAGS�_parse_flags�warnings�warnrk�DeprecationWarningr�SRE_FLAG_VERBOSErr*r�r�r-r^�AT_BEGINNING�AT_END))r/r�r�r��firstr�r��	sourcegetr��_len�_ordrsrU�here�set�	setappendr��code1�that�code2r�rcrdr[r\rpr�r�r'rK�	add_flags�	del_flagsr(�dirrr,�condnamerr��err�sub_verboserrrr��s






 2











(






































*



r�cCs�|j}d}d}|dkrrxZ|t|O}|�}|dkr<|jd��|dkrFP|tkr|j�rZdnd}|j|t|���qW|dkr�|j|O_dS|t@r�|jdd��|dk�rL|�}|dkr�|jd	��|tkr�|j�r�dnd	}|j|t|���x`|t|O}|�}|dk�r|jd
��|dk�rP|tkr�|j��r4dnd
}|j|t|���q�W|t@�rb|jdd��||@�rx|jd
d��||fS)Nrr�zmissing -, : or )z)-:zunknown flagr�z,bad inline flags: cannot turn on global flagr8zmissing flagz	missing :r�z-bad inline flags: cannot turn off global flagz(bad inline flags: flag turned on and off)r&r�r%�isalphar!r�GLOBAL_FLAGS)r/r�rpr�r�r�r�rrrr�sR







r�cCsjt|t�r>|t@rtd��|t@s,|tO}qf|t@rftd��n(|t@rNtd��|t@rf|t@rftd��|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)rEr?�SRE_FLAG_LOCALEr��SRE_FLAG_ASCII�SRE_FLAG_UNICODE)�srcrrrr�	fix_flags<s


r�NcCs�t|�}|dkrt�}||_||_yt|||t@d�}WnBtk
rzt�}|tB|_||_|jd�t||dd�}YnXt||j	j�|j	_|j
dk	r�|jd��|t@r�|j
�|S)NrTzunbalanced parenthesis)rhrrr?r�r�rrr�r3rmr%�SRE_FLAG_DEBUGrC)r?rr3r/r,rrr�parseLs&



r�cs�t|���j}g�g�g��j}�����fdd�}�j}�x�|�}|dkrNP|ddk�r�|d}|dk�rJd}�jd�s��jd	���jd
�}|j�r�y||}	Wn tk
r�t	d|��YnXnlyt
|�}	|	dkr�t�Wn0tk
�r�jd|t|�d�d�YnX|	t
k�r4�jd
|	t|�d��||	t|�d��q�|dk�r��jtk�r�||�7}�jtk�r�||�7}|tt
|dd�d�d@���q�|tk�rZd}
�jtk�r4||�7}|tk�r4|dtk�r4�jtk�r4||�7}d}
t
|dd�d�}|dk�r(�jd|t|���|t|��|
�s�|t
|dd��t|�d�nZytt|d�}Wn<tk
�r�|tk�r�ddl}|jd|tdd�YnX||�q>||�q>W��r؈jdj���t|t��s�dd��D����fS)NcsX|�jkr�jd||���r8�jdj����dd�=�jt��|f��jd�dS)Nzinvalid group reference %dr6)r"r%r#�joinr!)rQr})r"�literal�literalsr3rrr�addgroupus

z parse_template.<locals>.addgrouprrr8�gr6r�z	missing <r�zunknown group name %rzbad character in group name %rzinvalid group reference %dr�r�r�FrXTz.octal escape value %s outside of range 0-0o377z
bad escape %sr�)r�cSs"g|]}|dkrdn|jd��qS)Nzlatin-1)�encode)r�rrrrr��sz"parse_template.<locals>.<listcomp>)rhr&r#�
groupindexrrr%r|r��KeyErrorror�r�r!r$rmr�r�r�r�r�r�r�r�r�rEr?)r/r3�sget�lappendr�r�rsryr'rQ�isoctalr�r)r"r�r�r3rr�parse_templatels�









"



 


r�cCsz|j}|jdd�}|\}}|dd�}y&x |D]\}}||�pB|||<q0WWn tk
rntd|��YnX|j|�S)Nrzinvalid group reference %d)r�rkror%r�)�templaterrr��emptyr"r�rQr�rrr�expand_template�sr�)F)rN)<�__doc__�
sre_constantsr�r��	frozensetr�r�r�r�r�r�r�r_r�r�r@r�r��CATEGORYr`r�r�r�ZAT_BEGINNING_STRINGZAT_BOUNDARYZAT_NON_BOUNDARYZCATEGORY_DIGITZCATEGORY_NOT_DIGITZCATEGORY_SPACEZCATEGORY_NOT_SPACEZ
CATEGORY_WORDZCATEGORY_NOT_WORDZ
AT_END_STRINGr��SRE_FLAG_IGNORECASEr��SRE_FLAG_MULTILINE�SRE_FLAG_DOTALLr�r��SRE_FLAG_TEMPLATEr�r�r�r��	Exceptionrrr2rhr�r�r�r�r�r�r�r�r�r�rrrr�<module>sj






#qH0A3
<,
 W

?>