python (3.11.7)

(root)/
lib/
python3.11/
test/
__pycache__/
test_long.cpython-311.opt-2.pyc

eddlZddlmZddlZddlZddlZddlZejjZ	de	zZ
e
dz
ZdZdZ
ddde
e
dz	ddgZd	Zede	zD]Zeedz
edzZ [ed
eDdeDzz
ZejjZejjZejjZejjZdezdeez
dz
zz
ZdZd
ZGddejZ e!dkrej"dSdS)N)supportFlUU*UU*l*UU*UU
cg|]}|Sr
.0xs  B/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/test/test_long.py
<listcomp>rs   1QB   cg|]}|Sr
r
rs  rrrs#8#8#81QB#8#8#8rc	tjjdz}tjj|z
}d|z}gd}|dkrdS|dkrt	|S||z
}|dkr||zn||z	t
|d|zzz}|||dzz
}|||kz|krtdtj	t||S)	Nrr)rrrrrrrrz%integer too large to convert to float)sys
float_infomant_digmax_expint_to_float
bit_lengthbool
OverflowErrormathldexpfloat)n	PRECISION	SHIFT_MAXQ_MAXROUND_HALF_TO_EVEN_CORRECTIONshiftqs       rrr's'!+I&2I
NE$?$?$?!	Avvs	
QaR    
LLNNY&EqyyeVqEzT!en:L5M5M&MA	&q1u	--A
U
i''CDDD:eAhh&&&rcz	||zdk}t|t|}}|std|t|zkrtd||z
}|dkr|d|z|zks|dkr|d|zz|kr|dz
}t|ttz
}|t|dz|t|dz}}t||\}}d|z|ksd|z|kr|dzdkr|dz
}tj
||}|r|n|S)Nrzdivision by zeroz)int/int too large to represent as a floatrr)absZeroDivisionErrorDBL_MIN_OVERFLOWrrmaxDBL_MIN_EXPDBL_MANT_DIGdivmodrr )abnegativedexpr(rresults        rtruedivr8UsV7sQwHq663q66qA
4 2333q   GHHH	
'AAvv!q!tax--1q55QQBY!^^	Qa


,CSD!a3sA;;.qA!Q<<DAq	sQww!A#((q1uzz	Q
Z3

F*F77F*rceZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZejdZdZdZdZdZdZdZdZdZd=dZejdZdZdZ ej!dZ"ej!ej#e$j%dzd d!"d#Z&d$Z'ej!ej#e$j%d%zd&d!"d'Z(d(Z)d)Z*d*Z+d+Z,d,Z-d-Z.ej!d.Z/ej!d/Z0ej!d0Z1d1Z2d2Z3d3Z4d4Z5d5Z6d6Z7ej!d7Z8d8Z9d9Z:d:Z;d;Z<d<S)>LongTestcf||d|tz}|tz
dz}d}d}ttjtdzzdz}||kr|dz	dz}t	|||z
}|d|cxko
tknc||z}||z}|dzr|d|zdz
z}ttjtdzz}||k|||cxko|knctjdkr|}|S)Nrrr?)
assertGreaterSHIFTintrandommin
assertTrue)selfndigitsnbits_hinbits_loanswernbitsr6bitss        rgetranzLongTest.getran{s[7A&&&U?e#a'
519-..2hFa<DtX-..DOOA........///DLEt^F1u
4AI?3FMOOuqy122Ah	
E5555X5555666=??S  WF
rcd}t|D]'}|tztjdtz}(tjdkr|}|S)Nrr<)ranger>r@randintMASK)rDrGis   rgetran2zLongTest.getran2sWw	A	AAo4)@)@@FF=??S  WF
rc|j}|||5t||\}}||z||z}}||z||z}	}|||	d|||d|||d||||z|zd|dkr%|d|cxko|kncdn$|||cxkodkncdddddS#1swxYwYdS)Nr
yzmultiplication does not commutez(divmod returns different quotient than /z#divmod returns different mod than %zx != q*y + r after divmodrzbad mod from divmod)assertEqualsubTestr0rB)
rCr
rSeqr(r6q2r2pabpbas
          rcheck_divisionzLongTest.check_divisions


\\A\
#
#	C	C!Q<<DAqT1Q3BsAaCCBsC:;;;Bq"@AAABq";<<<Bq!A#'67771uuQ







,ABBBBA







,ABBB	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	CsB1CC!$C!cttdtdzttttdzz}|tdz|D]I}||}|D]/}||pd}|||0J|dd|dd|dd	|d
d|dd
|dd|dd|dd|dd|dd|dd|dddS)Nrl!Us/w3alZW3al+Q@{dB]OlNlOOlNlteo%gqCgx<l&ghrsGlQ5K4+o-bklC4+o-bkl.#wflD&I-XlZnSu9blcv
<IlrdFBu'plPhbIi|$l1m{Wqi8ls~5^Fiy+l'H
<{Cl`<{ClED_5(Nloybal=2zz6l9tm)listrL	MAXDIGITSKARATSUBA_CUTOFFappendrJr[)rCdigitslenxr
lenyrSs      r
test_divisionzLongTest.test_divisionseAy{++,,tE:J6F6K5M5M0N0NN

&*+++	*	*DD!!A
*
*KK%%*##Aq))))
*	
8/	1	1	1@)	+	+	+@)	+	+	+A3	5	5	5	
@2	4	4	4@3	5	5	5	
NI666/;;;.	:::.???.???,n=====rcttddttttdzz}|tdztdzgd|D}|D]}d|zdz
}|D]r}||kr	|||5d|zdz
}||z}d||zzd|zz
d|zz
dz}|||dddn#1swxYwYsdS)Nr
dc"g|]}|tz
Sr
)r>)rdigits  rrz+LongTest.test_karatsuba.<locals>.<listcomp>s222%
222r)abitsbbits)r_rLraextendrUrT)	rCrcrIrmr1rnr2r
rSs	         rtest_karatsubazLongTest.test_karatsubaseAqkk""T%0@0@20E+G+G&H&HH

'",.>.DEFFF226222	+	+Eeq A

+

+5==\\U\;;++eq(AAA
.u*&u*&A$$Q***+++++++++++++++

+	+	+s*;C11C58C5c|j}||5||dzd||dz|||dz|||dz|||dzd||dz|||||||z||||z||||zd|||zd|||zd|||zd||d|z|||dz
dddn#1swxYwYtdtzD]}d|z}||||5|||z|z	||||z||z	|||z||z|||z||z	|z|||z||dz
zdddn#1swxYwYdS)N)r
rrrr)r
r"p2)rTrUrLr>)rCr
rVr"rrs     rcheck_bitop_identities_1z!LongTest.check_bitop_identities_1s


\\A\

		Bq1uaLLLBq1uaLLLBq1uaLLLBq2vqMMMBq2vrNNNBq2vrNNNBqA2#JJJBq1uaLLLBq1uaLLLBq1uaLLLBqA2vqMMMBqA2vrNNNBqA2vrNNNBr1r6NNNBrQqS6NNN															 qw	+	+AaBQ2..
+
+16Q;"""17AF###1r616"""1s7AFaK(((1s7A"q&	M***
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+	+	+s%C)DDDA$GG	G	c|j}|||5|||z||z|||z||z|||z||z|||z|z||||z||z|||z||z|||z||z||zz|||z||z||zz|||z||z||zzddddS#1swxYwYdS)NrRrTrU)rCr
rSrVs    rcheck_bitop_identities_2z!LongTest.check_bitop_identities_2s


\\A\
#
#		+		+Bq1ua!eBq1ua!eBq1ua!eBq1uqy!Bq1uaRj!!!Bq1uaRj!!!Bq1uq1u!a%()))Bq1uqA2v1"q&)***Bq1uq1u!qb)***		+		+		+		+		+		+		+		+		+		+		+		+		+		+		+		+		+		+sCC,,C03C0cr|j}||||5|||z|z|||zz|||z|z|||zz|||z|z|||zz||||zz||z||zz||||zz||z||zzddddS#1swxYwYdS)N)r
rSzru)rCr
rSrxrVs     rcheck_bitop_identities_3z!LongTest.check_bitop_identities_3s:


\\Aa\
(
(	/	/BA{AQK(((BA{AQK(((BA{AQK(((BqAE{QUq1u-...BqAE{QUq1u-...	/	/	/	/	/	/	/	/	/	/	/	/	/	/	/	/	/	/sA?B,,B03B0c
tD]}||tdtdz}|D]}||}|||D]]}||}|||||||||zdz^dS)Nrr)specialrsrLr`rJrvry)rCr
rcrdrerSs      rtest_bitop_identitieszLongTest.test_bitop_identitiess	-	-A))!,,,,q)A+&&	S	SDD!!A))!,,,
S
SKK%%--a333--aDKKq@P4Q4QRRRR
S	S	Src4g}d}|dkrd|}}|r7t||\}}|t||7||pdg}dd|ddddd|zdd	|DzS)
Nrr-0b0o0x)rric3&K|]}d|V
dS)0123456789abcdefNr
)rrOs  r	<genexpr>z'LongTest.slow_format.<locals>.<genexpr>1s(==)!,======r)r0rbr?reversejoin)rCr
basercsignr6s      rslow_formatzLongTest.slow_format%sq55!!D	"!T??DAqMM#a&&!!!	"	A35D5zDbd33D9:ww==f=====>	>rcdtfdtfdtfdtfdtffD]\}}||}|||j5|||}|||dddn#1swxYwY||5|t|d|dddn#1swxYwYdS)Nrrrir)r
mapper)gotr)
binoctstrreprhexrU__name__rrTr?)rCr
rrrexpecteds      rcheck_format_1zLongTest.check_format_13smHq#hS	B:CyP	1	1LD&&))C&/::
0
0++At44  h///
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0#&&
1
1  S!a000
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1	1	1s$-BB	B	1%C""C&	)C&	ctD]}||tdD]G}tdtdzD],}||}||-HdS)Nrir)r{rrLr`rJ)rCr
rOrds    rtest_formatzLongTest.test_format<s	#	#A""""r	'	'Aa1--
'
'KK%%##A&&&&
'	'	'rcddddzfg}|D]_\}}dD]W}dD]R}||z|z}|}|dkr|tur|}	|t||C#t$rYOwxYwX`|ttd|ttd	|ttd
|ttd|ttdd
|ttdd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|td dd|ttd!d|ttd"dd#d$d%d&d'd(d)d*d+d,dzd,dzg}|D]$}	|ttd-|	%|ttd.dS)/N)100000000000000000000l Fx:^Ve10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000rirj)r+r~)r 	z  		  r~123L123l0Lz-37L0x32Lr1L+000r0o123S0x123i#0b100rz	 0O123   z 0X123  z 0B100 0z+0z-00008z-012395isilllr42uこんにちは)
ValueErrorrTr?assertRaises)
rCLLsvrprefixssvv
invalid_basesrs
          r	test_longzLongTest.test_longDs~'C(

	
	DAq$	
	
