Your IP : 18.118.152.10


Current Path : /lib64/python2.7/
Upload File :
Current File : //lib64/python2.7/sre_parse.pyo

�
�mec@s�dZddlZddlTddlmZdZdZed�Zed�Z	ed	�Z
ed
�Ziee
d�fd6ee
d
�fd6ee
d�fd6ee
d�fd6ee
d�fd6ee
d�fd6ee
d�fd6ee
d�fd6Zi
eefd6eefd6eefd6eeefgfd6eeefgfd6eeefgfd6eeefgfd 6eeefgfd!6eeefgfd"6eefd#6Zied$6ed%6ed&6e d'6e!d(6e"d)6e#d*6Z$d+fd,��YZ%d-fd.��YZ&d/fd0��YZ'd1�Z(d2�Z)d3�Z*d4�Z+d5�Z,d6d7�Z-d8�Z.ed9�Z/ed:�Z0ed;�Z1ee2e3g�Z4d<�Z5d=e6d>�Z7d?�Z8d@�Z9dS(AsInternal support module for srei����N(t*(t	MAXREPEATs.\[{()*+?^$|s*+?{t
0123456789t01234567t0123456789abcdefABCDEFs 	

ss\ass\bss\fs
s\ns
s\rs	s\tss\vs\s\\s\As\Bs\ds\Ds\ss\Ss\ws\Ws\ZtitLtmtstxtttutPatterncBs/eZd�Zdd�Zd�Zd�ZRS(cCs(d|_g|_d|_i|_dS(Nii(tflagstopentgroupst	groupdict(tself((s!/usr/lib64/python2.7/sre_parse.pyt__init__Ds			cCs�|j}|d|_|dk	rr|jj|d�}|dk	rbtdt|�||f�n||j|<n|jj|�|S(Nis7redefinition of group name %s as group %d; was group %d(RtNoneRtgetterrortreprRtappend(Rtnametgidtogid((s!/usr/lib64/python2.7/sre_parse.pyt	opengroupIs	
cCs|jj|�dS(N(Rtremove(RR((s!/usr/lib64/python2.7/sre_parse.pyt
closegroupTscCs||jko||jkS(N(RR(RR((s!/usr/lib64/python2.7/sre_parse.pyt
checkgroupVsN(t__name__t
__module__RRRRR(((s!/usr/lib64/python2.7/sre_parse.pyRBs		t
SubPatterncBsheZdd�Zdd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�ZRS(cCs4||_|dkrg}n||_d|_dS(N(tpatternRtdatatwidth(RR"R#((s!/usr/lib64/python2.7/sre_parse.pyR[s
			icCsud}td�tg�f}xP|jD]E\}}|d|Gd}|dkr�Hd}x|D]!\}}|dd|G|GHq`Wn�|dkr�Hd}d}x�|dD]C}|dkr�|ddGHn|j|d�d}|d}q�Wnmt|�|krYxX|D]C}t|t�rH|s.Hn|j|d�d}q|Gd}qWn
|Gd}|s(Hq(q(WdS(Nis  itintbranchtor((ttypeR#tdumpt
isinstanceR!(RtleveltnltseqtypestoptavtaR((s!/usr/lib64/python2.7/sre_parse.pyR)asB
	
cCs
t|j�S(N(RR#(R((s!/usr/lib64/python2.7/sre_parse.pyt__repr__}scCs
t|j�S(N(tlenR#(R((s!/usr/lib64/python2.7/sre_parse.pyt__len__scCs|j|=dS(N(R#(Rtindex((s!/usr/lib64/python2.7/sre_parse.pyt__delitem__�scCs1t|t�r&t|j|j|�S|j|S(N(R*tsliceR!R"R#(RR4((s!/usr/lib64/python2.7/sre_parse.pyt__getitem__�scCs||j|<dS(N(R#(RR4tcode((s!/usr/lib64/python2.7/sre_parse.pyt__setitem__�scCs|jj||�dS(N(R#tinsert(RR4R8((s!/usr/lib64/python2.7/sre_parse.pyR:�scCs|jj|�dS(N(R#R(RR8((s!/usr/lib64/python2.7/sre_parse.pyR�scCs�|jr|jSd}}ttttttf}ttf}xy|j	D]n\}}|t
kr�td}d}xB|dD]6}|j�\}	}
t
||	�}t||
�}q{W||}||}qH|tkr|j�\}}||}||}qH|tkr:|dj�\}}||}||}qH||kr�|dj�\}}|||d}|||d}qH||kr�|d}|d}qH|tkrHPqHqHWt
|td�t
|t�f|_|jS(Nliii(R$tANYtRANGEtINtLITERALtNOT_LITERALtCATEGORYt
MIN_REPEATt
MAX_REPEATR#tBRANCHRtgetwidthtmintmaxtCALLt
SUBPATTERNtSUCCESS(Rtlothit	UNITCODEStREPEATCODESR.R/Rtjtlth((s!/usr/lib64/python2.7/sre_parse.pyRD�sD	









%N(
RR RRR)R1R3R5R7R9R:RRD(((s!/usr/lib64/python2.7/sre_parse.pyR!Ys							t	TokenizercBsAeZd�Zd�Zdd�Zd�Zd�Zd�ZRS(cCs ||_d|_|j�dS(Ni(tstringR4t_Tokenizer__next(RRR((s!/usr/lib64/python2.7/sre_parse.pyR�s		cCs�|jt|j�kr%d|_dS|j|j}|ddkr�y|j|jd}Wntk
rytd�nX||}n|jt|�|_||_dS(Nis\isbogus escape (end of line)(R4R2RRRtnextt
IndexErrorR(Rtchartc((s!/usr/lib64/python2.7/sre_parse.pyt__next�s	


icCs*||jkr&|r"|j�ndSdS(Nii(RTRS(RRVtskip((s!/usr/lib64/python2.7/sre_parse.pytmatch�s

cCs|j}|j�|S(N(RTRS(Rtthis((s!/usr/lib64/python2.7/sre_parse.pyR�s	
cCs|j|jfS(N(R4RT(R((s!/usr/lib64/python2.7/sre_parse.pyttell�scCs|\|_|_dS(N(R4RT(RR4((s!/usr/lib64/python2.7/sre_parse.pytseek�s(RR RRSRZRR\R](((s!/usr/lib64/python2.7/sre_parse.pyRQ�s		
		cCsBd|kodknpAd|ko3dknpA|dkS(NR0tztAtZt_((RV((s!/usr/lib64/python2.7/sre_parse.pytisident�scCsd|kodkSS(Nt0t9((RV((s!/usr/lib64/python2.7/sre_parse.pytisdigit�scCsKt|d�stSx0|dD]$}t|�rt|�rtSqWtS(Nii(RbtFalseRetTrue(RRV((s!/usr/lib64/python2.7/sre_parse.pytisname�scCs�tj|�}|r|Stj|�}|rB|dtkrB|SyO|dd!}|dkr�x5|jtkr�t|�dkr�||j�}qaW|d}t|�dkr�tdtd|��nt	t
|d�d	@fS|tkrHx5|jtkr&t|�dkr&||j�}q�W|d}t	t
|d
�d	@fS|tkrjtdt|��nt|�dkr�t	t
|d�fSWntk
r�nXtdt|��dS(NiiiR	isbogus escape: %ss\ii�i(tESCAPESRt
CATEGORIESR=RTt	HEXDIGITSR2RRR>tintt	OCTDIGITStDIGITStordt
ValueError(tsourcetescapeR8RW((s!/usr/lib64/python2.7/sre_parse.pyt
_class_escape�s6
$
$

cCsBtj|�}|r|Stj|�}|r2|Sy�|dd!}|dkr�x5|jtkr�t|�dkr�||j�}qQWt|�dkr�t�ntt|dd�d@fS|dkrx5|jt	kr�t|�dkr�||j�}q�Wtt|dd�d@fS|t
kr�|jt
kr�||j�}|dt	kr�|dt	kr�|jt	kr�||j�}tt|dd�d@fSnt|d�}||jkr�|j|�s�t
d	�nt|fSt�nt|�dkrtt|d�fSWntk
r*nXt
d
t|��dS(NiiR	iii�Rciscannot refer to open groupsbogus escape: %s(RjRRiRTRkR2RpR>RlRmRnRRRtGROUPREFRoR(RqRrtstateR8RWtgroup((s!/usr/lib64/python2.7/sre_parse.pyt_escapesH
$	$ 
	
icCs�g}|j}|j}xX|t||��|d�r@qn|sJPn|jsc|dd�rgPqtd�qt|�dkr�|dSt|�}|j}xwd}xj|D]=}	|	s�Pn|dkr�|	d}q�|	d|kr�Pq�q�Wx|D]
}	|	d=q�W||�q�Pq�xz|D]0}	t|	�dksO|	ddtkr#Pq#q#Wg}
|
j}x|D]}	||	d�qmW|t	|
f�|S|jt
d|ff�|S(Nt|t)ispattern not properly closedi(RRZt_parseRTRR2R!RR>R=RC(RqRutnestedtitemstitemsappendtsourcematcht
subpatterntsubpatternappendtprefixtitemtsett	setappend((s!/usr/lib64/python2.7/sre_parse.pyt
_parse_sub.sR			




&	
cCs�t||�}|jd�rKt||�}|jd�rQtd�qQnd}|jry|jdd�rytd�nt|�}|jt|||ff�|S(NRxs/conditional backref with more than two branchesRyispattern not properly closed(RzRZRRRTR!RtGROUPREF_EXISTS(RqRut	condgrouptitem_yestitem_noR((s!/usr/lib64/python2.7/sre_parse.pyt_parse_sub_condiss|)s=!<s=!c Cs�t|�}|j}|j}|j}t}t}t}t}	t}
xx|j	|kr[Pn|�}|dkrtPn|jt@r�|t
kr�qHn|dkr�x|�}|d/kr�Pq�q�qHq�n|r�|dtkr�|tt|�f�qH|dkr�g}|j}
|d�r0|
tdf�n|}x�|�}|dkr_||kr_PnL|r�|ddkr�t||�}n$|r�tt|�f}n	td�|d	�r�|�}|dkr|dtkr�|d
d}n|
|�|
ttd	�f�Pq�|r�|ddkr9t||�}ntt|�f}|dtksk|dtkrwtd�n|d
}|d
}||kr�td�n|
t||ff�q�td�q:|dtkr�|d
d}n|
|�q:||�d
kr-|ddtkr-||d�q�||�dkr�|ddtkr�|d
dtkr�|t|d
d
f�q�|t|f�qH|r(|dtkr(|d
kr�d0\}}n�|dkr�dt}}n�|dkr�d
t}}nt|dkri|j	dkr5|tt|�f�qHn|j�}dt}}d}}x#|j	tkr}||j�}q[W|d�r�x)|j	tkr�||�}q�Wn|}|d�s�|tt|�f�|j|�qHn|rt|�}|tkrtd��qn|rrt|�}|tkrHtd��n||krftd��qfqrn	td�|r�|d}nd}|s�||�d
kr�|ddtkr�td�n|dd|
kr�td�n|d
�rt|||ff|d<q�t |||ff|d<qH|dkrG|t!df�qH|dkr>d
}d}d}|d
�rZ
d}|d�r|d�rd}x>|�}|dkr�td�n|dkr�Pn||}q�d
}|s�td ��nt"|�std!|��qqW
|d"�r�d}x>|�}|dkrItd�n|d#krYPn||}q(|s{td ��nt"|�s�td$|��n|j#j|�}|dkr�td%�n|t$|f�qHqW
|�}|dkr�td&�ntd'|�qZ
|d(�r d}qZ
|d�ryx,|j	dksM|j	d#krQPn|�q/|d#�sHtd)�qHqHqZ
|j	|kr8	|�}d
}|dkr�|j	|	kr�td*�nd}|�}nt%||�}|d#�s�td)�n|d"kr	|t&||ff�qH|t'||ff�qHqZ
|d�r
d}x>|�}|dkrn	td�n|d#kr~	Pn||}qM	d}|s�	td ��nt"|�r�	|j#j|�}|dkr
td%�q
qW
yt|�}WqW
t(k
r
td+�qW
XqZ
|j	t)kr*
td&�nx-|j	t)krV
|jt)|�B|_q-
Wn|r�
|dkru
d}n|j*|�}|r�
t+|||�}nt%||�}|d#�s�
td)�n|dk	r�
|j,|�n|t-||ff�q�x�|�}|dkrtd&�n|d#kr/Pntd,�q�
qH|dkr]|tt.f�qH|d-kr|jtt/f�qH|r�|ddkr�t0|||�}||�qHtd.�qH|S(1Nt#s
it[t^t]s\s$unexpected end of regular expressiont-isbad character rangeit?Rt+t{t}tt,s"the repetition number is too largesbad repeat intervals
not supportedi����snothing to repeatsmultiple repeatt.t(tPt<sunterminated namet>smissing group namesbad character in group name %rt=Rys&bad character in backref group name %rsunknown group namesunexpected end of patternsunknown specifier: ?P%st:sunbalanced parenthesisssyntax errorsbad character in group namesunknown extensiont$sparser error(Ns
(ii(1R!RRRZR2t_PATTERNENDERSt_ASSERTCHARSt_LOOKBEHINDASSERTCHARSt_REPEATCODESRTRR
tSRE_FLAG_VERBOSEt
WHITESPACEt
SPECIAL_CHARSR>RotNEGATERsRR=R<R?tREPEAT_CHARSRR\RnR]Rlt
OverflowErrortATRARBR;RhRRtR�tASSERTt
ASSERT_NOTRptFLAGSRR�RRHtAT_BEGINNINGtAT_ENDRw( RqRuRR�t	sourcegetR~t_lent
PATTERNENDERStASSERTCHARStLOOKBEHINDASSERTCHARSRMR[R�R�tstarttcode1tcode2RJRKRERFthereR�RvRR�RVRtdirtptcondnameR8((s!/usr/lib64/python2.7/sre_parse.pyRz|s�				
						
 


&:


	
-	
	

		
		

		
icCs�t|�}|dkr$t�}n||_||_t||d�}|j�}|dkrltd�n|r~td�n|t@r�|j	�n|t
@r�|jjt
@r�t||jj�S|S(NiRysunbalanced parenthesiss-bogus characters at end of regular expression(
RQRRR
tstrR�RRtSRE_FLAG_DEBUGR)R�R"tparse(R�R
R"RqR�ttail((s!/usr/lib64/python2.7/sre_parse.pyR��s 		

cCs�t|�}|j}g}|j}||d�}|d }t|�td�kr^t}nt}x�|�}	|	dkr�Pn|	r|	ddkr|	dd!}
|
dkr�d}|jd�rxA|�}|dkr�td	�n|d
kr�Pn||}q�n|std�ny(t	|�}
|
dkrAtd�nWnWt
k
r�t|�sjtd
�ny|j|}
Wq�t
k
r�td�q�XnX|t|
f�q|
dkr|jtkr�|	|�}	|jtkr�|	|�}	q�n||t	|	dd�d@��q|
tkr�t}|jtkr�|	|�}	|
tkr�|	dtkr�|jtkr�|	|�}	t}||t	|	dd�d@��q�n|s|tt	|	d�f�qqy|t|	d�}	Wnt
k
rnX||	�qg||	�qgd}g}|j}dgt|�}xG|D]?\}
}|
tkrv|||f�n
|||<|d}qKW||fS(NcSsM|r9|ddtkr9t|dd|f|d<n|t|f�dS(Ni����ii(R>(tliteralR�tpappend((s!/usr/lib64/python2.7/sre_parse.pyR��siR�s\iitgR�sunterminated group nameR�smissing group namesnegative group numbersbad character in group namesunknown group nameRcii�(RQRRR(tchrtunichrRRZRRlRpRht
groupindextKeyErrorRUtMARKRTRmRnRfRgRiR2(RqR"RtsgetR�R0R�tseptmakecharR[RWRRVR4tisoctalRRtgroupsappendtliterals((s!/usr/lib64/python2.7/sre_parse.pytparse_template�s�		
		
	


$

' 


	
c	Cs�|j}|jd }|\}}|}yGx@|D]8\}}||�||<}|dkr3td�q3q3WWntk
r�td�nX|j|�S(Nisunmatched groupsinvalid group reference(RvRRRRRUtjoin(	ttemplateRZR�R�RR�R4RvR((s!/usr/lib64/python2.7/sre_parse.pytexpand_templates	


(:t__doc__tsyst
sre_constantst_sreRR�R�R�RnRmRkR�R>RoRiR�tAT_BEGINNING_STRINGtAT_BOUNDARYtAT_NON_BOUNDARYR=R@tCATEGORY_DIGITtCATEGORY_NOT_DIGITtCATEGORY_SPACEtCATEGORY_NOT_SPACEt
CATEGORY_WORDtCATEGORY_NOT_WORDt
AT_END_STRINGRjtSRE_FLAG_IGNORECASEtSRE_FLAG_LOCALEtSRE_FLAG_MULTILINEtSRE_FLAG_DOTALLR�tSRE_FLAG_TEMPLATEtSRE_FLAG_UNICODER�RR!RQRbReRhRsRwR�R�R�R�R�RARBR�RzRR�R�R�(((s!/usr/lib64/python2.7/sre_parse.pyt<module>sp




Y!					 	,;		�)	W