python (3.12.0)

(root)/
lib/
python3.12/
test/
__pycache__/
test_context.cpython-312.opt-2.pyc

͑e{ddlZddlZddlZddlZddlZddlZddlZddlZddl	m
Z
ddlmZ	ddl
mZdZGddej"ZGdd	ZGd
deZGdd
ZGddeZGddeZej4edudGddej"Zedk(rej:yy#e$rdZYwxYw)N)support)threading_helperhamtcD	tjfd}|S)NcXtj}|jg|i|SNcontextvarsContextrun)argskwargsctxfuncs   E/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_context.pywrapperz!isolated_context.<locals>.wrappers,!!#swwt-d-f--)	functoolswraps)rrs` risolated_contextrs(4__T..NrceZdZdZedZdZdZdZdZ	dZ
dZd	Zed
Z
dZdZd
ZedZedZedZedZedZdZeej0dZy)ContextTestc|jtd5tjddd|jtd5tjddddtjd}|j	|j
d|j
t5d|_ddd|jt|tdy#1swYxYw#1swYxYw#1swYFxYw)Nztakes exactly 1z
must be a straaabbb)
assertRaisesRegex	TypeErrorr
ContextVarassertEqualnameassertRaisesAttributeErrorassertNotEqualhash)selfcs  rtest_context_var_new_1z"ContextTest.test_context_var_new_1s

#
#I/@
A	%""$	%
#
#I
?	&""1%	&
""5)'


~
.	AF		
DGT%[1	%	%	&	&		s#C#
C/.C;#C,/C8;Dctjd}|jdt|tjdd}|jdt|g}tjd|}|j	||jdt||jdt||jd}|jt|t||j
dt||j||jdt|y)Na{default123z...rz used )rr assertInreprappendsetassertNotInreset)r'r(lstts    rtest_context_var_repr_1z#ContextTest.test_context_var_repr_1+s""3'

c47#""34

eT!W%""34

1


eT!W%

eT#Y'
EE!H

d1gtAw'47+	


hQ(rc|jtd5Gddtj}ddd|jtd5Gddtj}ddd|jtd5Gddtj
}dddy#1swYzxYw#1swYNxYw#1swYyxYw)Nznot an acceptable base typeceZdZy)<ContextTest.test_context_subclassing_1.<locals>.MyContextVarN__name__
__module____qualname__rrMyContextVarr;AsrrAceZdZy)9ContextTest.test_context_subclassing_1.<locals>.MyContextNr<r@rr	MyContextrCFrrDceZdZy)7ContextTest.test_context_subclassing_1.<locals>.MyTokenNr<r@rrMyTokenrGJrErrH)rrrr rToken)r'rArDrHs    rtest_context_subclassing_1z&ContextTest.test_context_subclassing_1?s

#
#I/L
M	
{55
	

#
#I/L
M	
K//
	
#
#I/L
M	
+++
				
				s#B*B6C*B36B?Cc|jtd5tjdddd|jtd5tjddddd|jtd5tjddddtjdiiy#1swYxYw#1swY`xYw#1swY7xYw)Nz
any argumentsrr+r@)rrrrr's rtest_context_new_1zContextTest.test_context_new_1Ms

#
#I
?	#"	#

#
#I
?	(Q'	(

#
#I
?	%!$	%!b!
	#	#	(	(	%	%s#B6CC6B?CCcbtj}|jtd5|dddd|jtd5d|vddd|jtd5|j	ddddy#1swY]xYw#1swYFxYw#1swYyxYw)NzContextVar key was expectedr)rrrrgetr'rs  rtest_context_typerrors_1z$ContextTest.test_context_typerrors_1Vs!!#

#
#I/L
M	F	

#
#I/L
M	
H	

#
#I/L
M	GGAJ									s#B
B2B%
BB"%B.cltj}|j|tjyr	)rcopy_contextassertIsInstancerrQs  rtest_context_get_context_1z&ContextTest.test_context_get_context_1`s&&&(c;#6#67rctj}|jtd5|j	dddy#1swYyxYw)Nzmissing 1 required)rrrrr
rQs  rtest_context_run_1zContextTest.test_context_run_1ds?!!#

#
#I/C
D	GGI			sAActj}d}|tj|fD]}|j	|j|dddif|j	|j|ddddif|j	|j|ddddd	f|j	|j|d
ddddd	fi}|j	|j
|d
fi|dddif|j	|iy)Ncd|d<|dz
}||fS)Nfoospambarr@rrs  rrz,ContextTest.test_context_run_2.<locals>.funcms"F6NHD<rr]r\r[r)rr^rL)r+r\)rar^)rrrpartialr!r
)r'rrfr+s     rtest_context_run_2zContextTest.test_context_run_2js!!#	 
	))$/0	$A
