idddlTddlZddlmZddlZddlZddlZ 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 D/opt/cloudlinux/venv/lib/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==AAAArcdSrrabs r absorptionr!#rcdSrrrr cs r associativer&(r"rcdSrrrs r commutativer(-r"rc|dSdSrrr$s rdeMorganr*2syyyyyrcdSrr)rs r idempotencer,;r"rcdSrrrs r inclusionr.@r"rcdSrrr$s r distributiver0Gr"rc|D]~}t||D]j}t||t||t|||D]5}t |||t |||t |||6kdSr)r,r.r(r!r&r0r*)as_bscsrr r%s rtest_set_operationsr5Ns  " "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)NcdSrrrs rimpztest_set_sub..imp\r"r)len)r2r3r8rr s r test_set_subr:[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]}|D]}dSrrr2r3rr s r test_set_lenr=is3  2 2 2 2AA 2 2 2rc|D]}|D]}dSrrr<s rtest_set_convertr?ys1 )) ) )AA )))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]}tdtd t td |t td |t td |t td gtd z|t t td g|t t td 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 ||t td|t tdg|t tdgtdgz|dS)Nr)rdrfilerbl)rrri@r)%rzts&.mt)ioStringIObitsetrrr`r mutcopy) rUrrBemptiesromsmsatsxss rtest1z Test.test1s; KKMMyyyByyyB yyyQCyyyDs,,,,yyyDsB!3!34444 HH 2JJ 2JJ 1II 1II 688     gA  AA 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''"""" fRjjq!!!! fbTll#### fbTllVQC[[(q111111rcdtdDD]}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]}t ||dD]\}}dS)Nc*g|]}tSrrk)rrs rrzTest.test2..s000(**000r c*g|]}tSrr)rjs rrzTest.test2..s444Qhjj444rrr)rrrQrRzip) rUrr rtatbtrrFrHs rtest2z Test.test2s00eBii000 + +A44%))444 + +fQii4&&B &))WQZZ8&& "r'*** "r'*** "r'*** "s(+++ "s(+++ "s(+++ 2#(+++ 2#(+++ 2#(+++ 2#),,, 2#),,, 2#),,, " #&&QRR&++B #B1++11++- + + +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]} t | |dD]\} } dS)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 # #11 # # #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]}t }||z}t }||z}t }||z}t t }||z}t }||z }t }||z }t }||z}t t }||z}t}||z}t}||z}t}||z}t t}||z}t}||z }|}t}||z }|}t}||z}|}t t}||z}|}dS)N2rc4td|DS)Ncg|]}|dfSrr)rrs rrz/Test.test5..dictset..s222c#q222r)dict)bitss rrpzTest.test5..dictsets22T22233 3r)rrrrstupleEmptyrQOmega) rUrrrsbitsrpseqsseqr3s rtest5z Test.test5sr ) )A))CDI'(DWYY^# $'(DWYY^# $'(DWYY^# $'(DWYY^# $ $DzzT   4 4 4eDkk774==19 %9 %CBcBBrBB #IBB #IBBcBBrBB #IBB #IBBcBBrBB #IBB #IBBcBBBrBBB #IBBB #IBBBq9 %9 %rcTtfD]}||tfD]}dSrr)rUrr s rtest6z Test.test6<sD** ? ?A!XZZ( ? ? ? ? ?rc ddl}| td}tt | |dtt ||t | |dtt ||dt | |dtt ||dt | |d|d|dtt ||t | tt ||dt | |dtt | t d dd 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)Nrrrrrrc4|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|}||SNr)rQrKrrs)r{rBrtsrngs rtmszTest.test7..tmss=Bq2s)$$A99D IIKKKHrc|t|}t|d|}t||fd\}}|SNrrE)r9rQrKr{ryreltrrs rtmsluzTest.test7..tmslusIyHHRaR!!BC"c333FCJrc|t|}t|d|}t||fd\}}|Sr)r9rrKrs rtbsluzTest.test7..tbslusGyHHBQBBC"c333FCJrc2d}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\}}|S)Ncg|]}|dfSrrrrHs rrz-Test.test7..tdslu..s///!1v///rrr)r9rrK)r{ryrnrrrs rtdsluzTest.test7..tdslusXyHH//s2A2w///00BC"c333FCJrrrw順rxi@rr) rrrQr`strrRpoprXgetvaluerrrr|)rUrrrrrrrrrrstepr{rBrrrs @@@@rtest7z Test.test7Rs KKMM AJJ c!ff1   c!ffaeeggs1vvA....   c!ffaeeBiiQa0000   c!ffaeeAhhAQ////       c!ffaeeggs1vvA.... c!ffaeeAhhAQ////   c!ff1 ajjll           $ $ $                 ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( (      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]E}dgif}|D]}|||D]}|D]}|||D]}FdS)Nrr)rMrRrX)rUBSr3osos rtest8z Test.test8s 244BQC) # #Bb"B   !      !  # # # # #rcdD]l}tt|}t|}t| ||}t|}t |}t |}mdS)N)rrwr)rrrQrrur)rUrrFmlalasr3s rtest9z Test.test9so& # #AU1XXA A&qb!Q//B A**CBB # #rc*d}ttd}td|||td||t ddd}td||dS)Nc dD]?}td|zttt|d|f@dS)N)rrwrzeltime(bitset, (la[:%d],)))r`rKr)r rs rtestszTest.test10..testssT2 1 12Q6777fVb!fY//0000 1 1rrzla = range(400000)z la.reverse()z/la=random_integers_list(-400000,400000,400000)))rrr`reverser)rUrr s rtest10z Test.test10s 1 1 1%--  "### b   n b !'66 : : ?@@@ b rctddd}|dkrDtg}d|_||z}td||j|j|dz}|dkBdSdS)Nrrrrtest11r)rrQ_splitting_sizer` _indisize_num_seg)rUryr rs 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]*}|||+|dkr|tt|||z}||z}~dS)N) @r!?Arg)rrrrr)rQrrrrrRr) rUrDrr{popixrindisizerpopss rtest12z Test.test12s4 > + +ABuQxx..C #IB   q""AFF5MMMMc |H + +q!B$** + +AD"1XX33 BFF5MM2222{{ uQ!}}--C#IBB + + + +rct}|dz}|d |dtd#t$rYnwxYw|d |dtd#t$rYnwxYw|d |td#t$rYdSwxYw)Nrrzexpected ValueError for removezexpected ValueError for appendzexpected ValueError for pop)rQrXAssertionError ValueErrorrRr)rUrs rtest13z Test.test13"s YY b !  C IIaLLL!!ABB B    D  !  C IIaLLL!!ABB B    D  !  @ FFHHH!!>?? ?    DD s5A AA4B B%$B%>C!! C/.C/c dd}|D]*}|D]%}dD] }tt|||}!&+dS)N)iiiirrrrrrrrr) rrrrrrrrrr)rr)rUrrhirrFs rtest14z Test.test14Ese2 = =B = ====DU2r40011AA= = = =rctddD]j}t|dz|dzD]Q}tt||}t||}t|}d}|r||}d|z }|RkdS)Nr+"r#rr)rrbitrangerQ)rUrr r{r3rrrHs rtest15z Test.test15Qs sB  A1Q3"%%  5A;;''a^^R[[1AQA    rcrtdD]}tdD]}tj}| dz }tdg}|| |fD]}d}|t|gd|t|gd|t| gdzddD]\}}dD]}dD]}dS) NrrrcN ||ztd#t$rYdSwxYw)Nexpected OverflowError)r& OverflowError)r3shs rtsvzTest.test16..tsvtsE ?b%%=>>>!    s  $$r))rr)rrw)r*r) iiirrrrgrr rrr)rsysmaxsizer) rUr7vmaxintminintr r8rrs rtest16z Test.test16fs!)) < .s %B%B%Ba(**n%B%B%Brc,g|]}t|SrrQrDs rrzTest.test18..---AWQZZ---r) rabsrkrrrr,r!r(r*r.r&r0)rUanyrr r%s rtest18z Test.test18sc(**oo&&'))3c(**oo&&'))3c(**oo&&'))3fxzz??7$7$'.yy711c(**oo&&'))3fxzz??7$7$'.yy711 eVQC[[hjj!!hjj!!#%B%Bc%B%B%BC------( 4( 4A NNN 4 41a   Aq!!!A!Q**A1a((( Aq))))&&AQ1%%%%&' 4!( 4( 4rcd}dgtd|dz}td|dzdD]}|td|z||z}t|}|S)Nirr)r1rr)rUrDprimesrs rtest19z Test.test19s} #Aq)))2244!Q!VQ'' - -A xAq!,,, ,FFf  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] }t|} t||dtd#t$rYnwxYw|jst dtdddd|jzzD]}t d|dtj td d!dd|jzzD]C}tdddd|jzzD]$}||z ||z |f||z||z|ffD] }t|} %Dt d"dS)#Nr)r)r)r) )rr)rrr)rrr)rrr)rQr)r`r)rar)rrr)rr)rrrS)rrQrSrrrrSi@rrr5z>bitrange testing many combinations, this may take some time...r/rr )endri done) r:r;r1r&r6rr`rstdoutflush)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" " $ /$ /AF1BB ; VVQ ' ' '!!9:: :    D { T R S S Sq"a!DK-/00 = =A #qc " " " " J     4q1T[='899 = =2q1T[='899==B!'!VaZ ==%s^== = f sC%% C21C2cfi}td}td}|}|}d||<d||<dS)Nrrr1)rUDrr r%ris rtest21z Test.test21'sA  QKK QKK B B!!rcdtdD}|ddDz}|d|Dz}|d|Dz}|D]0}dD]+}tj||}tj|},1dS)Nc*g|]}tSrrrs rrzTest.test22..5s+++Avxx+++rrc Dg|]}dD]}dD]}t|||S))i)rri,r_)rrHrzs rrzTest.test22..6s`+++%++)++aA&&+++++r)r*rrcg|]}|Srrrs rrzTest.test22..:s%%%AaR%%%rc,g|]}t|SrrFrs rrzTest.test22..;rGr)rr)rpickledumpsloads)rUrIrbindaaas rtest22z Test.test223s++r+++++.++++%%%%%%------ + +A + +\!S))\"%% + + +rcGdd}ttd}||}t|}||dgz}t|}||dgz}dS)NceZdZdZdZdS)Test.test23..Tc||_dSr)data)rUrts r__init__zTest.test23..T.__init__Hs   rc*t|jSr)iterrtrs r__iter__zTest.test23..T.__iter__KsDI&rN)r[r\r]rurxrrrTrrGs2 ! ! ! ' ' ' ' 'rryrr)rrrrQ)rUryrmrr bo100rs rtest23z Test.test23Cs ' ' ' ' ' ' ' ' rOO AaDD 1IIAAseHH QZZ aahhrcd}t|dd\}}t|td}d}t||fd\}}t||}d}t||fd\}}t|d}d } || fD];} |}t| |fd\}}t|<|}d } t| |fd\}}t|d } d } d }| | |fD]'} t| |fd\}}t|(| | |fD]} tdtddz}|}|t dz}td|jt| |fd\}}t|dS)NcPt|dSrr1r)rys rrzTest.test24..f1`sA;;&&((+ +r)逖rrrcT|}|dz}|d|dfSNrrr)r3rs rf2zTest.test24..f2is*B "HBa5"Q%< rc@t|}|d|dfSrrdrr3s rf3zTest.test24..f3vsBa5"Q%= rcJt|}|dz}|d|dfSrrdrs rf4zTest.test24..f4~s(B "HBa5"Q%= rcT|dz}t|}|dz}|d|dfS)Nrrrdrs rf4bzTest.test24..f4bs1 !GBB !GBa5"Q%= rcJ|}|d|dfSrrrmcs rf5zTest.test24..f5s!Ba5"Q%= rc|tdz}|}|dgz}|dgz}|d|dfS)Nrrrrr~rs rf6zTest.test24..f6sI 8B<<- BB 1#IB 1#IBa5"Q%= rc|tdz}|}|dgz}|dgz}|d|dfS)Nrrrrr~rs rf6azTest.test24..f6asI 8B<<- BB 1#IB 1#IBa5"Q%= rc|tdz}|dgz}|}|ddgz}|dgz}|tdz}|d|dfS)Nrrrrrr)r1rrrs rf6bzTest.test24..f6bsj 8B<<- B 1#IBB 1a&LB 1#IB 9Q<<- Ba5"Q%= rr@ Inum_seg)rKr`r1rrr)rUrrr<r3rrrrrrBrrrrs rtest24z Test.test24\sn , , ,b+A...1 ah     b2%a(((1 aZZ\\ ! ! !b2%a(((1 a ! ! !  ! ! !c  AB!bU+++DAq !HHHHZZ\\ ! ! !b2%a(((1 a  ! ! ! ! ! ! ! ! !c3  A!bU+++DAq !HHHH c3  A&!!HVV$<$<??@ " "AA " "rcd}td}||tddtddz}|}|tdz}||dd d d d t t f}d |D}|d|Dz}|D]:}|}|}|D] }||z}||z};dS)Nc |}|d|d|d|d|d||z }dS)Nrr)rrarRdiscardrX)rqrFs rrzTest.test29..tsk A EE"III HHRLLL IIbMMM IIbMMM HHRLLLAAAAri90rTrrrrrrrrrc,g|]}t|SrrFrDs rrzTest.test29..%s'''awqzz'''rc,g|]}t|SrrFrDs rrzTest.test29..&rGr)rQr1rrrk)rUrrr3allrrnr s rtest29z Test.test29s  $ $ $"U^^ " b& ! !HVV$<$< < ZZ\\ i "QAxzzHJJ;6''3'''------  A AB  Qqb   rc~t}t}|}g}d}i}d}d}|||||||gz}||gz}||gz}|||gz}|||||| |td#t$rYnwxYwt|}|||gz}|} |||gz}tgd}| dS)Nrrzexpected ValueErrorr9) immnodeset mutnodesetrarRrXrrr&r'clear) rUnodesetnsns0rr r%rirons1s rtest30z Test.test30/sf \\      q  !  ggqcll qc  qc  ggqcll !  1  q  8 FFHHH!!677 7    D ^^ ggqcll ggqcll " "  s6C C&%C&ct}ddlm}g}g}g}||}||}||}|} | || || || | | |td#t$rYnwxYw| | | |td#t$rYnwxYw| || || |d} ddl } |} | || | d} | j |} | || ||| d} d}| j dS)Nr getrefcountzno exception from appendzno exception from remove) rr:rrarRrrXr&r'gccollect) rUHgrce1e2e3r1r2r3rrs rtest31z Test.test31~s  ******    SWW SWW SWW ACC b    "    = HHRLLL!!;<< <    D    = HHRLLL!!;<< <    D  b  b  b   ACC      ACC     !   s$B88 CCD DDc tddl}ddlm}|jg}g}g}||}||}||}||g} ||g} | | z} | | z} g|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|jdS)Nrrc&g|] }|Srr)rrHrs rrzTest.test32..s!   qaadd   r)zassert list(b) | a == a | bzassert list(b) & a == a & brzExpected TypeError) rrr:rrr5r=r:r?exec Exception TypeError)rUrrrrrrrrrs3r ssrr rHr%rs @rtest32z Test.test32s  ******    SWW SWW SWW Ar2hKKQBx[[ R R"Bx"b"tb"Xtb"bRTEU U    B   BB'''RRR    > >A > > > >A>Qaa 0 0"555((<===% > >,0//Q//b/1/q/1q  s!D D D cd}t}t|D]'}|t|dzdzdz|dzdzdzz}(|}g}t|dz D]G}|||t |dzdzdzdzz}Ht|dz D] }|t |dzdzdzdzz}!dS)NrTrrrrx)rrr1rrRr)rUnumsegr3rrmsss rtest33z Test.test33s  XXv : :A (1Q3v:b=1Q3q5&.99 9BB ZZ\\vax & &A JJrzz|| $ $ $ )QqSUFN5011 1BB vax 2 2A )QqSUFN5011 1BB 2 2rctt}g}Gdd|}|}||gdS)NceZdZdZdS)Test.test34..Xc:|D]}||dSrr~)rUrros rextendzTest.test34..X.extend6s,##AKKNNNN##rN)r[r\r]rrrrXr5s# # # # # #rr) MutNodeSetr)rUrrrrs rtest34z Test.test34/sZ   # # # # # # # # ACC "rctdD]R}ttfD]AGfdd}|}|dd}tur|dd}ddl}BSdS)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)rxr)rUrrs rrxzTest.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]rrrxrr)rsrrrFsu777HWWWWW55555:::77777rrrrr)r ImmBitSet MutBitSetguppy.sets.setsc)rUrrrHguppyrs @rtest35z Test.test35?sq% ?% ?A )" ?" ?7777777777 ACCAeV$$ >>%((A++++?" ?% ?% ?rNr)(r[r\r]rrrrrrrrrrr rrr$r(r-r2r?rArJrMr]raror{rrrrrrrrrrrrrrrrrsd 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 rruzMemStat.__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)NrU)rVrr) rrrrrrrr: 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]rurrrrrrrjsA888 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_leakrsk III b ??DKKOOO B A$     QrcXtttddS)Nr)rrrrrr test_mainrs" d599oor__main__r)rrr)rb)3 guppy.setsritimerrArr r: numpy.randomr has_numpy ImportErrorr immbitsetrr mutbitsetrQr immbitranger1immbitrr!r&r(r*r,r.r0r5r:r=r?rKrMrarrkrprur|rrrrrrrrr[rrrr$s  &&&&&& IIIII  BQQQQBBB         &&&  0000 ??? " " " D D D 2 2 2 )))     77777G777   ,,,,          ~?~?~?~?~?~?~?~?B,********\    DFF zIKKKKK s #--