python (3.11.7)

(root)/
lib/
python3.11/
test/
__pycache__/
test_sys_settrace.cpython-311.opt-1.pyc

e?ddlmZddlZddlmZddlZddlZddlZddlm	Z	ddl
Z
ddlmZej
dGdd	ZGd
dZdZd
ZdZgde_dZgde_dZgde_dZgde_dZgde_dZgde_dZgde_dZdZgde_dZdZgd e_d!Zd"Zd#ge_d$Z d%Z!gd&e!_d'Z"gd(e"_d)Z#gd*e#_d+Z$gd,e$_d-Z%d.Z&gd/d0d1gd2zzd0d3gze&_Gd4d5Z'Gd6d7ej(Z)gd8Z*Gd9d:e)Z+ej,Gd;d<e)Z-Gd=d>ej(Z.Gd?d@Z/dAZ0dBZ1GdCdDej(Z2GdEdFej(Z3GdGdHej(Z4e5dIkrej6dSdS)J)supportN)	MagicMockwraps)
import_helperT)modulec$eZdZdZdZdZdZdS)tracecontextz/Context manager that traces its enter and exit.c"||_||_dSNoutputvalueselfrrs   J/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/test/test_sys_settrace.py__init__ztracecontext.__init__


cD|j|jdSrrappendrrs r	__enter__ztracecontext.__enter__s 4:&&&&&rcF|j|jdSrrrexc_infos  r__exit__ztracecontext.__exit__s"DJ;'''''rN)__name__
__module____qualname____doc__rrrrrr
r
sG99'''(((((rr
c$eZdZdZdZdZdZdS)asynctracecontextz>Asynchronous context manager that traces its aenter and aexit.c"||_||_dSrr
rs   rrzasynctracecontext.__init__rrcHK|j|jdSrrrs r
__aenter__zasynctracecontext.__aenter__!s$4:&&&&&rcJK|j|jdSrrrs  r	__aexit__zasynctracecontext.__aexit__$s&DJ;'''''rN)rr r!r"rr(r*r#rrr%r%sGHH'''(((((rr%cK|D]}|WVdS)z0Convert an iterable to an asynchronous iterator.Nr#)iterablexs  r	asynciterr.'s,
rc<tfd}|S)NcKgfd}	|i|d|id{V	r%d{V$SS#r$d{V$wxYw)NcZt|}|j|Sr)r.raclose)r,itcleanupss  rwrapped_asynciterz;clean_asynciter.<locals>.wrapper.<locals>.wrapped_asynciter0s)8$$BOOBI&&&Irr.pop)argskwargsr5r4tests   @rwrapperz clean_asynciter.<locals>.wrapper-s						'tKvKK9JKKKKKKKKKK
'$hllnn&&&&&&&&&
'
'
'(
'$hllnn&&&&&&&&&
'
'
'
'
'sA(A/r)r:r;s` rclean_asynciterr<,s3
4[[
'
'
'
'[
'NrcdSNr#r#rrbasicr@<s1r)rcallr?liner?returncd}~	d}dSr>r#r-s rarigo_example0rIK	A	
	AAAr)rArCrDrDrDrPrFcd}~	d}dSr>r#rHs rarigo_example1rSYrJrcd}~	d}dSr>r#rHs rarigo_example2rUgs	A	

4r)rArCrKrMrDrDrYrFcd}~d}dSr>r#rHs rone_instr_liner\zs	A		AAArrArCrKrMrNrFc<d}tdD]	}|rd}d}
dSNr?rLrange)r-as  rno_pop_topsrds<	A
1XX	AAAA	r)
rArCrKrMrDrKrMrVrKrLrFc$d}|s	t|	d}dSr>)bla)yr-s  r
no_pop_blocksrks'	A	AAArrArCrKrVrWrFc
d}dSr>r#rHs rcalledros	AAArc"tdSr)ror#rrrBrBs
HHHHHr)rArCrBrDrtrFrEctr	Exceptionr#rrraisesrys
OrcF	tdS#t$rYdSwxYwr)ryrxr#rr
test_raiser{s6




s
  )rArCrKrqrsrt	exceptionrurLr}rMrVrmchtj||tjj_dSr)syssettrace	_getframef_backf_trace	tracefuncs r_settrace_and_returnrs)L%.CMOO"""rc$t|dSr)rrs rsettrace_and_returnrs#####rrEcrtj||tjj_t
r)rrrrrRuntimeErrorrs r_settrace_and_raisers)L%.CMOO"
rcH	t|dS#t$rYdSwxYwr)rrrs rsettrace_and_raisers=
I&&&&&



s
!!)r~rMrVrmc(d}d}||kr|dz}dSdS)NrPr?r#)rcbs  rireturn_examplers'	A	AAvv
aCrrArCrKrMrVrmchtdd}	d}	||}|dz
}#t$rYdSwxYw)NrrNr?rb
IndexError)itemsirs   rtightloop_examplersV!QKKE

	aA!Q$!	



s#
11)rArCrKrMrVrOrVrOrVrOrVrO)rPr}rerXrZc\tdd}	d}||}	#t$rYdSwxYw)Nr?rWrr)rrs  rtighterloop_examplersG!QKKE

1X



s
++)rArCrKrMrVrVrVrV)rWr}rOrerfrFc# K	dV	dS#wxYwNTr#r#rrgenerator_functionr$s%


					s
cdtt}tdD]}|}dS)N
)anyrrb)r-rjs  rgenerator_exampler*s>  !!A2YY
r)
rArKrBrDrDrrF)rrBrr}rDrrFrOrerrQc(eZdZddZdZdZdZdS)TracerNc0||_||_g|_dSr)trace_line_eventstrace_opcode_eventsevents)rrrs   rrzTracer.__init__As!2#6 rcV|j|j|_|j|j|_dSdSr)r
f_trace_linesrf_trace_opcodes)rframes  r_reconfigure_framezTracer._reconfigure_frameFs8!-"&"8E#/$($<E!!!0/rc||||j|j|f|jSrrrrf_linenotracerreventargs    rrzTracer.traceLs;&&&ENE2333zrc||ddD|j|j|f|jS)Nc3K|]}|VdSrr#).0os  r	<genexpr>z)Tracer.traceWithGenexp.<locals>.<genexpr>Ss"qrr?rrs    rtraceWithGenexpzTracer.traceWithGenexpQsO&&&CENE2333zr)NN)rr r!rrrrr#rrrr@sU
===
rrceZdZdZdZedZdZdZdZ	dZ
dZd	Zd
Z
dZdZd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"d Z#d!Z$d"Z%d#Z&d$Z'd%Z(d&Z)d'Z*d(Z+d)Z,d*Z-d+Z.d,Z/d-Z0d.Z1d/Z2d0Z3d1Z4d2Z5d3Z6d4Z7d5Z8d6Z9d7Z:d8Z;d9Z<d:Z=d;Z>d<Z?d=Z@d>ZAd?ZBd@ZCdAZDdBZEdCZFeGjHdDZIdEZJeGjHdFZKdGZLdHS)I
TraceTestCasectj|_tj|t
jtjdSr)gc	isenabledusing_gcdisable
addCleanuprrgettracers rsetUpzTraceTestCase.setUp\s<


clnn55555rc>|jrtjdSdSr)rrenablers rtearDownzTraceTestCase.tearDownas%=	IKKKKK		rctS)z@Helper to allow test subclasses to configure tracers differentlyrr#rrmake_tracerzTraceTestCase.make_traceres
xxrc
fd|D}||krT|ddtjd|Dd|DzdSdS)Nc$g|]\}}|z
|f
Sr#r#)rleline_offsets   r
<listcomp>z0TraceTestCase.compare_events.<locals>.<listcomp>ks&<<<6Aq1{?A&<<<rz"events did not match expectation:

c,g|]}t|Sr#strrr-s  rrz0TraceTestCase.compare_events.<locals>.<listcomp>os(I(I(IAQ(I(I(Irc,g|]}t|Sr#rrs  rrz0TraceTestCase.compare_events.<locals>.<listcomp>ps(@(@(@AQ(@(@(@r)failjoindifflibndiff)rrrexpected_eventss `  rcompare_eventszTraceTestCase.compare_eventsjs<<<<V<<<_$$II5		'-(I(I(I(I(I(@(@(@(@(@BBCCC
D
D
D
D
D%$rc|}tj|j|tjd||jj|j|dSr)rrrrr__code__co_firstlinenor)rfuncrtracers    rrun_and_comparezTraceTestCase.run_and_comparersp!!##V\"""TDM8"M6	3	3	3	3	3rc<|||jdSr)rrrrs  rrun_testzTraceTestCase.run_testzs T4;/////rc|}||jtjd||jj|j|jdSr)rrrrrrrr)rrrs   r	run_test2zTraceTestCase.run_test2}sg!!##V\TDM8"M4;	8	8	8	8	8rc.tjddSrrrrs rtest_set_and_retrieve_nonez(TraceTestCase.test_set_and_retrieve_nonesTrcd}tj|	tjddS#tjdwxYw)NcdSrr#r8s rfnz4TraceTestCase.test_set_and_retrieve_func.<locals>.fnDrr)rrs  rtest_set_and_retrieve_funcz(TraceTestCase.test_set_and_retrieve_funcsV				R	
LCLsAc:|tdSr)rr@rs r
test_01_basiczTraceTestCase.test_01_basics

erc:|tdSr)rrIrs rtest_02_arigo0zTraceTestCase.test_02_arigo0

n%%%%%rc:|tdSr)rrSrs rtest_02_arigo1zTraceTestCase.test_02_arigo1rrc:|tdSr)rrUrs rtest_02_arigo2zTraceTestCase.test_02_arigo2rrc:|tdSr)rr\rs rtest_03_one_instrzTraceTestCase.test_03_one_instrrrc:|tdSr)rrkrs rtest_04_no_pop_blocksz#TraceTestCase.test_04_no_pop_blockss

m$$$$$rc:|tdSr)rrdrs rtest_05_no_pop_topsz!TraceTestCase.test_05_no_pop_topss

k"""""rc:|tdSr)rrBrs rtest_06_callzTraceTestCase.test_06_calls

