python (3.12.0)

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

ΑecddlZdaGddejZGddejZGddejZedk(rejyy)	NceZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdZdZdZy)NamedExpressionInvalidTestcxd}|jtd5t|iidddy#1swYyxYw)Nzx := 0invalid syntaxassertRaisesRegexSyntaxErrorexecselfcodes  O/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/test/test_named_expressions.py test_named_expression_invalid_01z;NamedExpressionInvalidTest.test_named_expression_invalid_01s9

#
#K1A
B	r2			09cxd}|jtd5t|iidddy#1swYyxYw)Nz
x = y := 0rrrs  r test_named_expression_invalid_02z;NamedExpressionInvalidTest.test_named_expression_invalid_02
s9

#
#K1A
B	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nz	y := f(x)rrrs  r test_named_expression_invalid_03z;NamedExpressionInvalidTest.test_named_expression_invalid_03s9

#
#K1A
B	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nzy0 = y1 := f(x)rrrs  r test_named_expression_invalid_04z;NamedExpressionInvalidTest.test_named_expression_invalid_04s9$

#
#K1A
B	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nz((a, b) := (1, 2))z,cannot use assignment expressions with tuplerrs  r test_named_expression_invalid_06z;NamedExpressionInvalidTest.test_named_expression_invalid_06s9'