SWWQZ(VUO)DESWWQ]Z&%,IJQE23
5
2#Au56
8A2##vuo.
0
Q#%	$rctj}d}|jt5|j	|ddd|jt5|j	|ddddd|jt5|j	|ddddddy#1swYnxYw#1swYIxYw#1swYyxYw)Ncddzy)Nrrr@r_s  rrz,ContextTest.test_context_run_3.<locals>.funcs	
Errr`r,rL)rrr#ZeroDivisionErrorr
)r'rrs   rtest_context_run_3zContextTest.test_context_run_3s!!#	

0
1	GGDM	


0
1	 GGD!Q	 


0
1	'GGD!Q#G&	'	'				 	 	'	's#B,B8
C,B58CC
c6tj}tjtjdfdfd}|j|}j	||j	|dj|y)NvarcFjjdyr	)assertIsNonerPr'rjsrfunc2z-ContextTest.test_context_run_4.<locals>.func2scggdm,rcVjjdjdjj	jddtj}j	t|dj	|d|S)Nr\r)rlrPr3r
r!rrTlen)curctx2rnr'rjs rfunc1z-ContextTest.test_context_run_4.<locals>.func1scggdm,GGFOHHUOSWWT]F3**,CSXq)SXv.Jrr\)rrr r
r!r0)r'ctx1rsreturned_ctxrrrnrjs`   @@@rtest_context_run_4zContextTest.test_context_run_4s{""$""$$$U+	-		xx|,c*F3

c<(rctj}tjdfd}jt5|j|dddj
jdy#1swY*xYw)Nrjcrjjdjdddzy)Nr\rr)rlrPr3rmsrrz,ContextTest.test_context_run_5.<locals>.funcs+cggdm,GGFO
Er)rrr r#rgr
rlrP)r'rrrjs`  @rtest_context_run_5zContextTest.test_context_run_5so!!#$$U+	


0
1	GGDM		
#''$-(		sBBctjtjddfd}j|y)Nr+rr-c*jjdjjjdjjdjjdy)Nr*)r!rPrlr3)r(rr'srfunz+ContextTest.test_context_run_6.<locals>.funshQUUWa(cggaj)
EE"IQUUWb)SWWQZ,rrrr r
r'r}r(rs` @@rtest_context_run_6zContextTest.test_context_run_6s5!!#""32	-	rcbtjfdjy)Nc~jtd5jdddy#1swYyxYw)Nzis already entered)rRuntimeErrorr
)rr}r'srr}z+ContextTest.test_context_run_7.<locals>.funs4''6JK



s3<r
)r'rr}s`@@rtest_context_run_7zContextTest.test_context_run_7s#!!#		rcR	tjd}|jt5|j	ddd|j|j	d|j
d}|j|j	d|j|j	dd|j|j|j|j|jtjj|j|j||j
d}|j|j	d|j|j	dd|j|jd|j||j|j	d|j|j	dd|j
d|jtd5|j|ddd|j|j	dtj }|j#|||j||jtd5|j|ddd|j|j	d|j#|||j||d|j|j	|dd|jt%|d|jt'|j)|dfg|jt'|j+dg|jt'|j-|g|jt'||gtj }|j/|||jt05||ddd|j|j	|dd|jt%|d|jt'|gy#1swY<xYw#1swY`xYw#1swYxYw#1swYxYw)	Nr(r|r\spam2zhas already been usedaarr)rr r#LookupErrorrPrlr3r!assertIs	old_valueMISSINGrIrjr5rrrTr0rplistitemsvalueskeysr4KeyError)r'r(t0r7rtrrs      rtest_context_getset_1z!ContextTest.test_context_getset_1sm""3'