drc:|tdSr)rr{rs r
test_07_raisezTraceTestCase.test_07_raises

j!!!!!rc:|tdSr)rrrs rtest_08_settrace_and_returnz)TraceTestCase.test_08_settrace_and_returns*+++++rc:|tdSr)rrrs rtest_09_settrace_and_raisez(TraceTestCase.test_09_settrace_and_raises)*****rc:|tdSr)rrrs rtest_10_ireturnzTraceTestCase.test_10_ireturns

o&&&&&rc:|tdSr)rrrs rtest_11_tightloopzTraceTestCase.test_11_tightloops

'(((((rc:|tdSr)rrrs rtest_12_tighterloopz!TraceTestCase.test_12_tighterloops

)*****rcB|t|}tj|jttjd|tjj|j	tj	dSr)
rrrrrrrrrr)rrs  rtest_13_genexpzTraceTestCase.test_13_genexps

'(((
!!##V+,,,T-6E"M+<+C	E	E	E	E	Erc<d}||gddS)Nc
d}dS)NTFrr#rHs ronlinersz2TraceTestCase.test_14_onliner_if.<locals>.onlinerssQ1r)rArCrMr^r)rrs  rtest_14_onliner_ifz TraceTestCase.test_14_onliner_ifsG				



					rcrd}||gdd}||gddS)Nc*tdD]}dSNrLrarHs rfor_examplez0TraceTestCase.test_15_loops.<locals>.for_examples$1XX



r)rArCrKrCrKrCrEc0d}|dkr
|dz}|dkdSdS)NrLrr?r#rHs r
while_examplez2TraceTestCase.test_15_loops.<locals>.while_examples,Aa%%Qa%%%%%%r)rArKrMrVrMrVrMr^r)rr$r&s   r
test_15_loopszTraceTestCase.test_15_loopss				



						
	



										rcfi}td|||dgddS)Nadef f():
































































































































































































































































    passf)rA)rD)r*rFexecr)r	namespaces  rtest_16_blank_linesz!TraceTestCase.test_16_blank_linessP	
3Y???cN


					rc<d}||ddgdS)Nc:dtj_d}dSr#)rrr)linenos rrz0TraceTestCase.test_17_none_f_trace.<locals>.funcs&*CMOO#FFFrrArCrrs  rtest_17_none_f_tracez"TraceTestCase.test_17_none_f_tracesB				
T


					rc<d}||gddS)Nc\		t#t$r}d}~wwxYw#t$rYdSwxYwrrw)rr-rjs   rrz4TraceTestCase.test_18_except_with_name.<locals>.funcsW
$#O $$$$



s


++)
rArCrKrMrNr}rVrOrD)	rD)r8rFrrs  rtest_18_except_with_namez&TraceTestCase.test_18_except_with_namesF							
T	
	
	

	
	
	
	
	rc<d}||gddS)NcH		t#d}wxYw#t$rd}YdSwxYw)N	Somethingrw)rjrs  rrz7TraceTestCase.test_19_except_with_finally.<locals>.funcsE
$#O#AOOOO



s
!!)	rArCrKrMr5rOrerXrZrrs  rtest_19_except_with_finallyz)TraceTestCase.test_19_except_with_finallysF				
T


										rcGddfdfd}|}gd}	||jn#t$rYnwxYw|jj|j|dS)Nc eZdZdZdZdZdS)BTraceTestCase.test_20_async_for_loop.<locals>.AsyncIteratorWrapperc.t||_dSr)iter_it)robjs  rrzKTraceTestCase.test_20_async_for_loop.<locals>.AsyncIteratorWrapper.__init__)s99rc|Srr#rs r	__aiter__zLTraceTestCase.test_20_async_for_loop.<locals>.AsyncIteratorWrapper.__aiter__,rcZK	t|jS#t$rtwxYwr)nextrD
StopIterationStopAsyncIterationrs r	__anext__zLTraceTestCase.test_20_async_for_loop.<locals>.AsyncIteratorWrapper.__anext__/s:->>)$---,,-s*N)rr r!rrGrMr#rrAsyncIteratorWrapperrA(sA
%
%
%



-
-
-
-
-rrNc<Kd23d{V}|}
6d}dS)Nabc*r#)letterr-rjrNs   r
doit_asyncz8TraceTestCase.test_20_async_for_loop.<locals>.doit_async5sO 4 4U ; ;






f!<AAAsc}	tj||dtjddS#tjdwxYwr)rrsend)rr-rSs  rrunz1TraceTestCase.test_20_async_for_loop.<locals>.run:s^
A
#V$$$tT"""""T""""s)AA")(rArC)irB)rD)rWrFirBrDrZrFrrrrr?r}rKrCrrrrr\rKrCrrrrr\rKrCrrrrrrrDrsr|rur\rMr^)rrrxrrrr)rrVrrrNrSs    @@rtest_20_async_for_loopz$TraceTestCase.test_20_async_for_loop's	-	-	-	-	-	-	-	-					
	#	#	#	#	#!!##(((R	C			D	J/>"M6	3	3	3	3	3sA
AAcdfd}|}|}	tj|j|dn#t
$rYnwxYwtjdn#tjdwxYwgd}||jj|j	|dS)Nc8Kt|D]}|WVdSrra)nrs  rarangezGTraceTestCase.test_async_for_backwards_jump_has_no_line.<locals>.arangets21XX



rcFKd23d{V}|dkrdS6dS)NrNdr#)rrbs rr)zBTraceTestCase.test_async_for_backwards_jump_has_no_line.<locals>.fwsU!6!99






as77EE%99s )rArCrqrsrrr\rKrCrrBrsrrr\rKrCrersrrr\rKrCrersrur\rE)
rrrrrUrxrrrr)rr)rcororrbs     @r)test_async_for_backwards_jump_has_no_linez7TraceTestCase.test_async_for_backwards_jump_has_no_liness								
!!##qss	L&&&IIdOOOO			D	
LCL


<	
AJ5"M6	3	3	3	3	3s).AA=
A%"A=$A%%A==Bc<d}||gddS)Nc	dSrr#r#rrrz1TraceTestCase.test_21_repeated_pass.<locals>.funcs
DrrArCrKrgrrs  rtest_21_repeated_passz#TraceTestCase.test_21_repeated_passsF				
T


					rc<d}||gddS)Nc"	dD]}dS#YdSxYw)Nr#r?rLr#rs rrz3TraceTestCase.test_loop_in_try_except.<locals>.funcs)
!!AAq
qqs	r]rrs  rtest_loop_in_try_exceptz%TraceTestCase.test_loop_in_try_exceptsF				
T


					rcBfd|gddS)NcD					jdkr	n#YnxYwdS#wxYwNFFred)rrsrrz8TraceTestCase.test_try_except_no_exception.<locals>.funcsI

=F**
s	rArCrKrerXrrDrDrDrzrFrrs @rtest_try_except_no_exceptionz*TraceTestCase.test_try_except_no_exceptionQ					 	
T


										rc<d}||gddS)NcR				t#YnxYw	n#wxYwn#YnxYwdS#wxYwrrwr#rrrz6TraceTestCase.test_try_exception_in_else.<locals>.funcsU

