:thK`SSKrSSKrSSKrSSKrSSKJr SSKJr \RS:r S4Sjr Sr Sr "SS \R5r\R r"S S \5rS r"S S\5r"SS\5r"SS\5r"SS\\5r"SS\\5r"SS\5r"SS\R5r"SS\5r"SS\R5r"SS 5r"S!S"\5r"S#S$\\R5r"S%S&\\R5r "S'S(\\R5r!"S)S*\5r""S+S,\"\R5r#"S-S.\"\R5r$"S/S0\"\R5r%"S1S2\R5r&\'S3:Xa\RP"5 gg)5N)assert_python_ok)HashablecUS:Xa [U5$[U5n[U5HnSU-S-S-nUS- S-X#'M [U5$)NriCiÞ&)bytes bytearrayrange)xlengthoutis 5/opt/alt/python313/lib64/python3.13/test/test_hash.pylcgrsZAvV} F C 6] aZ' !Z /r'T! :cXUS:aUS- nOUnXS- - S-nUS:aUS- nX14$UnX14$)Nll lrr)uint64int64uint32int32s r pysiphashrsW  '"|#z 1F '" < <rc[RRS;nSnU(aU$[R"U5"U5$)N>fnv siphash13 siphash24z$Requires SipHash13, SipHash24 or FNV)sys hash_info algorithmunittestskip)testokmsgs rskip_unless_internalhashr(+s7  $E EB 0C438==-d33rc2\rSrSrSrSrSrSrSrSr g) HashEqualityTestCase2c[[[U55nUSSH"nX2S:wdM URSU<35 M$ g)Nrzhashed values differ: )listmaphashfail)selfobjlisthashedhs r same_hashHashEqualityTestCase.same_hash4s=c$()A1I~ ABrcURSSSS5 URSSS5 URSSS 5 URS S S 5 g) Nr-g?y?rygygy)r6r2s rtest_numeric_literals*HashEqualityTestCase.test_numeric_literals<sD q!S(+ q#x( r4+ r4+rc LUR[S5[S5[S5[S5[S5[S55 UR[S5[S55 UR[S5[S55 UR[S5[S55 UR[S5[S55 UR[S5[S55 UR[S 5[S 55 g) Nr-1z1.0iirlllr6intfloatcomplexr<s rtest_coerced_integers*HashEqualityTestCase.test_coerced_integersBs s1vs1vuQx3xu / s6{E&M2 s7|U7^4 s7|U7^4 s5z5<0 s6{E&M2 s5z5<0rcUR[S5[S55 UR[S5[SS55 g)Ng쏈b=~g?r9rAr<s rtest_coerced_floats(HashEqualityTestCase.test_coerced_floatsMs1 s8}eHo6 uSz73#45rcSS-n[S5HQn[S5H?nXSU-n[U5USU-nUR[U5[U55 MA MS g)Ns#123456789abcdefghijklmnopqrstuvwxyzr)r memoryview assertEqualr0)r2brjaligned unaligneds rtest_unaligned_buffers+HashEqualityTestCase.test_unaligned_buffersQsc 3S 8rA2Yc!e*&qM!CE2   gY@rrN) __name__ __module__ __qualname____firstlineno__r6r=rErHrR__static_attributes__rrrr*r*2sC, 16Arr*c\rSrSrSrg) DefaultHash]rNrTrUrVrWrXrrrrZrZ]s4rrZ*c\rSrSrSrSrg) FixedHash`c[$N)_FIXED_HASH_VALUEr<s r__hash__FixedHash.__hash__as  rrNrTrUrVrWrdrXrrrr_r_`!rr_c\rSrSrSrSrg) OnlyEqualitydcXL$rbrr2others r__eq__OnlyEquality.__eq__es }rrN)rTrUrVrWrnrXrrrriridsrric\rSrSrSrSrg)OnlyInequalityhcXL$rbrrls r__ne__OnlyInequality.__ne__is   rrN)rTrUrVrWrtrXrrrrqrqhrgrrqc\rSrSrSrg)InheritedHashWithEqualitylrNr\rrrrwrwls$rrwc\rSrSrSrg)InheritedHashWithInequalitymrNr\rrrrzrzmsdrrzc\rSrSrSrSrg)NoHashoNrrfrrrr}r}osHrr}c\rSrSr\"5\"5\"5/r\"5\ "5\ "5/r \ "5\ "5/rSrSrSrSrSrSrg) HashInheritanceTestCasercrURH'nUR[U5[U55 M) grb)default_expectedrMr0 _default_hashr2objs rtest_default_hash)HashInheritanceTestCase.test_default_hashs+((C   T#Y c(: ;)rchURH"nUR[U5[5 M$ grb)fixed_expectedrMr0rcrs rtest_fixed_hash'HashInheritanceTestCase.test_fixed_hashs'&&C   T#Y(9 :'rc`URHnUR[[U5 M grb)error_expected assertRaises TypeErrorr0rs rtest_error_hash'HashInheritanceTestCase.test_error_hashs$&&C   is 3'rctURUR-nUHnURU[5 M grb)rrassertIsInstancer)r2objectsrs r test_hashable%HashInheritanceTestCase.test_hashables5((&&'C  ! !#x 0rcVURHnURU[5 M grb)rassertNotIsInstancerrs rtest_not_hashable)HashInheritanceTestCase.test_not_hashables"&&C  $ $S( 3'rrN)rTrUrVrWobjectrZrqrr_rwrzrr}rirrrrrrrXrrrrrrs`# &( k/113Nh"nN<;41 4rrc0\rSrSr\"S5rSrSrSrg)DefaultIterSeq c,[UR5$rb)lenseqr<s r__len__DefaultIterSeq.__len__s488}rc URU$rb)r)r2indexs r __getitem__DefaultIterSeq.__getitem__sxxrrN) rTrUrVrWr rrrrXrrrrrs )Crrcb\rSrSr\"\"S55\"\"55\"SS5/rSr Sr g)HashBuiltinsTestCasercg)NrrrrrHashBuiltinsTestCase.sArrc[RnURH$nUR[ U5U"U55 M& grb)rrdhashes_to_checkrMr0)r2rrs r test_hashes HashBuiltinsTestCase.test_hashess4 ''C   T#Y c(: ;(rrN) rTrUrVrW enumerater iterrrrrXrrrrrs/ r+N,-Iq)O 0i el;u)ilg,gi5$fl`bTNV)i l9\R>|iQlkT> !   " "1b ) t~~B?Crr) rTrUrVrWrrrrrr(rrrXrrrrrs EI : N  M N N Q P  O N P O R   " # # " # C2Lh @O@@ DDrrcd\rSrSr\"S5r\"S5r\"S5r\S5r \S5r Sr g) StrHashRandomizationTestsi#abc abcdefghijku äú∑ℇc:UR[S5S5 g)NrrMr0r<s rtest_empty_string+StrHashRandomizationTests.test_empty_string)s b1%rcURSS5nURURURSS9U5 URSS5nURURURSS9U5 g)Nrrrr])rrMr repr_ucs2rs rtest_ucs2_string*StrHashRandomizationTests.test_ucs2_string-sh  " "1a ( t~~A>B  " "1a ( t~~B?CrrN) rTrUrVrWreprrrr r(rr rXrrrrr#sG KE]#I\"I&&DDrrcD\rSrSr\"S5r\"S5r\S5rSr g)BytesHashRandomizationTestsi4sabcs abcdefghijkc:UR[S5S5 gNrrrr<s rr-BytesHashRandomizationTests.test_empty_string9s cA&rrN) rTrUrVrWrrrr(rrXrrrrr4s' LE^$I''rrc,\rSrSrSrSr\S5rSrg) MemoryviewHashRandomizationTestsi=zmemoryview(b'abc')zmemoryview(b'abcdefghijk')cLUR[[S55S5 gr)rMr0rLr<s rr2MemoryviewHashRandomizationTests.test_empty_stringBs jo.2rrN) rTrUrVrWrrr(rrXrrrrr=s E,I33rrc\rSrSrSrSrg) DatetimeTestsiFc SU-$)Nz import datetime; print(hash(%s))rrs rrDatetimeTests.get_hash_commandGs 1E99rrN)rTrUrVrWrrXrrrrrFs:rrcH\rSrSr\"\R "SSS55rSrg)DatetimeDateTestsiJi*rrN) rTrUrVrWrdatetimedaterrXrrrrrJs tR, -Errc P\rSrSr\"\R "SSSSSSS55rS rg ) DatetimeDatetimeTestsiMr-rrr r rN)rTrUrVrWrrrrXrrrr"r"Ms# ""1aAq!Q7 8Err"cD\rSrSr\"\R "S55rSrg)DatetimeTimeTestsiPrrN) rTrUrVrWrrtimerrXrrrr&r&Ps q! "Err&c\rSrSrSrSrg)HashDistributionTestCaseiTc Sn[S[U55HnUSUnURUS9 [5n[5n[S5HBn[ U[ U5-5nUR US-5 UR US-5 MD UR[U5SU5 UR[U5SU5 SSS5 M g!,(df  M=f) Nabcdefghabcdefgr-)prefixr rK)r rsubTestsetr0chradd assertGreater)r2baserr,s15s255cr5s rtest_hash_distribution/HashDistributionTestCase.test_hash_distributionVs q#d)$A"1XFV,eusAVc!f_-AGGAG$HHQX&$ ""3s8Q7""3t9c6:-,%,,s BC C) rN)rTrUrVrWr9rXrrrr)r)Ts;rr)__main__)r))rrr r#test.support.script_helperrcollections.abcrmaxsizerrrr(TestCaser*rrdrrZrcr_rirqrwrzr}rrrrrrrrrrr"r&r)rTmainrrrrAs  7$ ;; $4'A8,,'AT &!!6!V!? <>B)^BV!4h//!4JV <8,, <((8[D'=[D|D @ ( 1 1D"'"B"*"3"3'3'G'/'8'83:*:. x'8'8.9M8+<+<9# x'8'8#;x00;$ z MMOr