7F$*BBs{{q
':':R((R"5555%	
	
*c6222*c6222*c4000*c6222*c7B777*c4444T2+++	
UA***Wa"---Wa#...Wa!,,,[!,,b111Z++S111Y**A...S!a(((T1q)))T1q)))T1q)))*c4333*c9a888!5&(!5&(S&1c6'
"	;	;Dj#tT::::	
*c+KLLLLLs#A
A'	&A'	cHGdd}|tt|Gdd}|t5|t|dddddS#1swxYwYdS)NceZdZdZdS)*LongTest.test_conversion.<locals>.JustLongcdSN*r
rCs r__long__z3LongTest.test_conversion.<locals>.JustLong.__long__rrN)r
__module____qualname__rr
rrJustLongrs#




rrceZdZdZdZdS)+LongTest.test_conversion.<locals>.LongTrunccdSrr
rs rrz4LongTest.test_conversion.<locals>.LongTrunc.__long__rrcdS)Nr
rs r	__trunc__z5LongTest.test_conversion.<locals>.LongTrunc.__trunc__strN)rrrrrr
rr	LongTruncrs2







rrr)r	TypeErrorr?assertWarnsDeprecationWarningrT)rCrrs   rtest_conversionzLongTest.test_conversion}s									
)S((**555								

0
1
1	5	5S--t444	5	5	5	5	5	5	5	5	5	5	5	5	5	5	5	5	5	5s,BBBc	t|}n#t$rd}YnwxYw	t|}n#t$rd}YnwxYwd|||}||||dS)NoverflowzAError in conversion of integer {} to float.  Got {}, expected {}.)r!rrformatrT)rCr"actualrmsgs     rcheck_float_conversionzLongTest.check_float_conversions	 1XXFF	 	 	 FFF	 	"#AHH	"	"	"!HHH	"&&,fQ&A&A	3/////s!!5AAc
gd}|D]J}|t|||t||KdD]Y\}}tdD]D}|ttd|zd|zzd|zd|zzEZdD]Y\}}tdD]D}|ttd|zd|zzd|zd|zzEZtt}dt
z}||zdz}|t|t|t|dzt|t|dz
t|tt||td|z
t|tt||tt|dz
|tt||tt|dz|ttd|zdz
|ttd|z|tt||ztd	D]}d|zd
zdz}d|zdz}|tt||d|zd
z}d|zdz}|tt|||dz
||dz|dz
||dz|dz
||dzd|zdz
d|z||zg}||tdd
D]3}tddD] }|	d|dzz|z!4|D]-}	|
|	|
|	.dS)N)rrrllllll)rr)rrr^rrrrhr)rrrrrr))rrr)rrrrr)rrr)rr)	r)rir))rr)
r)r]r)rrrrrjlrr5)rTr!rLr?DBL_MAXDBL_MAX_EXPrrrorbr)
rCexact_valuesr
rSpint_dbl_max	top_powerhalfwaytest_valuesvalues
          rtest_float_conversionzLongTest.test_float_conversionsp	"	"	"	,	,AU1XXq)))UA2YY++++M	M	MDAq2YY