#O	AA
BBBBB
s($$&)rArCrKrMrXr6)r7r}rvrwrDryr{rrs  rtest_try_exception_in_elsez(TraceTestCase.test_try_exception_in_elsesF			 	
T


					rc<d}||gddS)Nc`tdD]}tdD]}||z}|dkS)NrLr?ra)rjrcs   rrz-TraceTestCase.test_nested_loops.<locals>.funcsE1XX

qAAAA6Mr)rArCrKrMrKrMrKrCrKrMrKrMrKrCrVrmrrs  rtest_nested_loopszTraceTestCase.test_nested_loopssF				
T


					rc<d}||gddS)NcHddg}|r|}|rn|d}|S)Nr?rcr6)seqras  rrz)TraceTestCase.test_if_break.<locals>.funcsAa&C
GGII

Hr)rArCrKrMrVrKrMrVrOr6r7rFrrs  r
test_if_breakzTraceTestCase.test_if_breaksF				
T





					rc<d}||gddS)Ncd\}}}}	tdD]}	d}|dkr	d}dSd}d}#d}wxYwdS#d}YdSxYw)N)r?r?r?rrNrPrrr7rra)rccdrs    rrz6TraceTestCase.test_break_through_finally.<locals>.func5s$JAq!Q

qAq55!B
s 7.7.727>)rArCrKrMrVrOrer6rvrMrVrOrerXrv
rDrrFrrs  rtest_break_through_finallyz(TraceTestCase.test_break_through_finally3sF
	1
	1
	1	
T


					rc<d}||gddS)Ncd\}}}}}	tdD]}	d}|dkr	d}d}d}#d}wxYwdS#d}YdSxYw)N)r?r?r?r?rrLrPrrr7rra)rcrrrrs     rrz9TraceTestCase.test_continue_through_finally.<locals>.funcYs*MAq!Q

qAq55$B
s 6-6-616=)rArCrKrMrVrOrer6rvrMrVrOrerXrvrMrrrrs  rtest_continue_through_finallyz+TraceTestCase.test_continue_through_finallyWsF
	1
	1
	1	
T


					rc<d}||gddS)Nc		dS#wxYwr#r#r#rrrz7TraceTestCase.test_return_through_finally.<locals>.func~s
srlrrs  rtest_return_through_finallyz)TraceTestCase.test_return_through_finally|sF				
T


					rc<d}||gddS)NcD	ddzn#t$rYnwxYwdS#YdSxYw)NrLrrf)rr#rrrz;TraceTestCase.test_try_except_with_wrong_type.<locals>.funcsH
!



qqqqqqqqs
)rArCrKr~rMrerrrs  rtest_try_except_with_wrong_typez-TraceTestCase.test_try_except_with_wrong_typesF				
T


					rc<d}||gddS)NcDd}dg}|r||r	dSr>r6TRUEr-s  rrz3TraceTestCase.test_break_to_continue1.<locals>.funcs;DA
	

r)
rArCrKrMrVrOrerXrMr^rrs  rtest_break_to_continue1z%TraceTestCase.test_break_to_continue1sF				
T	
	
	

	
	
	
	
	rc<d}||gddS)NcLd}dg}|r||rn|dSdSr>r6rs  rrz3TraceTestCase.test_break_to_continue2.<locals>.funcsODA





r)	rArCrKrMrVrOrerMr^rrs  rtest_break_to_continue2z%TraceTestCase.test_break_to_continue2sF				
T


										rc<d}||gddS)Ncd}|r|r	dSdSr>r#)rs rrz/TraceTestCase.test_break_to_break.<locals>.funcs)D


r)rArCrKrMrVrOrQrrs  rtest_break_to_breakz!TraceTestCase.test_break_to_breaksF				
T


					rc<d}||gddS)Nc:dx}}|dkr|dkrd}dSd}dSd}dS)Nr?rWrfr7r#)rcrr-rjzs     rrz+TraceTestCase.test_nested_ifs.<locals>.funcs8IAAvv66AAAAAArrrrs  rtest_nested_ifszTraceTestCase.test_nested_ifssF				
T


					rcVfd}dxd||gddS)NcVrrr	trdSdSdSdStr	trdSdSdS)NFT)DEF)ABCsrrz4TraceTestCase.test_nested_ifs_with_and.<locals>.funcsk
!))#(5))))!5
q
t



rTFr]r)rrrrrs  @@@rtest_nested_ifs_with_andz&TraceTestCase.test_nested_ifs_with_andsk														AT


					rc<d}||gddS)Ncdd}	ddzn$#t$r|dkrtYnwxYwd}dS)NhellorNrraiserY)ZeroDivisionError
ValueError)r-r)s  rrz.TraceTestCase.test_nested_try_if.<locals>.funcsWA
'!$
'
'
'<<$,,& <
'AAAs
++	rArCrKrMr5rVrOrXrZrrs  rtest_nested_try_ifz TraceTestCase.test_nested_try_if	F				
T


										rc\Gddfd}||gddS)NceZdZdZdZdS).TraceTestCase.test_if_false_in_with.<locals>.Cc|Srr#rs rrz8TraceTestCase.test_if_false_in_with.<locals>.C.__enter__"rHrcdSrr#rs rrz7TraceTestCase.test_if_false_in_with.<locals>.C.__exit__$rNrr r!rrr#rrrr!2







rrcP5	ddddS#1swxYwYdSrr#rsrrz1TraceTestCase.test_if_false_in_with.<locals>.func'sx



















s)rArCrrBrrrKrCrqrsrurEr)rrrs  @rtest_if_false_in_withz#TraceTestCase.test_if_false_in_withsy													
	
T





					rc<d}||gddS)Nc8	dS#t$rtYdSwxYwr)rxXr#rrrz7TraceTestCase.test_if_false_in_try_except.<locals>.func;s7




srjrrs  rtest_if_false_in_try_exceptz)TraceTestCase.test_if_false_in_try_except9sF				
T


					rc<d}||gddS)Nc Gdd}dS)Nc&eZdZddkrdZdSdZdS)DTraceTestCase.test_implicit_return_in_class.<locals>.func.<locals>.ArNr8r?rLN)rr r!rcr#rrrrKs%q55AAAAAArrr#)rs rrz9TraceTestCase.test_implicit_return_in_class.<locals>.funcJs4









rrArC)r?rBrCrKrMr^rErrs  rtest_implicit_return_in_classz+TraceTestCase.test_implicit_return_in_classHsF				
T


					rc<d}||gddS)Nc\		dS#t$r}Yd}~dSd}~wwxYw#t$rYdSwxYwrrwexs rrz+TraceTestCase.test_try_in_try.<locals>.func\s_
D DDDDD



s

++r]rrs  rtest_try_in_tryzTraceTestCase.test_try_in_try[sF				
T


					rcrd}||gdd}||gddS)Ncf		t#t$r}Yd}~dSd}~wwxYw#t$rYdSwxYwr)	TypeErrorrrs rrz:TraceTestCase.test_try_in_try_with_exception.<locals>.funcns_
#O!AAAAA





""
00	rArCrKrMr5rVrerXrZcf		t#t$r}Yd}~dSd}~wwxYw#t$rYdSwxYwrrrrs rrz:TraceTestCase.test_try_in_try_with_exception.<locals>.funcs`
$$!AAAAA



r)rArCrKrMr5rVrOrQrrs  rtest_try_in_try_with_exceptionz,TraceTestCase.test_try_in_try_with_exceptionls				
T


										
T


					rc>dd}||gddS)Nrr?c|r
|r|rdSdSdSdSrr#)rcprs   rrz/TraceTestCase.test_if_in_if_in_if.<locals>.funcs5
	rrj)rr?r?rrs  rtest_if_in_if_in_ifz!TraceTestCase.test_if_in_if_in_ifsK					
T


					rcGddfd}fd}||gd||gddS)NceZdZdZdZdS)-TraceTestCase.test_early_exit_with.<locals>.Cc|Srr#rs rrz7TraceTestCase.test_early_exit_with.<locals>.C.__enter__rHrcdSrr#rs rrz6TraceTestCase.test_early_exit_with.<locals>.C.__exit__rrNrr#rrrrrrrcZdD]&}5	dddn#1swxYwY'dS)Nr?rLr#)rrs r
func_breakz6TraceTestCase.test_early_exit_with.<locals>.func_breaks

QSSDs#	#	cP5	ddddS#1swxYwYdSrr#rsrfunc_returnz7TraceTestCase.test_early_exit_with.<locals>.func_returnsv



















s)
rArCrKrrrrMrKrqrsrurVrm)rArC)rWrB)rD)rrFrKrCrXrYr[rEr)rrrrs   @rtest_early_exit_withz"TraceTestCase.test_early_exit_withs																			
Z



	
	
		
[





					rcHdfd}||gddS)Nc>|r	d|dz
zn#t$rYnwxYw|Sr>rrHs rfooz;TraceTestCase.test_flow_converges_on_same_line.<locals>.foosC
q1uIII(DHs

cBtdD]
}|dSr#ra)rrs rrz<TraceTestCase.test_flow_converges_on_same_line.<locals>.funcs11XX

A

