
    \h^                       S SK Jr  S SKJrJr  S SKJr  \" SSS/0S9r\(       a  S SKJ	r	J
r
JrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJrJr  S S	K J!r!J"r"J#r#J$r$  S S
K%J&r&J'r'J(r(J)r)J*r*J+r+J,r,J-r-J.r.J/r/J0r0  S SK1J2r2J3r3J4r4  S SK5J6r6  S SK1J7r7J8r8  S SK9r9S r:S r;S r<S r=\S 5       r>\S 5       r?\S 5       r@S rAS rB\S 5       rCS rDS rES rF\S 5       rGgS rHg)    SymPyExpression)raisesXFAIL)import_modulezclang.cindexfromlistcindex)import_kwargs)VariableStringReturnFunctionDefinitionIntegerFloatDeclaration	CodeBlockFunctionPrototypeFunctionCall	NoneToken
AssignmentTypeIntBaseTypeSignedIntTypeUnsignedIntType	FloatTypeAddAugmentedAssignmentSubAugmentedAssignmentMulAugmentedAssignmentDivAugmentedAssignmentModAugmentedAssignmentWhile)PreDecrementPostDecrementPreIncrementPostIncrement)AddMulModPowRationalStrictLessThanLessThanStrictGreaterThanGreaterThanEquality
Unequality)AndNotOr)Symbol)falsetrueNc                     Sn SnSnSn[        U S5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       nUS   [        [        [	        S5      [        [        S5      5      S	95      :X  d   eUS
   [        [        [	        S5      [        [        S5      5      S	95      :X  d   eUS   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9S	95      :X  d   eUS
   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9S	95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      S	95      :X  d   eUS
   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9S	95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      S	95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S
5      S95      :X  d   eUS
   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eUS   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eg )Nint a;
int b;
zfloat a;
float b;
zint a;
float b;
int c;z+int x = 1, y = 6.78;
float p = 2, q = 9.67;cr   aintctype   bfloat32          nbitsnmantnexp   xr=   valuey   p2.05   	precision   qz9.67)
r   return_exprr   r   r4   r   r   r   r   r   c_src1c_src2c_src3c_src4res1res2res3res4s           Y/var/www/auris/envauris/lib/python3.13/site-packages/sympy/parsing/tests/test_c_parser.pytest_variabler`      s    	
  	
 	% 	
 vs+779vs+779vs+779vs+779Aw+s 0
 
 	
 
 Aw+s 0
 
 	
 
 Aw+s9%!"+!"+ 	

 

 
	
 

 Aw+s9%!"+!"+ 	

 

 
	
 

 Aw+s 0
 
 	
 
 Aw+s9%!"+!"+ 	

 

 
	
 

 Aw+s 0
 
 	
 
 Aw+s 0aj
 
 	
 
 Aw+s 0aj
 
 	
 
 Aw+s9%!"+!"+ 	 ER0	
 
 	
 
 Aw+s9%!"+!"+ 	 Fb1	
 
 	
 
    c                     Sn SnSnSnSnSnSnSnS	nS
n	Sn
SnSnSn[        U S5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        U	S5      R                  5       n[        U
S5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       nUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S 5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S!5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S"5      [        S#5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S"5      [        S#5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S%5      [        S&5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S%5      [        S&5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S%5      [        S&5      S$9[        S5      S95      :X  d   eUS'   [        [        [	        S(5      [        [        S%5      [        S&5      S$9[        S5      S95      :X  d   eUS)   [        [        [	        S*5      [        [        S%5      [        S&5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S+5      [        [        S%5      [        S&5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S,5      [        [        S%5      [        S&5      S$9[        S5      S95      :X  d   eUS-   [        [        [	        S.5      [        [        S%5      [        S&5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS'   [        [        [	        S(5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S/5      [        S05      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S/5      [        S05      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S/5      [        S05      S$9[        S5      S95      :X  d   eUS'   [        [        [	        S(5      [        [        S/5      [        S05      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S15      [        S#5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S15      [        S#5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S25      [        S&5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S25      [        S&5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S25      [        S&5      S$9[        S5      S95      :X  d   eUS'   [        [        [	        S(5      [        [        S25      [        S&5      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S35      [        S45      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S35      [        S45      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S55      [        S05      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S55      [        S05      S$9[        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S55      [        S05      S$9[        S5      S95      :X  d   eUS'   [        [        [	        S(5      [        [        S55      [        S05      S$9[        S5      S95      :X  d   eg )6Nz
int a = 1;zint a = 1;
int b = 2;
zint a = 2.345, b = 5.67;zint p = 6, q = 23.45;zint x = '0', y = 'a';zint r = true, s = false;zsigned char a = 1, b = 5.1;zjshort a = 1, b = 5.1;signed short c = 1, d = 5.1;short int e = 1, f = 5.1;signed short int g = 1, h = 5.1;z-signed int a = 1, b = 5.1;int c = 1, d = 5.1;z,long a = 1, b = 5.1;long int c = 1, d = 5.1;zunsigned char a = 1, b = 5.1;z@unsigned short a = 1, b = 5.1;unsigned short int c = 1, d = 5.1;zunsigned int a = 1, b = 5.1;z>unsigned long a = 1, b = 5.1;unsigned long int c = 1, d = 5.1;r9   r   r:   r;   r>   rJ   r?   rH      rN   rM   rT   rB   rI   0   rL   a   rsint8rC   )rE   int16   rS   d   efg   hint64@   uint8uint16uint32rA   uint64)
r   rU   r   r   r4   r   r   r   r   r   )rW   rX   rY   rZ   c_src5c_src6c_src_type1c_src_type2c_src_type3c_src_type4c_src_type5c_src_type6c_src_type7c_src_type8r[   r\   r]   r^   res5res6	res_type1	res_type2	res_type3	res_type4	res_type5	res_type6	res_type7	res_type8s                               r_   test_intr      sA     	 ,((+ * 	/ 	" 	' 	 61 	 50 	
 vs+779vs+779vs+779vs+779vs+779vs+779#K5AAC	#K5AAC	#K5AAC	#K5AAC	#K5AAC	#K5AAC	#K5AAC	#K5AAC	Aw+s 0aj
 
 	
 
 Aw+s 0aj
 
 	
 
 Aw+s 0aj
 
 	
 
 Aw+s 0aj
 
 	
 
 Aw+s 0aj
 
 	
 
 Aw+s 0aj
 
 	
 
 Aw+s 0bk
 
 	
 
 Aw+s 0bk
 
 	
 
 Aw+s 0bk
 
 	
 
 Aw+s 0aj
 
 	
 
 Aw+s 0aj
 
 	
 
 |{s"6N!!* aj	  	 		 	 |{s"6N!!* aj	  	 		 	 |{s"7O!"+ aj	  	 		 	 |{s"7O!"+ aj	  	 		 	 |{VC["7O!"+ aj   	  |{s"7O!"+ aj	  	 		 	 |{s"7O!"+ aj	  	 		 	 |{s"7O!"+ aj	  	 		 	 |{s"7O!"+ aj	  	 		 	 |{s"7O!"+ aj	  	 		 	 |{s 0aj   	  |{s 0aj   	  |{s 0aj   	  |{s 0aj   	  |{s"7O!"+ aj	  	 		 	 |{s"7O!"+ aj	  	 		 	 |{s"7O!"+ aj	  	 		 	 |{s"7O!"+ aj	  	 		 	 |{s$7O!!* aj	  	 		 	 |{s$7O!!* aj	  	 		 	 |{s$8$!"+ aj	  	 		 	 |{s$8$!"+ aj	  	 		 	 |{s$8$!"+ aj	  	 		 	 |{s$8$!"+ aj	  	 		 	 |{s$8$!"+ aj	  	 		 	 |{s$8$!"+ aj	  	 		 	 |{s$8$!"+ aj	  	 		 	 |{s$8$!"+ aj	  	 		 	 |{s$8$!"+ aj	  	 		 	 |{s$8$!"+ aj	  	 		 	ra   c                     Sn SnSnSnSnSnSnSn[        U S	5      R                  5       n[        US	5      R                  5       n	[        US	5      R                  5       n
[        US	5      R                  5       n[        US	5      R                  5       n[        US	5      R                  5       n[        US	5      R                  5       n[        US	5      R                  5       nUS
   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eU	S
   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eU	S   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eU
S
   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eU
S   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eUS
   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eUS   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eUS
   [        [        [	        S 5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eUS   [        [        [	        S!5      [        [        S5      [        S5      [        S5      [        S5      S9[        S"SS9S95      :X  d   eUS
   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        SSS9S95      :X  d   eUS   [        [        [	        S5      [        [        S5      [        S5      [        S5      [        S5      S9[        S#SS9S95      :X  d   eUS
   [        [        [	        S5      [        [        S$5      [        S%5      [        S&5      [        S'5      S9[        SSS9S95      :X  d   eUS   [        [        [	        S5      [        [        S$5      [        S%5      [        S&5      [        S'5      S9[        S#SS9S95      :X  d   eUS
   [        [        [	        S5      [        [        S(5      [        S)5      [        S*5      [        S+5      S9[        SSS9S95      :X  d   eUS   [        [        [	        S5      [        [        S(5      [        S)5      [        S*5      [        S+5      S9[        S#SS9S95      :X  d   eg ),Nzfloat a = 1.0;z float a = 1.25;
float b = 2.39;
zfloat x = 1, y = 2;zfloat p = 5, e = 7.89;zfloat r = true, s = false;zfloat x = 1, y = 2.5;zdouble x = 1, y = 2.5;zlong double x = 1, y = 2.5;r9   r   r:   r@   rA   rB   rC   rD   z1.0rP   rQ   rJ   1.25r>   r?   z2.3900000000000001rI   rL   rO   rN   z5.0rm   z7.89rf   rg   z0.02.5float64rs   4      float80P   ?      )	r   rU   r   r   r4   r   r   r   r   )rW   rX   rY   rZ   rx   rz   r{   r|   r[   r\   r]   r^   r   r   r   r   s                   r_   
test_floatr   w  so   !% 	 ')- . / 4vs+779vs+779vs+779vs+779vs+779#K5AAC	#K5AAC	#K5AAC	Aw+s9%!"+!"+ 	 ER0	  	  Aw+s9%!"+!"+ 	 Fb1	
 
 	
 
 Aw+s9%!"+!"+ 	 0B?	
 
 	
 
 Aw+s9%!"+!"+ 	 ER0	
 
 	
 
 Aw+s9%!"+!"+ 	 ER0	
 
 	
 
 Aw+s9%!"+!"+ 	 ER0	
 
 	
 
 Aw+s9%!"+!"+ 	 Fb1	
 
 	
 
 Aw+s9%!"+!"+ 	 ER0	
 
 	
 
 Aw+s9%!"+!"+ 	 ER0	
 
 	
 
 |{s9%!"+!"+ 	 ER0	   	  |{s9%!"+!"+ 	 ER0	   	  |{s9%!"+!"+ 	 ER0	   	  |{s9%!"+!"+ 	 ER0	   	  |{s9%!"+!"+ 	 ER0	   	  |{s9%!"+!"+ 	 ER0	   	 ra   c                     Sn SnSnSn[        U S5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       nUS   [        [        [	        S5      [        [        S5      5      [        S	95      :X  d   eUS
   [        [        [	        S5      [        [        S5      5      [        S	95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S	95      :X  d   eUS
   [        [        [	        S5      [        [        S5      5      [        S	95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S	95      :X  d   eUS
   [        [        [	        S5      [        [        S5      5      [        S	95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S	95      :X  d   eUS
   [        [        [	        S5      [        [        S5      5      [        S	95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S	95      :X  d   eg )Nzbool a = true, b = false;zbool a = 1, b = 0;zbool a = 10, b = 20;z bool a = 19.1, b = 9.0, c = 0.0;r9   r   r:   boolrJ   r>   r?   rH   )	r   rU   r   r   r4   r   r   r6   r5   rV   s           r_   	test_boolr   W  s   ' 	
 ! 	
 # 	
 / 	 vs+779vs+779vs+779vs+779Aw+VC[&.)  	  Aw+VC[&.)  	  Aw+VC[&.)  	  Aw+VC[&.)  	  Aw+VC[&.)  	  Aw+VC[&.)  	  Aw+VC[&.)  	  Aw+VC[&.)  	  Aw+VC[&.)  	 ra   c                  \   Sn SnSnSn[        U S5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       nUS   [        [        5       [	        S5      S[        [        [        [        S	5      [        [	        S
5      5      S95      5      S9:X  d   eUS   [        [        [	        S
5      5      [	        S5      S[        [        [        [        S	5      [        [	        S
5      5      S95      [        S	5      5      S9:X  d   eUS   [        [        [	        S5      [        S5      [        S5      [        S5      S9[	        S5      S[        [        [        [        S5      [        [	        S5      [        S5      [        S5      [        S5      S9S95      [        S5      5      S9:X  d   eUS   [        [        [	        S5      [        S5      [        S5      [        S5      S9[	        S5      SS9:X  d   eg )Nvoid fun1()
{
int a;
}zint fun2()
{
int a;
return a;
}z#float fun3()
{
float b;
return b;
}zfloat fun4()
{}r9   r   fun1 r:   r;   r<   name
parametersbodyfun2r@   rA   rB   rC   rD   fun3r?   fun4)r   r   )r   rU   r   r   r   r   r   r   r4   r   r   r   r   r   rV   s           r_   test_functionr     s1    	 	 	 	
 vs+779vs+779vs+779vs+779Aw,Ks(8	
 
 	
 
 Aw,v's(8 s	
 
 	
 
 Aw,y!bkbkQZ	 s&"9-")"+")"+!(	
 s
 
 	
 
2 Aw+y!bkbkQZ	 	
 	
 		
 	
ra   c                     Sn SnSn[        U S5      R                  5       n[        US5      R                  5       n[        US5      R                  5       nUS   [        [        5       [	        S5      [        [        S5      [        [	        S5      5      S	94[        [        [        [        S
5      [        [	        S5      5      S	95      5      S9:X  d   eUS   [        [        [	        S5      5      [	        S5      [        [        S5      [        [	        S5      [        S5      [        S5      [        S5      S9S	9[        [        S5      [        [	        S5      [        S5      [        S5      [        S5      S9S	94[        [        [        [        S5      [        [	        S5      5      S	95      [        S5      5      S9:X  d   eUS   [        [        [	        S5      [        S5      [        S5      [        S5      S9[	        S5      [        [        S5      [        [	        S5      5      S	9[        [        S5      [        [	        S5      [        S5      [        S5      [        S5      S9S	9[        [        S5      [        [	        S5      5      S	94[        [        [        [        S5      [        [	        S5      [        S5      [        S5      [        S5      S9S	95      [        S5      5      S9:X  d   eg )Nzvoid fun1( int a)
{
int i;
}z/int fun2(float x, float y)
{
int a;
return a;
}z8float fun3(int p, float q, int r)
{
float b;
return b;
}r9   r   r   r:   r;   r<   ir   r   rI   r@   rA   rB   rC   rD   rL   r   rN   rT   rf   r?   )r   rU   r   r   r   r   r4   r   r   r   r   r   r   )rW   rX   rY   r[   r\   r]   s         r_   test_parametersr     s    	 	 	 vs+779vs+779vs+779Aw,K3K$VF^4 s(8
 
 	
 
& Aw,v'3K"y)%bk%bk$QZ	 3K"y)%bk%bk$QZ	( s(8 s/ 
  
  	
  
D Aw,y!bkbkQZ	 3K$VF^4 3K"y)%bk%bk$QZ	 3K$VF^4& s&"9-")"+")"+!(	
 s7)
 )
 )	
 )
ra   c                     Sn SnSnSnSn[        U S5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n	US   [        [        [	        S5      5      [	        S	5      [        [        S
5      [        [	        S5      5      S94[        [        S
5      5      S9:X  d   eUS   [        [        5       [	        S5      S[        [        [        [        S
5      [        [	        S	5      [        S5      4S9S95      5      S9:X  d   eUS   [        [        [	        S5      5      [	        S5      [        [        S5      [        [	        S5      5      S9[        [        S5      [        [	        S5      5      S9[        [        S5      [        [	        S5      5      S94[        [        S5      5      S9:X  d   eUS   [        [        5       [	        S5      S[        [        [        [        S5      [        [	        S5      [        S5      [        S5      [        S5      4S9S95      5      S9:X  d   eUS   [        [        [	        S5      5      [	        S5      [        [        S5      [        [	        S5      5      S9[        [        S5      [        [	        S5      5      S9[        [        S5      [        [	        S5      5      S94[        [        S5      5      S9:X  d   eUS   [        [        5       [	        S5      S[        [        [        [        S5      [        [	        S5      5      S95      [        [        [        S5      [        [	        S5      5      S95      [        [        [        S5      [        [	        S5      5      S95      [        [        [        S5      [        [	        S5      [        S5      [        S5      [        S5      4S9S95      5      S9:X  d   eUS   [        [        [	        S5      5      [	        S5      [        [        S5      [        [	        S5      [        S 5      [        S!5      [        S"5      S#9S9[        [        S5      [        [	        S5      [        S 5      [        S!5      [        S"5      S#9S9[        [        S5      [        [	        S5      5      S94[        [        S5      5      S9:X  d   eUS   [        [        5       [	        S5      S[        [        [        [        S
5      [        [	        S5      [        S 5      [        S!5      [        S"5      S#9S95      [        [        [        S5      [        [	        S5      [        S 5      [        S!5      [        S"5      S#9S95      [        [        [        S5      [        [	        S5      5      S95      [        [        [        S$5      [        [	        S5      [        S
5      [        S5      [        S5      4S9S95      5      S9:X  d   eU	S   [        [        [	        S5      5      [	        S%5      S[        [        S&5      5      S9:X  d   eU	S   [        [        5       [	        S5      S[        [        [        [        S5      [        [	        S%5      SS9S95      5      S9:X  d   eg )'Nz@int fun1(int x)
{
return x;
}
void caller()
{
int x = fun1(2);
}zTint fun2(int a, int b, int c)
{
return a;
}
void caller()
{
int y = fun2(2, 3, 4);
}ziint fun3(int a, int b, int c)
{
return b;
}
void caller()
{
int p;
int q;
int r;
int z = fun3(p, q, r);
}zpint fun4(float a, float b, int c)
{
return c;
}
void caller()
{
float x;
float y;
int z;
int i = fun4(x, y, z)
}z7int fun()
{
return 1;
}
void caller()
{
int a = fun()
}r9   r   r;   r   rI   r<   r   r>   callerr   rH   )function_args)rK   r   r:   r?   rL   rS   rl   r   rN   rT   rf   zr   r@   rA   rB   rC   rD   r   fun )r   rU   r   r   r   r   r4   r   r   r   r   r   r   r   
rW   rX   rY   rZ   rx   r[   r\   r]   r^   r   s
             r_   test_function_callr     s    	 	
 	
 	 	 vs+779vs+779vs+779vs+779vs+779 Aw,v'  0  s
 
 
	 
 Aw,K!VC[*6&> '
+"
	  	 " Aw,v'  0 VC[ 0 VC[ 0	 s  	 $ Aw,K!VC[*"6N '
 '
 '
+"		  	 ( Aw,v'$VF^4 $VF^4 $VF^4
 s  	 & Aw,K!VC[(8
 VC[(8
 VC[(8
 VC[*"6N &s &s &s+"	!	! ! !	 !F Aw,v' 9%!"+!"+ 	 VC[9%!"+!"+ 	 VC[ 0!( s/  	 8 Aw,K!VC[&"9-")"+")"+!(		 VC[&"9-")"+")"+!(		 VC[(8
 VC[*6&> &s &s &s+"
5%	* * *	 *X Aw,v'r
	  	  Aw,K!VC[*6%=*,	  	 ra   c                     Sn Sn[        SS5      n[        SS5      nUR                  U 5        UR                  U5        UR                  5         UR                  5         [        SS5      R	                  5       n[        SS5      R	                  5       n[
        R                  " S5        [
        R                  " S5        US   [        [        [        S5      [        [        S	5      5      S
95      :X  d   eUS   [        [        [        S5      [        [        S	5      5      S
95      :X  d   eUS   [        [        5       [        S5      S[        [        [        [        S5      [        [        S	5      5      S
95      5      S9:X  d   eg )Nr8   r   z..a.hwz..b.hr9   r   r:   r;   r<   r>   r?   r   r   r   )openwritecloser   rU   osremover   r   r4   r   r   r   r   r   )rW   rX   f1f2r[   r\   s         r_   
test_parser     sh    	
 	 '3'3

		&



w,88:w,88:
		'
		'Aw+s 0
 
 	
 
 Aw+s 0
 
 	
 
 Aw,Ks(8	
 
 	
 
ra   c            "      ]  ^<^=^>^?^@ Sn SnSnSnSnSnSnSnS	nS
n	Sn
SnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSm<S m=S!m>S"m?S#m@[        U S$5      R                  5       n[        US$5      R                  5       n[        US$5      R                  5       n [        US$5      R                  5       n![        US$5      R                  5       n"[        US$5      R                  5       n#[        US$5      R                  5       n$[        US$5      R                  5       n%[        US$5      R                  5       n&[        U	S$5      R                  5       n'[        U
S$5      R                  5       n([        US$5      R                  5       n)[        US$5      R                  5       n*[        US$5      R                  5       n+[        US$5      R                  5       n,[        US$5      R                  5       n-[        US$5      R                  5       n.[        US$5      R                  5       n/[        US$5      R                  5       n0[        US$5      R                  5       n1[        US$5      R                  5       n2[        US$5      R                  5       n3[        US$5      R                  5       n4[        US$5      R                  5       n5[        US$5      R                  5       n6[        US$5      R                  5       n7[        US$5      R                  5       n8[        US$5      R                  5       n9[        US$5      R                  5       n:[        US$5      R                  5       n;US%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S(5      5      [        S+5      5      5      S,9:X  d   eUS%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      [        S%5      S-95      [        [        [        S(5      5      [        [        S(5      [        S+5      5      5      [        [        [        S(5      5      [        [        [        S.5      [        S(5      5      [        S/5      5      5      5      S,9:X  d   eU S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      [        S05      S-95      [        [        [        S(5      5      [        [        S(5      [        S15      5      5      5      S,9:X  d   eU!S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S25      [        [	        S)5      5      S*95      [        [        [        S(5      5      [        S35      5      [        [        [        S25      5      [        [        [        S45      [        [        S(5      [        S45      5      5      [        [        S55      [        S(5      5      [        S65      5      5      5      S,9:X  d   eU"S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S25      [        [	        S)5      5      S*95      [        [        [        S$5      [        [	        S)5      5      S*95      [        [        [        S75      [        [	        S)5      5      S*95      [        [        [        S(5      5      [        S+5      5      [        [        [        S25      5      [        S45      5      [        [        [        S$5      5      [        S25      5      [        [        [        S75      5      [        [        [        S(5      [        S25      5      [        [        [        S(5      [        S$5      5      [        S45      5      [        [        S$5      [        [        S85      [        S75      5      5      5      5      5      S,9:X  d   eU#S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S25      [        [	        S)5      5      S*95      [        [        [        S$5      [        [	        S)5      5      S*95      [        [        [        S75      [        [	        S)5      5      S*95      [        [        [        S(5      5      [        S+5      5      [        [        [        S25      5      [        S45      5      [        [        [        S$5      5      [        S.5      5      [        [        [        S75      5      [        [        [        S(5      [        S95      5      [        [        S.5      [        [        S25      [        S45      5      5      [        [        S45      [        S25      5      [        [        S$5      [        S75      5      5      5      5      S,9:X  d   eU$S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S:5      [        S;5      [        S<5      [        S=5      S>9S*95      [        [        [        S(5      5      [!        S?S@SA95      5      S,9:X  d   eU%S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S:5      [        S;5      [        S<5      [        S=5      S>9S*95      [        [        [        S(5      5      [!        SBS@SA95      5      S,9:X  d   eU&S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S:5      [        S;5      [        S<5      [        S=5      S>9S*95      [        [        [        S(5      5      [!        SCS@SA95      5      S,9:X  d   eU'S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S(5      5      [        S65      5      5      S,9:X  d   eU(S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S(5      5      [        SD5      5      5      S,9:X  d   eU)S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S(5      5      [        SE5      5      5      S,9:X  d   eU*S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S25      [        [	        S)5      5      S*95      [        [        [        S$5      [        [	        S:5      [        S;5      [        S<5      [        S=5      S>9S*95      [        [        [        S$5      5      [        [        [        S(5      [        S85      5      [        S25      5      5      5      S,9:X  d   eU+S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      [        S45      S-95      [        [        [        S75      [        [	        S)5      5      [        SF5      S-95      [        [        [        SG5      [        [	        S)5      5      [        S05      S-95      [        [        [        SH5      [        [	        S)5      5      S*95      [        [        [        SH5      5      [        [#        S+S45      [        S(5      [        [        [        S45      [        S(5      5      [        [        S75      [        [        SG5      [        S85      5      5      5      5      5      5      S,9:X  d   eU,S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S(5      5      [        S+5      5      5      S,9:X  d   eU-S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      [        S45      S-95      [        [        [        S25      [        [	        S)5      5      S*95      [        [        [        S25      5      [%        [        S(5      [        S.5      5      5      5      S,9:X  d   eU.S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      [        S35      S-95      [        [        [        S25      [        [	        S)5      5      [        S.5      S-95      [        [        [        S$5      [        [	        S)5      5      S*95      [        [        [        S$5      5      [%        [        S(5      [        S25      5      5      5      S,9:X  d   eU/S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      [        S35      S-95      [        [        [        S25      [        [	        S)5      5      [        S.5      S-95      [        [        [        SI5      [        [	        S)5      5      [        SJ5      S-95      [        [        [        S$5      [        [	        S)5      5      S*95      [        [        [        S$5      5      [%        [        [        S(5      [        [        S35      [        [        S(5      [        S85      5      [        S25      5      5      [        SI5      5      5      5      S,9:X  d   eU0S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      [        S35      S-95      [        [        [        S25      [        [	        S)5      5      [        S.5      S-95      [        [        [        SI5      [        [	        S)5      5      [        SJ5      S-95      [        [        [        S$5      [        [	        S)5      5      S*95      [        [        [        S$5      5      [%        [        [        [%        [        S(5      [        SI5      5      [        [        S85      [%        [        S25      [        SI5      5      5      5      [%        [        [        S(5      [        S25      5      [        SI5      5      5      [        SI5      5      5      5      S,9:X  d   eU1S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      ['        [	        SK5      5      S*95      [        [        [        S25      ['        [	        SK5      5      S*95      [        [        [        S(5      5      [(        5      [        [        [        S25      5      [*        5      5      S,9:X  d   eU2S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      ['        [	        SK5      5      S*95      [        [        [        S25      ['        [	        SK5      5      S*95      [        [        [        S$5      ['        [	        SK5      5      S*95      [        [        [        S75      ['        [	        SK5      5      S*95      [        [        [        S(5      5      [(        5      [        [        [        S25      5      [*        5      [        [        [        S$5      5      [(        5      [        [        [        S75      5      [(        5      5      S,9:X  d   eU3S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      [        S+5      S-95      [        [        [        S25      [        [	        S)5      5      [        S45      S-95      [        [        [        SL5      ['        [	        SK5      5      S*95      [        [        [        SM5      ['        [	        SK5      5      S*95      [        [        [        SN5      ['        [	        SK5      5      S*95      [        [        [        SO5      ['        [	        SK5      5      S*95      [        [        [        SP5      ['        [	        SK5      5      S*95      [        [        [        SQ5      ['        [	        SK5      5      S*95      [        [        [        SR5      ['        [	        SK5      5      S*95      [        [        [        SS5      ['        [	        SK5      5      S*95      [        [        [        SL5      5      [-        [        S(5      [        S+5      5      5      [        [        [        SM5      5      [-        [        S25      [        S45      5      5      [        [        [        SN5      5      [/        [        S+5      [        S(5      5      5      [        [        [        SO5      5      [/        [        S+5      [        S25      5      5      [        [        [        SP5      5      [1        [        S(5      [        S%5      5      5      [        [        [        SQ5      5      [3        [        S25      [        S05      5      5      [        [        [        SR5      5      [5        [        S(5      [        S%5      5      5      [        [        [        SS5      5      [7        [        S25      [        ST5      5      5      5      S,9:X  d   eU4S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      [        S.5      S-95      [        [        [        S25      [        [	        S)5      5      [        S95      S-95      [        [        [        SL5      ['        [	        SK5      5      S*95      [        [        [        SM5      ['        [	        SK5      5      S*95      [        [        [        SN5      ['        [	        SK5      5      S*95      [        [        [        SO5      ['        [	        SK5      5      S*95      [        [        [        SP5      ['        [	        SK5      5      S*95      [        [        [        SQ5      ['        [	        SK5      5      S*95      [        [        [        SL5      5      [-        [        S(5      [        S25      5      5      [        [        [        SM5      5      [/        [        S(5      [        S25      5      5      [        [        [        SN5      5      [1        [        S(5      [        S25      5      5      [        [        [        SO5      5      [3        [        S(5      [        S25      5      5      [        [        [        SP5      5      [5        [        S(5      [        S25      5      5      [        [        [        SQ5      5      [7        [        S(5      [        S25      5      5      5      S,9:X  d   eU5S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S:5      [        S;5      [        S<5      [        S=5      S>9S*95      [        [        [        SL5      ['        [	        SK5      5      S*95      [        [        [        SM5      ['        [	        SK5      5      S*95      [        [        [        SN5      ['        [	        SK5      5      S*95      [        [        [        SO5      ['        [	        SK5      5      S*95      [        [        [        SL5      5      [-        [        S(5      [!        SUS@SA95      5      [        [        [        SN5      5      [/        [!        SVS@SA9[        S(5      5      5      5      S,9:X  d   eU6S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S:5      [        S;5      [        S<5      [        S=5      S>9[!        SUS@SA9S-95      [        [        [        S25      [        [	        S:5      [        S;5      [        S<5      [        S=5      S>9[!        SWS@SA9S-95      [        [        [        SL5      ['        [	        SK5      5      S*95      [        [        [        SM5      ['        [	        SK5      5      S*95      [        [        [        SN5      ['        [	        SK5      5      S*95      [        [        [        SO5      ['        [	        SK5      5      S*95      [        [        [        SP5      ['        [	        SK5      5      S*95      [        [        [        SQ5      ['        [	        SK5      5      S*95      [        [        [        SL5      5      [-        [        S(5      [        S25      5      5      [        [        [        SM5      5      [/        [        S(5      [        S25      5      5      [        [        [        SN5      5      [1        [        S(5      [        S25      5      5      [        [        [        SO5      5      [3        [        S(5      [        S25      5      5      [        [        [        SP5      5      [5        [        S(5      [        S25      5      5      [        [        [        SQ5      5      [7        [        S(5      [        S25      5      5      5      S,9:X  d   eU7S%   [        [        5       [	        S&5      S'[        [        [        [        SL5      ['        [	        SK5      5      S*95      [        [        [        SM5      ['        [	        SK5      5      S*95      [        [        [        SN5      ['        [	        SK5      5      S*95      [        [        [        SO5      ['        [	        SK5      5      S*95      [        [        [        SP5      ['        [	        SK5      5      S*95      [        [        [        SQ5      ['        [	        SK5      5      S*95      [        [        [        SL5      5      [*        5      [        [        [        SM5      5      [(        5      [        [        [        SN5      5      [*        5      [        [        [        SO5      5      [(        5      [        [        [        SP5      5      [*        5      [        [        [        SQ5      5      [(        5      5      S,9:X  d   eU8S%   [        [        5       [	        S&5      S'[        [        [        [        SL5      ['        [	        SK5      5      S*95      [        [        [        SM5      ['        [	        SK5      5      S*95      [        [        [        SN5      ['        [	        SK5      5      S*95      [        [        [        SO5      ['        [	        SK5      5      S*95      [        [        [        SP5      ['        [	        SK5      5      S*95      [        [        [        SQ5      ['        [	        SK5      5      S*95      [        [        [        SL5      5      [*        5      [        [        [        SM5      5      [(        5      [        [        [        SN5      5      [(        5      [        [        [        SO5      5      [*        5      [        [        [        SP5      5      [*        5      [        [        [        SQ5      5      [(        5      5      S,9:X  d   eU9S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      ['        [	        SK5      5      S*95      [        [        [        SL5      ['        [	        SK5      5      S*95      [        [        [        SM5      ['        [	        SK5      5      S*95      [        [        [        SN5      ['        [	        SK5      5      S*95      [        [        [        SO5      ['        [	        SK5      5      S*95      [        [        [        SL5      5      [        S(5      5      [        [        [        SM5      5      [(        5      [        [        [        SN5      5      [*        5      [        [        [        SO5      5      [        S(5      5      5	      S,9:X  d   eU:S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        SL5      ['        [	        SK5      5      S*95      [        [        [        SM5      ['        [	        SK5      5      S*95      [        [        [        SN5      ['        [	        SK5      5      S*95      [        [        [        SO5      ['        [	        SK5      5      S*95      [        [        [        SL5      5      [        S(5      5      [        [        [        SM5      5      [(        5      [        [        [        SN5      5      [*        5      [        [        [        SO5      5      [        S(5      5      5	      S,9:X  d   eU;S%   [        [        5       [	        S&5      S'[        [        [        [        S(5      [        [	        S)5      5      S*95      [        [        [        S25      [        [	        S)5      5      S*95      [        [        [        S$5      ['        [	        SK5      5      S*95      [        [        [        S75      ['        [	        SK5      5      S*95      [        [        [        SL5      ['        [	        SK5      5      S*95      [        [        [        SM5      ['        [	        SK5      5      S*95      [        [        [        SN5      ['        [	        SK5      5      S*95      [        [        [        SO5      ['        [	        SK5      5      S*95      [        [        [        SP5      ['        [	        SK5      5      S*95      [        [        [        SQ5      ['        [	        SK5      5      S*95      [        [        [        SL5      5      [9        [        S(5      [        S25      5      5      [        [        [        SM5      5      [9        [        S(5      [        S$5      5      5      [        [        [        SN5      5      [9        [        S$5      [        S75      5      5      [        [        [        SO5      5      [;        [        S(5      [        S25      5      5      [        [        [        SP5      5      [;        [        S(5      [        S$5      5      5      [        [        [        SQ5      5      [;        [        S$5      [        S75      5      5      5      S,9:X  d   e[=        [>        U<4SX j5        [=        [>        U=4SY j5        [=        [>        U>4SZ j5        [=        [>        U?4S[ j5        [=        [>        U@4S\ j5        g )]Nzvoid func(){
int a;
a = 1;
}z2void func(){
int a = 0;
a = a + 1;
a = 3*a - 10;
}z-void func(){
int a = 10;
a = 1 + a - 3 * 6;
}zHvoid func(){
int a;
int b;
a = 100;
b = a*a + a*a + a + 19*a + 1 + 24;
}z`void func(){
int a;
int b;
int c;
int d;
a = 1;
b = 2;
c = b;
d = ((a+b)*(a+c))*((c-d)*(a+c));
}zdvoid func(){
int a;
int b;
int c;
int d;
a = 1;
b = 2;
c = 3;
d = (a*a*a*a + 3*b*b + b + b + c*d);
}z!void func(){
float a;
a = 1.01;
}z'void func(){
float a;
a = 10.0 + 2.5;
}z'void func(){
float a;
a = 10.0 / 2.5;
}z"void func(){
int a;
a = 100 / 4;
}z0void func(){
int a;
a = 20 - 100 / 4 * 5 + 10;
}z4void func(){
int a;
a = (20 - 100) / 4 * (5 + 10);
}z.void func(){
int a;
int b;
float c;
c = b/a;
}zRvoid func(){
int a = 2;
int d = 5;
int n = 10;
int s;
s = (a/2)*(2*a + (n-1)*d);
}z void func(){
int a;
a = 1 % 2;
}z+void func(){
int a = 2;
int b;
b = a % 3;
}z8void func(){
int a = 100;
int b = 3;
int c;
c = a % b;
}z`void func(){
int a = 100;
int b = 3;
int mod = 1000000007;
int c;
c = (a + b * (100/a)) % mod;
}zvoid func(){
int a = 100;
int b = 3;
int mod = 1000000007;
int c;
c = ((a % mod + b % mod) % mod* (a % mod - b % mod) % mod) % mod;
}z5void func(){
bool a
bool b;
a = 1 == 2;
b = 1 != 2;
}z]void func(){
bool a;
bool b;
bool c;
bool d;
a = 1 == 2;
b = 1 <= 2;
c = 1 > 2;
d = 1 >= 2;
}zvoid func(){
int a = 1;
int b = 2;
bool c1;
bool c2;
bool c3;
bool c4;
bool c5;
bool c6;
bool c7;
bool c8;
c1 = a == 1;
c2 = b == 2;
c3 = 1 != a;
c4 = 1 != b;
c5 = a < 0;
c6 = b <= 10;
c7 = a > 0;
c8 = b >= 11;
}zvoid func(){
int a = 3;
int b = 4;
bool c1;
bool c2;
bool c3;
bool c4;
bool c5;
bool c6;
c1 = a == b;
c2 = a != b;
c3 = a < b;
c4 = a <= b;
c5 = a > b;
c6 = a >= b;
}zvoid func(){
float a = 1.25float b = 2.5;
bool c1;
bool c2;
bool c3;
bool c4;
c1 = a == 1.25;
c2 = b == 2.54;
c3 = 1.2 != a;
c4 = 1.5 != b;
}zvoid func(){
float a = 1.25
float b = 2.5;
bool c1;
bool c2;
bool c3;
bool c4;
bool c5;
bool c6;
c1 = a == b;
c2 = a != b;
c3 = a < b;
c4 = a <= b;
c5 = a > b;
c6 = a >= b;
}zvoid func(){
bool c1;
bool c2;
bool c3;
bool c4;
bool c5;
bool c6;
c1 = true == true;
c2 = true == false;
c3 = false == false;
c4 = true != true;
c5 = true != false;
c6 = false != false;
}zvoid func(){
bool c1;
bool c2;
bool c3;
bool c4;
bool c5;
bool c6;
c1 = true && true;
c2 = true && false;
c3 = false && false;
c4 = true || true;
c5 = true || false;
c6 = false || false;
}z|void func(){
bool a;
bool c1;
bool c2;
bool c3;
bool c4;
c1 = a && true;
c2 = false && a;
c3 = true || a;
c4 = a || false;
}zmvoid func(){
int a;
bool c1;
bool c2;
bool c3;
bool c4;
c1 = a && 1;
c2 = a && 0;
c3 = a || 1;
c4 = 0 || a;
}zvoid func(){
int a;
int b;
bool c;
bool d;
bool c1;
bool c2;
bool c3;
bool c4;
bool c5;
bool c6;
c1 = a && b;
c2 = a && c;
c3 = c && d;
c4 = a || b;
c5 = a || c;
c6 = c || d;
}zvoid func(){
int a;
a = -1;
}zvoid func(){
int a;
a = -+1;
}zvoid func(){
int a;
a = 2*-2;
}z#void func(){
int a;
a = (int)2.0;
}z/void func(){
int a=100;
a = (a==100)?(1):(0);
}r9   r   funcr   r:   r;   r<   r>   r   rJ   rS   i
   ir?   d   rH         rk   rl   r@   rA   rB   rC   rD   z1.01rP   rQ   12.54.0rc   nrg   modʚ;r   c1c2c3c4c5c6c7c8r   r   1.2r   c                     > [        T S5      $ Nr9   r   c_src_raise1s   r_   <lambda>'test_binary_operators.<locals>.<lambda>      OL#,Nra   c                     > [        T S5      $ r   r   c_src_raise2s   r_   r   r     r   ra   c                     > [        T S5      $ r   r   )c_src_raise3s   r_   r   r     r   ra   c                     > [        T S5      $ r   r   )c_src_raise4s   r_   r   r     r   ra   c                     > [        T S5      $ r   r   )c_src_raise5s   r_   r   r      r   ra   ) r   rU   r   r   r   r   r   r   r4   r   r   r   r&   r'   r)   r   r   r*   r(   r   r5   r6   r/   r0   r+   r,   r-   r.   r1   r3   r   NotImplementedError)ArW   rX   rY   rZ   rx   ry   c_src7c_src8c_src9c_src10c_src11c_src12c_src13c_src14c_src15c_src16c_src17c_src18c_src19c_src20c_src21c_src22c_src23c_src24c_src25c_src26c_src27c_src28c_src29c_src30r[   r\   r]   r^   r   r   res7res8res9res10res11res12res13res14res15res16res17res18res19res20res21res22res23res24res25res26res27res28res29res30r   r   r   r   r   sA                                                               @@@@@r_   test_binary_operatorsr    sO(    	 	 	 	
 	
 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	
 	 	: 	. 	( 	. 	* 	* 	$ 	$ 	4 	 	 	 	 	 vs+779vs+779vs+779vs+779vs+779vs+779vs+779vs+779vs+779-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;Aw,KVC[(8
 8F3K0'!*=	  	  Aw,KVC[$VF^4!!*&' VC[)s
$
 8F3K0#AJ"3K)  		  	 2 Aw,KVC[(8%bk VC[)s	  	 * Aw,KVC[(8
 VC[(8
 VC[)CL" VC[)#AJ"3K#AJ( #BK"3K)  	" " "	 "H Aw,KVC[(8
 VC[(8
 VC[(8
 VC[(8
 VC[)AJ  VC[)AJ VC[)3K! VC[)"3K"3K)  &s &s" $AJ "3K ' &s"?5	: : :	 :x Aw,KVC[(8
 VC[(8
 VC[(8
 VC[(8
 VC[)AJ VC[)AJ VC[)AJ VC[)"3K#AJ #AJ &s '
" #AJ"3K "3K"3K!C9	> > >	 >@ Aw,KVC[&"9-")"+")"+!(		 VC[)&B/	  	 , Aw,KVC[&"9-")"+")"+!(		 VC[)&B/	  	 , Aw,KVC[&"9-")"+")"+!(		 VC[)%2.	  	 , Qx-KVC[(8
 VC[)BK
	  	 " Qx-KVC[(8
 VC[)CL
	  	 " Qx-KVC[(8
 VC[)DM
	  	 " Qx-KVC[(8
 VC[(8
 VC[&"9-")"+")"+!(		 VC[)"3K#BK s	+	$ $ $	 $L Qx-KVC[(8%aj VC[(8%aj VC[(8%bk VC[(8
 VC[) As '
 &s"   &s #$*3K$+BK!&"1,	1 1 1	 1f Qx-KVC[(8
 VC[)AJ
	  	 " Qx-KVC[(8%aj VC[(8
 VC[)s
	  	 4 Qx-KVC[(8%cl VC[(8%aj VC[(8
 VC[)ss%	  	 @ Qx-KVC[(8%cl VC[(8%aj VE](8%j1 VC[(8
 VC[)"3K ' #$*3K$+BK!& !'s"
 u1)	. . .	 .` Qx-KVC[(8%cl VC[(8%aj VE](8%j1 VC[(8
 VC[) #$*3K$*5M!& !$$+BK$'(.s(.u%*!&"   #$*3K$*3K!& !'u", u/14	9 9 9	 9v Qx-KVC[!&.1
 VC[!&.1
 VC[) VC[)	  	 4 Qx-KVC[!&.1
 VC[!&.1
 VC[!&.1
 VC[!&.1
 VC[) VC[) VC[) VC[)C%	* * *	 *X Qx-KVC[(8%aj VC[(8%aj VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\*s
 VD\*s
 VD\*
s VD\*
s VD\*"s
 VD\*s VD\*%s
 VD\*sMm	r r r	 rh Qx-KVC[(8%aj VC[(8%aj VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\*ss VD\*ss VD\*"ss VD\*ss VD\*%ss VD\*ss]U	Z Z Z	 Zx Qx-KVC[&"9-")"+")"+!(		 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\*sf3 VD\*er2sM-	2 2 2	 2j Qx-KVC[&"9-")"+")"+!(	 $Fb9
 VC[&"9-")"+")"+!(	 $ER8
 VD\!&.1
 VD\!&.  VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\*ss VD\*ss VD\*"ss VD\*ss VD\*%ss VD\*sss`	e e e	 eN Qx-K	VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\* VD\* VD\* VD\* VD\* VD\*g7!; ; ;	 ;z Qx-KVD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\* VD\* VD\* VD\* VD\* VD\*g6	; ; ;	 ;z Qx-KVC[!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\*3K VD\* VD\* VD\*3KM*	/ / /	 /b Qx-KVC[(8
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\*3K VD\* VD\* VD\*3KM*	/ / /	 /b Qx-KVC[(8
 VC[(8
 VC[!&.1
 VC[!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\!&.1
 VD\*ss VD\*ss VD\*ss VD\*ss VD\*ss VD\*ssm]	b b b	 bH 	"$NO"$NO"$NO"$NO"$NOra   c                  S  ^@^A Sn SnSnSnSnSnSnSnS	nS
n	Sn
SnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSnSnS nS!m@S"mA[        U S#5      R                  5       n [        US#5      R                  5       n![        US#5      R                  5       n"[        US#5      R                  5       n#[        US#5      R                  5       n$[        US#5      R                  5       n%[        US#5      R                  5       n&[        US#5      R                  5       n'[        US#5      R                  5       n([        U	S#5      R                  5       n)[        U
S#5      R                  5       n*[        US#5      R                  5       n+[        US#5      R                  5       n,[        US#5      R                  5       n-[        US#5      R                  5       n.[        US#5      R                  5       n/[        US#5      R                  5       n0[        US#5      R                  5       n1[        US#5      R                  5       n2[        US#5      R                  5       n3[        US#5      R                  5       n4[        US#5      R                  5       n5[        US#5      R                  5       n6[        US#5      R                  5       n7[        US#5      R                  5       n8[        US#5      R                  5       n9[        US#5      R                  5       n:[        US#5      R                  5       n;[        US#5      R                  5       n<[        US#5      R                  5       n=[        US#5      R                  5       n>[        US#5      R                  5       n?U S$   [        [        [	        S%5      [        [        S&5      5      [        S'5      S(95      :X  d   eU S)   [        [        [	        S*5      [        [        S&5      5      [	        S%5      S(95      :X  d   eU!S$   [        [        [	        S*5      [        [        S&5      5      [        S)5      S(95      :X  d   eU!S)   [        [        [	        S%5      [        [        S&5      5      [        [	        S*5      [        S)5      5      S(95      :X  d   eU"S$   [        [        [	        S*5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        S0S1S29S(95      :X  d   eU"S)   [        [        [	        S%5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        [        S3S1S29[	        S*5      5      S(95      :X  d   eU#S$   [        [        [	        S*5      [        [        S&5      5      [        S45      S(95      :X  d   eU$S$   [        [        [	        S*5      [        [        S&5      5      [        S55      S(95      :X  d   eU%S$   [        [        [	        S%5      [        [        S&5      5      [        S65      S(95      :X  d   eU%S)   [        [        [	        S#5      [        [        S&5      5      [        S75      S(95      :X  d   eU%S6   [        [        [	        S*5      [        [        S&5      5      [        [	        S%5      [        [        S85      [	        S#5      5      5      S(95      :X  d   eU&S$   [        [        [	        S%5      [        [        S&5      5      [        S)5      S(95      :X  d   eU&S)   [        [        [	        S#5      [        [        S&5      5      [        [	        S%5      [        S65      5      S(95      :X  d   eU&S6   [        [        [	        S*5      [        [        S&5      5      [        [        S95      [        [	        S%5      [        S65      5      [	        S#5      5      S(95      :X  d   eU'S$   [        [        5       [        S:5      S;[        [        [        [	        S*5      [        [        S&5      5      [        S)5      S(95      [        [        [	        S%5      [        [        S&5      5      [        S65      S(95      [        [        [	        S<5      [        [        S&5      5      [	        S*5      S(95      [!        [        [	        S*5      5      [	        S%5      5      [!        [        [	        S%5      5      [	        S<5      5      5      S=9:X  d   eU(S$   [        [        [	        S*5      [        [        S&5      5      [        S)5      S(95      :X  d   eU(S)   [        [        [	        S%5      [        [        S&5      5      [        S65      S(95      :X  d   eU(S6   [        [        [	        S#5      [        [        S&5      5      [	        S*5      S(95      :X  d   eU(S7   [        [        [	        S>5      [        [        S&5      5      [        [	        S*5      [	        S%5      [	        S#5      5      S(95      :X  d   eU(S8   [        [        [	        S?5      [        [        S&5      5      [        [        [	        S*5      [        S75      5      [        [        S75      [        [	        S*5      [        S65      5      [	        S%5      5      [        [        S75      [	        S*5      [        [	        S%5      [        S65      5      5      [        [	        S%5      [        S75      5      5      S(95      :X  d   eU(S@   [        [        [	        SA5      [        [        S&5      5      [        [        [	        S*5      [	        S%5      [        [        SB5      [	        S#5      5      5      [        [	        S*5      [	        S%5      [	        S#5      5      5      S(95      :X  d   eU(SC   [        [        [	        SD5      [        [        S&5      5      [        [	        S*5      [        [	        S%5      [        [        SB5      [	        S#5      5      5      [        [        [	        S*5      [	        S%5      [	        S#5      [	        S>5      5      [        S65      5      5      S(95      :X  d   eU)S$   [        [        [	        S*5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        SES1S29S(95      :X  d   eU)S)   [        [        [	        S%5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        SFS1S29S(95      :X  d   eU)S6   [        [        [	        S#5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        [        [	        S*5      [        S65      5      [        [        S65      [	        S*5      [	        S%5      5      [        [	        S%5      [        S65      5      5      S(95      :X  d   eU*S$   [        [        [	        S*5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        SGS1S29S(95      :X  d   eU+S$   [        [        [	        S*5      [        [        S&5      5      [        SH5      S(95      :X  d   eU,S$   [        [        [	        S*5      [        [        S&5      5      [        SI5      S(95      :X  d   eU-S$   [        [        [	        S*5      [        [        S&5      5      [        SJ5      S(95      :X  d   eU.S$   [        [        [	        S*5      [        [        S&5      5      [        S85      S(95      :X  d   eU.S)   [        [        [	        S%5      [        [        S&5      5      [        S65      S(95      :X  d   eU.S6   [        [        [	        S#5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        [        [	        S*5      [        SB5      5      [	        S%5      5      S(95      :X  d   eU/S$   [        [        [	        S*5      [        [        S&5      5      [        S65      S(95      :X  d   eU/S)   [        [        [	        S>5      [        [        S&5      5      [        S@5      S(95      :X  d   eU/S6   [        [        [	        SK5      [        [        S&5      5      [        S95      S(95      :X  d   eU/S7   [        [        [	        SL5      [        [        S&5      5      [        [#        S)S65      [	        S*5      [        [        [        S65      [	        S*5      5      [        [	        S>5      [        [	        SK5      [        SB5      5      5      5      5      S(95      :X  d   eU0S$   [        [        [	        S*5      [        [        S&5      5      [        S)5      S(95      :X  d   eU1S$   [        [        [	        S*5      [        [        S&5      5      [        S65      S(95      :X  d   eU1S)   [        [        [	        S%5      [        [        S&5      5      [%        [	        S*5      [        S75      5      S(95      :X  d   eU2S$   [        [        [	        S*5      [        [        S&5      5      [        S'5      S(95      :X  d   eU2S)   [        [        [	        S%5      [        [        S&5      5      [        S75      S(95      :X  d   eU2S6   [        [        [	        S#5      [        [        S&5      5      [%        [	        S*5      [	        S%5      5      S(95      :X  d   eU3S$   [        [        [	        S*5      [        [        S&5      5      [        S'5      S(95      :X  d   eU3S)   [        [        [	        S%5      [        [        S&5      5      [        S75      S(95      :X  d   eU3S6   [        [        [	        SM5      [        [        S&5      5      [        SN5      S(95      :X  d   eU3S7   [        [        [	        S#5      [        [        S&5      5      [%        [        [	        S*5      [        [        S'5      [        [	        S*5      [        SB5      5      [	        S%5      5      5      [	        SM5      5      S(95      :X  d   eU4S$   [        [        [	        S*5      [        [        S&5      5      [        S'5      S(95      :X  d   eU4S)   [        [        [	        S%5      [        [        S&5      5      [        S75      S(95      :X  d   eU4S6   [        [        [	        SM5      [        [        S&5      5      [        SN5      S(95      :X  d   eU4S7   [        [        [	        S#5      [        [        S&5      5      [%        [        [        [	        S*5      [        [        SB5      [	        S%5      5      5      [        [	        S*5      [	        S%5      5      5      [	        SM5      5      S(95      :X  d   eU5S$   [        [        [	        S*5      ['        [        SO5      5      [(        S(95      :X  d   eU5S)   [        [        [	        S%5      ['        [        SO5      5      [*        S(95      :X  d   eU6S$   [        [        [	        S*5      ['        [        SO5      5      [*        S(95      :X  d   eU6S)   [        [        [	        S%5      ['        [        SO5      5      [*        S(95      :X  d   eU6S6   [        [        [	        S#5      ['        [        SO5      5      [(        S(95      :X  d   eU6S7   [        [        [	        S>5      ['        [        SO5      5      [(        S(95      :X  d   eU7S$   [        [        [	        S*5      [        [        S&5      5      [        S)5      S(95      :X  d   eU7S)   [        [        [	        S%5      [        [        S&5      5      [        S65      S(95      :X  d   eU7S6   [        [        [	        SP5      ['        [        SO5      5      [-        [	        S*5      [        S)5      5      S(95      :X  d   eU7S7   [        [        [	        SQ5      ['        [        SO5      5      [-        [	        S%5      [        S65      5      S(95      :X  d   eU7S8   [        [        [	        SR5      ['        [        SO5      5      [/        [        S)5      [	        S*5      5      S(95      :X  d   eU7S@   [        [        [	        SS5      ['        [        SO5      5      [/        [        S)5      [	        S%5      5      S(95      :X  d   eU7SC   [        [        [	        ST5      ['        [        SO5      5      [1        [	        S*5      [        S$5      5      S(95      :X  d   eU7SU   [        [        [	        SV5      ['        [        SO5      5      [3        [	        S%5      [        S95      5      S(95      :X  d   eU7S.   [        [        [	        SW5      ['        [        SO5      5      [5        [	        S*5      [        S$5      5      S(95      :X  d   eU7SX   [        [        [	        SY5      ['        [        SO5      5      [7        [	        S%5      [        SZ5      5      S(95      :X  d   eU8S$   [        [        [	        S*5      [        [        S&5      5      [        S75      S(95      :X  d   eU8S)   [        [        [	        S%5      [        [        S&5      5      [        S85      S(95      :X  d   eU8S6   [        [        [	        SP5      ['        [        SO5      5      [-        [	        S*5      [	        S%5      5      S(95      :X  d   eU8S7   [        [        [	        SQ5      ['        [        SO5      5      [/        [	        S*5      [	        S%5      5      S(95      :X  d   eU8S8   [        [        [	        SR5      ['        [        SO5      5      [1        [	        S*5      [	        S%5      5      S(95      :X  d   eU8S@   [        [        [	        SS5      ['        [        SO5      5      [3        [	        S*5      [	        S%5      5      S(95      :X  d   eU8SC   [        [        [	        ST5      ['        [        SO5      5      [5        [	        S*5      [	        S%5      5      S(95      :X  d   eU8SU   [        [        [	        SV5      ['        [        SO5      5      [7        [	        S*5      [	        S%5      5      S(95      :X  d   eU9S$   [        [        [	        S*5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        S[S1S29S(95      :X  d   eU9S)   [        [        [	        S%5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        SFS1S29S(95      :X  d   eU9S6   [        [        [	        SP5      ['        [        SO5      5      [-        [	        S*5      [        S[S1S295      S(95      :X  d   eU9S7   [        [        [	        SQ5      ['        [        SO5      5      [-        [	        S%5      [        S\S1S295      S(95      :X  d   eU9S8   [        [        [	        SR5      ['        [        SO5      5      [/        [        S]S1S29[	        S*5      5      S(95      :X  d   eU9S@   [        [        [	        SS5      ['        [        SO5      5      [/        [        S^S1S29[	        S%5      5      S(95      :X  d   eU:S$   [        [        [	        S*5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        S[S1S29S(95      :X  d   eU:S)   [        [        [	        S%5      [        [        S+5      [        S,5      [        S-5      [        S.5      S/9[        SFS1S29S(95      :X  d   eU:S6   [        [        [	        SP5      ['        [        SO5      5      [-        [	        S*5      [	        S%5      5      S(95      :X  d   eU:S7   [        [        [	        SQ5      ['        [        SO5      5      [/        [	        S*5      [	        S%5      5      S(95      :X  d   eU:S8   [        [        [	        SR5      ['        [        SO5      5      [1        [	        S*5      [	        S%5      5      S(95      :X  d   eU:S@   [        [        [	        SS5      ['        [        SO5      5      [3        [	        S*5      [	        S%5      5      S(95      :X  d   eU:SC   [        [        [	        ST5      ['        [        SO5      5      [5        [	        S*5      [	        S%5      5      S(95      :X  d   eU:SU   [        [        [	        SV5      ['        [        SO5      5      [7        [	        S*5      [	        S%5      5      S(95      :X  d   eU;S$   [        [        [	        SP5      ['        [        SO5      5      [*        S(95      :X  d   eU;S)   [        [        [	        SQ5      ['        [        SO5      5      [(        S(95      :X  d   eU;S6   [        [        [	        SR5      ['        [        SO5      5      [*        S(95      :X  d   eU;S7   [        [        [	        SS5      ['        [        SO5      5      [(        S(95      :X  d   eU;S8   [        [        [	        ST5      ['        [        SO5      5      [*        S(95      :X  d   eU;S@   [        [        [	        SV5      ['        [        SO5      5      [(        S(95      :X  d   eU<S$   [        [        [	        SP5      ['        [        SO5      5      [*        S(95      :X  d   eU<S)   [        [        [	        SQ5      ['        [        SO5      5      [(        S(95      :X  d   eU<S6   [        [        [	        SR5      ['        [        SO5      5      [(        S(95      :X  d   eU<S7   [        [        [	        SS5      ['        [        SO5      5      [*        S(95      :X  d   eU<S8   [        [        [	        ST5      ['        [        SO5      5      [*        S(95      :X  d   eU<S@   [        [        [	        SV5      ['        [        SO5      5      [(        S(95      :X  d   eU=S$   [        [        [	        S*5      ['        [        SO5      5      [(        S(95      :X  d   eU=S)   [        [        [	        SP5      ['        [        SO5      5      [	        S*5      S(95      :X  d   eU=S6   [        [        [	        SQ5      ['        [        SO5      5      [(        S(95      :X  d   eU=S7   [        [        [	        SR5      ['        [        SO5      5      [*        S(95      :X  d   eU=S8   [        [        [	        SS5      ['        [        SO5      5      [	        S*5      S(95      :X  d   eU>S$   [        [        [	        S*5      [        [        S&5      5      [        S)5      S(95      :X  d   eU>S)   [        [        [	        SP5      ['        [        SO5      5      [	        S*5      S(95      :X  d   eU>S6   [        [        [	        SQ5      ['        [        SO5      5      [(        S(95      :X  d   eU>S7   [        [        [	        SR5      ['        [        SO5      5      [*        S(95      :X  d   eU>S8   [        [        [	        SS5      ['        [        SO5      5      [	        S*5      S(95      :X  d   eU?S$   [        [        [	        S*5      [        [        S&5      5      [        S)5      S(95      :X  d   eU?S)   [        [        [	        S%5      [        [        S&5      5      [        S$5      S(95      :X  d   eU?S6   [        [        [	        S#5      ['        [        SO5      5      [(        S(95      :X  d   eU?S7   [        [        [	        S>5      ['        [        SO5      5      [*        S(95      :X  d   eU?S8   [        [        [	        SP5      ['        [        SO5      5      [9        [	        S*5      [	        S%5      5      S(95      :X  d   eU?S@   [        [        [	        SQ5      ['        [        SO5      5      [9        [	        S*5      [	        S#5      5      S(95      :X  d   eU?SC   [        [        [	        SR5      ['        [        SO5      5      [9        [	        S#5      [	        S>5      5      S(95      :X  d   eU?SU   [        [        [	        SS5      ['        [        SO5      5      [;        [	        S*5      [	        S%5      5      S(95      :X  d   eU?S.   [        [        [	        ST5      ['        [        SO5      5      [;        [	        S*5      [	        S#5      5      S(95      :X  d   eU?SX   [        [        [	        SV5      ['        [        SO5      5      [;        [	        S#5      [	        S>5      5      S(95      :X  d   e[=        [>        U@4S_ j5        [=        [>        UA4S` j5        g )aNzint b = 100;
int a = b;
zint a = 1;
int b = a + 1;
z*float a = 10.0 + 2.5;
float b = a * 20.0;
zint a = 1 + 100 - 3 * 6;
z+int a = (((1 + 100) * 12) - 3) * (6 - 10);
z)int b = 2;
int c = 3;
int a = b + c * 4;
z2int b = 1;
int c = b + 2;
int a = 10 * b * b * c;
zCvoid func(){
int a = 1;
int b = 2;
int temp = a;
a = b;
b = temp;
}zint a = 1;
int b = 2;
int c = a;
int d = a + b + c;
int e = a*a*a + 3*a*a*b + 3*a*b*b + b*b*b;
int f = (a + b + c) * (a + b - c);
int g = (a + b + c + d)*(a + b + c + d)*(a * (b - c));
z<float a = 10.0;
float b = 2.5;
float c = a*a + 2*a*b + b*b;
zfloat a = 10.0 / 2.5;
zint a = 100 / 4;
zint a = 20 - 100 / 4 * 5 + 10;
z#int a = (20 - 100) / 4 * (5 + 10);
z%int a = 4;
int b = 2;
float c = b/a;
zAint a = 2;
int d = 5;
int n = 10;
int s = (a/2)*(2*a + (n-1)*d);
zint a = 1 % 2;
zint a = 2;
int b = a % 3;
z'int a = 100;
int b = 3;
int c = a % b;
zOint a = 100;
int b = 3;
int mod = 1000000007;
int c = (a + b * (100/a)) % mod;
ztint a = 100;
int b = 3;
int mod = 1000000007;
int c = ((a % mod + b % mod) % mod *(a % mod - b % mod) % mod) % mod;
zbool a = 1 == 2, b = 1 != 2;z2bool a = 1 < 2, b = 1 <= 2, c = 1 > 2, d = 1 >= 2;zint a = 1, b = 2;
bool c1 = a == 1;
bool c2 = b == 2;
bool c3 = 1 != a;
bool c4 = 1 != b;
bool c5 = a < 0;
bool c6 = b <= 10;
bool c7 = a > 0;
bool c8 = b >= 11;z{int a = 3, b = 4;
bool c1 = a == b;
bool c2 = a != b;
bool c3 = a < b;
bool c4 = a <= b;
bool c5 = a > b;
bool c6 = a >= b;zjfloat a = 1.25, b = 2.5;
bool c1 = a == 1.25;
bool c2 = b == 2.54;
bool c3 = 1.2 != a;
bool c4 = 1.5 != b;zfloat a = 1.25, b = 2.5;
bool c1 = a == b;
bool c2 = a != b;
bool c3 = a < b;
bool c4 = a <= b;
bool c5 = a > b;
bool c6 = a >= b;zbool c1 = true == true;
bool c2 = true == false;
bool c3 = false == false;
bool c4 = true != true;
bool c5 = true != false;
bool c6 = false != false;zbool c1 = true && true;
bool c2 = true && false;
bool c3 = false && false;
bool c4 = true || true;
bool c5 = true || false;
bool c6 = false || false;zebool a = false;
bool c1 = a && true;
bool c2 = false && a;
bool c3 = true || a;
bool c4 = a || false;zRint a = 1;
bool c1 = a && 1;
bool c2 = a && 0;
bool c3 = a || 1;
bool c4 = 0 || a;zint a = 1, b = 0;
bool c = false, d = true;
bool c1 = a && b;
bool c2 = a && c;
bool c3 = c && d;
bool c4 = a || b;
bool c5 = a || c;
bool c6 = c || d;zchar a = 'b';zint a[] = {10, 20};r9   r   r?   r;   r   rJ   r>   r:   r@   rA   rB   rC   rD   r   rP   rQ   z20.0S   irH   rS   rl   r   r   r   tempr   rk   rm   rc   rn   r   rM   ro   z10.0r   r   r   r   r   r   rg   r   r   r   r   r   r   r   r   rp   r   r   	   r   r   r   z2.54r   z1.5c                     > [        T S5      $ r   r   r   s   r_   r   test_var_decl.<locals>.<lambda>  r   ra   c                     > [        T S5      $ r   r   r   s   r_   r   r    r   ra   ) r   rU   r   r   r4   r   r   r   r&   r   r   r'   r)   r   r   r   r   r*   r(   r   r5   r6   r/   r0   r+   r,   r-   r.   r1   r3   r   r   )BrW   rX   rY   rZ   rx   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   c_src31c_src32r[   r\   r]   r^   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r  r	  r
  r  r  r  r  r  r  r  r  r  res31res32r   r   sB                                                                   @@r_   test_var_declr     s(     	$ 	) 	 . 	
 @ 	
( 	- 	 	 	2 	 + 	
 & 	
 4 	
 8 	
$ 	4 	 $ 	
$ 	$ 	6 	7 	 + 	
 A 	
! 	"  	" 	  	( 	( 	$ 	  		  	  	
 " 	 vs+779vs+779vs+779vs+779vs+779vs+779vs+779vs+779vs+779-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;-99;Aw+VC[ 0cl  	  Aw+VC[ 0Sk  	  Aw+VC[ 0aj  	  Aw+hvc{VF^,s
' 
 
 	
 
 Aw+VC[9%!"+!"+ 	 Fb1
 
 
	 
 Aw+VC[9%!"+!"+ 	 &B/3K  	  Aw+VC[ 0bk  	  Aw+VC[ 0en  	  Aw+VC[ 0aj  	  Aw+VC[ 0aj  	  Aw+VC[ 03K
s	  	  Aw+VC[ 0aj  	  Aw+VC[ 03KAJ  	  Aw+VC[ 0BKs
 3K
  	  Aw,KVC[(8%aj VC[(8%aj VF^(8$Sk VC[)3K VC[)6N/	     	  D Aw+VC[ 0aj  	  Aw+VC[ 0aj  	  Aw+VC[ 0Sk  	  Aw+VC[ 03K3K3K	 	 		 	 Aw+VC[ 0s
 
"3K#AJ s 
s"3K#AJ s
+  	 @ Aw+VC[ 0ss#BK"3K sss  	 * Aw+VC[ 03Ks#BK"3K "3K"3K"3K"3K	  
  	 2 Qx;VC[9%!"+!"+ 	 Fb1
 
 
	 
 Qx;VC[9%!"+!"+ 	 ER0
 
 
	 
 Qx;VC[9%!"+!"+ 	 s
 
ss
 s
  	 4 Qx;VC[9%!"+!"+ 	 ER0
 
 
	 
 Qx;VC[ 0bk  	  Qx;VC[ 0cl  	  Qx;VC[ 0dm  	  Qx;VC[ 0aj  	  Qx;VC[ 0aj  	  Qx;VC[9%!"+!"+ 	 s 3K  	 $ Qx;VC[ 0aj  	  Qx;VC[ 0aj  	  Qx;VC[ 0bk  	  Qx;VC[ 0QN3K#AJ"3K "3K &s '"  	 . Qx;VC[ 0aj  	  Qx;VC[ 0aj  	  Qx;VC[ 03KAJ  	  Qx;VC[ 0cl  	  Qx;VC[ 0aj  	  Qx;VC[ 03K3K  	  Qx;VC[ 0cl  	  Qx;VC[ 0aj  	  Qx;VE] 0j)  	  Qx;VC[ 0s#CL &s '" #3K
 5M  	 ( Qx;VC[ 0cl  	  Qx;VC[ 0aj  	  Qx;VE] 0j)  	  Qx;VC[ 0"3K ' &s" "3K"3K 5M  	 , Qx;VC[&.)  	  Qx;VC[&.)  	  Qx;VC[&.)  	  Qx;VC[&.)  	  Qx;VC[&.)  	  Qx;VC[&.)  	  Qx;VC[ 0aj  	  Qx;VC[ 0aj  	  Qx;VD\&.)3KAJ  	  Qx;VD\&.)3KAJ  	  Qx;VD\&.) AJ3K  	  Qx;VD\&.) AJ3K  	  Qx;VD\&.)$VC[AJ  	  Qx;VD\&.)3KBK  	  Qx;VD\&.)'3KAJ  	  Qx;VD\&.)!3KBK  	  Qx;VC[ 0aj  	  Qx;VC[ 0aj  	  Qx;xtfVn%ss( 
 
 	
 
 Qx;VD\&.) 3K3K  	  Qx;VD\&.)$3K3K  	  Qx;VD\&.)3K3K  	  Qx;VD\&.)'3K3K  	  Qx;VD\&.)!3K3K  	  Qx;VC[9%!"+!"+ 	 Fb1
 
 
	 
 Qx;VC[9%!"+!"+ 	 ER0
 
 
	 
 Qx;VD\&.)3K&B/  	  Qx;VD\&.)3K&B/  	  Qx;VD\&.) %2.3K  	  Qx;VD\&.) %2.3K  	  Qx;VC[9%!"+!"+ 	 Fb1
 
 
	 
 Qx;VC[9%!"+!"+ 	 ER0
 
 
	 
 Qx;VD\&.)3K3K  	  Qx;VD\&.) 3K3K  	  Qx;VD\&.)$3K3K  	  Qx;VD\&.)3K3K  	  Qx;VD\&.)'3K3K  	  Qx;VD\&.)!3K3K  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VC[&.)  	  Qx;VD\&.)Sk  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)Sk  	  Qx;VC[ 0aj  	  Qx;VD\&.)Sk  	  Qx;VD\&.)  	  Qx;VD\&.)  	  Qx;VD\&.)Sk  	  Qx;VC[ 0aj  	  Qx;VC[ 0aj  	  Qx;VC[&.)  	  Qx;VC[&.)  	  Qx;VD\&.)3K3K  	  Qx;VD\&.)3K3K  	  Qx;VD\&.)3K3K  	  Qx;VD\&.)3K3K  	  Qx;VD\&.)3K3K  	  Qx;VD\&.)3K3K  	  	"$NO"$NOra   c                  j   Sn Sn[        U S5      R                  5       n[        US5      R                  5       nUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S	5      [        [        S5      5      [        S
5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S	5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [	        S5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        [	        S5      [        S5      5      S95      :X  d   eUS   [        [        [	        S5      [        [        S5      5      [        [	        S5      [        [	        S	5      [	        S5      5      [        [        S5      [	        S5      [        [	        S5      [        S5      5      5      5      S95      :X  d   eg )Nz int a = (1);int b = (1 + 2 * 3);zPint a = 1, b = 2, c = 3;int d = (a);int e = (a + 1);int f = (a + b * c - d / e);r9   r   r:   r;   r>   rJ   r?   rp   rH   rS   rk   rl   rm   rc   rn   r   )r   rU   r   r   r4   r   r   r   r&   r'   r)   )rW   rX   r[   r\   s       r_   test_paren_exprr"    s   # 	+ 	 vs+779vs+779Aw+VC[ 0aj  	  Aw+VC[ 0aj  	  Aw+VC[ 0aj  	  Aw+VC[ 0aj  	  Aw+VC[ 0aj  	  Aw+VC[ 0Sk  	  Aw+VC[ 03KAJ  	  Aw+VC[ 03Kss s"3K#BK  	 ra   c                    ^^ Sn SnSmSm[        U S5      R                  5       n[        US5      R                  5       nUS   [        [        5       [	        S5      S[        [        [        [        S	5      [        [	        S
5      5      [        S5      S95      [        [        [        S5      [        [	        S
5      5      [        S5      S95      [        [        S	5      5      [        [        S5      5      [        [        S	5      5      [        [        S5      5      5      S9:X  d   eUS   [        [        5       [	        S5      S[        [        [        [        S	5      [        [	        S
5      5      [        S5      S95      [        [        [        S5      [        [	        S
5      5      [        S5      S95      [        [        [        S5      [        [	        S
5      5      [        S5      S95      [        [        [        S5      [        [	        S
5      5      [        [        S	5      5      S95      [        [        [        S5      [        [	        S
5      5      [        [        S5      5      S95      [        [        [        S5      [        [	        S
5      5      [        [        S	5      5      S95      [        [        [        S5      [        [	        S
5      5      [        [        S5      5      S95      [        [        [        S5      [        [	        S5      5      [         S95      [        [        [        S5      [        [	        S5      5      [#        [        S5      5      S95      [        [        [        S5      [        [	        S5      5      [         S95      [        [        [        S5      [        [	        S5      5      [$        S95      5      S9:X  d   e['        [(        U4S j5        ['        [(        U4S j5        g )Nz:void func(){
int a = 10;
int b = 20;
++a;
--b;
a++;
b--;
}zvoid func(){
int a = 10;
int b = -100;
int c = +19;
int d = ++a;
int e = --b;
int f = a++;
int g = b--;
bool h = !false;
bool i = !d;
bool j = !0;
bool k = !10.0;
}z&void func(){
int a = 10;
int b = ~a;
}z'void func(){
int a = 10;
int b = *&a;
}r9   r   r   r   r:   r;   r   rJ   r?   r   r   i   rk   rm   rn   ro   rq   r   r   jkc                     > [        T S5      $ r   r   r   s   r_   r   &test_unary_operators.<locals>.<lambda>  r   ra   c                     > [        T S5      $ r   r   r   s   r_   r   r(    r   ra   )r   rU   r   r   r   r   r   r   r4   r   r   r$   r"   r%   r#   r   r6   r2   r5   r   r   )rW   rX   r[   r\   r   r   s       @@r_   test_unary_operatorsr*    sN    	 	$ 	 	 vs+779vs+779Aw,KVC[(8%bk VC[(8%bk VC[)VC[)fSk*fSk*!	  	 0 Aw,KVC[(8%bk VC[(8%dm VC[(8%bk VC[(8*6#;7 VC[(8*6#;7 VC[(8+F3K8 VC[(8+F3K8 VC[!&.1" VC[!&.1!&+. VC[!&.1" VC[!&.1#{C	H H H	 HT 	"$NO"$NOra   c                     Sn [        U S5      R                  5       nUS   [        [        5       [	        S5      S[        [        [        [        S5      [        [	        S5      5      [        S5      S	95      [        [        [        S5      5      [        S
5      5      [        [        [        S5      5      [        S
5      5      [        [        [        S5      5      [        S
5      5      [        [        [        S5      5      [        S
5      5      [        [        [        S5      5      [        S
5      5      5      S9:X  d   eg )NzHvoid func(){
int a = 100;
a += 10;
a -= 10;
a *= 10;
a /= 10;
a %= 10;
}r9   r   r   r   r:   r;   r   rJ   r   r   )r   rU   r   r   r   r   r   r   r4   r   r   r   r   r   r   r    )c_srcress     r_   !test_compound_assignment_operatorr.    s    	 eS)5571v+Ks(8%cl 'VC[)BK 'VC[)BK 'VC[)BK 'VC[)BK 'VC[)BK1	! ! !	 !ra   c                  T   Sn SnSnSnSn[        U S5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n[        US5      R                  5       n	US   [        [        5       [	        S5      S	[        [        [        [        S
5      [        [	        S5      5      [        S5      S95      [        [        [        S
5      [        S5      5      [        [        [        S
5      5      5      S95      S9:X  d   eUS   US   :X  d   eUS   [        [        5       [	        S5      S	[        [        [        [        S
5      [        [	        S5      5      [        S5      S95      [        [        [        S5      [        [	        S5      5      [        S5      S95      [        [        [        S
5      [        S5      5      [        [        [        S
5      5      [        [        S5      5      5      S95      S9:X  d   eUS   [        [        [	        S5      5      [	        S5      [        [        S5      [        [	        S5      5      S94[        [        [        [        S5      [        [	        S5      5      [        S5      S95      [        [        [        S5      [        S5      5      [        [!        [        [        S5      5      [#        [        S5      [        S5      5      5      [%        [        [        S5      5      [        S5      5      5      S9['        S5      5      S9:X  d   eU	S   [        [        5       [	        S5      S	[        [        [        S5      [        [        5       5      S95      S9:X  d   eg )Nz/void func(){
int i = 0;
while(i < 10)
{
i++;
}}z,void func(){
int i = 0;
while(i < 10)
i++;
}zDvoid func(){
int i = 10;
int cnt = 0;
while(i > 0)
{
i--;
cnt++;
}
}z[int digit_sum(int n){
int sum = 0;
while(n > 0)
{
sum += (n % 10);
n /= 10;
}
return sum;
}zvoid func(){
while(1);
}r9   r   r   r   r   r;   rJ   r   )r   r   cnt	digit_sumr   r<   sumr>   )r   rU   r   r   r   r   r   r   r4   r   r   r!   r+   r%   r-   r#   r   r(   r   r   r   s
             r_   test_while_stmtr3    s    	 		 		 	 	 vs+779vs+779vs+779vs+779vs+779Aw,KVC[(8%aj "s #%"3K
	  	 2 Aw$q'!!!Aw,Ks(8%bk u(8%aj %s
 #%"3K &"5M		" " "	 "H Aw,v'$3K$VF^4 u(8%aj %s
 #.$ &u"   &s '"	 /$ &s" $BK	. u? * * *	 *X Aw,KAJ"!	  	 ra   c                  \   ^  SSK Jm   [        [        U 4S j5        [        [        S 5        g )Nr   CCodeConverterc                     > T " 5       $ )Nr   r5  s   r_   r   test_raise.<locals>.<lambda>  s    N$4ra   c                      [        SSS9$ )N r9   )moder   r   ra   r_   r   r8    s    OC$Dra   )sympy.parsing.c.c_parserr6  r   ImportErrorr5  s   @r_   
test_raiser>  }  s    ;{45{DEra   )Isympy.parsing.sym_exprr   sympy.testing.pytestr   r   sympy.externalr   cinsympy.codegen.astr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   sympy.codegen.cnodesr"   r#   r$   r%   
sympy.corer&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   sympy.logic.boolalgr1   r2   r3   sympy.core.symbolr4   r5   r6   r   r`   r   r   r   r   r   r   r   r  r   r"  r*  r.  r3  r>  r   ra   r_   <module>rH     s0   2 . (NZ(4LM' ' ' ' ' ' '% %    10(1
DYx]@Qf ^
 ^
@ x
 x
t \ \~3
ldPN9 [P [P|,WtTPn0d s snFra   