M
M  U1a4q>%:%:!;!;QT57^LLLL
M3	M	MDAq2YY
M
M  U1a4q>%:%:!;!;QT57^LLLL
M'll{N	*Q.{++W555{1}--w777wqy))7333-888qy))G8444-999-	!<<<-	:::-	!<<<-)A
>>>-)<<<-	)0CDDDs	/	/A1	"Q&A1	"ASq]]A...1	"A1uASq]]A....

M;A
AIw!aKIaK
iKM1Y;	)(;	
	<(((r1	2	2A4%%
2
2""1qt9q=1111
2 	0	0E''...''////	0	0rcLdD]2}|tt||3d}ddz}|}|||td}dD]$}|t
t||%|t|t|ddS)N)gr?@X123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345123451234512345ri0u)hugemhugeshuger)$float(huge)float(mhuge)z
complex(huge)zcomplex(mhuge)zcomplex(huge, 1)zcomplex(mhuge, 1)zcomplex(1, huge)zcomplex(1, mhuge)z	1. + hugez	huge + 1.z
1. + mhugez
mhuge + 1.z	1. - hugez	huge - 1.z
1. - mhugez
mhuge - 1.z	1. * hugez	huge * 1.z
1. * mhugez
mhuge * 1.z
1. // hugez
huge // 1.z1. // mhugezmhuge // 1.z	1. / hugez	huge / 1.z
1. / mhugez
mhuge / 1.z
1. ** hugez
huge ** 1.z1. ** mhugezmhuge ** 1.zmath.sin(huge)zmath.sin(mhuge)zmath.sqrt(huge)zmath.sqrt(mhuge)z(float(shuge) should not equal int(shuge))rTr!r?rrrevalassertNotEqual)rCr
rrr	namespacetests       rtest_float_overflowzLongTest.test_float_overflows*	/	/AU3q66]]A....Ez!EE4PP		D	DD 
mT4CCCC	
E%LL#e**6	8	8	8	8	8rctjtj}tt	dgdzD]`}d|z}tj|}|||||z}tj|}|||addzddfD]N}|ttj||ttj|OdS)Nri)rj'rr	rr)	rlog10er_rLassertAlmostEquallogrr)rCLOG10Er5rr
rr
bads        r	test_logszLongTest.test_logssDF##b		??%7%7%77		2		2C#IEJu%%E""5#...V|H(5//C""31111%Z="a'	;	;Cj$(C888j$*c::::	;	;rc
|j}G
fdd
gd}dD]X}||dz
|dz
||dz|dzt|dz
t|t|dzgY|ddd	tjttjgtd
}|ddd	ddz|dz
||dzg|d|D|D]}
|}|D]}
|}||k||kz
}||||
5||k||kz
}	|||	|||k|dk|||k|dk|||k|dk|||k|dk|||k|dk|||k|dkdddn#1swxYwY܌dS)Nc>eZdZdZfdZdZdZdZdZdZ	dS)	)LongTest.test_mixed_compares.<locals>.Ratct|tr||_d|_dSt|trtjt|\}}d}d}|r8tj||}t|}||z|z}||z}||z}|8|dkr||z}d}n|}d|z}|dkr|}||_||_dStd|z)Nrrzcan't deal with %r)

isinstancer?r"r4r!rfrexpr*r r)	rCrfrCHUNKtoprlr"r4s	         r__init__z2LongTest.test_mixed_compares.<locals>.Rat.__init__seS))%B"DFDFFFu--"B:c%jj11DAqEC# Jq%00 #A"e|u4U
U
#Avv1H!GqyyBDFDFFF$$85$@AAArct|s|}|j|jz|j|jz}}||k||kz
S)N)rr"r4)rCotherr
rSRats    r_cmp__z0LongTest.test_mixed_compares.<locals>.Rat._cmp__GsP!%--'CJJEv'%')91A!a%((rc4||dkSNrrrCrs  r__eq__z0LongTest.test_mixed_compares.<locals>.Rat.__eq__L{{5))Q..rc4||dkSr!r"r#s  r__ge__z0LongTest.test_mixed_compares.<locals>.Rat.__ge__Nr%rc4||dkSr!r"r#s  r__gt__z0LongTest.test_mixed_compares.<locals>.Rat.__gt__P{{5))A--rc4||dkSr!r"r#s  r__le__z0LongTest.test_mixed_compares.<locals>.Rat.__le__Rr%rc4||dkSr!r"r#s  r__lt__z0LongTest.test_mixed_compares.<locals>.Rat.__lt__Tr*rN)
rrrrrr$r'r)r,r.)rsrrrs&
B&
B&
BP
)
)
)
)
)