r)rArCrKrZrBirDrsrurCrKrr)rrDr)rr}rr]rsrurCrEr)rrrs  @r test_flow_converges_on_same_linez.TraceTestCase.test_flow_converges_on_same_lines`									
T


					rc<d}||gddS)NcLd}	d|zn#t$r
}|rYd}~nd}~wwxYwdS)Nrr?doner)r-errors  rrzCTraceTestCase.test_no_tracing_of_named_except_cleanup.<locals>.funcsaA
!$



6s

!!rrrs  r'test_no_tracing_of_named_except_cleanupz5TraceTestCase.test_no_tracing_of_named_except_cleanupsF				
T													rc\Gddfd}||gddS)NceZdZdZdZdS)DTraceTestCase.test_tracing_exception_raised_in_with.<locals>.NullCtxc|Srr#rs rrzNTraceTestCase.test_tracing_exception_raised_in_with.<locals>.NullCtx.__enter__rHrcdSrr#)rexcinfos  rrzMTraceTestCase.test_tracing_exception_raised_in_with.<locals>.NullCtx.__exit__rrNrr#rrNullCtxrrrrc|	5ddzddddS#1swxYwYdS#t$rYdSwxYwNr?rr)rsrrzATraceTestCase.test_tracing_exception_raised_in_with.<locals>.funcs
WYYaCC$



s$
- -$-$-
;;)rArCrKrrrrMr5rKrqrsrurVrOrQr)rrrs  @r%test_tracing_exception_raised_in_withz3TraceTestCase.test_tracing_exception_raised_in_withsy														
T


					rcBfd|gddS)Ncv	n!#xgct%xnnnXxYncYwxYw			jdkr	dS#wxYwrr)rxrrtsrrz=TraceTestCase.test_try_except_star_no_exception.<locals>.func0sx




I




=F**s6"68rurrs @r!test_try_except_star_no_exceptionz/TraceTestCase.test_try_except_star_no_exception.r}rc<d}||gddS)Ncd	n'#xgct%x}d}~nd}~nnXxYncYwxYw	dS#wxYwrrwrs rrzCTraceTestCase.test_try_except_star_named_no_exception.<locals>.funcMsf



I




s-'	-/)rArCrKrer6rrrs  r'test_try_except_star_named_no_exceptionz5TraceTestCase.test_try_except_star_named_no_exceptionKsF				
T


					rc<d}||gddS)Ncr	td#xgct%xnnnXxYncYwxYwdS#wxYwr#rr#rrrzATraceTestCase.test_try_except_star_exception_caught.<locals>.funcasc
 mm#


J





s/46rArCrKr~rMrVr6rrrs  r%test_try_except_star_exception_caughtz3TraceTestCase.test_try_except_star_exception_caught_F				
T


					rc<d}||gddS)Nc~	td#xgct%x}d}~nd}~nnXxYncYwxYwdS#wxYwr#rrs rrzGTraceTestCase.test_try_except_star_named_exception_caught.<locals>.funcwsl
 mm#


J





s5:<rrrs  r+test_try_except_star_named_exception_caughtz9TraceTestCase.test_try_except_star_named_exception_caughturrc<d}||gddS)Nc		td#xgct%xnnnXxYdScYwxYw#t$rYdSwxYwNrNrr#rrrzETraceTestCase.test_try_except_star_exception_not_caught.<locals>.funcs
$Q--'	A



s144
AArrrs  r)test_try_except_star_exception_not_caughtz7TraceTestCase.test_try_except_star_exception_not_caughtrrc<d}||gddS)Nc		td#xgct%x}d}~nd}~nnXxYdScYwxYw#t$rYdSwxYwrrrs rrzKTraceTestCase.test_try_except_star_named_exception_not_caught.<locals>.funcs
$Q--'	AAAA



s7::
AArrrs  r/test_try_except_star_named_exception_not_caughtz=TraceTestCase.test_try_except_star_named_exception_not_caughtrrc<d}||gddS)Nc		tdtdtdg#xgct%x}d}~nd}~nnt%xnnnt%xnXxYncYwxYwnh#xgct%xM	td#xgct%xnnnt%x}d}~nd}~nnXxYncYwxYwnnnXxYncYwxYwdS)NegrPzbad typerzr)ExceptionGrouprrOSErrorrs rrz7TraceTestCase.test_try_except_star_nested.<locals>.funcs
	(#A	*(=(=>@@@	AAAAA"


J



#B--'B!BBBB
1s9,/4A2#A$	$	A2-A66CB/CC	C)rArCrKrMrVrOrMr5rerXr6rvrwrrry)rzr})rD)rD)rD)rD)r(rFrrs  rtest_try_except_star_nestedz)TraceTestCase.test_try_except_star_nestedsF			*	
T


					rc<d}||gddS)Nc	ddS)NcdSr#r#rHs r<lambda>zATraceTestCase.test_notrace_lambda.<locals>.func.<locals>.<lambda>sarr#r#rrrz/TraceTestCase.test_notrace_lambda.<locals>.funcs
KK
Arr]rrs  rtest_notrace_lambdaz!TraceTestCase.test_notrace_lambdasF			
	
T


					rc<d}||gddS)Nc Gdd}dS)NceZdZdZdZdS)PTraceTestCase.test_class_creation_with_docstrings.<locals>.func.<locals>.Class_1z the docstring. 2cd|_dS)z Another docstring. 4rPN)rcrs rrzYTraceTestCase.test_class_creation_with_docstrings.<locals>.func.<locals>.Class_1.__init__s
DFFFrN)rr r!r"rr#rrClass_1r2s)''rr4r#)r4s rrz?TraceTestCase.test_class_creation_with_docstrings.<locals>.funcs4









rrrrs  r#test_class_creation_with_docstringsz1TraceTestCase.test_class_creation_with_docstringssF				
T


					rc@tjd}dfd}gd}g}|||tjd|jjfd|D}||||||dS)N	_testcapic3KdVdSr>r#r#rrgenzFTraceTestCase.test_no_line_event_after_creating_generator.<locals>.gensGGGGGrc"D]}dSrr#)_r9s rrzGTraceTestCase.test_no_line_event_after_creating_generator.<locals>.funcs'



r)rArKrCrqrsrurVrC)rtrBrurEc<g|]\}}}|z
t|fSr#)EVENT_NAMES)rwhatrDr
start_lines    rrzMTraceTestCase.test_no_line_event_after_creating_generator.<locals>.<listcomp>,s=


!tS*_k$/0


r)	r
import_modulesettrace_to_recordrrrrassertEqualr)rr7rEXPECTED_EVENTSrr9r?s     @@r+test_no_line_event_after_creating_generatorz9TraceTestCase.test_no_line_event_after_creating_generators
"/<<									


 $$V,,,ddfffcl46H6H6H]1




%+


	
111T?33333rcdfd}	|tj_tj|t	g|dn|#t$ro}d}|j}|r#|jj	j
dkr|dz
}|j}|#|dkr|dn|dkr|dYd}~nd}~wwxYwtjddS#tjdwxYw)	NFc(s	dttSr)rxr)rrrraiseds   r
error_oncez5TraceTestCase.test_settrace_error.<locals>.error_once7s
 LrNo exception raisedrtest_settrace_errorr?Traceback is missing frame"Traceback has frame more than once)rrrrlenrrx
__traceback__tb_framef_codeco_nametb_next)rrHrcounttbrGs     @rrJz!TraceTestCase.test_settrace_error4s?						&0CMOO#L$$$GGG
II+,,,,
	@
	@
	@E!B
 ;%-1FFFQJEZ
 zz		67777		>???
	@
LCLs0;AC-
C%A%C
C-CC--Dctjd}	|gtg|dn|#t
$ro}d}|j}|r#|jjj	dkr|dz
}|j
}|#|dkr|dn|dkr|dYd}~nd}~wwxYwtjddS#tjdwxYw)Nr7rIrtest_testcapi_settrace_errorr?rKrL)
rr@settrace_to_errorrMrrxrNrOrPrQrRrr)rr7rrSrTs     rrVz*TraceTestCase.test_testcapi_settrace_errorRs("/<<		''+++GGG
II+,,,,
	@
	@
	@E!B
 ;%-1OOOQJEZ
 zz		67777		>???
	@
LCLs/$AC"
C	A%C?C"C		C""C8c|i}tdddzd||d}gd}|||dS)Nzdef f():              # line 0
            x = 0                     # line 1
            y = 1                     # line 2
            rizn                        # lines 3 through (1 << 16)
            x += 1                    #
            returnr))rArCrK)irD)rD)rYrFr+)rrr)rCs    rtest_very_large_functionz&TraceTestCase.test_very_large_functionkso
))),
./	0	0	0
cF


	
Q00000rN)Mrr r!rrstaticmethodrrrrrrrrrrrrr	rr
rrrrrrrr r'r.r2r9r>r^rgrkror|rrrrrrrrrrrrrrrrrrrrrrrrrrrrrr)r.r5rcpython_onlyrDrJrVrZr#rrrrXs}666
\DDD333000888&&&&&&&&&&&&&&&%%%###""",,,+++''')))+++EEE


>0*J3J3J3X232323h			":@42"""H###J


&..$(.,4


&"'''R",,,\"""H,@:(,,,,---^


&
)4)4)4V<
011111rr)rBr}rDrFc8eZdZdZfdZedZxZS)SkipLineEventsTraceTestCasez8Repeat the trace tests, but with per-line events skippedcfd|D}t|||dS)Nc*g|]}|ddk|SrCr#rrs  rrz>SkipLineEventsTraceTestCase.compare_events.<locals>.<listcomp>s!III!!A$&..A...r)superr)rrrrskip_line_events	__class__s     rrz*SkipLineEventsTraceTestCase.compare_eventss:IIIII
{F4DEEEEErc"tdS)NF)rrr#rrrz'SkipLineEventsTraceTestCase.make_tracers....rrr r!r"rr[r
__classcell__rds@rr^r^s^BBFFFFF//\/////rr^c8eZdZdZfdZedZxZS)TraceOpcodesTestCasez;Repeat the trace tests, but with per-opcodes events enabledcd|D}t|dkr2|t|t|dt|||dS)Nc*g|]}|ddk|S)r?opcoder#ras  rrz7TraceOpcodesTestCase.compare_events.<locals>.<listcomp>s&DDDA1Q483C3Ca3C3C3Crr?z)No 'opcode' events received by the tracer)msg)rM
assertLessrbr)rrrrskip_opcode_eventsrds     rrz#TraceOpcodesTestCase.compare_eventss}DDDDDv;;??OOC 233S[[ K

M
M
M
{,>PPPPPrc"tdS)NT)rrr#rrrz TraceOpcodesTestCase.make_tracers$////rrfrhs@rrjrjs^EEQQQQQ00\00000rrjcPeZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dS)
RaisingTraceFuncTestCasech|tjtjdSrrrrrrs rrzRaisingTraceFuncTestCase.setUps$clnn55555rc4||jkrt|jS)zXA trace function that raises an exception in response to a
        specific trace event.)raiseOnEventrrrs    rrzRaisingTraceFuncTestCase.traces D%%%:rc.|jdkr	d}d|z}dSdS)zThe function to trace; raises an exception if that's the case
        we're testing, so that the 'exception' trace event fires.r}rr?N)rw)rr-rjs   rr)zRaisingTraceFuncTestCase.fs)++A!AAA1rcT||_	ttjdzD]U}tj|j	||dF#t$rYRwxYwdS#t$r|dYdSwxYw)zTTests that an exception raised in response to the given event is
        handled OK.r?zexception not raised!zrecursion counter not resetN)
rwrbrgetrecursionlimitrrr)rrr)rrrs   rrun_test_for_eventz+RaisingTraceFuncTestCase.run_test_for_events"
	53022Q677
7
7TZ(((7FFHHHII56666"D	
7
7	5	5	5II3444444	5s5>BA2B2
A?<B>A??BB'&B'c0|ddS)NrBr{rs r	test_callz"RaisingTraceFuncTestCase.test_call'''''rc0|ddSNrDr}rs r	test_linez"RaisingTraceFuncTestCase.test_linerrc0|ddS)NrFr}rs rtest_returnz$RaisingTraceFuncTestCase.test_returns)))))rc0|ddSNr}r}rs rtest_exceptionz'RaisingTraceFuncTestCase.test_exceptions,,,,,rcdfdtj	|ddS#t$rddl}|jYdSwxYw)NcHtdD]}t|dS)NrP)rbprintrns rr)z4RaisingTraceFuncTestCase.test_trash_stack.<locals>.fs.1XX

a

rcb|dkr'|jjjdzkrtdS)NrDrLz
i am crashing)rrrr)rwhyextrar)gs   rrz4RaisingTraceFuncTestCase.test_trash_stack.<locals>.gs6v

!*";a"???"?333Hrzexception not propagatedr)rrrrrcollect)rrr)rs  @@rtest_trash_stackz)RaisingTraceFuncTestCase.test_trash_stacks										Q	2
ACCC
II011111			IIIBJLLLLLL	s
AA#"A#cd}fdtj}	tj	|n#t$rYnwxYwtj|dS#tj|wxYw)Ncd}|jdS)Nr)no_such_attrrHs rr)z<RaisingTraceFuncTestCase.test_exception_arguments.<locals>.fsA
NNNNrcV|dkr!|\}}}|tSr)assertIsInstancerx)rrrtyper}rrrs      rrz<RaisingTraceFuncTestCase.test_exception_arguments.<locals>.gs5$$),&i%%i;;;Hr)rrrAttributeError)rr)existingrs`  @rtest_exception_argumentsz1RaisingTraceFuncTestCase.test_exception_argumentss									<>>	#LOOO
!




L"""""CL""""s-A&
AA&
A

A&A

A&&A<ctdfdd}|t5}tj|dddn#1swxYwY||jdS)NzBOOM!c&|dkrd|_S)NrDT)r)rrrr}rs   rrzRRaisingTraceFuncTestCase.test_line_event_raises_before_opcode_event.<locals>.traces$(E!LrcdSrr#r#rrr)zNRaisingTraceFuncTestCase.test_line_event_raises_before_opcode_event.<locals>.frr)rassertRaisesrrassertIsr})rr)caughtr}rs   @@r*test_line_event_raises_before_opcode_eventzCRaisingTraceFuncTestCase.test_line_event_raises_before_opcode_eventsw''							
			