{
+	
EEG		
!%%+&
UU2Y"%tb)

bllBJJ/

bllK$5$5$=$=>

bffa 
EE&M&)tf-b)	
"%tb)	g

#
#L2I
J	
GGAJ	'*'')

a	

#
#L2I
J	
GGBK	!%%+&

aa'*!T*G4TA&djjl+q'l^<dkkm,wi8diik*QC0daS)'')D!


x
(	G	!T*D1TA&dR(c		,						s/Q6RRR6RR
RR&ctjd}tjd}|jd}|jtd5|j|dddy#1swYyxYw)Nv1v2r|zby a different)rr r3r
ValueErrorr5)r'rrt1s    rtest_context_getset_2z!ContextTest.test_context_getset_2s`

#
#D
)

#
#D
)
VVBZ

#
#J0@
A	HHRL			sA--A6ctjddtjfd}j|y)Nr(r|r-cjjdjt5dddj	jjjddjjt
jgjd}jt
jgjdj|jt
jgjt5dddy#1swY5xYw#1swYyxYw)Nr|r\r)
r!rPr#rrlr4rrr3r5)r7r(rr's rr}z.ContextTest.test_context_getset_3.<locals>.funs2QUUWb)""8,
A
cggaj)SWWQ/8Q$T#((*-r2aAT#((*-s3SVQ'
GGAJT#((*-r2""8,
A





sE0!E=0E:=F)rr rr
rs` @@rtest_context_getset_3z!ContextTest.test_context_getset_3s5""33!!#	$	rc
tjdd}tj}|j|jd}|jtd5|j|dddy#1swYyxYw)Nr(r|r-rzdifferent Context)rr rr
r3rrr5)r'r(rtoks    rtest_context_getset_4z!ContextTest.test_context_getset_4)sg""33!!#ggaeeQ

#
#J0C
D	
GGCL			sA99Bctjddjgfd}tjj	|jj
gy)Nr(r|r-cjgjjdjjdgy)Nr|)r3rPr2r!r(r'srr}z.ContextTest.test_context_getset_5.<locals>.fun8s8
EE"I
EEGNN2QUUWrd+r)rr r3rTr
r!rP)r'r}r(s` @rtest_context_getset_5z!ContextTest.test_context_getset_53sT""33	b		,
	  "&&s+"%rctjtjddfd}fdj|y)Nr(r|r-c^jdj}j|djdjdj|d|jjdj|dy)N
)r3copyr!r
)rrr(rtctx2_funr's rctx1_funz1ContextTest.test_context_copy_1.<locals>.ctx1_funDs
EE"I99;DT!Wb)
EE"IT!Wb)T!Wb)HHXT!Wb)T!Wb)rcjjdjdjjdy)Nrr)r!rPr3rsrrz1ContextTest.test_context_copy_1.<locals>.ctx2_funRs:QUUWb)
EE"IQUUWb)rr~)r'rr(rtrs` @@@rtest_context_copy_1zContextTest.test_context_copy_1@s;""$""33	*	*
	
rcZtjdfd}tjj	d}	t|j
|td}|jj|ttdy#|jwxYw)NcvarctdD]b}j||ztjt	j
ddj
j||zd|S)NrgMbP?g?)ranger3timesleeprandomuniformr!rP)numirr's  rsubz/ContextTest.test_context_threads_1.<locals>.sub^s^2Y
6q!

6>>%67  S1W5
6Jrr)max_workers)
rr 
concurrentfuturesThreadPoolExecutorrmaprshutdownr!)r'rtpresultsrs`   @rtest_context_threads_1z"ContextTest.test_context_threads_1Ys%%f-	


2
2r
2
B	266#uRy12GKKM$uRy/2
KKMs$BB*N)r=r>r?r)rr8rJrNrRrVrXrdrhrvryrrrrrrrrrrequires_working_threadingrr@rrrrs
2))&"8$8'))0)3)3)j0
&
&20002333rrc.eZdZdZdddZdZdZdZy)HashKeyNerror_on_eq_toc.||_||_||_yr	)r"r&r)r'r&r"rs    r__init__zHashKey.__init__ss		,rc<d|jd|jdS)Nz
<Key name:z hash:>)r"r&rMs r__repr__zHashKey.__repr__ysDII;fTYYKq99rcj|j|jjrt|jSr	)_crasher
error_on_hashHashingErrorr&rMs r__hash__zHashKey.__hash__|s(==$)D)Dyyrct|tstS|j|jjrt
|j|j|urtd|d||j|j|urtd|d||j|jf|j|jfk(S)Nzcannot compare z to )