/
/
/
/
/
/
.
.
.
/
/
/
.
.
.
.
.rr)rgMbP?gGz?rg?g@xDZbti)gBgCg@Crg333333?rrrr/i Ncg|]}|Sr
r
rs  rrz0LongTest.test_mixed_compares.<locals>.<listcomp>bs(((Qqb(((r)r
rSRcmp)rTror?rmaxsizer!rU)rCrVcasestr
RxrSRyr1xycmprs          @rtest_mixed_compareszLongTest.test_mixed_comparess

7	.7	.7	.7	.7	.7	.7	.7	.7	.7	.r877+	7	7ALL!c'1s7Aq3wCac((CFFC!HH6
7
7
7
7
aAs{E#+,>,>?@@@
JJ
aAqEz1Q31Q37888
((%((()))
	*
	*AQB
*
*SVVRBG,\\A\66**Uq1u-EBtUOOOBqAvtqy)))BqAvtqy)))Bq1udQh'''BqAvtqy)))Bq1udQh'''BqAvtqy)))***************
*
	*
	*sBG&&G*-G*c
z|tddd|tddd|tddd|tddd|tdd	d
|tdd	d|tdd
d|tdd
d|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|td dd
|td dd
|ttd!d"dd!|ttd!d"dd#|ttd!d"dd$|ttd!d"dd%|ttd&d'|td&d(d)|td&d*d+|tdd,d|td d,d
|tdd,d-|tdd,d.|tdd/d-|tdd/d.|tdd0d1|tdd0d.|tdd2d3|tdd2d.|ttd&d4|td&d5d6|tdd7d8|td d7d9|tdd7d:|tdd7d;|tdd<d:|tdd<d;|tdd=d>|tdd=d;|tdd?d@|tdd?d;|ttd&dA|tdBdCdD|ttddE|ttddF|ttddG|ttddH|tdItddJ|tdItddK|tdItddL|tdItddM|tdNtddO|tdPtddQdRt
tdStdTdzDdUt
tdVtdWdzDzD]}|dXvr|ttdY||ttd||ttd||ttdZd[z||ttdZd[z|d\D]F}d]D]A}|t||tt||BGdS)^Ni[r4	123456789,z123,456,789_123_456_789rr~1rz-1z-3z  1z -1z+3z +1z 3rz 1r^r
3Xi4d2i.z-4d28xz     4d2z    -4d2berBEz-bez-BEIz,x_x	4996_02d2_X	4996_02D2o2322z-2322z-oz oz 2322z+oz+2322z,o_o
111_4540_1322r211z-1110011010010z-10011010010z-bz bz 10011010010z+bz+10011010010z,b90_b11_0000_0011_1001z1.3_cz,cz+czCannot specify bothz_,z,_z_,dz,_dzCannot specify ',' with 's'z,szCannot specify '_' with 's'_sc,g|]}t|Sr
chrrs  rrz+LongTest.test__format__.<locals>.<listcomp>IIISVVIIIrr1rxc,g|]}t|Sr
rWrs  rrz+LongTest.test__format__.<locals>.<listcomp>rYrAZzbcdoxXeEfFgGn%rrrjzeEfFgG%)rrrrjrFi.i)	rTrr?rrassertRaisesRegexrLordr!)rCformat_specrs   rtest__format__zLongTest.test__format__rsy		3//===	3//===	3//???	3//???	
3---C$///4%000D))51114%000D))51114%000D))51113...C$///	
3---3---c**E222s++V444d++Z888t,,j999c**E222s++V444C$///C$///D"

s33T:::D"

s33T:::T244e<<<T244e<<<*fj$???
D11;???
D11;???	
3---C$///c**F333s++W555d++V444t,,g666d++W555t,,g666d++W555t,,g666*fj$???
D11?CCC	
3...C%000c**M:::s++^<<<d++];;;t,,n===d++^<<<t,,n===d++^<<<t,,n===*fj$???t,,.ABBB	
*fa777*fa666*fa666*fa666	
z+@&!TRRRz+@&!TRRRz+@&!USSSz+@&!USSSz+H&RSUYZZZz+H&RSUYZZZJIU3s88SXXaZ-H-HIIIIIU3s88SXXaZ-H-HIIIJ	N	NK"222!!*faEEE!!*faEEE!!*fb+FFF!!*fafkJJJ!!*f3iMMM%	D	DKG
D
D  {!;!;!'ek!B!BDDDD
D	D	Drc|tttd|tttd|tttddS)Ninfz-infnan)rrr?r!rrs rtest_nan_infzLongTest.test_nan_infsb-eEll;;;-eFmm<<<*c5<<88888rc|t5ddz}dddn#1swxYwY|dd|dd|dd|dd|dd|dd|dd|dddS)Nrrr^rrCrr+rTrCr<s  rtest_mod_divisionzLongTest.test_mod_divisions-