z
*
*	fL
ACCC																


f&	22222sA  A$'A$N)rr r!rrr)r{r~rrrrrrr#rrrsrss666555"((((((***---222,###,33333rrsc$eZdZdZ		ddZdZdS)
JumpTracerz>Defines a trace function that jumps from one place to another.rDFc|j|_||_||_||_|rdn|jj|_d|_dS)NF)rcodejumpFromjumpTorr	firstLiner)rfunctionrrr	decorateds      rrzJumpTracer.__init__sA%	 

!*H	0H			rc|jrdS|j%|j|jkr|dkr|jdz
|_||jkr|j|j|j|jzkrh|}|)|j|jkr|j}||j|jk|9	|j|jz|_n#t$r|j|_YnwxYwd|_|j
S)NrDr?T)rrrPrrrrrrrr)rrrrr)s     rrzJumpTracer.trace s9	F

N"u|ty'@'@"^a/DNTZDN$>$.4="@@@A-AH	$9$9H-AH	$9$9}1%)^dk%AENN 111%)[ENNN1 	zsB%%B>=B>N)rDF)rr r!r"rrr#rrrrsCHH9? rrc	|ddS#t$r/}|dt|vYd}~dSd}~wwxYw)NrLinteger)rrrrrs  rno_jump_to_non_integersr:sm+

a+++

i3q66)*********+s
A$A