isinstancerNotImplementedrerror_on_eqEqErrorrrr"r&)r'others  r__eq__zHashKey.__eq__s%)!!==$)B)BM*t/B/Be/Kthd5)DEE+0D0D0LuitD8DEE		499%%**ejj)AAAr)r=r>r?rrrrrr@rrrrpsH59-:Brrc(eZdZfdZfdZxZS)KeyStrctj tjjrtt|Sr	)rrrrsuperr)r'	__class__s rrzKeyStr.__hash__s1'G,<,<,J,Jw!!rctj tjjrtt||Sr	)rrrrrr)r'rrs  rrz
KeyStr.__eq__s1'G,<,<,H,HMw~e$$r)r=r>r?rr
__classcell__)rs@rrrs"
%%rrc&eZdZddddZdZdZy)HaskKeyCrasherFrrc ||_||_yr	r)r'rrs   rrzHaskKeyCrasher.__init__s*&rcPtjtd|t_y)Nzcannot nest crashers)rrrrMs r	__enter__zHaskKeyCrasher.__enter__s"'566rcdt_yr	)rr)r'excs  r__exit__zHaskKeyCrasher.__exit__s
rN)r=r>r?rrrr@rrrrs(-5' 
 rrceZdZy)rNr<r@rrrrrrceZdZy)rNr<r@rrrrrrrz!_testcapi lacks "hamt()" functionceZdZdZdZdZdZdZdZdZ	e
jdd	Zd
Z
dZdZd
ZdZdZdZdZdZdZdZdZdZdZdZy)HamtTestctdd}tdd}|j|||jt|t|t	}d||<d||<|j||d|j||dy)Nrrrr+b)rr%r!r&dict)r'k1k2ds    rtest_hashkey_helper_1zHamtTest.test_hashkey_helper_1s
R

R
B#b48,F""2$2$rct}d}yr	rr'hs  rtest_hamt_basics_1zHamtTest.test_hamt_basics_1sFrcDt}|jt|d|jdd}|j	|||jt|d|jt|d|j|j
d|j|j
ddd|j|j
dd|jdd}|j	|||jt|d|jt|d|jt|d|j|j
dd|j|j
dd|j|j
d|j|j
d|j|j
d|j|j
dddx}x}}y)Nrr+rrr|rr`)rr!rpr3assertIsNotrlrP)r'rh2h3s    rtest_hamt_basics_2zHamtTest.test_hamt_basics_2sFQ#
UU3_BQ#R!$!%%*%sB,c*
VVC_R Q#R!$R!$c*b)!%%*%"&&+&!%%*%c*Brct}t}|jd|}|jd|}|j||y)N1)robjectr3r)r'roh1rs     rtest_hamt_basics_3zHamtTest.test_hamt_basics_3s<FH
UU3]
VVC^

b"rcPt}|jdg}|jdg}|j|||jt	|d|jt	|d|j|jd|jdy)Nkeyr)rr3rr!rprP)r'rrrs    rtest_hamt_basics_4zHamtTest.test_hamt_basics_4sF
UU5"

VVE2
R R!$R!$u
6rctdd}tdd}tdd}t}|j|d}|j|d}|j|j	|d|j|j	|d|j|j	|d|j|j	|d|j|j	|d|j|j	|d|j|d}|j|d}|j|j	|d|j|j	|d|j|j	|d|j|j	|d|j|j	|d|j|j	|d|j|j	|d|j|j	|d|j|j	|d|jt|d	|jt|d
|jt|d|jt|d|jt|dy)
Nrrrcccr+rccrrrr`)rrr3r!rPrp)	r'rrk3rrrh4h5s	         rtest_hamt_collision_1zHamtTest.test_hamt_collision_1s7
R

R

R
F
UU2s^
VVB_rD)rD)S)T*S)S)
VVB