0
1
1		AA																
!$$$1%%%2&&&B'''###!$$$!$$$1%%%%%-11c*ddz}|}|||zd|||zd|||zd|||zd|d|zd|d|zd|d|zd|d|zd|d|z|dz	z|zd|d|z|dz	z|zd|d|z|dz	z|zd|d|z|dz	z|zd|||dzzd	|d
|z|zd
||d}dD]$}|tt||%d
D],}t||}||dd|z-dD]$}|tt||%dS)Nri@rrrigԄ@gԄr<i@B)rr)rrzhuge / 1zhuge / 2z	huge / -1z	huge / -2zmhuge / 100zmhuge / 200)z1 / hugez2 / hugez	-1 / hugez	-2 / hugez100 / mhugez200 / mhugezexpected underflow to 0 from %r)zhuge / 0z	mhuge / 0)rTrrrr+)rCrrrr	underflowr7zeros        rtest_true_divisionzLongTest.test_true_divisionsEzc***,,,t,,,t,,,T3'''T3'''UC(((UC(((#*	2d:EBBB#+!4=uEEE#*	2e;VDDD#+!4<fEEE+S111'D.D0':::!E22	7	H	HH
mT8YGGGG7	L	LI)Y//FVS>J
L
L
L
L.	H	HD/tYGGGG	H	Hrc|t5ddz}dddn#1swxYwY|dd|dd|dd|dd|dd|dd|dd|dd|dd|dd|dd|dddS)Nrrrr^rrrhris  r
test_floordivzLongTest.test_floordivs


0
1
1		QA																
###"%%%"%%%1%%%A&&&2&&&2&&&!$$$A&&&2&&&2&&&!$$$$$rkTc
	|r8tt|t|dtzkrdS	tt	||}n#t
$rd}Ynt$rd}YnwxYw	t||z}n#t
$rd}Ynt$rd}YnwxYw|||d||||dS)Nrrzerodivisionz7Incorrectly rounded division {}/{}: expected {}, got {})	r-r*r/rr8rr+rTr)rCr1r2
skip_smallrrs      r
check_truedivzLongTest.check_truedivs/	3	#c!ffc!ff--<??F	&GAqMM**HH	"	"	"!HHH 	&	&	&%HHH	&	!q1u++CC			CCC 	!	!	! CCC	!	
3)//5vaHc/J/J	L	L	L	L	Ls/AA7)A76A7;BB*B*)B*c	|dd|dd|dd|dd|dd|ddtzzd|dd	dttz
zz|ddd
zzd|ddd
dzzdtttttz
f}|D]}t	|dz
|dzD]}|ddt|dzzddt|dzz|ddt|dzzddt|dzzddd
ddd
d
zdddddddzfD]X}t	ddD]E}||tz|z|||tz|z|FYt	dD]=}|dtzdzdzddzzd|zzdtzdz>|dd|d d!t	d"D]@}|d|dzzd|z|d|zd|dzzAddd#d
d$d%dd&dd
d
zdddddddzfD]9}t	ddD]&}|dtz|z|z|':t	d'd(D]}||dd)zd*dd
zdd"zfD]}t	d"D]}tjd|}tj|d|zdz}	|||	|||	|||	|||	t	d+D]}
tjd"}tjdd"}tjd|z}
tjdd|z}||
|||
|||
|||
|dS),N{ri8r^rCige~rrQiNFrjíl90rQri0&iCrrrii)2rii
lE,J_lJbrrrr ii4ld(	r	)	rurr/r.rLr-r,r@	randrange)rCbasesrr5mr"rOMr1r2r<a_bitsb_bitsr
rSs               r$test_correctly_rounded_true_divisionz-LongTest.test_correctly_rounded_true_division9s	
3"""4###1a   1b!!!1a   ;K7???5&1|k/I+J"JKKK5C<///;ae444L+kL8:	P	PDTBYr	22
P
P""5CQKK#7q#sdA,,9NOOO""5CQKK#7q#sdA,,9NOOOO
P
Q2uafb"c6BF74	?	?A3^^
?
?""1%5#5#91===""1%5#5#9A2>>>>
?
s	2	2A
<! 3U:1c6AAqDHl?50
2
2
2
2	
1d###	
02GHHHt	1	1ArAaCy"a%000r1ub1Q3i0000Q1aRUAsFb"c6BF74	=	=A3^^
=
=""1l?1#4q#8!<<<<
=sB	+	+Aq!T'****"c'2t8,	+	+A4[[
+
+$Q**$Q!A..""1a(((""A2q)))""1qb)))""A2r****

+u	'	'A%d++F%a..F F++A AvI..Aq!$$$q1"%%%r1%%%rA2&&&&	'	'rc|t5ddzdddn#1swxYwY|t5dddzzdddn#1swxYwY|t5ddz	dddn#1swxYwY|t5dddzz	ddddS#1swxYwYdS)NrrCrr)rrrs rtest_negative_shift_countz"LongTest.test_negative_shift_counts


z
*
*		"HH															


z
*
*		AI,															


z
*
*		"HH															


z
*
*		AI,																		sB-11
A((A,/A,
BB#&B#
CC"Cc||dd|dd|t5ddzdddn#1swxYwY|dddzzd|t5dddzzddddS#1swxYwYdS)Nrrrr)rTrrrs rtest_lshift_of_zerozLongTest.test_lshift_of_zerosH###!$$$


z
*
*		
GG															qDy)1---


z
*
*		
19																		s$AA A
B11B58B5c|dtjzd|dtjdzzddS)NrrrTrr2rs rtest_huge_lshift_of_zeroz!LongTest.test_huge_lshift_of_zerosH
	
ck)1---s{Q/33333rrg?F)memusedry_runcr|dtjdzzddztjzdS)Nrrr)rCsizes  rtest_huge_lshiftzLongTest.test_huge_lshifts7	
s{T12AI4LMMMMMrcJddz}|d|z	d|d|z	d|d|z	d|d|z	d|d	d
z|z	d|d	d
z|z	ddS)NrrrriricirrrT)rC
huge_shifts  rtest_huge_rshiftzLongTest.test_huge_rshifts$Y
z)1---#*,b111+Q///%J.333C:-q111!S&J.33333rg?cddzdztjz}||tjdzz	ddzdz||tjdzz	ddS)Nrrrirhrr)rr2rT)rCrrs   rtest_huge_rshift_of_hugez!LongTest.test_huge_rshift_of_hugesicRCK/#+/2Q#XNCCC#+"45q99999rcx|dd|dd|dd|dd|dd|dd|dd|dd|ddzd	z	dd
z|ddzd	z	dd
z|ddzd	zd	z	dd
z|ddzd	zd	z	dd
zd	z
dS)Nriii1iirrrrrs rtest_small_rshiftzLongTest.test_small_rshiftsV"%%%S)))"%%%S)))C(((t,,,C(((t,,,C1af---!S&A3w///!S&1**AsF3331c6A:!+afWq[99999rc|dd|dd|dd|dd|ddzdz	ddz|ddzdz	ddz|dttzz
tz	t|tdz
ttzz
tz	tdS)	NrrrrCrrwr)rTBASEr>rs rtest_medium_rshiftzLongTest.test_medium_rshifts!$$$R(((A&&&r***C1af---!S&A3w///	
!d4i-E1D5999$(T$Y.584%@@@@@rc6|dd|dd|dd|dd|ddzdz	ddz|ddzdz	ddzdS)Nrrrrr`rrs rtest_big_rshiftzLongTest.test_big_rshifts1%%%b)))Q'''+++C2q"u---!S&BB/////rc6|dd|dd|dd|dd|ddzdzddz|ddzdzddzdS)	NTiibirrrrrrs rtest_small_lshiftzLongTest.test_small_lshifts"%%%S)))4(((e,,,C1af---!S&A3w/////rc|dd|dd|dd|dddS)NiTiii<rrs rtest_medium_lshiftzLongTest.test_medium_lshifts`%(((V,,,F+++w/////rc6|dd|dd|dd|dd|ddzdzddz|ddzdzddzdS)	Nllllrrrrrs rtest_big_lshiftzLongTest.test_big_lshifts:...k222\222
666C2q#v...!S&BC00000rcddz}|dz}|dz}|||zd|||z
ddS)Nrrjr)assertIs)rCr1r2cs    r#test_small_ints_in_huge_calculationz,LongTest.test_small_ints_in_huge_calculationsU
H
BF
E

