ՔD"[SSKrSSKJr SSKrSSKrSSKrSSKr\RRr S\ -r \ S- r Sr Sr SSS\ \ S- SS/rS r\"S\ -5Hr\R%\S- 5 \S-rM C\\Vs/sHo)PM sn\Vs/sHo*PM sn-- r\R&R(r\R&R,r\R&R0r\R&R4rS\-S\\- S- -- rS rS r"S S \R>5r \!S:Xa\RD"5 ggs snfs snf)N)supportFlUU*UU*l*UU*UU c[RRS-n[RRU- nSU-n/SQnUS:XagUS:a [ U*5*$UR 5U- nUS:aX*-OX- [ USU-)-5-nXdUS-- nXVU:H-U:a [S5e[R"[U5U5$) z1 Correctly-rounded integer-to-float conversion. rr)rrrr rrrr z%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 5/opt/alt/python313/lib64/python3.13/test/test_long.pyrr's''!+I&&2I NE$?! Av QaR    LLNY &EqyV qzT!e n:L5M&MAq1u --A U i'CDD ::eAh &&c,X- S:n[U5[U5pU(d [S5eU[U-:a [S5eUR 5UR 5- nUS:a USU-U-:dUS:aUSU*--U:aUS- n[ U[ 5[- nU[ U*S5-U[ US5-p[X5upVSU-U:dSU-U:XaUS-S:XaUS- n[R"XT5nU(aU*$U$)z-Correctly-rounded true division for integers.rzdivision by zeroz)int/int too large to represent as a floatrr) absZeroDivisionErrorDBL_MIN_OVERFLOWrrmax DBL_MIN_EXP DBL_MANT_DIGdivmodrr)abnegativedexprrresults r truedivr1UssQwH q63q6q  233 q  GHH 'AAv!q!tax-1q5QQBY!^ Q a  ,C SD! a3sA;.q !S=r?S>r@g?)ALongTestscNURUS5 U[-nU[- S-nSnSn[[R"5[S--5S-nXS:aUS- S-n[ XrU- 5nUR SUs=:*=(a [:*Os 5 XW-nXG-nUS-(a USU-S- -n[[R"5[S--5nXS:aMUR X5s=:*=(a U:*Os 5 [R"5S:aU*nU$)Nrrr?) assertGreaterSHIFTintrandommin assertTrue)selfndigitsnbits_hinbits_loanswernbitsr/bitss r getranLongTest.getran{s 7A&U?e#a'  519- . 2FarAis r getran2LongTest.getran2sHwAo4)@@F ==?S WF r!cURnURXS9 [X5upEX-X-pvX-X!-pU"XS5 U"XFS5 U"XWS5 U"XU-U-S5 US:a&URSUs=:*=(a U:Os S5 O$URX%s=:=(a S:*Os S5 SSS5 g!,(df  g=f)Nxyzmultiplication does not commutez(divmod returns different quotient than /z#divmod returns different mod than %zx != q*y + r after divmodrzbad mod from divmod) assertEqualsubTestr)r<) r=rOrPeqrr/q2r2pabpbas r check_divisionLongTest.check_divisions    \\A\ #!.DEF+126% 62Eeq A=\\\;eq(AA .u*&u*&A$$Q*<; 3<;sC4C"" C1 cURnURUS9 U"US-S5 U"US-U5 U"US- U5 U"US-U5 U"US-S5 U"US- U)5 U"X))5 U"X-U5 U"X-U5 U"X- S5 U"X)-S5 U"X)-S5 U"X)- S5 U"U*SU)-5 U"U*US- )5 SSS5 [S[-5HlnSU-nURXUS9 U"X-U- U5 U"X-X- 5 U"X-X-5 U"X*-X- U-5 U"X*-XS- )-5 SSS5 Mn g!,(df  N=f!,(df  M=f)NrOrr rr)rOrp2)rQrRrGr8)r=rOrSrrrs r check_bitop_identities_1!LongTest.check_bitop_identities_1s    \\A\  q1uaL q1uaL q1uaL q2vqM q2vrN q2vrN q2#J quaL quaL quaL q2vqM q2vrN q2vrN r1r6N rQqS6N qwAaB2.16Q;"17AF#1616"1s7AFaK(1s7Aq& M* /. ! $/.sB5EA E- E*- E< cURnURXS9 U"X-X!-5 U"X-X!-5 U"X- X!- 5 U"X- U- U5 U"X-U)U)-)5 U"X-U)U)-)5 U"X- X-X-)-5 U"X- X)-U)U--5 U"X- X-U)U)--5 SSS5 g!,(df  g=f)NrNrQrR)r=rOrPrSs r check_bitop_identities_2!LongTest.check_bitop_identities_2s    \\A\ # quae  quae  quae  quqy!  quaRj ! quaRj ! ququ!%( ) quq2v1"q&) * ququ!qb) *$ # #s BB:: Cc6URnURXUS9 U"X-U-XU--5 U"X-U-XU--5 U"X- U- XU- - 5 U"XU--X-X--5 U"XU--X-X--5 SSS5 g!,(df  g=f)N)rOrPzrv)r=rOrPrzrSs r check_bitop_identities_3!LongTest.check_bitop_identities_3s    \\Aa\ ( {AQK ( {AQK ( {AQK ( qE{QUqu- . qE{QUqu- . ) ( (s A$B  Bc ^[HnURU5 M [S[S-5nUHvnUR U5nURU5 UHKnUR U5nUR X5 UR XUR X4-S-55 MM Mx g)Nrr)specialrsrGr^rDrwr{)r=rOrarbrcrPs r test_bitop_identitiesLongTest.test_bitop_identitiessA  ) )! ,q)A+&D D!A  ) )! ,KK%--a3--aDKKq@P4QRr!c/nSnUS:aSU*pU(a0[X5upUR[U55 U(aM0UR5 U=(d S/nSSUSSSSS.U-SR S U55-$) Nrr-0b0o0x)rrhc3,# UH nSUv M g7f)0123456789abcdefN).0rJs r 'LongTest.slow_format..1s=f)!,fs)r)r`r9reversejoin)r=rObaserasignr/s r slow_formatLongTest.slow_format%s q5!!!?DA MM#a& !a A35DzDbd3D9:ww=f==> >r!cS[4S[4S[4S[4S[44Hup#U"U5nUR XR S9 URX5nURXE5 SSS5 UR US9 UR[US5U5 SSS5 M g!,(df  NG=f!,(df  M=f)Nrrrhr)rOmapper)gotr) binoctstrreprhexrR__name__rrQr9)r=rOrrrexpecteds r check_format_1LongTest.check_format_13sHq#hS B:CyPLD)C//:++A4  /;#&  S!a0'& Q::'&s #B0C0 B>  C c[HnURU5 M [S5H?n[S[S-5H%nUR U5nURU5 M' MA g)Nrhr)r~rrGr^rD)r=rOrJrbs r test_formatLongTest.test_format<sYA    "rAa1-KK%##A&.r!c SSSS-4/nUHNup#SHCnSH:nXT-U-nUnUS:Xa U[LaU*nUR[U5U5 M< ME MP UR[[S5 UR[[S 5 UR[[S 5 UR[[S 5 UR[[S S 5 UR[[SS5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[S S5S5 UR[[S!S5 UR[[S"S5 S#S$S%S&S'S(S)S*S+S,S-S,S-*/ nUHn UR[[S-U 5 M! UR[[S.5 g![a GMf=f)/N)100000000000000000000l Fx:^Ve10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000rhri)r+r)r  z r123L123l0Lz-37L0x32Lr1L+000r0o123S0x123i#0b100rz 0O123 z 0X123 z 0B100 0z+0z-00008z-012395isilllr42uこんにちは) ValueErrorrQr9 assertRaises) r=LLsvrprefixssvv invalid_basesrs r test_longLongTest.test_longDs'C( DA$7F*BBs{q ':R((R"5 8% *c62 *c62 *c40 *c62 *c7B7 *c44 T2+ UA* Wa"- Wa#. Wa!, [!,b1 Z+S1 Y*A. S!a( T1q) T1q) T1q) *c43 *c9a8!5&(!5&(S&1c6' "D   j#tT :" *c+KLO&sK K. -K. c "SS5nUR[[U"55 "SS5nUR[5 UR [U"55S5 SSS5 g!,(df  g=f)Nc\rSrSrSrSrg)*LongTest.test_conversion..JustLongicgN*rr=s r __long__3LongTest.test_conversion..JustLong.__long__r!rN)r __module__ __qualname____firstlineno__r__static_attributes__rr!r JustLongrs r!rc \rSrSrSrSrSrg)+LongTest.test_conversion..LongTruncicgrrrs r r4LongTest.test_conversion..LongTrunc.__long__rr!cg)Nrrs r __trunc__5LongTest.test_conversion..LongTrunc.__trunc__sr!rN)rrrrrrrrr!r LongTruncrs   r!rr)r TypeErrorr9 assertWarnsDeprecationWarningrQ)r=rrs r test_conversionLongTest.test_conversion}s`   )S(*5     0 1   S-t 42 1 1s !A44 Bc[U5n[U5nSRXU5nUR X#U5 g![a SnN?f=f![a SnNEf=f)NoverflowzAError in conversion of integer {} to float. Got {}, expected {}.)rrrformatrQ)r=ractualrmsgs r check_float_conversionLongTest.check_float_conversionso 1XF "#AH&&,fQ&A  3/ F  "!H "s > A A  A  AAc </SQnUH;nUR[U5U5 UR[U*5U*5 M= SHMup#[S5H9nUR[[SU-SU--55SU-SU--5 M; MO SHMup#[S5H9nUR[[SU-SU--55SU-SU--5 M; MO [[5nS[ -nXV-S-nUR[U5[5 UR[US-5[5 UR[US- 5[5 UR [[U5 UR[SU- 5[*5 UR [[U*5 UR [[US- 5 UR [[U5 UR [[US-5 UR [[SU-S- 5 UR [[SU-5 UR [[Xf-5 [S 5HnnSU-S -S-nSU-S -nUR[[U55U5 SU-S -nSU-S-nUR[[U55U5 Mp US- XUS-US- XwS-US- XfS-SU-S- SU-Xf-/ nURU5 [S S 5H0n[SS5HnURSUS--U-5 M M2 UH&n URU 5 URU *5 M( g)N) rrrllllll)rr)rrr\rrrrgr)rr rrrr))rrr)rrrrr)rrr)rr) r)rhr) )rr) r)r[r)rrrrrilrr5) rQrrGr9DBL_MAX DBL_MAX_EXPrrrlr`r) r= exact_valuesrOrPp int_dbl_max top_powerhalfway test_valuesvalues r test_float_conversionLongTest.test_float_conversionsB " A   U1Xq )   UA2Y + MDA2Y  U1a4q>%:!;QT57^LM3DA2Y  U1a4q>%:!;QT57^L3'l {N *Q. {+W5 {1}-w7 wqy)73 -8 qy)G84 -9 - ! < - : - ! < -) A > -) < - 0CDsA1 "Q&A1 "A   Sq]A .1 "A1u A   Sq]A . M;A AIw! aKaK iKM1Y; (;  <(r1A4%""1qt9q=1&!E  ' ' .  ' ' /!r!cSH'nUR[[U55U5 M) SnSS-nU*nX4U[S.nSHnUR [ [ Xe5 M UR[U5[U5S5 g)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.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.zmath.sin(huge)zmath.sin(mhuge)zmath.sqrt(huge)zmath.sqrt(mhuge)z(float(shuge) should not equal int(shuge))rQrr9rrrevalassertNotEqual)r=rOrrr namespacetests r test_float_overflowLongTest.test_float_overflows*A   U3q6]A .+Ez!E4P D   mT4 C!( E%L#e* 6 8r!c[R"[R5n[[ S55/SQ-HZnSU-n[R"U5nUR XB5 X!- n[R "U5nUR Xe5 M\ SS-*SS4HMnUR[[R U5 UR[[RU5 MO g)Nrh)ri'rrr r) rlog10er]rGassertAlmostEquallogrr)r=LOG10Er.rrrr!bads r test_logsLongTest.test_logssDFF#b ?%77C#IEJJu%E  " "5 .|H((5/C  " "3 18%Z="a'C   j$((C 8   j$**c :(r!cl^ URn"U 4SjS5m /SQnSHHnURUS- US- X3S-US-[US- 5[U5[US-5/5 MJ URSSS [R[ [R5/5 [S 5nURSSS SS -US- X3S-/5 URUVs/sHoD*PM sn5 UHnT "U5nUHnT "U5nXW:XW:- nUR XFUS 9 XF:XF:- n U"X5 U"XF:HUS:H5 U"XF:gUS:g5 U"XF:US:5 U"XF:*US:*5 U"XF:US:5 U"XF:US:5 SSS5 M M gs snf!,(df  M=f) NcF>\rSrSrSrU4SjrSrSrSrSr Sr S r g ) )LongTest.test_mixed_compares..Ratic[U[5(aXlSUlg[U[5(a[ R "[U55up#SnSnU(a9[ R"X$5n[U5nXT-U-nX&-nX4-nU(aM9US:aXS-nSnOUnSU*-nUS:aU*nXplXlg[SU-5e)Nrrzcan't deal with %r) isinstancer9rr-rrfrexpr#rr) r=rfrCHUNKtoprmrr-s r __init__2LongTest.test_mixed_compares..Rat.__init__seS))"FDFu--::c%j1DAEC JJq0 #A"|u4  !AvH!GqyBFF$$85$@AAr!c>[UT5(dT"U5nURUR-URUR-p2X#:X#:- $)N)r+rr-)r=otherrOrPRats r _cmp__0LongTest.test_mixed_compares..Rat._cmp__GsI!%--JEvv'%'')91!%((r!c*URU5S:H$Nrr5r=r3s r __eq__0LongTest.test_mixed_compares..Rat.__eq__L{{5)Q..r!c*URU5S:$r8r9r:s r __ge__0LongTest.test_mixed_compares..Rat.__ge__Nr=r!c*URU5S:$r8r9r:s r __gt__0LongTest.test_mixed_compares..Rat.__gt__P{{5)A--r!c*URU5S:*$r8r9r:s r __le__0LongTest.test_mixed_compares..Rat.__le__Rr=r!c*URU5S:$r8r9r:s r __lt__0LongTest.test_mixed_compares..Rat.__lt__TrDr!)r-rN) rrrrr0r5r;r?rBrFrIr)r4sr r4r(s(& BP )  / / . / .r!r4)rgMbP?gGz?r g?g@xDZbti)gBgCg@Cr g333333?rrrrKi N)rOrPRcmp)rQrlr9rmaxsizerrR) r=rScasestrORxrPRyrLxycmpr4s @r test_mixed_comparesLongTest.test_mixed_comparess   7 .7 .r8+A LL!c'1s7A3wCac(CFC!H6 7+  aAs{{E#++,>?@ J aAqEz1Q3Q378 %(%Qb%()AQBVBG,\\A\6Uqu-EtOqvtqy)qvtqy)qudQh'qvtqy)qudQh'qvtqy)76) 76s" F(A&F$$ F3 c bUR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS 5S 5 UR[S S 5S 5 UR[SS 5S5 UR[S S 5S5 UR[SS5S5 UR[S S5S5 UR[SS5S5 UR[S S5S5 UR[SS5S5 UR[S S5S 5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[S S5S 5 UR[S S5S 5 UR[[S!S"5S5S!5 UR[[S!S"5S5S#5 UR[[S!S"5*S5S$5 UR[[S!S"5*S5S%5 UR[[S&S'5 UR[S&S(5S)5 UR[S&S*5S+5 UR[SS,5S5 UR[S S,5S 5 UR[SS,5S-5 UR[SS,5S.5 UR[SS/5S-5 UR[SS/5S.5 UR[SS05S15 UR[SS05S.5 UR[SS25S35 UR[SS25S.5 UR[[S&S45 UR[S&S55S65 UR[SS75S85 UR[S S75S95 UR[SS75S:5 UR[SS75S;5 UR[SS<5S:5 UR[SS<5S;5 UR[SS=5S>5 UR[SS=5S;5 UR[SS?5S@5 UR[SS?5S;5 UR[[S&SA5 UR[SBSC5SD5 UR[[SSE5 UR[[SSF5 UR[[SSG5 UR[[SSH5 UR [SI[SSJ5 UR [SI[SSK5 UR [SI[SSL5 UR [SI[SSM5 UR [SN[SSO5 UR [SP[SSQ5 [ [SR5[SS5S-5Vs/sHn[U5PM sn[ [ST5[SU5S-5Vs/sHn[U5PM sn-HnUSV;dM UR[[SWU5 UR[[SU5 UR[[S U5 UR[[SXSY-U5 UR[[SXSY-*U5 M SZH:nS[H1nUR[X25[[U5U55 M3 M< gs snfs snf)\Ni[r- 123456789,z 123,456,789_ 123_456_789rr1r z-1z-3z 1z -1z+3z +1z 3rz 1r\rO3Xi4d2i.z-4d28xz 4d2z -4d2berBEz-bez-BEIz,x_x 4996_02d2_X 4996_02D2o2322z-2322z-oz oz 2322z+oz+2322z,o_o 111_4540_1322r+11z-11 10011010010z -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'_sr*rzAZzbcdoxXeEfFgGn%rrrizeEfFgG%)rrr rirbi.i) rQrr9rrassertRaisesRegexrGordchrr)r=rO format_specrs r test__format__LongTest.test__format__rs  3/=  3/=  3/?  3/? 3- C$/ 4%0 D)51 4%0 D)51 4%0 D)51 3. C$/ 3- 3- c*E2 s+V4 d+Z8 t,j9 c*E2 s+V4 C$/ C$/ D" s3T: D" s3T: T24e< T24e< *fj$?  D1;?  D1;? 3- C$/ c*F3 s+W5 d+V4 t,g6 d+W5 t,g6 d+W5 t,g6 *fj$?  D1?C 3. C%0 c*M: s+^< d+]; t,n= d+^< t,n= d+^< t,n= *fj$? t,.AB *fa7 *fa6 *fa6 *fa6 z+@&!TR z+@&!TR z+@&!US z+@&!US z+H&RSUYZ z+H&RSUYZ.33s8SXaZ-HI-HSV-HI-23s8SXaZ-HI-HSV-HIJK"22!!*faE!!*faE!!*fb+F!!*fafkJ!!*f3iMJ%KG  !;!'e k!BDH%JIs 0b'*b,cUR[[[S55 UR[[[S55 UR[[[S55 g)Ninfz-infnan)rrr9rrrs r test_nan_infLongTest.test_nan_infsD -eEl; -eFm< *c5<8r!cUR[5 SS-nSSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 g!,(df  N=f)Nrrr\r r_rr$rQr=rXs r test_mod_divisionLongTest.test_mod_divisions   0 1AA2 !$ 1% 2& B' # !$ !$ 1%2 1s B55 CcSS-nU*nURX- S5 URX"- S5 URX- S5 URX!- S5 URSU- S5 URSU- S5 URSU- S5 URSU- S5 URSU-US- -U- S5 URSU-US- -U- S5 URSU-US- -U- S5 URSU-US- -U- S5 URXS-- S 5 URS U-U- S 5 XS .nS HnUR[[XC5 M S H$n[XS5nURUSSU-5 M& SHnUR[[Xs5 M g)Nri@r r r igԄ@gԄr6i@B)rr)rrzhuge / 1zhuge / 2z huge / -1z huge / -2z mhuge / 100z mhuge / 200)z1 / hugez2 / hugez -1 / hugez -2 / hugez 100 / mhugez 200 / mhugezexpected underflow to 0 from %r)zhuge / 0z mhuge / 0)rQrrrr$)r=rrrr underflowr0zeros r test_true_divisionLongTest.test_true_divisionsEz c* , t, t, T3' T3' UC( UC( #* 2d:EB #+!4=uE #* 2e;VD #+!4J L7 .D   /t G.r!cUR[5 SS-nSSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 g!,(df  N=f)Nrrr r\rrrrs r test_floordivLongTest.test_floordivs   0 1QA2 # "% "% 1% A& 2& 2& !$ A& 2& 2& !$!2 1s C== D c lU(a*[[U5[U55S[-:ag[[ X55n[X- 5nURXESRXXE55 g![ a SnN?[ a SnNLf=f![ a SnNP[ a SnN]f=f)zVerify that the result of a/b is correctly rounded, by comparing it with a pure Python implementation of correctly rounded division. b should be nonzero.rNr zerodivisionz7Incorrectly rounded division {}/{}: expected {}, got {}) r&r#r(rr1rr$rQr)r=r*r+ skip_smallrrs r check_truedivLongTest.check_truedivs #c!fc!f-<?  &GAM*H  !qu+C )//5vaH/J L "!H  &%H &  C  ! C !s/A8 B8 B BB B3% B32B3cURSS5 URSS5 URSS5 URSS5 URSS5 URSS[--S5 URSS S[[- --5 URSSS --S 5 URS S S S--5 S[[[[[- 4nUHn[ US- US-5HinURSS[ US5--SS[ U*S5--5 URSS[ US5--SS[ U*S5--5 Mk M SSS SSS S -SSSSSSS-*4 HOn[ SS5H<nURU[ -U-U5 URU[ -U-U*5 M> MQ [ S5H8nURS[-S-S-SS--SU--S[-S-5 M: URSS5 URS S!5 [ S"5H9nURSUS--SU-5 URSU-SUS--5 M; SSS#S S$S%SS&SS S -SSSSSSS-*4H5n[ SS5H"nURS[-U-U-U5 M$ M7 [ S'S(5HnURUSS)-5 M S*SS -SS"-4Hn[ S"5Hn[R"SU5n[R"USU-S-5n URX5 URU*U 5 URX*5 URU*U *5 M M [ S+5Hn [R"S"5n [R"SS"5n [R"SU -5n [R"SSU -5nURX5 URX*5 URU *U5 URU *U*5 M g),N{ri8r\r_ige~rrmiNFriíl90r Qri0&iCrr r ii)2rhi lE,J_lJbrrrr ii4ld( r) rrr(r'rGr&r%r: randrange)r=basesrr.mrrJMr*r+rXa_bitsb_bitsrOrPs r $test_correctly_rounded_true_division-LongTest.test_correctly_rounded_true_division9sT 3" 4# 1a  1b! 1a  ;K7? 5&1|k/I+J"JK 5C</ ;ae 4L+kL8:DTBYr 2""5CQK#7q#sdA,9NO""5CQK#7q#sdA,9NO3 Q2uafb"c6BF74A3^""1%5#5#91=""1%5#5#9A2>$4sA   <! 3U:1c6AAqDHl?50 2  1d# 02GHtA   rAaCy"a% 0   r1ub1Q3i 0 Q1aRUAsFb"c6BF74A3^""1l?1#4q#8!<$4 sBA   q!T' * "c'2t8,A4[$$Q*$$Q!A.""1(""A2q)""1b)""A2r* !-uA%%d+F%%a.F  F+A  AvI.A   q $   q" %   r1 %   rA2 &r!cUR[5 SS- SSS5 UR[5 SSS-*- SSS5 UR[5 SS- SSS5 UR[5 SSS-*- SSS5 g!,(df  N=f!,(df  Nj=f!,(df  NX=f!,(df  g=f)Nrr_rr)rrrs r test_negative_shift_count"LongTest.test_negative_shift_counts   z * "H+   z * AI, +   z * "H+   z * AI, + * + * * * * * * *s.B B' B8 C  B$' B58 C CcTURSS5 URSS5 UR[5 SS- SSS5 URSSS--S5 UR[5 SSS-*- SSS5 g!,(df  NN=f!,(df  g=f)Nrr rr)rQrrrs r test_lshift_of_zeroLongTest.test_lshift_of_zeros # !$   z * G+ qDy)1-   z * 19 + *+ *+ *sB5 B B B'cURS[R-S5 URS[RS--S5 g)NrrrQrrMrs r test_huge_lshift_of_zero!LongTest.test_huge_lshift_of_zeros: ckk)1- s{{Q/3r!rg?F)memusedry_runcxURS[RS--SS-[R-5 g)Nrrr)r=sizes r test_huge_lshiftLongTest.test_huge_lshifts/ s{{T12AI4LMr!cSS-nURSU- S5 URSU- S5 URSU- S5 URSU- S5 URS S -U- S5 URS S -*U- S5 g) Nrrrrir icirrrQ)r= huge_shifts r test_huge_rshiftLongTest.test_huge_rshifts$Y  z)1- #*,b1 +Q/ %J.3 C:-q1 !S&J.3r!g?cSS-S-[R-nURU[RS-- SS-S-5 URU[RS-- S5 g)Nrrrirgrr)rrMrQ)r=rrs r test_huge_rshift_of_huge!LongTest.test_huge_rshift_of_huges]cRCKK/ #++/2Q#XNC #++"45q9r!cURSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS5 URSS-S - SS -5 URSS-*S - SS -*5 URSS-S -S - SS -5 URSS-S -*S - SS -*S - 5 g) Nriii1iirrrrrs r test_small_rshiftLongTest.test_small_rshifts "% S) "% S) C( t, C( t, C1af- !S&A3w/ !S&1**AsF3 1c6A:!+afWq[9r!cURSS5 URSS5 URSS5 URSS5 URSS-S- SS-5 URSS-*S- SS-*5 URS[[-- [- [*5 UR[S- [[-- [- [*5 g) Nrr rr_rrwr)rQBASEr8rs r test_medium_rshiftLongTest.test_medium_rshifts !$ R( A& r* C1af- !S&A3w/ !d4i-E1D59 $(T$Y.584%@r!cURSS5 URSS5 URSS5 URSS5 URSS-S- SS-5 URSS-*S- SS-*5 g)Nrr rrr`rrs r test_big_rshiftLongTest.test_big_rshifts~ 1% b) Q' + C2q"u- !S&BB/r!cURSS5 URSS5 URSS5 URSS5 URSS-S-SS-5 URSS-*S-SS-*5 g) NTiibirrrrrrs r test_small_lshiftLongTest.test_small_lshifts~ "% S) 4( e, C1af- !S&A3w/r!cURSS5 URSS5 URSS5 URSS5 g)NiTiii&$ !)1- !)1- "*A. !)1- "*A.$>C3A   Q[[]A .   a!e..0# 6   a"f//11 5   q1um668#' B >r!c 0SS_SS_SS_SS_SS_SS_SS_S S_S S_S S_SS_S S_S S_SS_SS_SS_SS_SSSS.En[SSS5H^nUR5HGup4[X2-S5nXB-nURXV5 UR [ U5[ 5 MI M` UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[SS5S5 UR[S S5S5 UR[S!S5S"5 UR[S#S5S"5 UR[S$S5S%5 UR[S&S5S%5 UR[S'S5S(5 UR[S)S*5S+5 UR[S,S*5S-5 UR[S.S5S/5 UR[S.S5S05 UR[S.S*5S15 UR[S.S25S35 UR[S.S45S55 UR[S.S65S75 UR[S.S85S95 UR[S.S:5S;5 UR[S.S<5S=5 UR[S.S>5S?5 UR[S.S@5S5 UR[S.SA5S5 UR[S.SB5S5 [SS"5HMn[SU-SC-S*5nSU-SD-nURXW5 UR [ U5[ 5 MO [S5Hgn[S"5HUn [R"SESF5n [X5nURXZ5 UR [ U5[ 5 MW Mi SGSHSISJSS"-SS"-4Hn UR[SKU 5SK5 M! [S"5HUn [R"SESF5n [U 5nURXZ5 UR [ U5[ 5 MW SLn U Hn UR[[SU 5 M! g)MNrrrr\rrgrrhr rrrrrr[rrr)riir ijr i8ikrtiii1r3rirri,iԡr_iiil!l !l~!l!rl !rl`!il!rl'!ilz+ilv|orl,GxiiiiFiirrrrri{)brianry) rGitemsroundrQrtyper9r:rrr)r= test_dictoffsetrrrrexpectrrJrOhuge_n bad_exponentsrs r test_roundLongTest.test_roundps8Qq8!A8q8Aa818a8r8R8!"28'(8-/846r8;=b8BDR8IKB88r8&(RB8 D#r*F!)AHb)8  / d3i- *+ tR$/ tR$/ sB. sB+ sB+ r2* q"q) q"q) r2* r2* r2, sB- sB- sB- sB- vr*F3 vr*F3 {B/= {B/= {B/= {B/= {B/= {B/= {B/= {B/= {B/= {C0+> {C0!4 {C0!4 {D115r3AA+CUV^F   S ) MM$s)S )  qA3Z$$VU3Ak  ( d3i-   uguafb#gEF   U7F3W =FsA  /A(C   S $ MM$s)S ) + A   i1 5r!c ^S=U4Sjjn0SS_SS_SS_S S _S S _S S_SS_SS_SS_SS_SS_SS_SS_SS_SS _S!S"_S#S$_nU"US%S&S'9 0SS_SS_SS_S S _S S _S S_SS_SS(_SS)_SS_SS_SS*_SS_SS+_SS,_S!S-_S#S._nU"US/S&S'9 SSSS SSSS0S1S2S3. nU"US%SS'9 SSSS SS*SS+S1S4S3. nU"US/SS'9 TR[SRSS%SS'9 TR[SRSS%S&S'9 TR[SRSS/SS'9 TR[SRSS/S&S'9 TR[SRS5S%SS'9 TR[SRS5S/SS'9 TRSRSS%5S65 TRSRS7S%5S85 TRSRS7S%5S95 TRSRS7S%S&S'9S:5 TR[SRSS%5 "S;S<[5nTRSRSU"S%55S5 TRSRSU"S/55S65 g)>NFc f>SSjnUR5HupETRUR[U5XS9U5 [U5S:Xa.US:Xa(U(d!TRUR5U5 TRU"U[U5XS9U5 M g![a!n[ SR XAU55UeSnAff=f![a n[ SR U55UeSnAff=f![a!n[ SR XAU55UeSnAff=f) Nc^US:Xa [U5nOUS:Xa[[U55n[U4SjW55$)Nlittlerc3:># UHnTUS-- S-v M g7f)rNr)rrJrs r rSLongTest.test_to_bytes..check..equivalent_python..s>1a1Q3h$.s)rGreversedbytes)rlength byteordersignedorders` r equivalent_python@LongTest.test_to_bytes..check..equivalent_pythons;(!&ME%'$U6]3E>>>>r!rz4failed 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)rrQto_bytesr ExceptionAssertionErrorrtestsrrrrrerrr=s r check%LongTest.test_to_bytes..checks? ?#(++-C$$ c(mY N "x=A%)u*.SubStri:rNrrrrrrr!r SubStrrS: r!rUr!)rrr"rQr)r=r(tests1tests2tests3tests4rUs` r test_to_bytesLongTest.test_to_bytess% OP w w    '  '  +       +  +      ;  O  ? O! " o# & feD) w w    '  '  +       +  +      ;  K  ? O! " o# & fht,"   feE*"   fhu- -#E%P -#E$O -#HUS -#HTR -"5O -"8ER !a/5 !a/1HI !a/1HI "q%=0 2 -!q%@ S  !a7A !a)9:C@r!c 2 ^SMU4Sjjn0SS_SS_SS_SS_S S_S S _S S _S S_SS_SS_SS_SS_SS_SS_SS_SS_SS _S!S"S#S$S%.EnU"US&S'S(9 0SS_SS_SS_SS_S S_S S _S S _S S_SS_SS_SS_S)S_S*S_SS_SS_S S_SS _S!S"S#S$S+.EnU"US,S'S(9 SSSSS-SSS S.S"S/S0. nU"US&SS(9 SSSSS-SSS S.S"S/S1. nU"US,SS(9 "S2S3[5nTR[URSS&55U5 TR URSS&5S5 TR[URSS&SS(95U5 TR URSS&SS(9S5 TR[URSS,55U5 TR URSS,5S5 TR[URSS,SS(95U5 TR URSS,SS(9S5 TR [R/S4QS&S'S(9S#5 TR [RS4S&S'S(9S#5 TR [R[ S55S&S'S(9S#5 TR [R[ S55S&S'S(9S#5 TR [R[ R "S6S55S&S'S(9S#5 TR [R[S55S&S'S(9S#5 TR[[RS/S&5 TR[[RS/S75 TR[[RS/S85 TR[[RS9S&5 TR[[RS:S&5 TR[[RSS&5 TR[[RSS&S'5 TR[URS9S&5 TR[URS:S&5 TR[URSS&5 TR[[RSS&S'5 "S;S<[5nURSS&5nTR[U5U5 TR US=5 "S>S?[5n U RSS&5nTR[U5U 5 TR US5 TR [US@SA5SB5 "SCSD5n "SESF5n "SGSH5n "SISJ5n TR [RU "55S5 TR[[RU "55 TR[[RU "55 TR[[RU "55 "SKSL[5nTR [RSU"S&55S5 TR [RSU"S,55S5 g)NNFc 4>SSjnUR5HuupETR[RXAUS9U5 US:Xa-U(d&TR[RU5U5 TRU"XAUS9U5 Mw g![a!n[ SR XAU55UeSnAff=f![a n[ SR U55UeSnAff=f![a!n[ SR XAU55UeSnAff=f)NcUS:Xa [U5nOUS:Xa[[U55n[S[W555nU(a(U(a!USS-(aUSS[ U5---nU$)Nrrc34# UHupX!S--v M g7f)rNr)rrJr+s r rULongTest.test_from_bytes..check..equivalent_python..GsG-FTQqS-Fsr rrr)r]rsum enumerater) byte_arrayrrlittle_orderedrs r rBLongTest.test_from_bytes..check..equivalent_pythonAso(%)*%5N%'%)(:*>%?NGY~-FGGn.2Dt2KaN 3333Ar!rz6failed to convert {} with byteorder={!r} and signed={}rr zeCode equivalent from docs is not equivalent for conversion of {0} with byteorder={1!r} and signed={2}r!)rrQr9 from_bytesr#r$rr%s r r('LongTest.test_from_bytes..check@s- #(++-C$$tvF "%f4((NN40$& C$$)$&I -#0 !C(P8:?BCC%4,I#VD\+0344!C(P8:@CCCsG$B%B?5C, B<B77B<? C) C$$C), D6DDr!rr*sr+rrGr,r rMr.r-r/rr1r0r2rr4r3r6r5r8r7r9rr;r:r=r<r>r?rArC)rLr@rBrDrTrrErF)rHrIrJrKrrrOrP) r!r*r+r2r/r,r;r=rLrMrN) r!r*r+r2r/r,rGr1rHrMrQc\rSrSrSrg)'LongTest.test_from_bytes..myintirNrTrr!r myintrjrVr!rk)rrrrBBzbigzlittlerc\rSrSrSrSrg)(LongTest.test_from_bytes..myint2ic2[RXS-5$)Nr)r9__new__)clsrs r rq0LongTest.test_from_bytes..myint2.__new__s{{3 22r!rNrrrrrqrrr!r myint2ros 3r!rurc\rSrSrSrSrg)(LongTest.test_from_bytes..myint3icSUlg)Nbarfoo)r=rs r r01LongTest.test_from_bytes..myint3.__init__s  r!rzN)rrrrr0rrr!r myint3rws !r!r}r{noneryc\rSrSrSrSrg),LongTest.test_from_bytes..ValidBytesicg)Nr+rrs r __bytes__6LongTest.test_from_bytes..ValidBytes.__bytes__sr!rNrrrrrrrr!r ValidBytesrs r!rc\rSrSrSrSrg).LongTest.test_from_bytes..InvalidBytesicg)Nabcrrs r r8LongTest.test_from_bytes..InvalidBytes.__bytes__sr!rNrrr!r InvalidBytesrs r!rc\rSrSrSrg).LongTest.test_from_bytes..MissingBytesirNrTrr!r MissingBytesrsCr!rc\rSrSrSrSrg).LongTest.test_from_bytes..RaisingBytesicSS- g)Nrrrrs r r8LongTest.test_from_bytes..RaisingBytes.__bytes__s Ar!rNrrr!r RaisingBytesrs r!rc\rSrSrSrg)(LongTest.test_from_bytes..SubStrirNrTrr!r rUrrVr!rUr!)r9rrrgrQ bytearrayarray memoryviewrrrgetattrr$r)r=r(rWrXrYrZrkrurJr}rrrrrUs` r test_from_bytesLongTest.test_from_bytes?s+ C\  Q    Q    R     T  T    S         ! " # $ "#%+ . feD)  Q    Q    R     T  T    S         ! " # $ "#%+ . fht,"   feE*"   fhu- C  d5++GU;?G ))'8D F *cnnseUC *cnnqc9E *cnnqc<H )S^^R? )S^^VUC )S^^Q> )S^^QtD )U%5%5r5A )U%5%5vuE )U%5%5q%@ )S^^QtD 3S 3   gu - d1gv& A !S !   gu - d1gv& A E62E:         5q9 )S^^\^D )S^^\^D +S^^\^L S  VE];Q? 1ABAFr!c[SS5H7nURSSS9nUR[R USS9U5 M9 g)NrrrTr)rGr"rr9rg)r=rJr+s r test_from_bytes_smallLongTest.test_from_bytes_small sAr3A 1T *A MM#..4.8! < r!cURSR55 URSR55 URSR55 g)Nr rr)r< is_integerrs r test_is_integerLongTest.test_is_integers; )* () ()r!c"SS[5n[S5Vs/sH o!"S5PM nn[[U5HnURUS5 M gs snf)Nc\rSrSrSSjrSrg).Integeric>[RX5nSUlU$)Nr{)r9rqr{)rrrr=s r rqDLongTest.test_access_to_nonexistent_digit_0..Integer.__new__s{{3.  r!rzN)rrtrr!r Integerrs r!rrr)r9rGmaprQ)r=rrJintegersrs r "test_access_to_nonexistent_digit_0+LongTest.test_access_to_nonexistent_digit_0sR c  ).d 4 1GAJ 4S(#A   Q "$5sAcSHNnSHEnUR[X-5[5 UR[X- 5[5 MG MP g)N)TF)rr)rQrr9)r=rrs r test_shift_boolLongTest.test_shift_bool'sD"E  en!5s;  en!5s; #r!c R"SS[5nSSSS[RS-SSU"S 5/nUHqnUR5upEUR XE4[U5S45 UR [ U5[5 UR [ U5[5 Ms g) Nc\rSrSrSrg)-LongTest.test_as_integer_ratio..myinti/rNrTrr!r rkr/rVr!rkrhrrrTFr)r9rrMas_integer_ratiorQr)r=rkr&r numerator denominators r test_as_integer_ratioLongTest.test_as_integer_ratio.s C QQ aueBiHE%*%;%;%= "I   i5E A G   T)_c 2   T+. 4 r!c [SS5HJnSU-S- nURXS9 URUS-SSU--SUS--- S-5 SSS5 ML g!,(df  M^=f)Nri)bitlenrr)rGrRrQ)r=rrs r test_squareLongTest.test_square8ss AsmFf!AV1  A1v:&1!+<=AC21$11s (A A+ c UR[R[RR 5 SSS[ S- S4S[ - S4[ S4[ *S4[ [ -S- S4[ [ -S4/ nUHaup#URU5 URUR5[R[RU--5 SSS5 Mc "SS[5nURUR[RR 5 UH_up#URU5 URU"U5R5URURU--5 SSS5 Ma [RS5 g!,(df  GM3=f!,(df  M=f) N)rr)rr)r rrrr\c\rSrSrSrg)'LongTest.test___sizeof__..MyInti^rNrTrr!r MyIntr^rVr!r) rQr9 __itemsize__rint_info sizeof_digitrrR __sizeof__ __basicsize__object)r=rrr>rs r test___sizeof__LongTest.test___sizeof__Dsq ))3<<+D+DE    !VQK tVQK 1IUAJ $Y]A  $YN  *NEe$  $$&%%(8(87(BB%$* C  ++S\\-F-FG)NEe$  %L++-''%*<*N+.+6 +/ S >1'6Mr5"0" C0C0J8>;$Z*x_DB9 & HD%&L< Y'Y'v 44   d*8UKNLN4   c)$F:G: : A000 1    %%  0 $ 7D CH6TCAJLG\ == * #<5 C'r!r3__main__)#unittestrrrr:rrrbits_per_digitr8rrIr_r^r~rrrGrJr`rr&rrrmin_expr'rr(r%rr1TestCaser3rmainrqs0r rs`  ##Ez ax   aD$!)%79K L qwA NN26 qB  1B #81B#8 88 ..  nn$$ nn$$ ~~&& k>A l(BQ(F$GG*'\+ E E