#
#K1_
`	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nzdef spam(a = b := 42): passrrrs  r test_named_expression_invalid_07z;NamedExpressionInvalidTest.test_named_expression_invalid_07%s90

#
#K1A
B	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nzdef spam(a: b := 42 = 5): passrrrs  r test_named_expression_invalid_08z;NamedExpressionInvalidTest.test_named_expression_invalid_08+s93

#
#K1A
B	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nzspam(a=b := 'c')rrrs  r test_named_expression_invalid_09z;NamedExpressionInvalidTest.test_named_expression_invalid_091s9%

#
#K1A
B	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nzspam(x = y := f(x))rrrs  r test_named_expression_invalid_10z;NamedExpressionInvalidTest.test_named_expression_invalid_107s9(

#
#K1A
B	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nzspam(a=1, b := 2),positional argument follows keyword argumentrrs  r test_named_expression_invalid_11z;NamedExpressionInvalidTest.test_named_expression_invalid_11=s;&

#
#K:<	r2			rcxd}|jtd5t|iidddy#1swYyxYwNzspam(a=1, (b := 2))r"rrs  r test_named_expression_invalid_12z;NamedExpressionInvalidTest.test_named_expression_invalid_12D;(

#
#K:<	r2			rcxd}|jtd5t|iidddy#1swYyxYwr%rrs  r test_named_expression_invalid_13z;NamedExpressionInvalidTest.test_named_expression_invalid_13Kr'rcxd}|jtd5t|iidddy#1swYyxYw)Nz(x := lambda: y := 1)rrrs  r test_named_expression_invalid_14z;NamedExpressionInvalidTest.test_named_expression_invalid_14Rs9*

#
#K1A
B	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nz(lambda: x := 1)z-cannot use assignment expressions with lambdarrs  r test_named_expression_invalid_15z;NamedExpressionInvalidTest.test_named_expression_invalid_15Xs;%

#
#K;=	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nz + 1 for i in i := [1,2]]rrrs  r test_named_expression_invalid_16z;NamedExpressionInvalidTest.test_named_expression_invalid_16_s9,

#
#K1A
B	r2			rcxd}|jtd5t|iidddy#1swYyxYw)Nz-[i := 0, j := 1 for i, j in [(1, 2), (3, 4)]]z;did you forget parentheses around the comprehension target?rrs  r test_named_expression_invalid_17z;NamedExpressionInvalidTest.test_named_expression_invalid_17es<>

#
#KMO	r2			rcxd}|jtd5t|iidddy#1swYyxYw)NzNclass Foo():
            [(42, 1 + ((( j := i )))) for i in range(5)]
        zKassignment expression within a comprehension cannot be used in a class bodyrrs  r+test_named_expression_invalid_in_class_bodyzFNamedExpressionInvalidTest.test_named_expression_invalid_in_class_bodyls@
#
#KY[	r2			rc	gd}|D]\}}dD]\}}|j||}|j|||5|jt5t	|iddd|jt5t	|iidddt	d|idddy#1swYPxYw#1swY1xYw#1swYxYw)N))zComplex expression: cz2{0}(c := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: dz2{0}(d := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: ez2{0}(e := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: fz2{0}(f := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: gz2{0}(g := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: hz2{0}(h := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: iz2{0}(i := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})zComplex expression: jz2{0}(j := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})())[]){}caselparrparlambda: )formatsubTestassertRaises	NameErrorr
)rcases	test_caser
r>r?s      r8test_named_expression_valid_rebinding_iteration_variablezSNamedExpressionInvalidTest.test_named_expression_valid_rebinding_iteration_variableus
& %	0OItB
0
d{{4.\\yt$\G	0
**95'T2'**95+T2r*+8D6*B/	0	0
0	0''++	0	0s;C
B-	C;B9		C-B6
2C9C
>CCc	
ddg}|D]\}}}d|d}dD]\}}|j||}|j|||5|jt|5t	|iddd|jt|5t	|iiddd|jt|5t	d|iddddddy#1swYpxYw#1swYPxYw#1swY.xYw#1swYxYw)N)Complex expression: aaz2{0}(a := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1})Complex expression: bbz2{0}(b := 1) for a, (*b, c[d+e::f(g)], h.i) in j{1}Fassignment expression cannot rebind comprehension iteration variable ''r5r<r@)rArBrr	r
)rrErFtargetr
msgr>r?s        r:test_named_expression_invalid_rebinding_iteration_variablezUNamedExpressionInvalidTest.test_named_expression_invalid_rebinding_iteration_variables$

F
F	
(-	4#IvtZ[aZbbcdCB
4
d{{4.\\yt$\G
4
//SA'T2'//SA+T2r*+//SA4xv.34
4
4
4	4''++44
4
4sTC9
C	&C9C!	C90C-	C9C
C9!C*
&C9-C6
2C99Dcgd}|D]\}}}d|d}|j|5|jt|5t|iddd|jt|5t|iiddd|jt|5td|iddddddy#1swYnxYw#1swYNxYw#1swY,xYw#1swYxYw)N))Local reuseiz[i := 0 for i in range(5)])Nested reusejz0[[(j := 0) for i in range(5)] for j in range(5)])Reuse inner loop targetrVz.[(j := 0) for i in range(5) for j in range(5)])Unpacking reuserTz[i := 0 for i, j in [(0, 1)]])Reuse in loop conditionrTz#[i+1 for i in range(5) if (i := 0)])Unreachable reuserTz#[False or (i:=0) for i in range(5)])Unreachable nested reuserTz?[(i, j) for i in range(5) for j in range(5) if True or (i:=10)]rMrNr=r@rBrr	r
rrEr=rOr
rPs      rMtest_named_expression_invalid_rebinding_list_comprehension_iteration_variablezhNamedExpressionInvalidTest.test_named_expression_invalid_rebinding_list_comprehension_iteration_variables	
#(	0D&$Z[aZbbcdC4(
0++K=#rN#++K='r2&'++K=08D6*B/0
0
0	0##''00
0
0RC
B7
C(C6CC$C7C<CCCCCC$	cddg}|D]\}}}d|d}|j|5|jt|5t|iddd|jt|5t|iiddd|jt|5td|iddddddy#1swYnxYw#1swYNxYw#1swY,xYw#1swYxYw)N)Inner reuserVz3[i for i in range(5) if (j := 0) for j in range(5)])Inner unpacking reuserVz6[i for i in range(5) if (j := 0) for j, k in [(0, 1)]]Ecomprehension inner loop cannot rebind assignment expression target 'rNr\r@r]r^s      rEtest_named_expression_invalid_rebinding_list_comprehension_inner_loopz`NamedExpressionInvalidTest.test_named_expression_invalid_rebinding_list_comprehension_inner_loopWd
#(	0D&$YZ`YaabcC4(
0++K=#rN#++K='r2&'++K=08D6*B/0
0
0	0##''00
0
0r`cgd}d}|D]\}}|j|5|jt|5t|iddd|jt|5t|iiddd|jt|5td|iddddddy#1swYnxYw#1swYNxYw#1swY,xYw#1swYxYw)N)	)	Top levelz[i for i in (i := range(5))])Inside tuplez"[i for i in (2, 3, i := range(5))])Inside listz"[i for i in [2, 3, i := range(5)]])Different namez[i for i in (j := range(5))])Lambda expressionz'[i for i in (lambda:(j := range(5)))()])
Inner loopz.[i for i in range(5) for j in (i := range(5))])Nested comprehensionz)[i for i in [j for j in (k := range(5))]])Nested comprehension conditionz1[i for i in [j for j in range(5) if (j := True)]])Nested comprehension bodyz,[i for i in [(j := True) for j in range(5)]]Kassignment expression cannot be used in a comprehension iterable expressionr\r@r]rrErPr=r
s     rDtest_named_expression_invalid_list_comprehension_iterable_expressionz_NamedExpressionInvalidTest.test_named_expression_invalid_list_comprehension_iterable_expression

\	0JD$4(
0++K=#rN#++K='r2&'++K=08D6*B/0
0
0	0##''00
0
0RC
B2C#B>1CC
C2B;7C>CC
CCC	cgd}|D]\}}}d|d}|j|5|jt|5t|iddd|jt|5t|iiddd|jt|5td|iddddddy#1swYnxYw#1swYNxYw#1swY,xYw#1swYxYw)N)	)rSrTz{i := 0 for i in range(5)})rUrVz0{{(j := 0) for i in range(5)} for j in range(5)})rWrVz.{(j := 0) for i in range(5) for j in range(5)})rXrTz{i := 0 for i, j in {(0, 1)}})rYrTz#{i+1 for i in range(5) if (i := 0)})rZrTz#{False or (i:=0) for i in range(5)})r[rTz?{(i, j) for i in range(5) for j in range(5) if True or (i:=10)})rIrJz.{(a := 1) for a, (*b, c[d+e::f(g)], h.i) in j})rKrLz.{(b := 1) for a, (*b, c[d+e::f(g)], h.i) in j}rMrNr\r@r]r^s      rLtest_named_expression_invalid_rebinding_set_comprehension_iteration_variablezgNamedExpressionInvalidTest.test_named_expression_invalid_rebinding_set_comprehension_iteration_variables
#(	0D&$Z[aZbbcdC4(
0++K=#rN#++K='r2&'++K=08D6*B/0
0
0	0##''00
0
0r`cddg}|D]\}}}d|d}|j|5|jt|5t|iddd|jt|5t|iiddd|jt|5td|iddddddy#1swYnxYw#1swYNxYw#1swY,xYw#1swYxYw)N)rbrVz3{i for i in range(5) if (j := 0) for j in range(5)})rcrVz6{i for i in range(5) if (j := 0) for j, k in {(0, 1)}}rdrNr\r@r]r^s      rDtest_named_expression_invalid_rebinding_set_comprehension_inner_loopz_NamedExpressionInvalidTest.test_named_expression_invalid_rebinding_set_comprehension_inner_looprfr`cgd}d}|D]\}}|j|5|jt|5t|iddd|jt|5t|iiddd|jt|5td|iddddddy#1swYnxYw#1swYNxYw#1swY,xYw#1swYxYw)N)	)rhz{i for i in (i := range(5))})riz"{i for i in (2, 3, i := range(5))})rjz"{i for i in {2, 3, i := range(5)}})rkz{i for i in (j := range(5))})rlz'{i for i in (lambda:(j := range(5)))()})rmz.{i for i in range(5) for j in (i := range(5))})rnz){i for i in {j for j in (k := range(5))}})roz1{i for i in {j for j in range(5) if (j := True)}})rpz,{i for i in {(j := True) for j in range(5)}}rqr\r@r]rrs     rCtest_named_expression_invalid_set_comprehension_iterable_expressionz^NamedExpressionInvalidTest.test_named_expression_invalid_set_comprehension_iterable_expressionrtruN)__name__
__module____qualname__rrrrrrrrr r#r&r)r+r-r/r1r3rGrQr_rersrwryr{rrrs#0J440*
00,04
00rrcxeZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZy)NamedExpressionAssignmentTestc0dx}|j|dy)N
assertEqualrrJs  r#test_named_expression_assignment_01zANamedExpressionAssignmentTest.test_named_expression_assignment_010sBrc4d}|x}|j|dyNrrs  r#test_named_expression_assignment_02zANamedExpressionAssignmentTest.test_named_expression_assignment_025sBrc0dx}|j|dy)Nr)rtotals  r#test_named_expression_assignment_03zANamedExpressionAssignmentTest.test_named_expression_assignment_03;s"rc0dx}|j|dy)Nrr)rinfos  r#test_named_expression_assignment_04zANamedExpressionAssignmentTest.test_named_expression_assignment_04@s	y)rc4dx}df|j|dyNrrr)rxs  r#test_named_expression_assignment_05zANamedExpressionAssignmentTest.test_named_expression_assignment_05EsArcdx}x}x}|j|d|j|d|j|dy)Nrr)rryzs    r#test_named_expression_assignment_06zANamedExpressionAssignmentTest.test_named_expression_assignment_06JsBVQ}q	AAArc0dx}|j|dy)Nrrr)rlocs  r#test_named_expression_assignment_07zANamedExpressionAssignmentTest.test_named_expression_assignment_07Qsf%rcTdx}r|j|dy|jdy)Neggs0variable was not assigned using named expression)rfailrspams  r#test_named_expression_assignment_08zANamedExpressionAssignmentTest.test_named_expression_assignment_08Vs(>4>T6*iiJKrcRdx}r|j|y|jdy)NTr)
assertTruerrs  r#test_named_expression_assignment_09zANamedExpressionAssignmentTest.test_named_expression_assignment_09[s$!\T\OOD!iiJKrc6dx}dk(ry|jdy)Nrr)r)rmatchs  r#test_named_expression_assignment_10zANamedExpressionAssignmentTest.test_named_expression_assignment_10`sKEBiiJKrcd}gd}|Dcgc]}||x}dkDs||||zf}}|j|gdycc}w)Nc|SNrrJs rrzONamedExpressionAssignmentTest.test_named_expression_assignment_11.<locals>.spamfHrrr)rr?)rrr)rrrrrr
input_datarrress      r#test_named_expression_assignment_11zANamedExpressionAssignmentTest.test_named_expression_assignment_11esO	
$.EqQ<112D1ac{EEEFFs
A
Acd}tddDcgc]}||x}||zg}}|j|ddgddgddgddggycc}w)Nc|Srrrs rrzONamedExpressionAssignmentTest.test_named_expression_assignment_12.<locals>.spamnrrrrrrrangerrrrrrs     r#test_named_expression_assignment_12zANamedExpressionAssignmentTest.test_named_expression_assignment_12ms_	,1!QK8qT!Wac"883x!SAs8aXFG9sA	cntddgx}}|j|d|j|ddgyrlenr)rlineslengths   r#test_named_expression_assignment_13zANamedExpressionAssignmentTest.test_named_expression_assignment_13ts8q!f_U%#1&rc	d}d}d}||||dz
zzx}kDr|dz
|z|z|z}||||dz
zzx}kDr|j|dy)N	rrrr)rrJnrds     r#test_named_expression_assignment_14zANamedExpressionAssignmentTest.test_named_expression_assignment_14zst	