a!eQ

a!eQrcd|tdddd|ddd\}}}|||z|zd|tdddd|ddd	\}}}|||z|zd|tdd
dd
zdz
d|dd
zdd
zdz
zddd
dd
zdz
}}}|||z|zddS)Nrir^r)rir^rrr)rrrrj)rpow)rCr1rrs    rtest_pow_uses_cached_small_intsz(LongTest.test_pow_uses_cached_small_intss;

c"aooq)))

mQ'''1a

a1fqj!$$$

c!R--q111

-q111$1a

a1fqj!$$$

c!S!S&1*--q111

a3h!s(Q,/333S!S&1*a1

a1fqj!$$$$$rcddz}||dz|zd||dz|zd|||dzzd|||dzzdtd|zdz|\}}||d||dtd|zdz|\}}||d||dtd|zdz
|\}}||d||dtd|zdz
|\}}||d||ddS)	Nrirjrrrr^rrC)rr0)rCbigr(r6s    r"test_divmod_uses_cached_small_intsz+LongTest.test_divmod_uses_cached_small_intssCi

sQw#oq)))

sQw3&***

ccQh'+++

ccRi("---a#gk3''1

a

ab3hnc**1

a

aaC4j1nsd++1

a

aa#gkC4((1

a

arc	tddD]=}|||dz|||dz|||dz
|||dz|||dz|||dz|||dz||||||dz||tt||||dzdz	t|?d}|||z
d|d|zddS)Nrzrrrrl)rLrr?r)rCrOs  rtest_small_intszLongTest.test_small_ints1ssr3	.	.AMM!QU###MM!QU###MM!QU###MM!Q!V$$$MM!QV$$$MM!QU###MM!QU###MM!qbS!!!MM!QT"""MM!SQ[[)))MM!QT1Wc!ff----

a!eQ

a!eQrcd}tddD]}|}||tt	|d|dkr:|d|dz
zt|cxkod|zkncn||d|dkrb||dtj	tj
t|tj
dz|zz|dd|dd|dd|dd|d	dd
D]}d|z}||dz
||d|z
||||dz|||dz||dz|dz||dz
|dzdS)Ng|=iiz-0brrrrr)rr^rrryrr!?@)rLrrTlenrlstriprBr*rfloorr
)rCtinyr
krOr1s      rtest_bit_lengthzLongTest.test_bit_lengthCsvu%%	>	>AAQCFFMM%$8$8 9 9:::AvvAaCCFF 9 9 9 9QT 9 9 9 9::::  A&&&Avv
  A
Q((!4t;)=)=%=>>>	
!))1---!))1---"**A...!))1---"**A...<	7	7A1Aac--//333ac--//333a^^--qs333qb__..!444ac--//1555qbd..00!A#6666	7	7rc.tddD]J}||t|dKdD]}d|z}||d||dz
|||dzd||dz
d	z|d
z
dS)Nirr>)riryrrAiiZirrrrir)rLrT	bit_countrcount)rCr1r5s   rtest_bit_countzLongTest.test_bit_countesud##	?	?AQ[[]]CFFLL,=,=>>>>=	C	CC3AQ[[]]A...a!e..00#666a"f//111555q1um6688#'BBBB	C	Crc
iddddddddddddddd	dd
dddddddd
ddddddddddddd}tdddD]r}|D][\}}t||zd}||z}||||t|t\s|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|tddd|td dd|td!dd"|td#dd"|td$dd%|td&dd%|td'dd(|td)d*d+|td,d*d-|td.dd/|td.dd0|td.d*d1|td.d2d3|td.d4d5|td.d6d7|td.d8d9|td.d:d;|td.d<d=|td.d>d?|td.d@d|td.dAd|td.dBdtdd"D]^}td|zdCzd*}d|zdDz}||||t|t_tdD]w}td"D]e}	tjdEdF}
t|
|}|||
|t|tfxdGdHdIdJdd"zdd"zfD]&}|tdK|dK'td"D]d}	tjdEdF}
t|
}|||
|t|tedL}|D]$}
|	ttd|
%dS)MNrrrr^rrhrrirrrrrrr]rrr)ryiirijri8ikr]iii1r|3rjrr~i,iԡrCiiil!l!l~!l!rl!rzl`!il!rgl'!ilz+ilv|or}l,GxiiiiFiir	rrrri{)brianry)rLitemsroundrTrtyper?r@rrr)rC	test_dictoffsetrrrrexpectr"rOr
huge_n
bad_exponentsrs              r
test_roundzLongTest.test_roundps8Qq8!A8q8Aa818a8r8R8!"28'(8-/846r8;=b8BDR8IKB88r8&(RB888	D#r**	.	.F!))
.
.1AfHb))V8  h///

d3ii----	
.	
tR$///tR$///sB...sB+++sB+++r2***q"q)))q"q)))r2***r2***r2,,,sB---sB---sB---sB---vr**F333vr**F333{B//==={B//==={B//==={B//==={B//==={B//==={B//==={B//==={B//==={C00+>>>{C00!444{C00!444{D111555r3	*	*AA++CUV^FS&)))MM$s))S))))q	.	.A3ZZ
.
.$VU33Aqkk  a(((

d3ii----	
.
uguafb#gE	>	>FU7F33W====s	*	*A //A((CS!$$$MM$s))S))))+
	6	6Ai15555	6	6rcd=fd	}iddddddd	d
ddd
ddddddddddddddddddd d!d"d#d$}||d%d&'iddddddd	d
ddd
ddddd(dd)dddddd*dddd+dd,d!d-d#d.}||d/d&'dddddddd0d1d2d3
}||d%d'dddddd*dd+d1d4d3
}||d/d'tdjdd%d'tdjdd%d&'tdjdd/d'tdjdd/d&'tdjd5d%d'tdjd5d/d'ddd%d6dd7d%d8dd7d%d9dd7d%d&'d:tdjdd%Gd;d<t}dd|d%ddd|d/d6dS)>NFc	d	d}|D]Z\}}	|t||||n7#t$r*}td||||d}~wwxYwt|dkrg|dkra|s_	||n5#t$r(}td||d}~wwxYw	||t||||%#t$r*}td||||d}~wwxYwdS)
NFc|dkrt|}n"|dkrtt|}tfd|DS)Nlittlerc3.K|]}|dzz	dzVdS)rNr
)rrOr"s  rrzSLongTest.test_to_bytes.<locals>.check.<locals>.equivalent_python.<locals>.<genexpr>s0>>1a1Q3h$.>>>>>>r)rLreversedbytes)r"length	byteordersignedorders`    requivalent_pythonz@LongTest.test_to_bytes.<locals>.check.<locals>.equivalent_pythons\((!&MMEE%''$U6]]33E>>>>>>>>>>rrz4failed to convert {} with byteorder={} and signed={}rr+failed to convert {} with default argumentszmCode equivalent from docs is not equivalent for conversion of {0} with byteorder byteorder={1} and signed={2}F)rrTto_bytesr	ExceptionAssertionErrorrtestsrrrrrerrrCs       rcheckz%LongTest.test_to_bytes.<locals>.checks
?
?
?
?#(++--
O
OhC$$

c(mmYv
NN """"!CCC(Ni88::?BCCx==A%%)u*<*<V*<4(((CCCC$444,I#VD\\++0344

O$$)) #h--6KKK 
!OOO(%%+VD)V%D%DFFLOOO3
O
OsG9A
B%%B

B.(C
D	!#DD	
0D??
E3	%E..E3rrrrrrsrTrr)
rrrrrrrrrrrhsssceZdZdS)&LongTest.test_to_bytes.<locals>.SubStrNrrrr
rrSubStrr:Drr!r)rrrrTr)rCrtests1tests2tests3tests4r!s`      r
test_to_byteszLongTest.test_to_bytess%	O%	O%	O%	O%	O%	OP

w

w



'	


'

+






+

+





;

O

?
 
O!
"
o#
&	feD))))

w

w



'	


'

+






+

+





;

K

?
 
O!
"
o#
&	fht,,,,"

	feE****"

	fhu-----#E%PPP-#E$OOO-#HUSSS-#HTRRR-"5OOO-"8ERRR!a//555!a//1HIII!a//1HIII"q%==0	2	2	2-!q%@@@					S			!a77AAA!a)9)9::C@@@@@rcdMfd	}iddddddddd	dd
dddd
ddddddddddddddddddd d!d"d#d$d%}||d&d'(iddddddddd	dd
dddd
dddddddd)dd*dddddd	ddd d!d"d#d$d+}||d,d'(ddddd-ddd d.d"d/d0}||d&d(ddddd-ddd d.d"d/d1}||d,d(Gd2d3t}t|dd&||dd&dt|dd&d(||dd&d(dt|dd,||dd,dt|dd,d(||dd,d(dtgd4d&d'(d#td4d&d'(d#ttd5d&d'(d#ttd5d&d'(d#tt
jd6d5d&d'(d#ttd5d&d'(d#ttjdgd&ttjdgd7ttjdgd8ttjd9d&ttjd:d&ttjdd&ttjdd&d't|jd9d&t|jd:d&t|jdd&ttjdd&d'Gd;d<t}|dd&}t|||d=Gd>d?t}	|	dd&}t||	|dt|d@dAdBGdCdD}
GdEdF}GdGdH}GdIdJ}
t|
dttj|ttj|ttj|
GdKdLt}td|d&dtd|d,ddS)NNFc	dd}|D]7\}}	t||||n7#t$r*}td||||d}~wwxYw|dkrg|se	t||n5#t$r(}td||d}~wwxYw	|||||#t$r*}td||||d}~wwxYwdS)	NFc|dkrt|}n"|dkrtt|}tdt|D}|r%|r#|ddzr|ddt	|zzz}|S)Nrrc3,K|]\}}||dzzVdS)rNr
)rrOr2s   rrzULongTest.test_from_bytes.<locals>.check.<locals>.equivalent_python.<locals>.<genexpr>Gs.GGTQQqSGGGGGGrrrrr)r_rsum	enumerater)
byte_arrayrrlittle_orderedr"s     rrzBLongTest.test_from_bytes.<locals>.check.<locals>.equivalent_pythonAs((%)*%5%5NN%''%)(:*>*>%?%?NGGY~-F-FGGGGG4n4.2Dt2K4aN 3 3333Arrz6failed to convert {} with byteorder={!r} and signed={}rrzeCode equivalent from docs is not equivalent for conversion of {0} with byteorder={1!r} and signed={2}r)rrTr?
from_bytesrrrrs       rrz'LongTest.test_from_bytes.<locals>.check@s







#(++--
C
ChC$$tYvFF """"!CCC(Pi88::?BCC%%f%4((NN400$&&&&%444,I#VD\\++0344
	C$$))$	&III !CCC(Pi88::@CCC5
C
CsG1A
B%BB.C
C4#C//C48"D
E&%EErrrsrrrrrrrrrrrrrrrrrrrrrrrrr	rr
rr
r)rrrrrTrrr)rrrrrrrr)rrrrrrrr	rrr)rrrrrrrrrrrceZdZdS)'LongTest.test_from_bytes.<locals>.myintNr r
rrmyintr2r"rr3)rrrrBzbigzlittlerceZdZdZdS)(LongTest.test_from_bytes.<locals>.myint2c>t||dzS)Nr)r?__new__)clsrs  rr9z0LongTest.test_from_bytes.<locals>.myint2.__new__s{{3	222rNrrrr9r
rrmyint2r7s#
3
3
3
3
3rr<rceZdZdZdS)(LongTest.test_from_bytes.<locals>.myint3cd|_dS)Nbar)foo)rCrs  rrz1LongTest.test_from_bytes.<locals>.myint3.__init__s
 rN)rrrrr
rrmyint3r>s#
!
!
!
!
!rrBrAnoner@ceZdZdZdS),LongTest.test_from_bytes.<locals>.ValidBytescdS)Nrr
rs r	__bytes__z6LongTest.test_from_bytes.<locals>.ValidBytes.__bytes__swrNrrrrGr
rr
ValidBytesrEs#




rrIceZdZdZdS).LongTest.test_from_bytes.<locals>.InvalidBytescdS)Nabcr
rs rrGz8LongTest.test_from_bytes.<locals>.InvalidBytes.__bytes__surNrHr
rrInvalidBytesrKs#




rrNceZdZdS).LongTest.test_from_bytes.<locals>.MissingBytesNr r
rrMissingBytesrPsrrQceZdZdZdS).LongTest.test_from_bytes.<locals>.RaisingBytescddzdS)Nrrr
rs rrGz8LongTest.test_from_bytes.<locals>.RaisingBytes.__bytes__sArNrHr
rrRaisingBytesrSs#




rrUceZdZdS)(LongTest.test_from_bytes.<locals>.SubStrNr r
rrr!rWr"rr!r)r?rrr0rT	bytearrayarray
memoryviewrrrgetattrr+r)rCrr#r$r%r&r3r<rOrBrIrNrQrUr!s`              rtest_from_byteszLongTest.test_from_bytes?s	+	C+	C+	C+	C+	C+	C\

Q



Q	




R




T

T



S








 
!
"
#
$ "#%+


.	feD))))

Q



Q	




R




T

T



S








 
!
"
#
$ "#%+


.	fht,,,,"

	feE****"

	fhu----					C				


d5++GU;;<<eDDD))'5991===

!!'5!??@@%	I	I	I))'5)GGKKK

d5++GX>>??GGG))'8<<a@@@

d5++Xe,--../4	6	6	6))'8E)JJANNNNN;;;dN;;V	E	E	ENN;dN;;V	E	E	Eo&&d(<<=C	E	E	Eo&&d(<<=C	E	E	EK_--uT(CCDJ	L	L	L''t(==>D	F	F	F*cnseUCCC*cnqc9EEE*cnqc<HHH)S^R???)S^VUCCC)S^Q>>>)S^QtDDD)U%5r5AAA)U%5vuEEE)U%5q%@@@)S^QtDDD	3	3	3	3	3S	3	3	3
gu--

d1ggv&&&A	!	!	!	!	!S	!	!	!
gu--

d1ggv&&&AE622E:::																	 									


55q999)S^\\^^DDD)S^\\^^DDD+S^\\^^LLL					S			VVE]];;Q???1A1ABBAFFFFFrctddD]I}|dd}|t|d|JdS)NrzrrTr)rLrrr?r0)rCrOr2s   rtest_from_bytes_smallzLongTest.test_from_bytes_small
sar3	=	=A

1T
**AMM#..4.88!<<<<	=	=rcGddtfdtdD}tt|D]}||ddS)NceZdZddZdS)<LongTest.test_access_to_nonexistent_digit_0.<locals>.IntegerrcJt||}d|_|S)NrA)r?r9rA)r:rrCs   rr9zDLongTest.test_access_to_nonexistent_digit_0.<locals>.Integer.__new__s!{{3.. rNrr;r
rrIntegerras(





rrdc&g|]
}dSrcr
)rrOrds  rrz?LongTest.test_access_to_nonexistent_digit_0.<locals>.<listcomp>s!4441GGAJJ444rrr)r?rLmaprT)rCintegersr"rds   @r"test_access_to_nonexistent_digit_0z+LongTest.test_access_to_nonexistent_digit_0s					c			5444d444S(##	#	#AQ""""	#	#rcdD]]}dD]X}|t||zt|t||z	tY^dS)N)TF)rr)rTrr?)rCrr's   rtest_shift_boolzLongTest.test_shift_bool"sv"	<	<E
<
<  eun!5!5s;;;  eun!5!5s;;;;
<	<	<rc
Gddt}ddddtjdzdd|d	g}|D]}|\}}|||ft|df|t|t|t|tdS)
NceZdZdS)-LongTest.test_as_integer_ratio.<locals>.myintNr r
rrr3rm*r"rr3rirr}rTFr)r?rr2as_integer_ratiorTr)rCr3rr	numeratordenominators      rtest_as_integer_ratiozLongTest.test_as_integer_ratio)s					C			QQaueeBiiH	5	5E%*%;%;%=%="I{i5E

AGGGT)__c222T+..4444		5	5rc	tddD]d}d|zdz
}|||5||dzdd|zzd|dzzz
dzdddn#1swxYwYedS)Nri)bitlenr"r)rLrUrT)rCrsr"s   rtest_squarezLongTest.test_square3s
Asmm	C	CFf!AVq11
C
C  A1v:&1!+<=ACCC
C
C
C
C
C
C
C
C
C
C
C
C
C
C
C	C	Cs,A**A.	1A.	N)T)=rrrrJrPr[rfrprsrvryr|rrrrrrrrequires_IEEE_754rrrr8rarerjrorqrurrrcpython_onlyr
bigmemtestrr2rrrrrrrrrrrrrrrrr'r\r^rhrjrqrtr
rrr:r:ssJ0
C
C
C#>#>#>N+++.+++6+++///
S
S
S>>>111'''6M6M6Mr555"000"
C0C0C0J888>;;;$Z*Z*Z*x_D_D_DB999
&&& H H HD%%%&LLLL<
Y'Y'Y'v
444
Wd*8UKKKNNLKN444
Wc)$FFF::GF:
::: 
A
A
A000000000111
   
%%% 
0   $ 7 7 7D	C	C	CH6H6H6TCACACAJLGLGLG\
===###<<<555
C
C
C
C
Crr:__main__)#unittestrrrr@rrYint_infobits_per_digitr>rrNrar`r{rrrLrOrbrr-rrrmin_expr.rr/r,rr8TestCaser:rmainr
rr<module>rs







	#Ezax
	
aD$!)%79K
L	qwANN26	qBB     #8#8#8#8#888

.
n$n$~&k>Al(BQ(F$GG*'*'*'\+++<JCJCJCJCJCx JCJCJCX.zHMOOOOOr