bgddlTddlZddlmZddlZddlZddlZ ddlZ dZ n #e $rdZ YnwxYwe rdZ ndZ e ZeZeZe ZeZeZdZdZd Zd'd Zd Zd Zd ZdZdZdZ dZ!d(dZ" GddeZ# dZ$d)dZ%dZ&dZ'dZ(dZ) dZ*dZ+ Gdd Z,Gd!d"Z-d'd#Z.d$Z/d%Z0e,Z1e2d&kr e0dSdS)*)*N) process_timec ttttj|||gSN)listmapintnumpyrandomrandom_integerslowhighlengths b/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib64/python3.11/site-packages/guppy/sets/test.pyrandom_integers_listrs0CU\99#tfXNNOOPPPc>fdt|DS)Nc:g|]}tjS)r randint).0irrs r z(random_integers_list..s%AAAasD))AAAr)rangers`` rrrs'AAAAA5==AAAArc>|||zz|ksJ|||zz|ksJdSrrabs r absorptionr!#s: A;!     A;!      rcV||z|z|||zzksJ||z|z|||zzksJdSrrrr cs r associativer%(sJ EQ;!q1u+ % % % % EQ;!q1u+ % % % % % %rc>||z||zksJ||z||zksJdSrrrs r commutativer'-s0 q5AE>>>> q5AE>>>>>>rc|$||z||zksJ||z||zksJdS|||zz ||z ||z zksJ|||zz ||z ||z zksJdSrrr#s rdeMorganr)2syQxA27""""QxA27""""""AE{q1uQ/////AE{q1uQ///////rc2||z|ksJ||z|ksJdSrr)rs r idempotencer+;s( q5A:::: q5A::::::rc^||z|ksJ||z|ksJ||z|ksJ||z|ksJdSrrrs r inclusionr-@sJ q5A:::: q5A:::: q5A:::: q5A::::::rc|||zz||z||zzksJ|||zz||z||zzksJ||z||zz||zz||z||zz||zzksJ||z||zkr||z||zkr ||ksJdSdSdSrrr#s r distributiver/Gs A;1q5QU+ + + + + A;1q5QU+ + + + + Ea!e A &1q5QU*;q1u*E E E E EAQ1q5AE>>qAvvv >>>vvrc|D]~}t||D]j}t||t||t|||D]5}t |||t |||t |||6kdSr)r+r-r'r!r%r/r))as_bscsrr r$s rtest_set_operationsr4Ns  " "A " "A aOOO 1    q!    " "Aq!$$$Q1%%%Aq!!!! "  " " "rc d}|D]}|D]}|t|t|k||k|||k||ko||k |||k||ko||ks||ko||k |||k||ko||ko ||k o||k |||k||k o||k |||k||ko||k |||k||ko||ks||ko||k dS)Nc|r|sJdSdSrrrs rimpztest_set_sub..imp\szr)len)r1r2r7rr s r test_set_subr9[s DD D DA CA#a&& !q& ) ) ) CAq1u,a!e) - - - CQQBAEOQ!VBQU C C C CQQG16G!q&jGaZ H H H CQAF 116z 2 2 2 CAq1u*QU + + + CQQBAEOQ!VBQU C C C C DDDrc |D]U}t|tt|ksJt||zt|ksJt||zt|ksJ|D]}t||ztt||zksJt||ztt||zksJt||z tt||z ksJt||z tt||z ksJאWdSr)r8rr1r2rr s r test_set_lenr<isM  2 21vvT!WW%%%%1q5zzSVV####1q5zzSVV#### 2 2Aq1u::T!a%[[!1!11111q1u::T!a%[[!1!11111q1u::T!a%[[!1!11111q1u::T!a%[[!1!111111 2 2 2rc|D]s}|D]n}|t|z||zksJ|t|z ||z ksJ|t|z||zksJ|t|z ||z ksJotdSr)rtupler;s rtest_set_convertr?ys )) ) )AtAww;!a%''''uQxx<1q5((((tAww;!a%''''uQxx<1q5(((((  )))rrctt|}t}|D]}||}t}||z } |r| |fS| Sr)rrclock) fargsNretxr starttimerxendtimeelapseds reltimerKsb U1XXAI  AtHggG !G zrc eZdZdZdZdZdS)IdSetc\t|t|dzdSN )bitsmutappendidselfrHs rrRz IdSet.append&tRUUb[)))))rc\t|t|dzdSrO)rQremoverSrTs rrXz IdSet.removerVrcXt|t|dzSrO)rQ __contains__rSrTs rrZzIdSet.__contains__s"##D"Q%%2+666rN)__name__ __module__ __qualname__rRrXrZrrrrMrMsA******77777rrMcL|}|r||z ||zdz}}t||||SNr)printr#s raddrasB A 1uq1ul1 a   Hr@cHttj| |Sr)r r randrange)lims rrrs vc** + ++rct}t}tdz}t}t}tdz}||z|z||z|zz}|S)N)r)rr ashr$dbshrFs rrandlongrks_ A A ))c/C A A ))c/C Q#!a%3,'A Hrc&i}|D] }||vrd||< |Sr_r)ldses rdictsetrps. B  B;;BqE Irct|}t|}||Sr)rprkeyssort)rmrnkss rdslistrus2 B bggiiBGGIII Irci}g}tdD]2} td}||vr||d||<n/3|S)z? randlist(n, amp) -> list of n unique random ints in [-amp,amp]'rP)rrrR)namprnrngrr s rrandlistr|sd B C 5\\ A{{ 1 1    Jrc4|j}|D] }||dSrrRrr apbits rt_appendrs1 B 3rcT|j}|D]}|t|dzdSrO)rRrSrs r t_append_idrs? B 2c77b=rceZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd'd ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&S)(TestrcdSrrrUs rtest0z Test.test0s rc (ddl}|}tgdgztgdgztgddgztgdtt dztgdtt dddzttgtdtdtdttf}t |||D] }|t usJtdtd t td |t td |t td |t td gtd z|t ttd g|t ttd g|td}|}|d z}t t|||dz}t t|||d dgz}t t|||dz}t t|||tdgz}t t||||tdgz}t|}t ||||z}t |||d z}t ||||z}|dz}t t||||z}|d dgz}t t||||z}|dz}t t||||z}|tdgz}t ||||z}|tdgz}t |d|tdgz||d z}t |||dz}t t|||d dgz}t t|||dz}t t|||tdgz}t |||dz}||z}||z}t |d||z||ztg|z|t|}|d z}t ||d zt|t||||z}t ||||z}t |t|t|||dz}t |t|||dz}t |t|||dz}t |t|||dz}t |t|||dz}t |t|||dz}t |t|||tdz}t |t|||tdz}t |t||||usJt td|t tdg|t tdgtdgz|| dksJdS)Nr)rdrfilerbl)rrri@r)%rzts&.mta(ImmBitSet([]), ImmBitSet([]), ImmBitSet([]), ImmBitSet([]), ImmBitSet([]), ImmBitSet([])) ImmBitSet([15]) ImmBitSet([4]) (~ImmBitSet([15])) ImmBitSet([0, 1]) 2 2 [0] [0, 14] [0, 3, 4, 14] [0, 3, 4, 6, 8, 14] [0, 3, 4, 6, 7, 8, 14] MutBitSet([0, 3, 4, 6, 7, 8, 14]) ImmBitSet([0, 3, 4, 6, 7, 8, 14, 37]) MutBitSet([0, 3, 4, 6, 7, 8, 14, 37]) MutBitSet([0]) [14] [3, 4] [6, 8] MutBitSet([7]) MutBitSet([0, 3, 4, 7, 8, 14, 37]) ts&. ImmBitSet([0, 3, 4, 7, 8, 14, 37]) MutBitSet([3, 4, 7, 8, 14, 37]) [3, 4, 7, 8, 37] [7, 8, 37] [6, 7, 37] MutBitSet([6, 37]) MutBitSet(~ImmBitSet([])) mt (~ImmBitSet([])) (~ImmBitSet([])) (~ImmBitSet([])) MutBitSet(~ImmBitSet([])) (~ImmBitSet([])) -1 -1 MutBitSet([]) MutBitSet([]) 0 0 MutBitSet(~ImmBitSet([])) -1 MutBitSet(~ImmBitSet([0])) -2 MutBitSet([1]) 2 MutBitSet(~ImmBitSet([])) -1 MutBitSet(~ImmBitSet([0])) -2 MutBitSet([1]) 2 MutBitSet(~ImmBitSet([])) -1 MutBitSet(~ImmBitSet([0])) -2 (~ImmBitSet([])) ImmBitSet([-1]) ImmBitSet([-1, 4]) ) ioStringIObitsetrrr`Emptyr mutcopygetvalue) rUrrBemptiesromsmsatsxss rtest1z Test.test1sy KKMMyyyByyyB yyyQCyyyDs,,,,yyyDsB!3!34444 HH 2JJ 2JJ 1II 1II 688     gA  A:::::yy fVnn1%%%% fTll#### vf~~oA&&&& faSkkF1II%A.... c&!++Q'''' c&!++Q'''' AYY    a d2hhQ f  d2hhQ q!f  d2hhQ f  d2hhQ faSkk d2hh#### fbTll BZZ bq b bq a bq b f  d2hhQ b q!f  d2hhQ b f  d2hhQ b faSkk bq b vqc{{l b&"s |+!4444 a bq f  d2hhQ q!f  d2hhQ f  d2hhQ faSkk bq a b rc  b$rT 28fRjj[B3->QGGGG BZZ a b"q&#b''3r773333 b bq rc  b#b''3r77++++ b b#b''"""" b b#b''"""" b b#b''"""" b b#b''"""" b b#b''"""" b b#b''"""" fRjj b#b''"""" fRjj b#b''""""Syyyy fRjjq!!!! fbTll#### fbTllVQC[[(q1111zz||) ))))))rcdtdDD]}dtdDD]}g}|t|t|fD]j}|t|t|fD]F}g}|||z|||z|||z |||z|||z|||z |||z|||z|||z |||z|||z|||z ||Hl|ddD]3}t ||dD]\}}t ||ksJ4АdS)Nc*g|]}tSrrk)rrs rrzTest.test2..s000(**000r c*g|]}tSrr)rjs rrzTest.test2..s444Qhjj444rrr)rrrQrRzipr ) rUrr rtatbtrrFrHs rtest2z Test.test2s200eBii000 + +A44%))444 + +fQii4&&B &))WQZZ8&& "r'*** "r'*** "r'*** "s(+++ "s(+++ "s(+++ 2#(+++ 2#(+++ 2#(+++ 2#),,, 2#),,, 2#),,, " #&&QRR&++B #B1++1"1vv{{{{{++- + + +rct}t}t}t}g}|t|t|fD]o}|t|t|fD]K}|dzr||z}n|dzr||z}n |dzr||z}|t|t|fD]}g} ||z}| t |||z}| t |||z}| t |||z}| t |||z}| t |||z}| t |||  Mq|ddD]3} t | |dD]\} } t | | ksJ4dS)Nrrr)rkrrrQrRr r) rUpoprr rtprrrrFrHs rtest3z Test.test3s JJ YY JJ JJ fQii, " "B&))WQZZ0 " "6"HBB!V"HBB!V"HBfQii4""BB"HBIIc"gg&&&"HBIIc"gg&&&"HBIIc"gg&&&2#IBIIc"gg&&&2#IBIIc"gg&&&2#IBIIc"gg&&&IIbMMMM" "0QRR& # #BB1 # #11vv{{{{{ # # #rc$d}d}tdddd|jdzzzD]}d|z}t|t|d||ft|dt ||ft|dt |t |ft|dt ||ft|dt |t |ft|dt |t |fdS)Nc^|dkr&||z}||z}||z}||z}||z}|dz}|dk$dSdSNrrr)ryrHys rf1zTest.test4..f1sTa%%QQQQQQ a%%%%%%rrrir)rfasterr`rKrrQ)rUrrHexprs rtest4z Test.test4s    GUAdk"n,<%=>> = =CSA #vb4A,//dF1IIq122dF1IIvayy9::dGAJJ233dGAJJ ;<<dGAJJq :;;  = = = = = =rci}tdD]q}t}d||<d||tdzz<d||tdzz<d||tdzz <d||tdzz <rt|}t|}|d}|t |||g}|D]u}tt ||ksJt }||z}t||ksJt }||z}t||ksJt }||z}t||ksJtt }||z}t||ksJt }||z }t||ksJt }||z }t||ksJt }||z}t||ksJtt }||z}t||ksJt}||z}t||ksJt}||z}t||ksJt}||z}t||ksJtt}||z}t||ksJt}||z }|}t||ksJt}||z }|}t||ksJt}||z}|}t||ksJtt}||z}|}t||ksJwdS)N2rc4td|DS)Ncg|]}|dfSrr)rrs rrz/Test.test5..dictset..s222c#q222r)dict)bitss rrpzTest.test5..dictsets22T22233 3r) rrrrsr>rrrQOmega) rUrrrsbitsrpseqsseqr2s rtest5z Test.test5sr ) )A))CDI'(DWYY^# $'(DWYY^# $'(DWYY^# $'(DWYY^# $ $DzzT   4 4 4eDkk774==19 %9 %Cs $$----BcB88u$$$$BrB88u$$$$B #IB88u$$$$B #IB88u$$$$BcB88u$$$$BrB88u$$$$B #IB88u$$$$B #IB88u$$$$BcB88u$$$$BrB88u$$$$B #IB88u$$$$B #IB88u$$$$BcBB88u$$$$BrBB88u$$$$B #IBB88u$$$$B #IBB88u$$$$$s9 %9 %rctfD]v}||tfD]_}t|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJt|t|k||kksJaxdSr)rkrrQ)rUrr s rtest6z Test.test6<sy** ? ?A!XZZ( ? ?fQii/Q!V<<<<fQii/Q!V<<<<vayyj0aA2g>>>>vayyj0aA2g>>>> ))vayy0qbAg>>>> ))vayy0qbAg>>>> ))q z1raRx@@@@ ))q z1raRx@@@@ wqzz1qAv>>>> wqzz1qAv>>>> vayy0a1f==== vayy0a1f====gajj0a1f====gajj0a1f=====# ? ? ?rc ddl}| td}tt | |dtt ||t | |dtt ||dt | |dtt ||dt | |d|d|dtt ||t | tt ||dt | |dtt | t  dksJd d d d  fd }dfd }dfd }fd}fd} fd}fd} dfd } d|j dzz} ttdd| ttdd| ttddd| ztdd|j dzz fD]x} t|| | | || || || || | | || d|| d| | d yttd} t|| || dS)NrrrrrrzMutBitSet([]) MutBitSet([1]) 1 MutBitSet([]) MutBitSet([1]) 1 MutBitSet([]) MutBitSet([1]) 1 MutBitSet([]) MutBitSet([1, 2, 3]) 3 MutBitSet([1, 2]) MutBitSet([1, 2]) 1 MutBitSet([2]) MutBitSet([]) c4|j}|D] }||dSrr~rs rrBzTest.test7..frs1B  3  rc&d}|D] }||vr|dz } |Srr)rr srs rfluzTest.test7..fluws.A  !88FAHrc|D]}d||<dSr_rrr rs rgzTest.test7..g~s&  #  rc4|D]}|t|z}dSr bitsinglers rhzTest.test7..hs- $ $Ys^^# $ $rctd}t|||f}t|}||t |ksJ|SNr)rQrKrrsr)r{rBrtsrngs rtmszTest.test7..tmssTBq2s)$$A99D IIKKK%%%%Hrc|t|}t|d|}t||fd\}}||ksJ|SNrrE)r8rQrKr{ryreltrrs rtmsluzTest.test7..tmslusVyHHRaR!!BC"c333FC6666Jrc|t|}t|d|}t||fd\}}||ksJ|Sr)r8rrKrs rtbsluzTest.test7..tbslusTyHHBQBBC"c333FC6666Jrc2d}d}t||fS)Nrc |D] }|d|zz} dSr_rrs rrBz"Test.test7..tlo..fs*  CaKAA  rrKr{lorBrs rtlozTest.test7..tlos-B   !b#Y'' 'rcJt}d}t||fS)Nc4|D]}|t|z}dSrrrs rrBz"Test.test7..tbs..fs-&&C1%AA&&r)rrKrs rtbszTest.test7..tbss1B & & &!b#Y'' 'rc,g}t||fSrr)r{lsrBs rtlszTest.test7..tlsB!b#Y'' 'rc,i}t||fSrr)r{rnrs rtdszTest.test7..tdsrrc|t|}td|d|D}t||fd\}}||ksJ|S)Ncg|]}|dfSrrrrHs rrz-Test.test7..tdslu..s///!1v///rrr)r8rrK)r{ryrnrrrs rtdsluzTest.test7..tdsluseyHH//s2A2w///00BC"c333FC6666Jrrrw順rxi@rr) rrrQr`strrRpoprXrrrrr|)rUrrrrrrrrrrstepr{rBrrrs @@@@rtest7z Test.test7Rs9 KKMM AJJ c!ff1   c!ffaeeggs1vvA....   c!ffaeeBiiQa0000   c!ffaeeAhhAQ////       c!ffaeeggs1vvA.... c!ffaeeAhhAQ////   c!ff1 ajjllzz||            $ $ $                 ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (      DKM!q%..//q&$//00ub"T'2233UE$+e*;$;<<> E EC ##c((CCHHcc#hhC %**eeCjj%%**%S//55c??EE#sOO E E E E5<<   cc#hhC!!!!!rct}||g|dgfD]Q}dgif}|D]}|||D]}||vsJ |D]}|||D]}||vsJ RdS)Nrr)rMrRrX)rUBSr2osos rtest8z Test.test8s 244BQC) # #Bb"B   !   Bwwwww   !  # #{{{{{ # # #rc8dD]}tt|}t|}t||ksJt| ||}t|}t |}t |}t||ksJdS)N)rrwr)rrrQrrur)rUrrFmlalasr2s rtest9z Test.test9s& # #AU1XXA A77a<<<<%qb!Q//B A**CB88s????? # #rc*d}ttd}td|||td||t ddd}td||dS)Nc dD]?}td|zttt|d|f@dS)N)rrwrzeltime(bitset, (la[:%d],)))r`rKr)rrs rtestszTest.test10..testssT2 1 12Q6777fVb!fY//0000 1 1rr zla = range(400000)z la.reverse()z/la=random_integers_list(-400000,400000,400000)))rrr`reverser)rUrrs rtest10z Test.test10s 1 1 1%--  "### b   n b !'66 : : ?@@@ b rctddd}|dkrDtg}d|_||z}td||j|j|dz}|dkBdSdS)Nrr rrtest11r)rrQ_splitting_sizer` _indisize_num_seg)rUryrrs rrz Test.test11sl !'66 : :!eeB!$B  "HB (Ar|R[ 9 9 9 FA !eeeeeerc dD]@}t}tt|}||z}dD].}t|D]}||||z}/|j}dD]}td|dz|D]}g}t|D]*}|||+t|gksJ|dkr|||ksJtt|||z}||z}||jksJt||ksJԐBdS)N) @r!?Arg)rrrrr)rQrrrrrRr) rUrDrr{popixrindisizerpopss rtest12z Test.test12sz > + +ABuQxx..C #IB   q""AFF5MMMMc |H + +q!B$** + +AD"1XX33 BFF5MM222288r>>>>{{ 3;;;;uQ!}}--C#IB#r|333388s????? + + + +rcVt}|rJ|dz}|sJ|d|sJt|dgksJ |dtd#t$rYnwxYw|dt|gksJ |dtd#t$rYnwxYw|d |td#t$rYdSwxYw)Nrrzexpected ValueError for removezexpected ValueError for appendzexpected ValueError for pop)rQrXrAssertionError ValueErrorrRr)rUrs rtest13z Test.test13"sj YY v b r !  rRCyyQC C IIaLLL!!ABB B    D  ! RCyyB C IIaLLL!!ABB B    D  !  @ FFHHH!!>?? ?    DD s6 A11 A>=A>-C CC7D D('D(c d}|D]}tt|tt|ksJ|D]}tt||tt||ksJdD]D}tt|||}tt||||ksJEdS)N)iiiirrrrrrrrr) rrrrrrrrrr)rbitranger)rUrrhirrFs rtest14z Test.test14Es2 = =B %%eBii8888 = =HR,,--eBmm1D1DDDDD===DU2r40011AR 6 6771<<<<<= = = =rctddD]}t|dz|dzD]}tt||}t||}|d|ksJ|d|dz ksJt|}|d|ksJ|d|dz ksJd}|rE||}|||ksJ|||ksJd|z }|EƌdS)Nr*"r#rr)rrr+rQr)rUrr r{r2rrrHs rtest15z Test.test15Qs sB  A1Q3"%%  5A;;''a^^!uzzzz"v1}}}}R[[!uzzzz"v1}}}}1Aq >>>> ????QA    rc ltdD]I}tdD]7}tt||zt||zksJ8Jtj}| dz }tdg}|| |fD]}||zt|gksJd}|t|gd|t|gd|t| gdzddD]>\}}dD]6}dD]1}t ||||zt ||z||z|ksJ27?dS) NrrrcN ||ztd#t$rYdSwxYw)Nexpected OverflowError)r% OverflowError)r2shs rtsvzTest.test16..tsvtsE ?b%%=>>>!    s  $$r))rr)rrw)r)r) iiirrrrgrrrrr)rr rsysmaxsizer+) rUr6vmaxintminintr r7rrs rtest16z Test.test16fs)) < .s %B%B%Ba(**n%B%B%Brc,g|]}t|SrrQrCs rrzTest.test18..---AWQZZ---r) rabsrkrrrr+r!r'r)r-r%r/)rUanyrr r$s rtest18z Test.test18s1c(**oo&&'))3c(**oo&&'))3c(**oo&&'))3fxzz??7$7$'.yy711c(**oo&&'))3fxzz??7$7$'.yy711 eVQC[[hjj!!hjj!!#%B%Bc%B%B%BC------( 4( 4AA&&&&&&&&&&u9%%%%u9%%%%u9>>>>u9>>>>r6U????r6U????6U????6U????R5A:::: NNN 4 4A2vQ1a   Aq!!!A!Q**A1a((( Aq))))aQUaZMMMMQUaZMMMMaR5MMMM/0bQBhMMMM=>BFeOMMMMMM 1uA~~~~&&AEQ;!q1u+5555Q1%%%%5yA~~~~1u~~~~1uaRAF 3333331 4!( 4( 4rcZd}dgtd|dz}td|dzdD]}|td|z||z}t|}t|dksJ|ddgdksJ|ddksJ|d d ksJ|S) Nirri&r) rrrr ii i%i)r+rrr8)rUrDprimesrs rtest19z Test.test19s #Aq)))2244!Q!VQ'' - -A xAq!,,, ,FFf6{{c!!!!crc{BBBBBBBc{d""""c{d"""" rc :tj}| dz }gdddddddd d d d d ddd|dz |f|dz |df|dz |df|dz |df|dz |df|dz |f|dz |df|dz |df|dz |df|dz |dfd||fd||fd||f|||f|||dzf|||dzf|||dz f|||dz fRD]4}t|}t|tt |ksJ5 t||dt d#t $rYnwxYw|jstdt dddd|jzzD]}td|dtj t d d!dd|jzzD]l}t dddd|jzzD]M}||z ||z |f||z||z|ffD]4}t|}t|tt |ksJ5Nmtd"dS)#Nr)r)r)r)rL)rr)rrr)rrr)rrr)rQr)r`r)rar)rrr)rr)rrrW)rrUrWrrrrWi@rrr4z>bitrange testing many combinations, this may take some time...r/rr )endri done) r9r:r+rrr%r5rr`stdoutflush)rUr<r=rbrrmstargs rtest20z Test.test20s1" " "  "   "  "  "  "  "  "  "  "  "  "  "  " BY !" "BY "#" $BY "%" &BY #'" (BY #)" *CZ +" ,CZ #-" .CZ #/" 0CZ $1" 2CZ $3" 4 5" 6 7" 8 9" :VV $;" <VVRZ (=" >VVS[ )?" @Vvrz] +A" BVvs{^ ,C" " $ /$ /AF1B88tE1I..... ; VVQ ' ' '!!9:: :    D { T R S S Sq"a!DK-/00 = =A #qc " " " " J     4q1T[='899 = =2q1T[='899==B!'!VaZ ==%s^#Bxx4s +<+<<<<<<== = f s.D DDci}td}td}|}|}d||<d||<||||cxkrdksnJ||||cxkrdksnJdS)Nrrr+)rUDrr r$ris rtest21z Test.test21's  QKK QKK B B!!tqt    q      tqt!!!!r!!!!!!!!rcHdtdD}|ddDz}|d|Dz}|d|Dz}|D]X}dD]S}tj||}tj|}||ksJt |t |usJTYdS)Nc*g|]}tSrrrs rrzTest.test22..5s+++Avxx+++rrc Dg|]}dD]}dD]}t|||S))i)rri,rc)rrHrzs rrzTest.test22..6s`+++%++)++aA&&+++++r)r)rrcg|]}|Srrrs rrzTest.test22..:s%%%AaR%%%rc,g|]}t|SrrErs rrzTest.test22..;rFr)rr)rpickledumpsloadstype)rUrHrbindaaas rtest22z Test.test223s++r+++++.++++%%%%%%------ + +A + +\!S))\"%%QwwwwBxx477*****  + + +rcbGdd}ttd}||}t|}t||ksJ||dgz}t||dgzksJt|}||ksJ||dgz}||ksJdS)NceZdZdZdZdS)Test.test23..Tc||_dSr)data)rUrys r__init__zTest.test23..T.__init__Hs   rc*t|jSr)iterryrs r__iter__zTest.test23..T.__iter__KsDI&rN)r[r\r]rzr}rrrTrwGs2 ! ! ! ' ' ' ' 'rr~rr)rrrrQ)rUr~rmrr bo100rs rtest23z Test.test23Cs ' ' ' ' ' ' ' ' rOO AaDD 1IIAww!||||AAseHH E{{a3%i'''' QZZQwwww aahhU{{{{{{rcDd}t|dd\}}t||dksJtd}d}t||fd\}}t||dksJ|}d }t||fd\}}t||d ksJd }d } || fD]C} |}t| |fd\}}t||dksJD|}d } t| |fd\}}t||d ksJd} d} d}| | |fD]/} t| |fd\}}t||dksJ0| | |fD]} tdtddz}|}|t dz}|jdksJtd|jt| |fd\}}t||dksJdS)NcPt|dSrr+r)rys rrzTest.test24..f1`sA;;&&((+ +r)逖rrrrcT|}|dz}|d|dfSNrrr)r2rs rf2zTest.test24..f2is*B "HBa5"Q%< r)rrc@t|}|d|dfSrrhrr2s rf3zTest.test24..f3vsBa5"Q%= r)rrcJt|}|dz}|d|dfSrrhrs rf4zTest.test24..f4~s(B "HBa5"Q%= rcT|dz}t|}|dz}|d|dfS)Nrrrhrs rf4bzTest.test24..f4bs1 !GBB !GBa5"Q%= rcJ|}|d|dfSrrrmcs rf5zTest.test24..f5s!Ba5"Q%= rc|tdz}|}|dgz}|dgz}|d|dfS)Nrrrrrrs rf6zTest.test24..f6sI 8B<<- BB 1#IB 1#IBa5"Q%= rc|tdz}|}|dgz}|dgz}|d|dfS)Nrrrrrrs rf6azTest.test24..f6asI 8B<<- BB 1#IB 1#IBa5"Q%= rc|tdz}|dgz}|}|ddgz}|dgz}|tdz}|d|dfS)Nrrrrrr)r+rrrs rf6bzTest.test24..f6bsj 8B<<- B 1#IBB 1a&LB 1#IB 9Q<<- Ba5"Q%= r)rrr@ Inum_seg)rKr`r+rrr)rUrrr;r2rrrrrrBrrrrs rtest24z Test.test24\s , , ,b+A...1 aAvvvv h     b2%a(((1 aF{{{{ ZZ\\ ! ! !b2%a(((1 aF{{{{ ! ! !  ! ! !c  AB!bU+++DAq !HHH;;;;; ZZ\\ ! ! !b2%a(((1 aF{{{{  ! ! ! ! ! ! ! ! !c3  A!bU+++DAq !HHH;;;;;c3  A&!!HVV$<$<??@ " "A5599>>>>5599>>>>5599>>>>5599>>>>>  " "rcd}td}||tddtddz}|}|tdz}|jdksJ||d d dd d t t f}d |D}|d|Dz}|D]B}|}|}|D]}||z}||z}||ksJCdS)Nc|}|d||ksJ|d||ksJ|d||ksJ|d||ksJ|d||ksJ||z }|t gksJdS)NrMr)rrarRdiscardrXrQ)rqrFs rrzTest.test29..ts A EE"III6666 HHRLLL6666 IIbMMM6666 IIbMMM6666 HHRLLL6666AA ######ri90rXrrrrrrrrrc,g|]}t|SrrErCs rrzTest.test29..%s'''awqzz'''rc,g|]}t|SrrErCs rrzTest.test29..&rFr)rQr+rrrrk)rUrrr2allrrsr s rtest29z Test.test29s8  $ $ $"U^^ " b& ! !HVV$<$< < ZZ\\ i{Q "QAxzzHJJ;6''3'''------  A AB  QqbBwwwww   rc0t}t}|}g}d}i}d}d}|||||||gz}||rJ||gz}|||||||gksJ||gz}||||||gksJ||sJ|||||gksJ|||gz}||||gksJ|||||gksJ||||gksJ||t|dksJ| |usJ | td#t$rYnwxYwt|dksJ||usJt|}|||gz}|||gksJ||usJ|} |||gz}|| usJ||gksJtgd}t|dksJ| t|dksJt|gksJdS)Nrrrzexpected ValueErrorr8r) immnodeset mutnodesetrarRrrrXrr8rr%r&clearr) rUnodesetnsns0rr r$rirons1s rtest30z Test.test30/s \\      q  !  ggqcll66!99} qc WWaAq!_------ qc WWaAq\******vvayyyWWaAY'''''' ggqcllWWaV__$$$$ ! WWaS\\!!!! 1 WWR[[     q 2ww!||||vvxx1}}}} 8 FFHHH!!677 7    D 2ww!||||byyyy ^^ ggqcllWWaS\\!!!!}}}} ggqcll }}}}WWR[[     " "2ww!||||  2ww!||||Bxx2~~~~~~sF)) F65F6ct}ddlm}g}g}g}||}||}||}|} | ||| vsJ|| vsJ| ||| vsJ| |dksJ|| vsJ|dz||ksJ|dz||ksJ|dz||ksJ| |dksJ| |dksJ| |dksJ| || | | |td#t$rYnwxYw| | | |td#t$rYnwxYw|||ksJ|||ksJ|||ksJ| || || |d} |||ksJ|||ksJ|||ksJddl } |} | || | | | vsJd} | j |||ksJ|} | || ||| d} d}| j |||ksJdS)Nr getrefcountrzno exception from appendzno exception from remove) rr9rrarRrrrrXr%r&gccollect) rUHgrce1e2e3r1r2r3rrs rtest31z Test.test31~s ******    SWW SWW SWW ACC b Qwwww{{{{  QwwwwuuRyyA~~~~QwwwwAvR    AvR    AvR    uuRyyA~~~~uuRyyA~~~~uuRyyA~~~~ "    = HHRLLL!!;<< <    D    = HHRLLL!!;<< <    D  SSWW}}}}SSWW}}}}SSWW}}}} b  b  b SSWW}}}}SSWW}}}}SSWW}}}}  ACC    Avvvv  SSWW}}}} ACC     !   SSWW}}}}}}s$E88 FFG GGc >tddl}ddlm}|jg}g}g}||}||}||}||g} || vr|| vr|| vsJ||g} | | z} || vsJ|| vsJ| | z} || vsJ|| vsJg|g||g|||g|g||g|g||||gf} fd| D} t | | | t | | t| | t| | | D]?} | D]:}dD]5} t|| |ditd#t$rY2wxYw;@dx} x} x} x} x} x}x}}|j|j|||ksJ|||ksJ|||ksJdS)Nrrc&g|] }|Srr)rrHrs rrzTest.test32..s!   qaadd   r)zassert list(b) | a == a | bzassert list(b) & a == a & brzExpected TypeError) rrr9rrr4r<r9r?exec Exception TypeError)rUrrrrrrrrrs3rssrr rHr$rs @rtest32z Test.test32s  ******    SWW SWW SWW Ar2hKKQww27727772 QBx[[ RQwwwwQwwww R{{{{Qwwww "Bx"b"tb"Xtb"bRTEU U    B   BB'''RRR    > >A > > > >A>Qaa 0 0"555((<===% > >,0//Q//b/1/q/1q  SSWW}}}}SSWW}}}}SSWW}}}}}}sD** D7 6D7 c0d}t}t|D]'}|t|dzdzdz|dzdzdzz}(|}g}|jdksJt|dz D]W}|||t |dzdzdzdzz}|j|dzksJXt|dz D].}|||ksJ|t |dzdzdzdzz}/dS)NrXrrrrx)rrr+rrrRr)rUnumsegr2rrmsss rtest33z Test.test33sE XXv : :A (1Q3v:b=1Q3q5&.99 9BB ZZ\\{avax & &A JJrzz|| $ $ $ )QqSUFN5011 1B;!A#%%%%%vax 2 2Aq6R<<<< )QqSUFN5011 1BB 2 2rct}g}Gdd|}|}||vsJ||g||vsJdS)NceZdZdZdS)Test.test34..Xc:|D]}||dSrr~)rUrros rextendzTest.test34..X.extend6s,##AKKNNNN##rN)r[r\r]rrrrXr5s# # # # # #rr) MutNodeSetr)rUrrrrs rtest34z Test.test34/st   # # # # # # # # ACC{{{{ "QwwwwwwrctdD]C}ttfD]0Gfdd}|}|dd}t|ddgksJ|dksJ|t ddksJ|t dd ksJ|d d ksJ|d d ksJturB|dd}ddl}t|j j |dksJ2EdS)Nrc8eZdZgdZfdZfdZdZdZdS)Test.test35..X)redgreenbluecJfd|DS)NcDg|]}j|Sr)bitnamesindex)rrHclass rrz2Test.test35..X.__new__..Js)/U/U/U1 0C0CA0F0F/U/U/Ur)__new__)rrCrs` rrzTest.test35..X.__new__Is. yy/U/U/U/UPT/U/U/UVVVrc3ZK|D]}|j|VdSr)r}r)rUrrs rr}zTest.test35..X.__iter__LsB#$::d#3#355C"&-"4444455rc2dd|zS)Nz{%s}z, )joinrs r__str__zTest.test35..X.__str__Ps%499rcBt|t|kSr)r)rUothers r__eq__zTest.test35..X.__eq__Ss"4yyCJJ66rN)r[r\r]rrr}rr)rsrrrFsu777HWWWWW55555:::77777rrrrz{}rz{red}z{green}rz {red, green}rz{blue}rz(~ImmBitSet(['red', 'blue']))) r ImmBitSet MutBitSetrr immbitset mutbitsetguppy.sets.setscrsetssetsc CplBitSet)rUrrrHguppyrs @rtest35z Test.test35?sq% ?% ?A )" ?" ?7777777777 ACCAeV$$Aww5&/1111 !4//// !Yq\\22w>>>> !Yq\\22y@@@@ !QN:::: !QH4444 >>%((A++++uz/99!<<===>>>>C" ?% ?% ?rNr)(r[r\r]rrrrrrrrrrr rrr#r'r-r1r>r@rIrRrarertrrrrrrrrrrrrrrrrrrsd F   fffP+++:"#"#"#H===*L%L%L%\???,w"w"w"r # # # # # #$+++@!@!@!@F = = =****@LLL"<4<4<4|"???B " " "+++ 2pppdBBB&###$:::"""***XMMM^RRRh:::x222B (?(?(?(?(?rrc eZdZdZdZdZdS)MemStatci|_ddlm}|x|_}|jjj|_|jjj|_|jjj j |_ dS)Nr)Root) nrefsrrRheapyViewVPathPheapyc xmemstats)rUrrs rrzzMemStat.__init__ks^ TVV##-7rc|jj|j}|tj||_dSr)rrrrhorizonupdate get_objectsr)rUrs rmarkz MemStat.markvsN   FNN   !!"""rctj||j}|j}|j}|j} tj}|D]?\}}}} ||z } ||vs | ||kr#t|| fdtj | ||<@ttj n#t$rYnwxYwdx} x|_ x} x}x}x}x}x} x} }tjdS)NrY)rZrr) rrr rrrrr9 getcountsr`stderrAttributeErrorr)rUrrrrconameallofreemaxnrefrryrmrs rdumpz MemStat.dump|s+   F F F  #B,. ' ''tT3d{u$$d (;(;4,CcjAAAA"&E$K sz " " " " "    D BFEEDFEQEEdETEDE3EQ sB55 CCN)r[r\r]rzrrrrrrrjsA888 rrc g}|D]/}||ttd|zf0|D]-\}}td|z|| |.dS)Nztest%dzTest #%d)rRgetattrrr`)numbersrenufuncsryrBs r test_numsrsH 77GAx!|44566661 j1n    DFFF rcddl}ttd}|dt }d} t ||j|j|dz }*)Nr$r/r)rrrrXrrrr)rnumsrrs r test_leakr"sk III b ??DKKOOO B A$     QrcXtttddS)Nr )rrrrrr test_mainr$s" d599oor__main__r)rrr)rb)3 guppy.setsrmtimerrArr r9 numpy.randomr has_numpy ImportErrorrrrrrrQr immbitranger+immbitrr!r%r'r)r+r-r/r4r9r<r?rKrMrarrkrprur|rrrrrr"r$rr[rrrr-s  &&&&&& IIIII  BQQQQBBB         &&&  0000 ??? " " " D D D 2 2 2 )))     77777G777   ,,,,          ~?~?~?~?~?~?~?~?B,********\    DFF zIKKKKK s #--