%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/self/root/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/
Upload File :
Create Path :
Current File : //proc/self/root/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyo

�
��]c@sHddlmZddlmZmZddlmZmZyddlmZ	Wne
k
roddl	Z	nXddlZddlZddl
Z
y:e
jd!kr�ddlZnddlZej�ZWne
k
r�dZnXd�Zd	Zejd
ejejB�ZejdejejB�Zejd�Zejd
�Zejd�Zejd�Zdaejdej �Z!ejd�Z"ejd�Z#ejd�Z$ejd�Z%ejd�Z&ejd�Z'ejd�Z(d�Z)d�Z*d�Z+d�Z,d�Z-d�Z.d�Z/de0fd ��YZ1dS("i(tmodel(tCOMMON_TYPEStresolve_common_type(tFFIErrort	CDefError(t
_pycparseri����NicCsddl}ddl}dS(Ni����(tpycparser.yacctabtpycparser.lextab(t	pycparser((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt%_workaround_for_static_import_findersss<cdef source string>s/\*.*?\*/|//([^\n\\]|\\.)*?$s?^\s*#\s*define\s+([A-Za-z_][A-Za-z_0-9]*)\b((?:[^\n\\]|\\.)*?)$s=\s*\.\.\.\s*[,}]|\.\.\.\s*\}s__dotdotdot\d+__$s\[\s*\.\.\.\s*\]s\w+|\Ss-?0?x?[0-9a-f]+[lu]*$s\b(__stdcall|WINAPI)\bs[(]\s*(__stdcall|WINAPI)\bs\b__cdecl\bs9\bextern\s*"(Python|Python\s*\+\s*C|C\s*\+\s*Python)"\s*.s'[*]\s*((const|volatile|restrict)\b\s*)+s3(\b(int|long|short|signed|unsigned|char)\s*)+\.\.\.s\b(double|float)\s*\.\.\.cCstdkrtj�antS(N(t
_parser_cachetNoneRtCParser(((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_get_parser1scCsng}xKtrStj|�}|s(Pn|j||j� �|jd�d}|j|j��|j�}|jd|�r�|jd�|d7}nd}|}x�|t|�kr6||}|dkr�|d7}nH|dkr
|dkr�Pn|d8}n|dkr)|dkr)Pq)n|d7}q�W|||!|||}q	W|j|�dj	|�S(Nt(t)t*iis,;=t(
tTruet_r_star_const_spacetsearchtappendtstarttgrouptendt
startswithtlentjoin(tcsourcetpartstmatchtclosingtendpostleveltitc((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_workaround_for_old_pycparser7s<	






cCs�g}xptrxtj|�}|s(Pn|j�d}|j||j� �d|jd�krt|jd�n
|jd�||dkr|jd|�}|dkr�td��n|jd|d|�dkr�t	d	��n|j||d|!�||d}nS|jd
|�}|dkrBtd��n|j|||d!�||d}|jd�q	W|j|�d
j
|�S(NitCs(void __cffi_extern_python_plus_c_start; s!void __cffi_extern_python_start; t{t}is!'extern "Python" {': no '}' founds7cannot use { } inside a block 'extern "Python" { ... }'t;s'extern "Python": no ';' founds  void __cffi_extern_python_stop;R(Rt_r_extern_pythonRRRRRtfindRtNotImplementedErrorR(RRRR Rt	semicolon((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_preprocess_extern_pythonas4
	

cCsjd|krdSxS|j�D]E}d|kr|j�jd�rddl}|jd�PqqWdS(Nt"t#i����s�String literal found in cdef() or type source. String literals are ignored here, but you should remove them anyway because some character sequences confuse pre-parsing.(t
splitlinestlstripRtwarningstwarn(RtlineR2((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_warn_for_string_literal�s"
cCs3|js/ddl}|jd|jf�ndS(Ni����srGlobal variable '%s' in cdef(): for consistency with C it should have a storage class specifier (usually 'extern')(tstorageR2R3tname(tdeclR2((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt/_warn_for_non_extern_non_static_global_variable�s		c	Cs�tjd|�}i}xKtj|�D]:}|j�\}}|jdd�j�}|||<q(Wtjd|�}tjdkr�t	|�}nt
jd|�}tjd|�}tjd|�}t
|�}t|�tjd|�}ttj|��}x�tt|��D]�\}}|j�}||dkr�|jd	||j��}d
|| |||df}qd|| |||df}qWtjd
|�}tjd|�}|jd	d�|fS(Nt s\
Rs2.14s volatile volatile const(s volatile volatile const s[__dotdotdotarray__]t=s...s%s,__dotdotdot%d__ %sis%s __dotdotdot%d__ %ss __dotdotdotint__ s __dotdotdotfloat__ s __dotdotdot__ (t
_r_commenttsubt	_r_definetfinditertgroupstreplacetstripRt__version__R$t_r_stdcall2t_r_stdcall1t_r_cdeclR-R5t_r_partial_arraytlistt_r_partial_enumt	enumeratetreversedRR*Rt_r_int_dotdotdott_r_float_dotdotdot(	RtmacrosRt	macronamet
macrovaluetmatchestnumbertptp2((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_preprocess�s6


cCsktt�}|jd�|jd�|jd�|jd�|jd�t�}t}d}d}x�tj|�D]�}||kr]|dkr�|rZ|j|�|j|�t}qZq]|dkr�t}d}q]|dkr�|d7}q]|dkr|d8}q]|dkrM|rZ|dkrZ|j|�|j|�qZq]|j|�n|}qxW|S(	NR(t,RRttypedefiRi(tsetRtaddtFalset_r_wordstfindalltdiscardR(Rtlook_for_wordst
words_usedt
is_typedeftparent
previous_wordtword((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_common_type_names�s>




	

	



tParsercBs"eZd�Zd�Zd�Zd�Zeeded�Zd�Z	d�Z
d�Zd�Zd	�Z
d
�Zd�Zd�Zed
d�Zd�Zdd�Zded�Zdd�Zd�Zded�Zd�Zed�Zd�Zd�Zd�Zd�Zd�ZRS(cCsUi|_t�|_d|_tj�|_i|_i|_g|_	d|_dS(Ni(t
_declarationsRXt_included_declarationst_anonymous_countertweakreftWeakKeyDictionaryt_structnode2typet_optionst_int_constantst_recompleteRt_uses_new_feature(tself((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt__init__
s					cCst|�\}}t|�}g}xMt|j�D]<}|jd�r4|d}|j|�|j|�q4q4W|t|�7}g}|jd�x|D]}|jd|�q�W|jd�|jdtf�|j|�dj|�}t	dk	rt	j�nzFyt�j
|�}	Wn)tjjk
rS}
|j|
|�nXWdt	dk	rqt	j�nX|	||fS(Nstypedef is*# 1 "<cdef automatic initialization code>"stypedef int %s;s@typedef int __dotdotdotint__, __dotdotdotfloat__, __dotdotdot__;s# 1 "%s"s
(RURdtsortedRfRRR]tCDEF_SOURCE_STRINGRtlockRtacquireR
tparseRtc_parsert
ParseErrortconvert_pycparser_errortrelease(RpRRNtctnt	typenamesR7tcsourcelinesttypenametfullcsourcetastte((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_parses6






cCs�d}t|�}tjdtf|�}|r�t|jd�d�}|j�}d|kort|�knr�||d}q�n|S(Ns	%s:(\d+):ii
(	RtstrtreRRstintRR0R(RpR�RR4tmsgRtlinenumR}((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_convert_pycparser_error:s"cCsZ|j||�}t|�}|r=d|j�|f}n
d|f}t|��dS(Nscannot parse "%s"
%ssparse error
%s(R�R�RBR(RpR�RR4R�((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyRyHs
cCs�|r?|tkr!td��n|r6td��nd}n3|rl||d@rrtd|f��qrnd}|j}z/i|d6|d6|d6|_|j|�Wd||_XdS(	NsB'packed' should be False or True; use 'pack' to give another values$cannot give both 'pack' and 'packed'is%'pack' must be a power of two, not %ritoverridetpackedt	dllexport(Rt
ValueErrorRlt_internal_parse(RpRR�R�tpackR�tprev_options((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyRvRs$		

cCs�|j|�\}}}|j|�t|j�}x!|D]}|jdkr;Pq;q;Wd}y�d|_x�|D]�}|}t|tj	j
�r�|j|�qqt|tj	j�r�|js�t
d|��nd}t|jjtj	j�r!|jjjdjd�r!|j|�}n�t|jtj	j�r�t|jjtj	j�r�t|jjjtj	j�r�|jjjjdjd�r�|j|�}n'|j|jd|jdt�\}}|jd	|j|d
|�qq|jjdkr�qqt
d|jj|��qqWWn�t
k
r`}	t|	j�d
krZ|	j|f|	_n�nLtk
r�}	|j|	|�}
|
r�|	jdd|
f|	_n�nXdS(Nt
__dotdotdot__t__cffi_extern_python_stops!typedef does not declare any nameii����t__dotdotdotR7tpartial_length_okstypedef tqualstPragmasBunexpected <%s>: this construct is valid C but not valid in cdef()is
    *** Err: %s(R�t_process_macrostitertextR7Rt_inside_extern_pythont
isinstanceRtc_asttDeclt_parse_decltTypedefRttypetIdentifierTypetnamesRt_get_unknown_typetPtrDecltTypeDeclt_get_unknown_ptr_typet_get_type_and_qualsRt_declaret	__class__t__name__RtargsRR�(RpRR�RNtiteratorR8tcurrent_declR�trealtypeR�R�((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR�jsV

	
	! cCsM||jkr<|j||kr&dStd|f��n||j|<dS(Ns%multiple declarations of constant: %s(RmR(Rptkeytval((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_add_constants�scCs�|j�jd�}|jd�}|r7|d}n|jd�rs|dkrs|jd�rsd|d}nt|d�}|r�|}n|j||�|jd||�dS(	Ntult-it0t0xt0oismacro (tlowertrstripRR�R�R�(RpR7tint_strtnegtpyvalue((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_add_integer_constant�s

cCs�x�|j�D]y\}}|j�}tj|�rG|j||�q
|dkrj|jd||�q
td||||f��q
WdS(Ns...smacro s�only supports one of the following syntax:
  #define %s ...     (literally dot-dot-dot)
  #define %s NUMBER  (with NUMBER an integer constant, decimal/hex/octal)
got:
  #define %s %s(titemsRBt_r_int_literalRR�R�R(RpRNR�tvalue((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR��scCs~|j||�}|jjd�r-d}n6|jdkrEd}n|jdkr]d}nd}|j||j|�dS(NR�sdllexport_python t__cffi_extern_python_startsextern_python t!__cffi_extern_python_plus_c_startsextern_python_plus_c s	function (t_get_type_pointerRltgetR�R�R7(RpttpR�R8ttag((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_declare_function�s			cCs�|j}t|tjj�rR|j|d|j�\}}|j|||�nit|tjj�rz|j	d|�nkt|tjj
�r�|j	d|�nCt|tjj�r�|j	d|�n|js�td|��n|jr�|j|dt
�\}}|jr(|j|||�q�|j�r�t|d�r�t|jd�r�tj|jj�r�|j|j|jj�q�|j�rt|jtjj�r|jjd	krt|jjd�rtj|jjj�r|j|jd	|jjj�q�|tjkr<|jjd
�r<|j|_q�|jdkrZtd��n|tj@r�|jr�|jd
|j|d|�q�t |�|jd|j|d|�ndS(NR7tstructtuniontenums'construct does not declare any variableR�tinitR�R�t__cffi_extern_python_R�s<cannot declare constants or variables with 'extern "Python"'s	constant R�s	variable (!R�R�RR�tFuncDeclR�R7R�tStructt_get_struct_union_enum_typetUniontEnumRRtis_raw_functiontis_integer_typethasattrR�R�RR�R�tUnaryOptoptexprRt	void_typeRR�tQ_CONSTt
is_array_typeR�R9(RpR8tnodeR�R�((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR��sP				 
cCs|j|�dS(Ni(tparse_type_and_quals(Rptcdecl((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt
parse_typescCsu|jd|�d \}}|jdjjjd}t|tjj�ret	d|j
f��n|j|j�S(Nsvoid __dummy(
%s
);ii����isunknown identifier '%s'(R�R�R�R�tparamsR�RR�tIDRR7R�(RpR�R�RNtexprnode((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR�
s
icCs�||jkri|j|\}}||kr>||kr>dS|jjd�sitd|f��qin||f|j|<|r�|jj|�ndS(NR�sPmultiple declarations of %s (for interactive usage, try cdef(xx, override=True))(RfRlR�RRgRY(RpR7tobjtincludedR�tprevobjt	prevquals((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR�scCs�d}t|tjjtjjf�r�d|jkrF|tjO}nd|jkre|tjO}nd|jkr�|tj	O}q�n|S(Nitconsttvolatiletrestrict(
R�RR�R�R�R�RR�t
Q_VOLATILEt
Q_RESTRICT(RpR�R�((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt_extract_quals scCs�t|tj�r|j�St|tj�r�|jjd�r�|jdj�r�|jdkr�|dk	r�tj
|||�Stj||�S(Nt$i(R�RtRawFunctionTypetas_function_pointertStructOrUnionOrEnumR7Rtisdigitt	forcenameRtNamedPointerTypetPointerType(RpR�R�tdeclname((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR�,s
%cCs}t|tjj�r�t|jtjj�r�t|jj�dkr�d|jjd|jkr�|jd|jjd\}}||j	|�O}||fSt|tjj
�r|jdkr�d}n|j
|jd|�}|j|jd|�\}}tj||�|fSt|tjj�rw|j|j�\}}|j||d|�}|j	|�}||fSt|tjj�r�|j	|�}|j}	t|	tjj�r1t|	j�}
|
ddgkr�i}xE|
r'|
d}|dkr#|j|d�d||<|
d=q�Pq�Wg}x>dD]6}
x-t|j|
d��D]}|j|
�qTWq5W|
s�dg}
n|
dgkr�d|ks�d	|kr�g}
q�n||
}
ndj|
�}|d
kr�tj|fS|dkrtd|jj��nt||�\}}|||BfSt|	tjj�re|jd|	|�}||fSt|	tjj�r�|jd|	|�}||fSt|	tjj �r�|jd|	|�}||fSnt|tjj!�r�|j"||�dfSt|tjj�r/|jd||dt#�dfSt|tjj�rc|jd||dt#�dfStd|jj��dS(Nistypedef iR�R�tsignedtchartshorttlongtunsignedR�R:tvoidR�s:%d: bad usage of "..."R�R�R�tnesteds(:%d: bad or unsupported type declaration(R�R�R�R�(R�R�R�($R�RR�R�R�R�RR�RfR�t	ArrayDecltdimRt_parse_constantR�Rt	ArrayTypeR�R�RHR�trangeRRR�RtcoordR4RR�R�R�R�R�t_parse_function_typeR(RpttypenodeR7R�R�R�tlengthtitemtypet	itemqualsR�R�tprefixestnewnamestprefixR"tidentttp0tquals0((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR�5s�!
	
		









c	Cs�tt|jdg��}x[t|�D]M\}}t|d�s(td|pRd|dt|dd�f��q(q(Wt|�dko�t|d	jt	j
j�o�t|d	jjt	j
j�o�|d	jjj
d
gk}|r|j�|std|pd��qng|D]!}|j|j|j��^q}|rd|tjgkrdg}n|j|j�\}	}
d}t|jd�r�|jjd
dddgkr�d}q�ntjt|�|	||�S(NR�R�st%s arg %d: unknown type '%s' (if you meant to use the old C syntax of giving untyped arguments, it is not supported)s
in expressioniR7t?ii����R�s=%s: a function with only '(...)' as argument is not correct CR�i����R�R�t	__stdcall(RHtgetattrR�RJR�RRR�R�RR�R�R�R�tpopt_as_func_argR�RR�RR�R�ttuple(RpRtfuncnameR�R"targtellipsistargdeclnodeR�tresultR�tabi((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR�s6 
+	cCsIt|tj�r%tj|j|�St|tj�rA|j�S|SdS(N(R�RR�R�titemR�R�(RpR�R�((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR�s

cCsZy|j|SWntk
r"nX|}|j}|dkr||dk	rWd|}n|jd7_d|j}d}n1|}d||f}|jj|d�\}}	|dkr{|dkr�tj|ddd�}ny|dkrtj	|ddd�}nR|dkrF|dkr.t
d	��n|j||j�}nt
d
|f��|dk	r�|j||�q�n.|dkr�|jdk	r�td|��n|js�|j|�n|jr�d|jkr�|jd
|j|�n||j|<|dkr|S|jdkr$|S|jdk	rFt
d|��ng}
g}g}g}
x2|jD]'}t|jtjj�r�dj|jj�dkr�|j||�qhn|jdkr�d}n|j|j�}t|_|j |jdt!�\}}|jr$|j||�nt|tj�rR|j"rR|j||�n|
j#|jpdd�|j#|�|j#|�|
j#|�qhWt$|
�|_t$|�|_%t$|�|_&t$|
�|_'|dgt(|�krt|tj�r|j"rtd|f��qn|j)jd�|_*|j+rVd|_+|j,j#|�n|S(Ns$%sis$%ds%s %sR�R�R�R�s!Enums cannot be declared with ...s	kind = %rs^enum %s: the '{}' declaration should appear on the first time the enum is mentioned, not laterR�sanonymous %ss"duplicate declaration of struct %sRi����R�s#%s: using both bitfields and '...;'R�i(NN(-RktKeyErrorR7RRhRfR�Rt
StructTypet	UnionTypeRt_build_enum_typetvaluestAssertionErrorR�R+R�tforce_the_nametdeclstfldnamesR�R�RR�R�RR�t
_make_partialtbitsizeR�RZt_partial_lengthR�RtpartialRRtfldtypest
fldbitsizetfldqualsRRlR�t	completedRn(RptkindR�R7R�t
force_namet
explicit_nameR�R�t_R R%R&R'R8R"tfqual((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR��s�	

	

	
	
			

		cCs_t|tj�s(td|f��n|j�rR|rRtd|f��nt|_dS(Ns%s cannot be partials%s is partial but has no C name(R�Rt
StructOrUnionRt
has_c_nameR+RR$(RpR�R�((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR!4s
cCs�t|tjj�r}|j}d|dko9dknr|jd�}y-|jd�rlt|d�St|d�SWnrtk
r�t	|�dkr�|j
�dd!d	kr�t|d
�S|j
�dd!dkr�t|d�Sq�nXtd|f��q}|dd
krg|dd
krgt	|�dksYt	|�dkrg|ddkrgt|d�Std|f��nt|tjj
�r�|jdkr�|j|j�St|tjj
�r�|jdkr�|j|j�St|tjj�r|j|jkr|j|jSt|tjj�rk|jdkrk|rRt|_dStd|jj��nt|tjj�r�|j|j�}|j|j�}|jdkr�||S|jdkr�||S|jdkr�||S|jdkr|j||�S|jdkr/||j||�|S|jdkrF||>S|jdkr]||?S|jdkrt||@S|jdkr�||BS|jdkr�||ASntd |jj��dS(!NR�it9tuUlLii
iiR�it0bsinvalid constant %rt'i����iis\i����t+R�t__dotdotdotarray__s...sT:%d: unsupported '[...]' here, cannot derive the actual array length in this contextRt/t%s<<s>>t&t|t^s?:%d: unsupported expression: expected a simple numeric constant(R�RR�tConstantR�R�RR�R�RR�RtordR�R�R�R�R�R7RmRR#RR�R4tBinaryOptlefttrightt_c_div(RpR�R�tsR>R?((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR�;sx	 


 4	cCsA||}|dk|dkAr=||dkr=|d7}n|S(Nii((RptatbR((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR@�s
&
c	Cs|dk	r�t}g}g}d}x�|jD]�}tj|j�rRt}q.n|jdk	rv|j|j�}n|j	|j�|j	|�|j
|j|�|d7}q.Wt|�}t|�}tj
|||�}||_ntj
|dd�}|S(Nii(((RRZtenumeratorst_r_enum_dotdotdotRR7RR�R�RR�RRtEnumTypeR$(	RpR+RR$RDt
enumvaluest
nextenumvalueR�R�((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR�s*
cCs�xy|jj�D]h\}\}}|jd�r7qn|jdd�d}|dkr|j||d
td|�qqWx-|jj�D]\}}|j||�q�WdS(
Nsanonymous $enum_$R:iiR�R�R�t	anonymousRWR�R�(R�R�R�RIRW(RfR�RtsplitR�RRmR�(RptotherR7R�R�R)tktv((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pytinclude�s"#cCs�|jjj}|dgkr.tj|j�S|dgkro|jdkr_d|j|_ntj|j�S|dgkr�|jdkr�d|j|_ntj|j�St	d|j
j��dS(NR�t__dotdotdotint__s'typedef int... %s't__dotdotdotfloat__s'typedef float... %s's*:%d: unsupported usage of "..." in typedef(R�R�Rtunknown_typeR7RoRtUnknownIntegerTypetUnknownFloatTypeRR�R4(RpR8R|((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR��scCsE|jjjjdgkr+tj|j�Std|jj��dS(NR�s*:%d: unsupported usage of "..." in typedef(R�R�Rtunknown_ptr_typeR7RR�R4(RpR8((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyR��sN(R�t
__module__RqR�R�RyRZRRvR�R�R�R�R�R�R�R�R�R�R�R�RRR�R!R�R@RRNR�R�(((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyRes8	
	&		
		6					3				^#	v	I			
	(i(2RRtcommontypesRRterrorRRRRtImportErrorRiR�tsystversion_infotthreadt_threadt
allocate_lockRtRR	RstcompiletDOTALLt	MULTILINER<R>RIRERGR[R
t
IGNORECASER�RERDRFR)RRLRMR
R$R-R5R9RURdtobjectRe(((sC/opt/plesk/python/2.7/lib64/python2.7/site-packages/cffi/cparser.pyt<module>sT
$

						*	2			:	(

Zerion Mini Shell 1.0