Q1X
%1&A#q1"AQ1X
%1&	
Arc<dx}r	dx}r|j|dy)NFrrs  r#test_named_expression_assignment_15zANamedExpressionAssignmentTest.test_named_expression_assignment_15s+jajjaj	
E"rc
d\}}tdDcic]}|x}|x}||zx}z|z
}}|j|ddddddd	ycc}w)
Nrrrr
)rrrrrrr)rrJrL__cfibs      r#test_named_expression_assignment_16zANamedExpressionAssignmentTest.test_named_expression_assignment_16sd1?DQxHQq&!!a%ZQ0144HH!aA""EFIsAcfdg}|dx}}|j|d|j||dy)Nrrr)rrJrLelements    r#test_named_expression_assignment_17zANamedExpressionAssignmentTest.test_named_expression_assignment_17s:
CqDA'A!A$'rcGdd}|dgdgg}|dx}dx}f}|j|d|j|d|j||j||y)NceZdZdZdZy)]NamedExpressionAssignmentTest.test_named_expression_assignment_18.<locals>.TwoDimensionalListc||_yrtwo_dimensional_list)rrs  r__init__zfNamedExpressionAssignmentTest.test_named_expression_assignment_18.<locals>.TwoDimensionalList.__init__s
,@)rc2|j|d|dS)Nrrr)rindexs  r__getitem__ziNamedExpressionAssignmentTest.test_named_expression_assignment_18.<locals>.TwoDimensionalList.__getitem__s 00q:58DDrN)r|r}r~rrrrrTwoDimensionalListrs
A
Errrrr)rr)rrrJrLrrs      r#test_named_expression_assignment_18zANamedExpressionAssignmentTest.test_named_expression_assignment_18sw	E	E
aSz*qDAQ$!J-AA!"8"8";A">?rN)r|r}r~rrrrrrrrrrrrrrrrrrrrrrr.sc 
 #