Ac	tjj}|j|_t	d#t
$r}dt
|vrYd}~dSd}~wwxYw)Nz'Trace-function-less jump failed to failr)rrrrAssertionErrorrr)previous_framers  rno_jump_without_trace_functionrBs}
H/"0"9FGGG#a&&  !     s$5
AAAceZdZdZdZ		ddZ		ddZddZdd	Zed
ddgdZ	ed
d
gddZ
ed
ddgdZeddgddZed
ddgdZ
eddgddZeddd
dgdZedd
gddZeddddgedZedd
gdedZed
d
dgdZed
d
gd d!Zedd"d
d"gd#Zedd$d
d$ged%fd&Zedd'd
d'ged%fd(Zedd'd
dged)fd*Zeddd
ged+fd,Zed
dddgd-Zeddgd.d/Zed
dd
dgd0Zed
dd
dgd1Z edd
gd2d3Z!edd
gd2d4Z"ed
ddgd5Z#edd
gd6d7Z$ed
ddgd8Z%edd
gd9d:Z&edd$gd;d<Z'edd$gd;d=Z(eddgd>d?Z)edd
gd@dAZ*ed
dgdBdCZ+ed
dgdBdDZ,eddgdEdFZ-eddgdEdGZ.eddgdHdIZ/eddgdHdJZ0eddgdKdLZ1eddgdKdMZ2edNd'gdOdPZ3eddgdQdRZ4eddgdQdSZ5eddgdTdUZ6eddNgdVdWZ7ed
d$d$dNgdXZ8ed
d$d$dNgdYZ9ed
dd
ged+fdZZ:ed
d[d
ged\fd]Z;ed
ddged^fd_Z<ed
ddged^fd`Z=ed
ddged^fdaZ>ed
ddged^fdbZ?ed
dgedcfddZ@ed
dgedcfdeZAedd
d
d
gedcfdfZBedd
d
d
gedgfdhZCed
dgedifdjZDed
dgedifdkZEedd
gdledifdmZFedd
gdledifdnZGed
dddgdoZHedd
gdpdqZIed
ddgdrZJedd
gdsdtZKedd$gd;duZLed
ddgdvZMeddgdwdxZNedd
gdydzZOed
dged{fd|ZPed
dged{fd}ZQeddgd~ed{fdZReddd
ged{fdZSed$d
gddZTed$d
gddZUeddgddZVeddgddZWedd$d
dged+fdZXed$dd
dgedcfdZYed$dd
dgedcfdZZdZ[dZ\dZ]dZ^ed
dd
gdedfdZ_ed
d
d
gdedfdZ`ed
d
d
gd)edfdZaedd
d
dgddZbed
dd
dgdZcedd
gdZdedNd
gddZeed
dd
dgdZfedd
gdZgedNd
gddZhedd$gedifdZieddNgedifdZjedd$gedifdZked
dd
dgdZleddgddZmenjoddZped
dd
dgdZqdS)JumpTestCasec|tjtjtjddSrrurs rrzJumpTestCase.setUpQ4clnn555Trc||kr=|dt|zdzdzt|zdSdS)NzOutputs don't match:
Expected: rz
Received: )rrepr)rexpectedreceiveds   rcompare_jump_outputz JumpTestCase.compare_jump_outputUsfxII$&*8nn57;<#$&*8nn5
6
6
6
6
6 rNrDFc~|}t|dr|j}t|dt|||||}	tj|	jg}
|||
n-|j|5||
dddn#1swxYwYtjd|||
dSN__wrapped__)hasattrrrrrrassertRaisesRegexrrrrrrrrrwrappedrrs           rrzJumpTestCase.run_test[sg}--	*)Gg}--	*GXvuiHHV\"""=DLLLL''/

V














T  622222s0BBBc|}t|dr|j}t|dt|||||}	tj|	jg}
|t
j||
n?|j|5t
j||
dddn#1swxYwYtjdt
j	d|
||
dSr)rrrrrrasynciorVrset_event_loop_policyrrs           rrun_async_testzJumpTestCase.run_async_testls=g}--	*)Gg}--	*GXvuiHHV\"""=KV%%%%''/
*
*DDLL)))
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*T%d+++  622222sB,,B03B0c"fd}|S)zqDecorator that creates a test that makes a jump
        from one place to another in the following code.
        cHtfd}|S)Nc	@|ddSNT)rrr)rrrrrrrrs rr:z7JumpTestCase.jump_test.<locals>.decorator.<locals>.tests<

dHfh$)$HHHHHrrrr:rrrrrs` r	decoratorz)JumpTestCase.jump_test.<locals>.decoratorW
4[[
H
H
H
H
H
H
H
H
H[
HKrr#rrrrrrs````` r	jump_testzJumpTestCase.jump_test~<									rc"fd}|S)z~Decorator that creates a test that makes a jump
        from one place to another in the following asynchronous code.
        cHtfd}|S)Nc	@|ddSr)rrs rr:z=JumpTestCase.async_jump_test.<locals>.decorator.<locals>.tests>##D(FH$)$$HHHHHrrrs` rrz/JumpTestCase.async_jump_test.<locals>.decoratorrrr#rs````` rasync_jump_testzJumpTestCase.async_jump_testrrr?rNc|d|d|ddSNr?rLrNrrs rtest_jump_simple_forwardsz&JumpTestCase.test_jump_simple_forwards>

a

a

arrL)r?r?rLcZ|d|ddSr`rrs rtest_jump_simple_backwardsz'JumpTestCase.test_jump_simple_backwards,

a

arrWrPcfd}||ddS|ddSNrNrPrrr-s  rtest_jump_is_none_forwardsz'JumpTestCase.test_jump_is_none_forwardss<9MM!MM!rrf)rNrPrfcd}||dn|d|ddSNrNrPrfrrs  rtest_jump_is_none_backwardsz(JumpTestCase.test_jump_is_none_backwardssK9MM!MM!

arcfd}||ddS|ddSrrrs  rtest_jump_is_not_none_forwardsz+JumpTestCase.test_jump_is_not_none_forwardss<=MM!MM!r)rPrPrfcd}||dn|d|ddSrrrs  rtest_jump_is_not_none_backwardsz,JumpTestCase.test_jump_is_not_none_backwardssK=MM!MM!

arcdD]1}|ddD]}|d2|ddS)NrrLrNrWrPrrrrs   rtest_jump_out_of_block_forwardsz,JumpTestCase.test_jump_out_of_block_forwardssd	!	!AMM!
!
!

a    
!

ar)r?rNrPr?rNrPrfrYc|ddD]F}|ddD]}|d|dG|ddS)Nr?rrN)rLrPrfrYrrs   r test_jump_out_of_block_backwardsz-JumpTestCase.test_jump_out_of_block_backwardss

a		AMM!
!
!

a    MM!

arcKdD]W}|ddg23d{V}|d|d26|dXdS)Nrr?rLrNrWrPrrr.rs   r)test_jump_out_of_async_for_block_forwardsz6JumpTestCase.test_jump_out_of_async_for_block_forwardss		A$9aV,,
!
!
!
!
!
!
!a

a   

a    -
MM!			sA)rLrWrLrWrPrfcKdD]k}|d|dg23d{V}|d|d26|dldS)NrrLr?rWrPrfrrs   r*test_jump_out_of_async_for_block_backwardsz7JumpTestCase.test_jump_out_of_async_for_block_backwardss		AMM!$9aS>>
!
!
!
!
!
!
!a

a   

a    *
MM!		sAcZ|d|ddS)Nr?rNrrs rtest_jump_to_codeless_linez'JumpTestCase.test_jump_to_codeless_lines,

a

ar)r?rLrNc|d|d|ddSrrrs rtest_jump_to_same_linez#JumpTestCase.test_jump_to_same_linerrr8c	|d|d	|d|dn#|dwxYw|ddS#|d	|d|dn#|dwxYw|dwxYw)NrLrWrfr7r8rrs rtest_jump_in_nested_finallyz(JumpTestCase.test_jump_in_nested_finallys	MM!MM!
!

a   

a    

a    MM!
MM!
!

a   

a    

a    MM!s.B	AA/	C; C5C;C""C;rYc	|dddz	|d|ddS#|d|dwxYw)NrLr?rrfrYrrs rtest_jump_in_nested_finally_2z*JumpTestCase.test_jump_in_nested_finally_2s|	MM!
aCCMM!MM!
MM!MM!sA		,A5rxc	|dddz	|d	|d|dn#|dwxYw|ddS#|d	|d|dn#|dwxYw|dwxYw)NrLr?rrfr7rrxrrs rtest_jump_in_nested_finally_3z*JumpTestCase.test_jump_in_nested_finally_3s
	MM!
aCCMM!
"

a   

b!!!!

b!!!!MM"
MM!
"

a   

b!!!!

b!!!!MM"s.BAA5D&C;DC((Dr}c	|d|d|ddS#|d|dYdSxYwNrLrWrPrrs r5test_no_jump_over_return_try_finally_in_finally_blockzBJumpTestCase.test_no_jump_over_return_try_finally_in_finally_blocks{
	MM!MM!MM!F
MM!MM!FFF

DDA,A2aftercZ|d	|d)Nr?TrNrrs r test_no_jump_infinite_while_loopz-JumpTestCase.test_no_jump_infinite_while_loop,s0

a	MM!	rcd}|d|dkr"|d|dz
}|dk dSdS)Nr?rLrWrrrs  r#test_jump_forwards_into_while_blockz0JumpTestCase.test_jump_forwards_into_while_block3sP


a1ffMM!
FA1ffffffr)rNrNrNrPcd}|dkr |d|dz
}|dk |ddS)Nr?rLrNrPrrs  r$test_jump_backwards_into_while_blockz1JumpTestCase.test_jump_backwards_into_while_block;sP
1ffMM!
FA1ff	

arct|d5|ddddn#1swxYwY|ddSrr
rrs r$test_jump_forwards_out_of_with_blockz1JumpTestCase.test_jump_forwards_out_of_with_blockC
&!
$
$		MM!															

a377cKt|d4d{V|ddddd{Vn#1d{VswxYwY|ddSrr%rrs r*test_jump_forwards_out_of_async_with_blockz7JumpTestCase.test_jump_forwards_out_of_async_with_blockI$VQ//								MM!																											

aA
AA)r?rLr?rLrNrtc|dt|d5|dddddS#1swxYwYdSrrr
rs r%test_jump_backwards_out_of_with_blockz2JumpTestCase.test_jump_backwards_out_of_with_blockO

a
&!
$
$		MM!																		A		A
A
cK|dt|d4d{V|ddddd{VdS#1d{VswxYwYdSrrr%rs r+test_jump_backwards_out_of_async_with_blockz8JumpTestCase.test_jump_backwards_out_of_async_with_blockU

a$VQ//								MM!																														A
A!$A!c	|d|dn#|dwxYw|ddSrrrs r+test_jump_forwards_out_of_try_finally_blockz8JumpTestCase.test_jump_forwards_out_of_try_finally_block[^	MM!MM!FMM!

a	-A)r?r?rNrPc|d	|d|ddS#|dwxYwNr?rNrPrrs r,test_jump_backwards_out_of_try_finally_blockz9JumpTestCase.test_jump_backwards_out_of_try_finally_blockc[

a	MM!MM!FMM!AAc	|dn#|dxYw|ddSNrLrWrfrrs r*test_jump_forwards_out_of_try_except_blockz7JumpTestCase.test_jump_forwards_out_of_try_except_blockkR	MM!	MM!

a0)r?r?rNc|d	|ddS#|dxYwr%rrs r+test_jump_backwards_out_of_try_except_blockz8JumpTestCase.test_jump_backwards_out_of_try_except_blocktO

a	MM!	MM!	.A)rWrYr7c	ddznZ#t$r-|d|dYn$t$r|dYnwxYw|ddSNr?rrWrPrYr7rrFloatingPointErrorrs rtest_jump_between_except_blocksz,JumpTestCase.test_jump_between_except_blocks}s	
aCCC 			MM!MM!!			MM!	

as4AAAc	ddzn:#t$r-|d|dYnwxYw|dn#|dwxYw|ddSr3)rrrs r test_jump_from_except_to_finallyz-JumpTestCase.test_jump_from_except_to_finallys	
aCCC 			MM!MM!	
MM!FMM!

as!A4?A?AA/)rWrfrYc	ddznF#|d|d|dYnxYw|ddS)Nr?rrWrPrfrYrrs rtest_jump_within_except_blockz*JumpTestCase.test_jump_within_except_blockso	
aCCC	MM!MM!MM!

as
AA)r?rPr?rPc|d	ddzn,#t$r}|dYd}~nd}~wwxYwd}dS)Nr?rrPrQrr)rrr-s   rtest_jump_over_try_exceptz&JumpTestCase.test_jump_over_try_exceptsm

a	
EEE 			MM!	s
AAA)r?rWrPrc&|dt|d5|ddddn#1swxYwYt|d5|dddddS#1swxYwYdSNr?rLrNrWrPrrs rtest_jump_across_withz"JumpTestCase.test_jump_across_with

a
&!
$
$		MM!															
&!
$
$		MM!																		#AAA#BB

B
crK|dt|d4d{V|ddddd{Vn#1d{VswxYwYt|d4d{V|ddddd{VdS#1d{VswxYwYdSr?rrs rtest_jump_across_async_withz(JumpTestCase.test_jump_across_async_with

a$VQ//								MM!																											$VQ//								MM!																														#A
A #A =B&&
B03B0)r?rNrPrfc|ddD]T}t|d5|ddddn#1swxYwY|dU|ddSNr?rrNrWrPrfrrs  r,test_jump_out_of_with_block_within_for_blockz9JumpTestCase.test_jump_out_of_with_block_within_for_blocks

a		Afa((
!
!

a   
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!MM!

asAA	A	c0K|ddD]f}t|d4d{V|ddddd{Vn#1d{VswxYwY|dg|ddSrHrrs  r2test_jump_out_of_async_with_block_within_for_blockz?JumpTestCase.test_jump_out_of_async_with_block_within_for_blocks%

a		A(33
!
!
!
!
!
!
!
!

a   
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!MM!

asA
A$	'A$	)r?rLrNrPrtrfcN|dt|d5t|d5|ddddn#1swxYwY|ddddn#1swxYwY|ddSNr?rLrNrWrPrfrrs r-test_jump_out_of_with_block_within_with_blockz:JumpTestCase.test_jump_out_of_with_block_within_with_blocks

a
&!
$
$		fa((
!
!

a   
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!MM!																

as4BA
BA	B A	!BB	B	cvK|dt|d5t|d4d{V|ddddd{Vn#1d{VswxYwY|ddddn#1swxYwY|ddSrM)rr
r%rs r3test_jump_out_of_async_with_block_within_with_blockz@JumpTestCase.test_jump_out_of_async_with_block_within_with_blocksz

a
&!
$
$		(33
!
!
!
!
!
!
!
!

a   
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!MM!																

as4BA'B'
A1	1B4A1	5BB B)rLrWrfrYc	|dt|d5|ddddn#1swxYwY|dnW#t|d5|ddddn#1swxYwY|dwxYw|ddSNrLrWrPrfrYrrs r0test_jump_out_of_with_block_within_finally_blockz=JumpTestCase.test_jump_out_of_with_block_within_finally_blocksO	MM!fa((
!
!

a   
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!MM!fa((
!
!

a   
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!MM!

as@A*A		A
A
*B>;BB>B!!B>$B!%B>cK	|dt|d4d{V|ddddd{Vn#1d{VswxYwY|dni#t|d4d{V|ddddd{Vn#1d{VswxYwY|dwxYw|ddSrRrrs r6test_jump_out_of_async_with_block_within_finally_blockzCJumpTestCase.test_jump_out_of_async_with_block_within_finally_blocks	MM!(33
!
!
!
!
!
!
!
!

a   
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!MM!)33
!
!
!
!
!
!
!
!

a   
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!MM!

as@A>A
A!$A!>C$B=+C$=
CC$
CC$r7)r?rNrPrxrc|ddD]}|ddD]b}|d	dD]}|d	|dI#|dwxYw|d|d	dS)
Nr?rrNrrPr7rrxrr)rrrks    r&test_jump_out_of_complex_nested_blocksz3JumpTestCase.test_jump_out_of_complex_nested_blockss

a				AMM!
&
&

a   &#))

a(((()MM"%%%%FMM"%%%%MM"

bs	A::B)r?rLrPc|dt|d5}|ddddn#1swxYwY|ddSNr?rLrWrPrrs  r test_jump_out_of_with_assignmentz-JumpTestCase.test_jump_out_of_with_assignments

a
&!
$
$	MM!																

asAAAcK|dt|d4d{V	}|ddddd{Vn#1d{VswxYwY|ddSrZrrs  r&test_jump_out_of_async_with_assignmentz3JumpTestCase.test_jump_out_of_async_with_assignment	s

a$VQ//								MM!																												

asA
A!$A!)r?rfr7r8cD|d	|d|s	|ddS|d|dn#|dwxYw|ddS)Nr?rNr7rfr8rrs r*test_jump_over_return_in_try_finally_blockz7JumpTestCase.test_jump_over_return_in_try_finally_block
	s

a	MM!

MM!
MM!MM!FMM!

asA1A11B)r?rNr7rrxrc|d	|d	|d|s	|dn[|d|dn#|dwxYw|d	|ddS)	Nr?TrNrPrr7rxrrrs r)test_jump_over_break_in_try_finally_blockz6JumpTestCase.test_jump_over_break_in_try_finally_block	s

a
	MM!
"

a   

b!!!!

a   

b!!!!

b!!!!MM"

bsBBBc|d|sdD]}|dn*|d|d|ddSNr?rrWrfrYr7rrs  r$test_jump_over_for_block_before_elsez1JumpTestCase.test_jump_over_for_block_before_else)	

a	
!
!

a    
!
MM!MM!

arcK|d|s/tdg23d{V}|d6n*|d|d|ddSNr?rNrWrfrYr7rr.rs  r*test_jump_over_async_for_block_before_elsez7JumpTestCase.test_jump_over_async_for_block_before_else4	

a	$aS>>
!
!
!
!
!
!
!a

a    *>
MM!MM!

aAcZ|d|ddSr`rrs rtest_no_jump_too_far_forwardsz*JumpTestCase.test_no_jump_too_far_forwardsA	rrrtbeforecZ|d|ddSr`rrs rtest_no_jump_too_far_backwardsz+JumpTestCase.test_no_jump_too_far_backwardsF	rrexceptch	|ddS#|dxYwNrLrWrrs rtest_no_jump_to_except_1z%JumpTestCase.test_no_jump_to_except_1L	s=	MM!	MM!s1cz	|ddS#t$r|dwxYwrsrrrs rtest_no_jump_to_except_2z%JumpTestCase.test_no_jump_to_except_2T	sO	MM!			MM!	s!:c	|ddS#t$r}|d|d}~wwxYwrsrvrs  rtest_no_jump_to_except_3z%JumpTestCase.test_no_jump_to_except_3\	sU	MM!			MM!G	s
?:?c	|ddS#ttf$r}|d|d}~wwxYwrs)rrrrs  rtest_no_jump_to_except_4z%JumpTestCase.test_no_jump_to_except_4d	sZ	MM!L)			MM!G	sAAAintocd|ddD]}|ddS)Nr?rrNrrs  r$test_no_jump_forwards_into_for_blockz1JumpTestCase.test_no_jump_forwards_into_for_blockl	sB

a		AMM!		rcK|dtddg23d{V}|d6dSrrhrs  r*test_no_jump_forwards_into_async_for_blockz7JumpTestCase.test_no_jump_forwards_into_async_for_blockr	sk

a !Q((							!MM!)sAcddD]}|d|ddS)NrrLrNrrs  r%test_no_jump_backwards_into_for_blockz2JumpTestCase.test_no_jump_backwards_into_for_blocky	s>		AMM!

arz&can't jump into the body of a for loopcKtddg23d{V}|d6|ddSr)r.rrs  r+test_no_jump_backwards_into_async_for_blockz8JumpTestCase.test_no_jump_backwards_into_async_for_block	sl !Q((							!MM!)

as1stackc|dt|d5|dddddS#1swxYwYdSrrrs r%test_no_jump_forwards_into_with_blockz2JumpTestCase.test_no_jump_forwards_into_with_block	rrcK|dt|d4d{V|ddddd{VdS#1d{VswxYwYdSrrrs r+test_no_jump_forwards_into_async_with_blockz8JumpTestCase.test_no_jump_forwards_into_async_with_block	rr)r?rLrct|d5|ddddn#1swxYwY|ddSrr
rs r&test_no_jump_backwards_into_with_blockz3JumpTestCase.test_no_jump_backwards_into_with_block	rrcKt|d4d{V|ddddd{Vn#1d{VswxYwY|ddSrrrs r,test_no_jump_backwards_into_async_with_blockz9JumpTestCase.test_no_jump_backwards_into_async_with_block	rrc|d	|d|ddS#|dwxYwr%rrs r)test_jump_forwards_into_try_finally_blockz6JumpTestCase.test_jump_forwards_into_try_finally_block	r'r()rLrWrLrWrPc	|d|dn#|dwxYw|ddSrrrs r*test_jump_backwards_into_try_finally_blockz7JumpTestCase.test_jump_backwards_into_try_finally_block	r"r#c|d	|ddS#|dxYwr%rrs r(test_jump_forwards_into_try_except_blockz5JumpTestCase.test_jump_forwards_into_try_except_block	r0r1)rLrLrfc	|dn#|dxYw|ddSr*rrs r)test_jump_backwards_into_try_except_blockz6JumpTestCase.test_jump_backwards_into_try_except_block	r,r-c	ddzna#t$r-|d|dYn+t$r}|dYd}~nd}~wwxYw|ddSr3r4rs  r!test_jump_between_except_blocks_2z.JumpTestCase.test_jump_between_except_blocks_2	s	
aCCC 			MM!MM!!			MM!	

as4A&	A&A!!A&c|d	|d|ddS#|dwxYwr%rrs rtest_jump_into_finally_blockz)JumpTestCase.test_jump_into_finally_block	r'r()rLrfrYc:	|d|d|d|dn/#|d|dwxYw|ddS)NrLrNrPrfrYrrs r+test_jump_into_finally_block_from_try_blockz8JumpTestCase.test_jump_into_finally_block_from_try_block	s	MM!MM!MM!MM!
MM!MM!

as*A,B)r?rNr?rNrPc|d	|d|ddS#|dwxYwr%rrs rtest_jump_out_of_finally_blockz+JumpTestCase.test_jump_out_of_finally_block	r'r(z9can't jump into an 'except' block as there's no exceptionc|d	|ddS#|dYdSxYwr%rrs r#test_no_jump_into_bare_except_blockz0JumpTestCase.test_no_jump_into_bare_except_block	sU

a	MM!	MM!s	.Ac|d	|ddS#t$r|dYdSwxYwr%rrxrs r(test_no_jump_into_qualified_except_blockz5JumpTestCase.test_no_jump_into_qualified_except_block	sg

a	MM!			MM!	s.AA)rLrPrfc	|d|dn0#|d|dxYw|ddSNrLrNrPrfr7rrs r2test_no_jump_into_bare_except_block_from_try_blockz?JumpTestCase.test_no_jump_into_bare_except_block_from_try_block	sv	MM!MM!	MM!MM!

as	*--Ac	|d|dn9#t$r,|d|dwxYw|ddSrr<rs r7test_no_jump_into_qualified_except_block_from_try_blockzDJumpTestCase.test_no_jump_into_qualified_except_block_from_try_block
s	MM!MM! 			MM!MM!		

as	*-6A#)r?rNrfr?rNrfrYc|d	|dddzdS#|d|dYdSxYwNr?rNrrfrYrrs r"test_jump_out_of_bare_except_blockz/JumpTestCase.test_jump_out_of_bare_except_block
sn

a	MM!
aCCCC	MM!MM!s	3,A"c|d	|dddzdS#t$r.|d|dYdSwxYwrrrs r'test_jump_out_of_qualified_except_blockz4JumpTestCase.test_jump_out_of_qualified_except_block
s

a	MM!
aCCCC			MM!MM!	s34A+*A+)r?rLrPrtc&|dt|d5|ddddn#1swxYwYt|d5|dddddS#1swxYwYdSr?rrs rtest_jump_between_with_blocksz*JumpTestCase.test_jump_between_with_blocks
rArBcrK|dt|d4d{V|ddddd{Vn#1d{VswxYwYt|d4d{V|ddddd{VdS#1d{VswxYwYdSr?rrs r#test_jump_between_async_with_blocksz0JumpTestCase.test_jump_between_async_with_blocks'
rErFc	|d|d|ddS#|d|dYdSxYwrrrs r-test_no_jump_over_return_out_of_finally_blockz:JumpTestCase.test_no_jump_over_return_out_of_finally_block/
sx	MM!MM!MM!F
MM!MM!FFFFFFrc|d|sdD]}|dn*|d|d|ddSrcrrs  r'test_no_jump_into_for_block_before_elsez4JumpTestCase.test_no_jump_into_for_block_before_else9
rercK|d|s/tdg23d{V}|d6n*|d|d|ddSrgrhrs  r-test_no_jump_into_async_for_block_before_elsez:JumpTestCase.test_no_jump_into_async_for_block_before_elseD
rjrkcB|tdddgdS)NrLSpamT)rrrs rtest_no_jump_to_non_integersz)JumpTestCase.test_no_jump_to_non_integersO
s#

-q&4&AAAAArc"tdSr)rrs r#test_no_jump_without_trace_functionz0JumpTestCase.test_no_jump_without_trace_functionR
s	'(((((rcri}tddz||d}||dddgdS)Nadef f(output):        # line 0
            x = 0                     # line 1
            y = 1                     # line 2
            '''                       # line 3
            %s                        # lines 4-1004
            '''                       # line 1005
            x += 1                    # line 1006
            output.append(x)          # line 1007
            return)a







































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































r)rLir)r,r)rrr)s   rtest_large_functionz JumpTestCase.test_large_functionW
sX'')*	+	+	+
cF

aD1#&&&&&rc(tdddGfdd}t|dd}tj|jdgi}t|tjd|gd	|ddS)
Nzd
# Comments don't count.
output.append(2)  # firstlineno is here.
output.append(3)
output.append(4)
z
<fake module>r,ceZdZZdS)<JumpTestCase.test_jump_to_firstlineno.<locals>.fake_functionN)rr r!r)rsr
fake_functionro
sHHHrrrWr?r)rLrNrLrNrW)compilerrrrr,r)rrrr-rs    @rtest_jump_to_firstlinenoz%JumpTestCase.test_jump_to_firstlinenoe
s
f										M1a00V\"""rN	T9T  )H2EFFFFFrrBz5can't jump from the 'call' trace event of a new frame)rrczdfd}|ddS)Nr?c2ddSrrrsrnestedz3JumpTestCase.test_no_jump_from_call.<locals>.nested|
sMM!rrPr)rrs` rtest_no_jump_from_callz#JumpTestCase.test_no_jump_from_callx
sS	

a					

arrFz'can only jump from a 'line' trace eventc0|ddSr>rrs rtest_no_jump_from_return_eventz+JumpTestCase.test_no_jump_from_return_event
s	

arc:|dddzdSrrrs r!test_no_jump_from_exception_eventz.JumpTestCase.test_no_jump_from_exception_event
s#	

a	Ar)rcjfd}t|ddS)Nc3>KddVdS)NrLrNrrsrr9z.JumpTestCase.test_jump_from_yield.<locals>.gen
s&MM!GGGGGrrP)rJr)rr9s` rtest_jump_from_yieldz!JumpTestCase.test_jump_from_yield
sG						
SSUU

arc|ddtdD}|ddS)Nr?cg|]}|Sr#r#rrs  rrz@JumpTestCase.test_jump_forward_over_listcomp.<locals>.<listcomp>
"""1Q"""rrrNrrbrs  rtest_jump_forward_over_listcompz,JumpTestCase.test_jump_forward_over_listcomp
sE

a""b		"""