VVB
S)S)S)T*T*S)T*T*T*Q#R!$R!$R!$R!$rcJtdd}tdd}tdd}t}|j|d}|j|d}|j|d}|j|j	Dchc]}|j
c}hdycc}w)NlCDrE>rrr)rrr3r!rr")r'rrrrks      rtest_hamt_collision_3zHamtTest.test_hamt_collision_3s
93?93?93?F
EE!SM
EE!SM
EE!SM*	
!&&(3Q!&&3_E3sB cpuc	d}d}d}d}d}t|D]}t}t}t|D]k}	t|	}
|	|zsEt	d5|jt5|j|
|	dddddd|j|
|	}|	|zsMt	d5|jt5|jt|	dddddd|	||
<|jt|t||	|zr|jt|jt|j|jt|jt|jn|jt||t|D]-}
|j|jt|
d	|
/tt|}tj|t!|D]\}}	t|	}
||zsDt	d5|jt5|j#|
dddddd||zsMt	d5|jt5|j#t|	dddddd|j#|
}|j|j|
d	d	||
=|jt|t|||d
zk(r|}
|j%}||zr(|jt|j't|j'|jt|j't|j'|jt|d|jt|dD]/}
|j
jt)|
||
1|jt|t
t!|D]\}	}
|
j#t)|
}
|j|
jt)|
d	d	|j+t)|
d|jt|t||	|zr|jt|j-t|j-|jt|j-t|j-|jt|d|jt|d|jt|jgy#1swYmxYw#1swYrxYw#1swY#xYw#1swY(xYw#1swYxYw#1swYxYw#1swYnxYw#1swYsxYw)NiXiararTrrz	not foundr`r)rrrrrr#rr3rrPr!rprrrshuffle	enumeratedeleterrstrpopr)r'COLLECTION_SIZETEST_ITERS_EVERYCRASH_HASH_EVERYCRASH_EQ_EVERY
RUN_XTIMES_rrrrkeys_to_deleteiter_ihmdms               rtest_hamt_stresszHamtTest.test_hamt_stress>s
z"P	2AAA?+
EQi,,'d;*!..|<*EE#qM**EE#qMN*'D9-!..w7-EE&),--#  QQ0,,$$S^S^D$$S^S^D)
E,
SV_5_-
G  vc{K!@#F
G"%"89NNN>*&~6
C	Qi!11'd;*!..|<*HHSM**/'D90!..w70HHVAY/00HHSM  sK!8+FcF  QQ0_11BB!11$$S]CMB$$S]CMB1
C4
SVQ'SVQ'
<  C!12c7;
<SWc"g.#N3
G3YYs3x(  C+!>Ls3x&  QQ0,,$$S_c!((*oF$$S_c!((*oF
G
SVQ'SVQ'T!'')_b1aP	2****----.****0000sW:/W-	W:5XX	&XX.+X!	=X.Y4X;	Y-W7
2W::XX
XX!X+
&X..X8;Y
YYc.tdd}tdd}tdd}tdd}td	d
}tdd}tdd
|}t}|j|d}|j|d}|j|d}|j|d}|j|d}t|}	|j	|}|jt||	dz
|j
td5|j	|ddd|j	|}|jt||	dz
|j	|}
|j|
||j	|}|jt||	dz
|j|j|dd|j|j|d|j|j|dy#1swYxYw)NdAeBfrgrhrZErrr+rr(rercannot comparer`rr|)
rrr3rprr!rrrrP)r'r*r,rrrr1r2rorig_lenrs           rtest_hamt_delete_1zHamtTest.test_hamt_delete_1sCCCCCD#
S$q
1F
EE!SM
EE!SM
EE!SM
EE!SM
EE!SMq6
HHQKQA.

#
#J0@
A	
HHRL	
HHQKQA.
XXa[

b!
HHQKQA.q"r*q3'q3'		sHHctdd}tdd}tdd}tdd}td	d
}tdd}tdd
|}t}|j|d}|j|d}|j|d}|j|d}|j|d}t|}	|j	t
d5|j
|ddd|j
|}|jt||	|j
|}|jt||	dz
|j
|}|jt||	dz
|j
|}|jt||	dz
|j|j|d|j|j|d|j
|}|j
|}|j
|}|j
|}|jt|dy#1swYexYw)Nr)r*)r,鉊rr.rr/rr0r1r2rr+rr(rr3r4rr`rr)	rrr3rprrrr!rP)
r'r*r,rrrr1r2rr5s
          rtest_hamt_delete_2zHamtTest.test_hamt_delete_2sCFC FC CCD#