*

&
L
L
L
GH' #G
(@rrceZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZy)NamedExpressionScopeTestcxd}|jtd5t|iidddy#1swYyxYw)Nz!def spam():
    (a := 5)
print(a)zname 'a' is not defined)rrDr
rs  rtest_named_expression_scope_01z7NamedExpressionScopeTest.test_named_expression_scope_01s=
#
#I/H
I	r2			rcd}tdDcgc]	}||zx}}}|j|gd|j|dycc}wNrr)rrrrrrr)rrvpartial_sumss    rtest_named_expression_scope_02z7NamedExpressionScopeTest.test_named_expression_scope_02sP49!H=q**=='78#>ActtfddD}|j||jdy)Nc3,K|]}|xdk(
yw)rNr).0numlastNums  r	<genexpr>zJNamedExpressionScopeTest.test_named_expression_scope_03.<locals>.<genexpr>sECc>7a/Err)anyrr)rcontainsOners  @rtest_named_expression_scope_03z7NamedExpressionScopeTest.test_named_expression_scope_03s/E9EE$!$rcd}tddDcgc]}||x}||zg}}|jdycc}w)Nc|Srrrs rrzENamedExpressionScopeTest.test_named_expression_scope_04.<locals>.spamrrrrrrrs     rtest_named_expression_scope_04z7NamedExpressionScopeTest.test_named_expression_scope_04sF	,1!QK8qT!Wac"88A9s=cd}gd}|Dcgc]}||x}dkDs||||zf}}|j|gd|jdycc}w)Nc|Srrrs rrzENamedExpressionScopeTest.test_named_expression_scope_05.<locals>.spamrrrrrrrrs      rtest_named_expression_scope_05z7NamedExpressionScopeTest.test_named_expression_scope_05s_	
$.EqQ<112D1ac{EEEFAFs
A
Ac	tdDcgc]}tdDcgc]}|x}c}}}}|j|gdgdg|jdycc}wcc}}w)Nrrrrrr)rrVrTrrs     rtest_named_expression_scope_06z7NamedExpressionScopeTest.test_named_expression_scope_06s[6;Ah?58,a		,??y)45q!-?sA$AA$A$cJtddgx}|j|ddgyrr)rrs  rtest_named_expression_scope_07z7NamedExpressionScopeTest.test_named_expression_scope_07s&aVOEA'rc	d}d}tdDcgc]}|||x}x}}}|j|ddg|jd|jdycc}w)Nc|Srrrs rrzENamedExpressionScopeTest.test_named_expression_scope_08.<locals>.spamrrc|dzSNrrrLs rrzENamedExpressionScopeTest.test_named_expression_scope_08.<locals>.eggsq5Lrrrrr)rrrhrLrJrs       rtest_named_expression_scope_08z7NamedExpressionScopeTest.test_named_expression_scope_08sp		16a91t1fa%A&99q!f%AA	:sA(c	d}d}tdDcgc]}|||x}x}}}|j|ddg|jdycc}w)Nc|Srrrs rrzENamedExpressionScopeTest.test_named_expression_scope_09.<locals>.spamrrc|dzSr
rrs rrzENamedExpressionScopeTest.test_named_expression_scope_09.<locals>.eggsrrrrr)rrrr
rJrs      rtest_named_expression_scope_09z7NamedExpressionScopeTest.test_named_expression_scope_09s`		16a91t1fa%A&99q!f%A:sAc	tdDcgc]}tdDcgc]}dx}c}x}!}}}|j|ddgddgg|jd|jddgycc}wcc}}w)Nrrr)rrVrTrJrLrs      rtest_named_expression_scope_10z7NamedExpressionScopeTest.test_named_expression_scope_10s8=aA1U1X.!VQV..q.AA1v1v./AQF#	/AsA:A5A:5A:ctdDcgc]}|x}}}|j|gd|jdycc}w)Nr)rrrrrrr)rrTrVrs    rtest_named_expression_scope_11z7NamedExpressionScopeTest.test_named_expression_scope_11sD$Qx(!Avqv((o.A)sAcd}tdDcgc]	}||zx}}}|j|gd|j|dycc}wrr)rrLrTrs    rtest_named_expression_scope_17z7NamedExpressionScopeTest.test_named_expression_scope_17sN
#(8,aAEzqz,,./B-rcfd}|dx}}|j|d|j|dy)Nc|Srrrs rrzENamedExpressionScopeTest.test_named_expression_scope_18.<locals>.spamrrrrrrrLrs    rtest_named_expression_scope_18z7NamedExpressionScopeTest.test_named_expression_scope_18
s6	61la Arcfd}|dx}}|j|d|j|dy)Nc|Srrrs rrzENamedExpressionScopeTest.test_named_expression_scope_19.<locals>.spamrrrrrs    rtest_named_expression_scope_19z7NamedExpressionScopeTest.test_named_expression_scope_19s6	FAna Archd}|dx}}|j|d|j|dy)Nc|Srrrs rrzENamedExpressionScopeTest.test_named_expression_scope_20.<locals>.spamrrrrrrs    rtest_named_expression_scope_20z7NamedExpressionScopeTest.test_named_expression_scope_20s7	1faa Arcjd}|dx}d}|j|d|j|dy)Nc||zSrrrJrLs  rrzENamedExpressionScopeTest.test_named_expression_scope_21.<locals>.spam&rrrrrrrrrrrs    rtest_named_expression_scope_21z7NamedExpressionScopeTest.test_named_expression_scope_21%s9	61Qa Arcjd}|dx}d}|j|d|j|dy)Nc||zSrrr%s  rrzENamedExpressionScopeTest.test_named_expression_scope_22.<locals>.spam/rrrrrrrr&s    rtest_named_expression_scope_22z7NamedExpressionScopeTest.test_named_expression_scope_22.s9	FAq!a Arcjd}|dx}d}|j|d|j|dy)Nc||zSrrr%s  rrzENamedExpressionScopeTest.test_named_expression_scope_23.<locals>.spam8rrrr)rLrJrrr&s    rtest_named_expression_scope_23z7NamedExpressionScopeTest.test_named_expression_scope_237s9	1fa#a ArcFdfd}||jdy)NrcdxyrrrsrrzENamedExpressionScopeTest.test_named_expression_scope_24.<locals>.spamBs
WQrrr)rrrJs  @rtest_named_expression_scope_24z7NamedExpressionScopeTest.test_named_expression_scope_24@s$		
BrcPi}d}t||i|j|ddy)Nz4a = 10
def spam():
    global a
    (a := 20)
spam()rJr)r
r)rnsr
s   rtest_named_expression_scope_25z7NamedExpressionScopeTest.test_named_expression_scope_25Is0

	
T2rC"%rcVd}d}d}d}dd|fdd|d	fd
d|fdd|d	fdd|fd
d|d	fdd|fdd|d	fg}|D]Z\}}|j|5i}t|||j|dd|j|dgdddd\y#1swYgxYw)Nz/[x := i for i in range(3) if (x := i) or not x]z([x := i for i in range(3) if x or not x]z*[x for i in range(3) if (x := i) or not x]zF[j for i in range(3) if x or not x for j in range(3) if (x := i)][:-3]z
Rebind globalzx = 1; result = zRebind nonlocalzresult, x = (lambda x=1: (z, x))()z
Filter globalzFilter nonlocalzBody globalz
Body nonlocalz
Nested globalzNested nonlocalr\rrresultr)rBr
r)	r	rebinding
filter_refbody_ref
nested_refrEr=r
r2s	         r6test_named_expression_variable_reuse_in_comprehensionszONamedExpressionScopeTest.test_named_expression_variable_reuse_in_comprehensionsUsF	?
?]

 0<=
"<YKw OP
 0=>
"<ZL PQ
.xj9:
 :8*GLM
 0=>
"<ZL PQ	
 	:JD$4(
:T2  C!,  Hy9	
:
:	:
:
:s;BB(	cvtfd}	|jtday#dawxYw)NcxtdDcgc]}xac}}jtycc}}wNr)r
GLOBAL_VARr)_r>rsentinels  rfzFNamedExpressionScopeTest.test_named_expression_global_scope.<locals>.fts2-21X68
#Z
#6Z2
7s6objectrr>rrAr@s` @r"test_named_expression_global_scopez;NamedExpressionScopeTest.test_named_expression_global_scopeqs48	3	
CZ2JJs48cbtfd}|jtdy)Ncnd}tdDcgc]}x}c}j|ycc}wr=r)r>r?rr@s  rrAzXNamedExpressionScopeTest.test_named_expression_global_scope_no_global_keyword.<locals>.fs7J-21X68
#Z
#6Z2
7s2rBrDs` @r4test_named_expression_global_scope_no_global_keywordzMNamedExpressionScopeTest.test_named_expression_global_scope_no_global_keyword~s&8	3	
T*rc6tfd}|y)NcJdfd}|jy)NcFtdDcgc]}xc}ycc}wr=rr?nonlocal_varr@s rgzSNamedExpressionScopeTest.test_named_expression_nonlocal_scope.<locals>.f.<locals>.gs 388<a))<<r)rOrNrr@s @rrAzHNamedExpressionScopeTest.test_named_expression_nonlocal_scope.<locals>.fs$L
=
C\84rrCrDs` @r$test_named_expression_nonlocal_scopez=NamedExpressionScopeTest.test_named_expression_nonlocal_scopes8	5	
rc6tfd}|y)NcFd}fd}|j|dy)NcFtdDcgc]}x}c}ycc}wr=rLrMs  rrOzgNamedExpressionScopeTest.test_named_expression_nonlocal_scope_no_nonlocal_keyword.<locals>.f.<locals>.gs 388<a))<<rPr)rNrOrr@s  rrAz\NamedExpressionScopeTest.test_named_expression_nonlocal_scope_no_nonlocal_keyword.<locals>.fs"L
=
C\40rrQrDs` @r8test_named_expression_nonlocal_scope_no_nonlocal_keywordzQNamedExpressionScopeTest.test_named_expression_nonlocal_scope_no_nonlocal_keywords8	1	
rcdgd}fd|D}|jdtt|D]\}}|j|||zy)Nr)rrrrc3,K|]}|zx
ywrr)rrTrJrs  rrzQNamedExpressionScopeTest.test_named_expression_scope_in_genexp.<locals>.<genexpr>s(q1u*!*(rr)assertNotInlocals	enumerater)rrLgenexpidxelemrJrs     @@r%test_named_expression_scope_in_genexpz>NamedExpressionScopeTest.test_named_expression_scope_in_genexpsY
(a(fh'"6*	/ICT1S6A:.	/rN)r|r}r~rrrrrrrrrrrrrrr"r'r*r-r0r3r:rErHrRrVr_rrrrrs$%"(

$  
&:8+	/rr__main__)unittestr>TestCaserrrr|mainrrr<module>rdsh

f0!2!2f0R	y@H$5$5y@zx/x00x/vzHMMOr