arc@d}dtdD}d}dS)Nr?cg|]}|Sr#r#rs  rrzAJumpTestCase.test_jump_backward_over_listcomp.<locals>.<listcomp>
rrrrNrarrcr-rs    r test_jump_backward_over_listcompz-JumpTestCase.test_jump_backward_over_listcomp
s)
""b		"""
r)rLrYrLcd}|d|rdSdtdD}d}|d|ddS)NFrLcg|]}|Sr#r#rs  rrzDJumpTestCase.test_jump_backward_over_listcomp_v2.<locals>.<listcomp>
s!!!1Q!!!rrPrfrYr7rrflagr-s   r#test_jump_backward_over_listcomp_v2z0JumpTestCase.test_jump_backward_over_listcomp_v2
sn

a	F!!a!!!

a

arcK|ddttd2d{V}|ddS)Nr?c"Kg|3d{V}|
6Srr#rs  rrzFJumpTestCase.test_jump_forward_over_async_listcomp.<locals>.<listcomp>
.33333333Q3333rrNrr.rbrs  r%test_jump_forward_over_async_listcompz2JumpTestCase.test_jump_forward_over_async_listcomp
sc

a33ib		22333333333

arcjKd}dttd2d{V}d}dS)Nr?c"Kg|3d{V}|
6Srr#rs  rrzGJumpTestCase.test_jump_backward_over_async_listcomp.<locals>.<listcomp>
rrrrN)r.rbrs    r&test_jump_backward_over_async_listcompz3JumpTestCase.test_jump_backward_over_async_listcomp
sG
33ib		22333333333
rcKd}|d|rdSdttd2d{V}d}|d|ddS)NFrLc"Kg|3d{V}|
6Srr#rs  rrzJJumpTestCase.test_jump_backward_over_async_listcomp_v2.<locals>.<listcomp>
s.22222222Q2222rrPrfrYr7rrs   r)test_jump_backward_over_async_listcomp_v2z6JumpTestCase.test_jump_backward_over_async_listcomp_v2
s

a	F22ia11222222222

a

ar)rcd}t|d|d|dzdz|ddSNr?rNrPrrr%rrrrcs  r(test_jump_with_null_on_stack_load_globalz5JumpTestCase.test_jump_with_null_on_stack_load_global
sr

MM!	
	
	
	

a




	

brcd}t}||d|d|dzdz|ddS)Nr?rWrfrxrzr)rrcr)s   r&test_jump_with_null_on_stack_push_nullz3JumpTestCase.test_jump_with_null_on_stack_push_null
sy
	MM!	
	
	
	

a




	

brcd}t|d|d|dzdz|ddSr)listrrs  r&test_jump_with_null_on_stack_load_attrz3JumpTestCase.test_jump_with_null_on_stack_load_attr
sl
A	
	
	
	

a




	

brc|d|dpd^}}}|ddSNr?rLrrNrrr;s  r(test_jump_extended_args_unpack_ex_simplez5JumpTestCase.test_jump_extended_args_unpack_ex_simple
sH

a==##-vAq

ar)r?rWrWrPc|d|dpd^}}}|ddS)Nr?rWrrPrrs  r(test_jump_extended_args_unpack_ex_trickyz5JumpTestCase.test_jump_extended_args_unpack_ex_trickysN

a
MM!&	

1

arcpucdddgdtddDd}i}td|||d	}||d
dddgdS)Nzdef f(output):z    output.append(1)z    for _ in spam:c3"K|]
}d|dVdS)z        output.append()Nr#rs  rrz@JumpTestCase.test_jump_extended_args_for_iter.<locals>.<genexpr>s.
G
G+q+++
G
G
G
G
G
GrrNiz    output.append(100_000)rr)rLr?)rbr,rr)rsourcer-r)s    r test_jump_extended_args_for_iterz-JumpTestCase.test_jump_extended_args_for_iter
s

" 
H
GU1g5F5F
G
G
G	


*
	TYYv

	***cN

a!Wq'l33333rc|d|dod}|ddSrrrs  rtest_jump_or_popzJumpTestCase.test_jump_or_popsB

aMM!'

ar)NrDFr)rrr r!rrrrrrrrrrrrrrr<rrrrrrrrrrrr	rrrrrr!r&r+r/r6r8r:r=r@rDrIrKrNrPrSrUrXr[r]r_rardrirmrprtrwryr{r~rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrequires_resourcerrr#rrrrPs666@D).3333"FJ).3333$







Yq!aS
Yq!YYY Yq!aSYq!YYY Yq!aSYq!YYY Yq!aVYq!---../._QAq6""_#"_Q---.._/.Yq!aS
Yq!YYY Yq!aV			Yq!aV/45565Yq"q"g 1267787Yq"q!fz;78898Yq!aS:w/0010Yq!aVYq!\\\""#"Yq!aV
_QAq6""#"
Yq!((())*)
_Q...//0/
Yq!aSYq!\\\""#"Yq!aSYq!YYY Yq!YYY Yq!YYY Yq!YYY Yq!\\\""#"Yq!]]]##$#_Q===))*)Yq!\\\""#"_Q<<<(()(Yq!((())*)_Q...//0/Yq!\\\""#"_Q<<<(()(Yq"'''(()(Yq!YYY _Q999%%&%Yq!\\\""		#"	Yq!***++

,+
Yq!aV_QAq6""#"Yq!aS:w/0010Yq"qcJ12232
Yq!aS:x01121Yq!aS:x01121Yq!aS:x01121Yq!aS:x01121Yq!R*f-../.
_Q2
F344

54
Yq!aVj&12232
_QAq6J0X#YZZ[Z
Yq!R*g.//0/
_Q2
G45565
Yq!ZZZ*g!67787
_Q:::
G'<==>=
Yq!aVYq!___%%&%Yq!aSYq!YYY Yq!YYY Yq!aSYq!YYY Yq!___%%&%Yq!R*&abccdcYq!R*&abccdcYq!YYY-h ijjkjYq!aS:'bcddedYq!***++,+Yq!***++,+Yq!]]]##$#_Q===))*)Yq!aVj'23343Yq!aVj&12232_QAq6J#78898BBB)))
'''GGG&Yq!aSz<8/9:::::Yq!aS81:;;;;;Yq!aSJ84:;;;;;Yq!aV8,,,-,Yq!aVYq!R
Yq!YYY _QAq6""#"
_Q2
_Q999%%&%Yq!R
G455565$Yq!R
G455565&Yq!R
G455565"Yq!aV
Yq!\\\""#"Wu%%
4
4&%
4Yq!aVrrc&eZdZdZdZdZdZdS)TestExtendedArgsc|tjtjtjddSrrurs rrzTestExtendedArgs.setUp&rrctdD]}|
ddddfdtj|tjdS)NrrBrDrFc(|xxdz
cc<Sr>r#)rrrcountsrs   rrz,TestExtendedArgs.count_traces.<locals>.trace0s5MMMQMMMLr)rbrr)rrr;rrs   @@rcount_traceszTestExtendedArgs.count_traces*sr		ADFFFFQ!44							UT
rci}d}t||||d}||dddddS)Na"def f():
  (y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   y,
   ) = range(300)r)r?i-r	)r,rrB)rnsrrs    rtest_trace_unpack_long_sequencez0TestExtendedArgs.test_trace_unpack_long_sequence:sV
AT2""2c7++!SA!F!FGGGGGrc@dddtdD}dtdD}t||||d}||dddd	dS)
Nzeif 1:
            def f():
                return (
                    {}
                )
        z
+
c3"K|]
}d|dVdS)varrNr#rs  rrz>TestExtendedArgs.test_trace_lots_of_globals.<locals>.<genexpr>Gs*AAaAAAAAArici|]}d||	S)rr#rs  r
<dictcomp>z?TestExtendedArgs.test_trace_lots_of_globals.<locals>.<dictcomp>Hs 
0
0
0qiAii
0
0
0rr)r?ir	)formatrrbr,rrB)rrrrs    rtest_trace_lots_of_globalsz+TestExtendedArgs.test_trace_lots_of_globalsAs

F7<<AAU4[[AAAAABB	
1
0E$KK
0
0
0T2""2c7++!TQ!G!GHHHHHrN)rr r!rrrrr#rrrr$sX HHH
I
I
I
I
Irrc eZdZdZdZdZdS)
TestEdgeCasesc|tjtjtjddSrrurs rrzTestEdgeCases.setUpPrrcd}dGfdd}tj|tj5}tj|||jj|j||jj	tdddn#1swxYwY|tj|dS)NcdSrr#rs rrz*TestEdgeCases.test_reentrancy.<locals>.fooUCrcdSrr#rs rbarz*TestEdgeCases.test_reentrancy.<locals>.barXrrc eZdZdZfdZdS)(TestEdgeCases.test_reentrancy.<locals>.AcdSrr#)rr8s  r__call__z1TestEdgeCases.test_reentrancy.<locals>.A.__call__\rrc0tjdSrr)rrs r__del__z0TestEdgeCases.test_reentrancy.<locals>.A.__del___sS!!!!!rN)rr r!r"r$)rsrrr [s=



"
"
"
"
"
"
"rr)rrrcatch_unraisable_exceptionrB
unraisableobjectr$r	exc_valuerr)rrrcmrs    @rtest_reentrancyzTestEdgeCases.test_reentrancyTsH							"	"	"	"	"	"	"	"	"	"	QQSS

/
1
1	IRLR]119===!!"-"9<HHH	I	I	I	I	I	I	I	I	I	I	I	I	I	I	I
	
-----sAB11B58B5cd}tj|~tjtjdS)NcdSrr#rs rrz+TestEdgeCases.test_same_object.<locals>.foolrr)rrr)rrs  rtest_same_objectzTestEdgeCases.test_same_objectksB				SS\^^$$$$$rN)rr r!rr*r-r#rrrrNsA....%%%%%rr__main__)7r:runittest
unittest.mockrrrr	functoolsrrtest.supportrrequires_working_socketr
r%r.r<r@rrIrSrUr\rdrkrorBryr{rrrrrrrrrrTestCaserr=r^r\rjrsrrrrrrrmainr#rr<module>r6s######



				&&&&&&t,,,,
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(
(



 





'''


''''''



(((	%	%	%


'''










$
$
$
///$$$,_


,,,


)))


+++"


+++	-	-	-)+6;
<)-890g1g1g1g1g1H%g1g1g1T)	/	/	/	/	/-	/	/	/	00000=000g3g3g3g3g3x0g3g3g3\########L+++HHHQQQQQ8$QQQh'I'I'I'I'Ix('I'I'IT#%#%#%#%#%H%#%#%#%LzHMOOOOOr