VT!
4F
EE!SM
EE!SM
EE!SM
EE!SM
EE!SMq6
#
#J0@
A	
HHRL	
HHQKQ*
HHQKQA.
HHQKQA.
HHQKQA.q3'q3'
HHQK
HHQK
HHQK
HHQKQ#-		sIIctdd}tdd}tdd}tdd}tdd	}t}|j|d
}|j|d}|j|d}|j|d
}|j|d}t|}|j	|}|jt||dz
|j	|}|jt||dz
|j|j
|d|j|j
|dy)Nr)r*r+r,rrr/rr+rr(rr3rr`)rrr3rprr!rPr'r*r,rrrrr5s        rtest_hamt_delete_3zHamtTest.test_hamt_delete_3sCCFC FC CF
EE!SM
EE!SM
EE!SM
EE!SM
EE!SMq6
HHQKQA.
HHQKQA.q3'q3'rc*tdd}tdd}tdd}tdd}tdd}t}|j|d	}|j|d
}|j|d}|j|d}|j|d
}t|}|j	|}|jt||dz
|j	|}|jt||dz
|j	|}|jt||dz
|j	|}|jt||dz
|j	|}|jt|dy)Nr)r*r+r,r<rrrr+rr(rr3rr`rr)rrr3rprr!r=s        rtest_hamt_delete_4zHamtTest.test_hamt_delete_4sPCCFC FC FC F
EE!SM
EE!SM
EE!SM
EE!SM
EE!SMq6
HHQKQA.
HHQKQA.
HHQKQA.
HHQKQA.
HHQKQ#rcZt}g}tdD]=}t|t|}|j	||j|d|}?tdd}|j|d}|j
t|d|j|d}|j
t|d|j|}|j
t|d|j|d}|j
t|d|j|d	}|j
t|d
|j|d	}|j
t|d
|D]}|j|}|j
t|dy)Nzval-18	collisionr`rr)	rrrrr2r3r!rpr)r'rrrrcollision_key16s      rtest_hamt_delete_5zHamtTest.test_hamt_delete_5GsqFr	'A!SV$CKKcT!:&A	'
""d+
EE/;/(	
Q$
HHT!WQ$
HH_%Q$
HHT"XQ$
HHT!WQ$
HHT!WQ$	C
A	Q#rc
tdd}tdd}tdd}tdd}td	d
}tdd}t}|j|d
}|j|d}|j|d}|j|d}|j|d}|j|d}|j}|j	tt||d
f|df|df|df|df|dfhy)Nr)r*r8r,r9rr.rr/rnFr+rr(rr3rcrrr3rr!r	r'r*r,rrrrNrits	         rtest_hamt_items_1zHamtTest.test_hamt_items_1xsCFC FC CCCF
EE!SM
EE!SM
EE!SM
EE!SM
EE!SM
EE!SM
WWYRMX3x!SAs8aX3xH	Jrc
tdd}tdd}tdd}tdd}tdd}td	d
}t}|j|d}|j|d}|j|d
}|j|d}|j|d}|j|d}|j}|j	tt||df|df|d
f|df|df|dfhyNr)r*r+r,r<rrrrMrNr+rr(rr3rcrOrPs	         rtest_hamt_items_2zHamtTest.test_hamt_items_2sCCFC FC FC CF
EE!SM
EE!SM
EE!SM
EE!SM
EE!SM
EE!SM
WWYRMX3x!SAs8aX3xH	Jrc	Dtdd}tdd}tdd}tdd}tdd}td	d
}t}|j|d}|j|d}|j|d
}|j|d}|j|d}|j|d}|jtt	|j||||||h|jtt	|||||||hyrT)rrr3r!rr)r'r*r,rrrrNrs        rtest_hamt_keys_1zHamtTest.test_hamt_keys_1sCCFC FC FC CF
EE!SM
EE!SM
EE!SM
EE!SM
EE!SM
EE!SMT!&&(^,q!Q1a.@AT!W1aAq'9:rct}|jt|jd|jt	|jgy)Nr)rr!rprrrs  rtest_hamt_items_3zHamtTest.test_hamt_items_3s=FQWWY+aggi"-rctdd}tdd}tdd}tdd}tdd	}t}|j|d
}|j|d}|j|d}|j|d
}t}|j|d
}|j||k(|j	||k7|j|d}|j||k(|j	||k7|j|d}|j||k(|j	||k7|j|d}|j||k(|j	||k7|j|d
}|j	||k(|j||k7|j|d}|j||k(|j	||k7|j|}|j||k(|j	||k7|j|d
}|j||k(|j	||k7y)Nr)r*r+r,r<rrxrr+rr(rd2r3)rrr3assertFalse
assertTruer)r'r*r,rrrrrs        rtest_hamt_eq_1zHamtTest.test_hamt_eq_1sCCFC FC C
V
VVAs^
VVAs^
VVAs^
VVAs^
V
VVAs^r"b!
VVAs^r"b!
VVAs^r"b!
VVAt_r"b!
VVAs^b!r"
VVAs^r"b!
YYq\r"b!
VVAs^r"b!rchtdd}tdd|}t}|j|d}t}|j|d}|jtd5||k(ddd|jtd5||k7dddy#1swY.xYw#1swYyxYw)Nr)r*r2rr+r4)rrr3rr)r'r*r2rrs     rtest_hamt_eq_2zHamtTest.test_hamt_eq_2sC
S$q
1
V
VVAs^
V
VVB_

#
#J0@
A	"H	
#
#J0@
A	"H						s)B
B(B%(B1ctdd}t}|jdd}tj|}g}|j||j|g}|j||j||j||}~~~t
jt
jt
j|j|y)Nr)r*r)	rrr3weakrefrefr2gccollectrl)r'r*rrdr+rs      rtest_hamt_gc_1zHamtTest.test_hamt_gc_1sCF
EE!QKkk!n				
EE!QK
q!








#% rctdd}tdd}t}|j|d}|j||}tj|}|j}t
|~~tjtjtj|j|y)Nr)r*r+r,r+)
rrr3rcrdrnextrerfrl)r'r*r,rrdhis      rtest_hamt_gc_2zHamtTest.test_hamt_gc_2sCCF
EE!SM
EE!QKkk!n
WWYR
r








#% rctdd}tdd}tdd}t}|j|d}|j||v|j	||v|jt5td5||vdddddd|jt5td5||vddddddy#1swYIxYw#1swYMxYw#1swY*xYw#1swYyxYw	Nr)r*r+r,rTrr)	rrr3r^r]r#rrrr'r*AAr,rs     rtest_hamt_in_1zHamtTest.test_hamt_in_1$sC
S#
CF
EE!QKQa 


w
'	D1
a
	

|
,	d3
a
		

		


		sH<
C"	CC"3
C:C.C:C	C""C+.C7	3C::Dcvtdd}tdd}tdd}t}|j|d}|j||d|j||d|j	t
5||ddd|j	t5td5||dddddd|j	t5td5||ddddddy#1swYzxYw#1swYVxYw#1swYZxYw#1swY6xYw#1swYyxYwrm)	rrr3r!r#rrrrrns     rtest_hamt_getitem_1zHamtTest.test_hamt_getitem_18s%C
S#
CF
EE!QK1q!2"


x
(	
aD	

w
'	D1
"
	

|
,	d3
"
				

		


		sTC?#
D0D6D
D/(D#.D/?DD	DD #D,	(D//D8N)r=r>r?rrrrrrrrrequires_resourcer'r6r:r>rArKrRrUrWrYr_rargrkrprrr@rrrrs%<7#%J!FFWu%W2&W2r+(Z2$h"(H($T/$bJ*J*;&.
-"^ !.!((rr__main__)concurrent.futuresrrrrerrunittestrctestrtest.supportr	_testcapirImportErrorrTestCaserrrrr	ExceptionrrskipIfrr=mainr@rr<module>rs	
)
O3(##O3j
BBB	%S	%  	9		i	BCY
x  Y
DY
xzHMMOE"DsCCC