+
    BiL                        ^ RI t ^ RIt^ RIt^ RIHt ^ RIHtHt ^ RIH	t	 ^ RI
t
^ RIt^ RItRt]P                  ! R4      tR t ! R R	]P"                  4      t ! R
 R]P"                  4      t]R8X  d   ]P*                  ! 4        R# R# )    N)import_helper)spawn_pythonkill_python)dedentz?from __future__ imports must occur at the beginning of the filez\((\S+).py, line (\d+)c                 b    \         P                  \        V 4      4      pVP                  ^^4      # )   )rxsearchstrgroup)msgmos   & 8/usr/lib/python3.14/test/test_future_stmt/test_future.pyget_error_locationr      s$    	3s8	B88Aq>    c                      a  ] tR t^t o R]R^/R ltR^R]R^RR/R ltR tR	 tR
 t	R t
R tR tR tR tR tR tR tR tR tR tR tR tRtV tR# )
FutureTestmessageoffsetc               P   VR 8w  d
   VR,          pV P                  V RV RV R2\        V4      4       V P                  \        P                  P	                  VP
                  4      V4       V P                  VP                  V4       V P                  VP                  V4       R# )<string>z.pyz (z, line )N)assertEqualr   ospathbasenamefilenamelinenor   )selferrr   r   r   r   s   &&&$$$r   check_syntax_errorFutureTest.check_syntax_error   s     z!HG9BxjxqA3s8L))#,,7BV,V,r   r   parametrize_docstringTc                  \        VP                  R 4      4      pV'       d   RR.MR. F  pV P                  WR7      ;_uu_ 4        V'       d   RV,           pV^,          pV P                  \        4      ;_uu_ 4       p\        V4       RRR4       V P                  XP                  RVVVR7       RRR4       K  	  R#   + '       g   i     L>; i  + '       g   i     K  ; i)
FT)codeadd_docstringz"""Docstring"""
Nr   r   r   r   )r   lstripsubTestassertRaisesSyntaxErrorexecr!   	exception)r   r&   r   r   r   r#   r'   cms   &&$$$$  r   assertSyntaxErrorFutureTest.assertSyntaxError#   s    
 dkk$'(/Dudm5'QM4EE .5DaKF&&{33rJ 4''j/507/5 ( 7 FE R
 43	 FEEs$   8C?C(CCCC%c                    \         P                  ! R 4      ;_uu_ 4        ^ RIHp RRR4       V P	                  XP
                  ^4       R#   + '       g   i     L.; i)z/test.test_future_stmt.import_nested_scope_twice)import_nested_scope_twiceN)r   CleanImporttest.test_future_stmtr3   r   result)r   r3   s   & r   test_import_nested_scope_twice)FutureTest.test_import_nested_scope_twice5   sG    &&=
 
 H
 	2991=	
 
   AA	c                    \         P                  ! R 4      ;_uu_ 4        ^ RIHp RRR4       V P	                  XP
                  ^4       R#   + '       g   i     L.; i)z"test.test_future_stmt.nested_scope)nested_scopeN)r   r4   r5   r;   r   r6   )r   r;   s   & r   test_nested_scopeFutureTest.test_nested_scope=   s=    &&'KLL: M,,a0 MLr9   c                    \         P                  ! R 4      ;_uu_ 4        ^ RIHp RRR4       R#   + '       g   i     R# ; i)z/test.test_future_stmt.test_future_single_import)test_future_single_importN)r   r4   r5   r?   )r   r?   s   & r   r?   $FutureTest.test_future_single_importB   s3    &&=
 
 H
 
 
 
	   0A	c                    \         P                  ! R 4      ;_uu_ 4        ^ RIHp RRR4       R#   + '       g   i     R# ; i)z2test.test_future_stmt.test_future_multiple_imports)test_future_multiple_importsN)r   r4   r5   rC   )r   rC   s   & r   rC   'FutureTest.test_future_multiple_importsH   s3    &&@
 
 K
 
 
 
rA   c                    \         P                  ! R 4      ;_uu_ 4        ^ RIHp RRR4       R#   + '       g   i     R# ; i)z3test.test_future_stmt.test_future_multiple_features)test_future_multiple_featuresN)r   r4   r5   rF   )r   rF   s   & r   rF   (FutureTest.test_future_multiple_featuresN   s3    &&A
 
 L
 
 
 
rA   c                4    R pV P                  V^R^R7       R# )z
            from __future__ import nested_scopes
            from __future__ import rested_snopes  # typo error here: nested => rested
        z+future feature rested_snopes is not definedr(   Nr0   r   r&   s   & r   test_unknown_future_flag#FutureTest.test_unknown_future_flagT   s(     	A" 	 	
r   c                    R pV P                  V^R7       RpV P                  V^R7       RpV P                  V^R7       R# )zW
            import some_module
            from __future__ import annotations
        r   zV
            import __future__
            from __future__ import annotations
        z
            from __future__ import absolute_import
            "spam, bar, blah"
            from __future__ import print_function
        NrI   rJ   s   & r   test_future_import_not_on_top(FutureTest.test_future_import_not_on_top^   sV     	tA. 	tA.
 	tA.r   c                2    R pV P                  V^RR7       R# )z|
            '''Docstring'''
            "this isn't a doc string"
            from __future__ import nested_scopes
        F)r   r#   NrI   rJ   s   & r   $test_future_import_with_extra_string/FutureTest.test_future_import_with_extra_stringr   s     
 	tAUKr   c                Z    R pV P                  V^6R7       RpV P                  V^6R7       R# )zw
            from __future__ import nested_scopes; import string; from __future__ import         nested_scopes
        )r   zp
            from __future__ import nested_scopes; import string; from __future__ import  nested_scopes
        NrI   rJ   s   & r   ,test_multiple_import_statements_on_same_line7FutureTest.test_multiple_import_statements_on_same_linez   s:     	tB/ 	tB/r   c                2    R pV P                  VR^R7       R# )z.
            from __future__ import *
        zfuture feature * is not definedr   r   NrI   rJ   s   & r   test_future_import_star"FutureTest.test_future_import_star   s"     	t-NWYZr   c                ^    R pV P                  VR^R7       RpV P                  VR^'R7       R# )z3
            from __future__ import braces
        znot a chancerX   zB
            from __future__ import nested_scopes, braces
        NrI   rJ   s   & r   test_future_import_braces$FutureTest.test_future_import_braces   s>     	t^BG 	t^BGr   c                    V P                  \        4      ;_uu_ 4       p^ RIHp RRR4       V P	                  XP
                  R^R7       R#   + '       g   i     L0; i)r   )badsyntax_futureNr_   rN   )r+   r,   r5   r_   r!   r.   )r   r/   r_   s   &  r   )test_module_with_future_import_not_on_top4FutureTest.test_module_with_future_import_not_on_top   s@    {++r> ,.@K ,+s   AA	c           	        \         P                   Uu/ uF/  pR VP                  4        2\        \         V4      P                  bK1  	  ppT\        \        4       Uu/ uF,  q3P                  R4      '       g   K  V\        \        V4      bK.  	  up,          pV P                  \        VP                  4       4      VP                  4       4       R# u upi u upi )
CO_FUTURE_PyCF_N)
__future__all_feature_namesuppergetattrcompiler_flagdirast
startswithassertCountEqualsetvalues)r   futureflagsflags   &   r   test_ensure_flags_dont_clash'FutureTest.test_ensure_flags_dont_clash   s     %66
6 ()7:v+F+T+TT6 	 

 	C
 OOG$< %D'#t$$ 
 	
 	c%,,.15<<>B


s   5CC9Cc                ^    / p\        R / V4       V P                  VR,          \        4       R# )z/from __future__ import unicode_literals; x = ''xN)r-   assertIsInstancer   )r   scopes   & r   test_unicode_literals_exec%FutureTest.test_unicode_literals_exec   s(    >EJeCj#.r   c                    \        R 4      pVP                  P                  R4       VP                  P                  R4       \        V4      pV P	                  RV4       R# )z-is&   from __future__ import barry_as_FLUFL
s   2 <> 3
s   SyntaxError: invalid syntaxN)r   stdinwriter   assertNotIn)r   pouts   &  r   test_syntactical_future_repl'FutureTest.test_syntactical_future_repl   sG    	@A	k"!n7=r   c                V   V P                  \        4      ;_uu_ 4        \        R 4       RRR4       \        R4      pV P                  \        4      ;_uu_ 4        \        V4       RRR4       RpV P	                  V^R7       R#   + '       g   i     Lc; i  + '       g   i     L:; i)zfrom .__future__ import spamNzi
            from __future__ import print_function
            from ...__future__ import ham
            zm
            from .__future__ import nested_scopes
            from __future__ import barry_as_FLUFL
        rN   )r+   ImportErrorr-   r   r0   rJ   s   & r   test_future_dotted_import$FutureTest.test_future_dotted_import   s    {++/0 , 
 {++J , 	tA.! ,+ ,+s   BBB	B(	 N)__name__
__module____qualname____firstlineno__TOP_LEVEL_MSGr!   r0   r7   r<   r?   rC   rF   rK   rO   rR   rU   rY   r\   r`   rs   ry   r   r   __static_attributes____classdictcell____classdict__s   @r   r   r      s     
- $1
- :;
-7!"7 #07 9:7 15	7$>1
HKL
/(L0[
HL
C/
>/ /r   r   c                   p   a  ] tR t^t o ]! R4      tR tRR ltR tR t	R t
R tR	 tR
 tR tR tRtV tR# )AnnotationsFutureTestCasea  
        from __future__ import annotations
        def f() -> {ann}:
            ...
        def g(arg: {ann}) -> None:
            ...
        async def f2() -> {ann}:
            ...
        async def g2(arg: {ann}) -> None:
            ...
        class H:
            var: {ann}
            object.attr: {ann}
        var: {ann}
        var2: {ann} = None
        object.attr: {ann}
        c                   / p\        V P                  P                  VR 7      / V4       VR,          P                  R,          pVR,          P                  R,          pVR,          P                  R,          pVR,          P                  R,          pVR,          R,          pVR,          R	,          pV P	                  W44       V P	                  W54       V P	                  W64       V P	                  W74       V P	                  W84       V# )
)annfreturngargf2g2__annotations__varvar2)r-   templateformatr   r   )	r   
annotationrx   func_ret_annfunc_arg_annasync_func_ret_annasync_func_arg_annvar_ann1var_ann2s	   &&       r   	getActual#AnnotationsFutureTestCase.getActual   s    T]]!!j!12u=Sz11(;Sz11%8"4[88B"4[88?*+E2*+F34::00r   Nc                    V P                  V4      pVf   V'       g   TMV^R pV'       d4   V P                  WR4       VP                  RR4      P                  RR4      pV P                  WR4       R # )N( r   )r   assertNotEqualreplacer   )r   r   expecteddrop_parensis_tupleactuals   &&&&& r   assertAnnotationEqual/AnnotationsFutureTestCase.assertAnnotationEqual   sd     
+)1zz!B7GH1^^C,44S"=F*r   c                0    / p\        R V,           V4       V# )z#from __future__ import annotations
)r-   )r   r&   rx   s   && r   _exec_future&AnnotationsFutureTestCase._exec_future   s$    2	
 r   c                R
   V P                   pV! R 4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R	4       V! R
4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R 4       V! R!4       V! R"4       V! R#4       V! R$4       V! R%4       V! R&4       V! R'4       V! R(4       V! R)4       V! R*4       V! R+4       V! R,4       V! R-4       V! R.4       V! R/4       V! R04       V! R14       V! R24       V! R34       V! R44       V! R54       V! R64       V! R74       V! R84       V! R94       V! R:4       V! R;4       V! R<4       V! R=4       V! R>4       V! R?4       V! R@4       V! RA4       V! RB4       V! RC4       V! RD4       V! RE4       V! RF4       V! RG4       V! RH4       V! RI4       V! RJ4       V! RK4       V! RL4       V! RM4       V! RN4       V! RO4       V! RP4       V! RQ4       V! RR4       V! RS4       V! RT4       V! RU4       V! RV4       V! RW4       V! RX4       V! RY4       V! RZ4       V! R[4       V! R\4       V! R]4       V! R^4       V! R_4       V! R`4       V! Ra4       V! Rb4       V! Rc4       V! Rd4       V! Re4       V! Rf4       V! Rg4       V! Rh4       V! Ri4       V! Rj4       V! Rk4       V! Rl4       V! Rm4       V! Rn4       V! Ro4       V! Rp4       V! Rq4       V! Rr4       V! Rs4       V! Rt4       V! Ru4       V! Rv4       V! Rw4       V! Rx4       V! Ry4       V! Rz4       V! R{4       V! R|4       V! R}4       V! R~4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       V! RR4       V! RRD4       V! R4       V! R4       V! R4       V! R4       V! R4       V! R4       R# )z...z'some_string'zu'some_string'zb'\xa3'NameNoneTrueFalse1z1.01jzTrue or FalsezTrue or False or NonezTrue and FalsezTrue and False and NonezName1 and Name2 or Name3zName1 and (Name2 or Name3)zName1 or Name2 and Name3z(Name1 or Name2) and Name3z"Name1 and Name2 or Name3 and Name4z!Name1 or Name2 and Name3 or Name4za + b + (c + d)za * b * (c * d)z(a ** b) ** c ** dzv1 << 2z1 >> v2z1 % finishedz"1 + v2 - v3 * 4 ^ 5 ** v6 / 7 // 8z	not greatznot not greatz~greatz+valuez++valuez-1z!~int and not v1 ^ 123 + v2 | Trueza + (not b)zlambda: Nonezlambda arg: Nonezlambda a=True: azlambda a, b, c=True: az-lambda a, b, c=True, *, d=1 << v2, e='str': az9lambda a, b, c=True, *vararg, d, e='str', **kwargs: a + bz<lambda a, /, b, c=True, *vararg, d, e='str', **kwargs: a + bzlambda x, /: xzlambda x=1, /: xzlambda x, /, y: x + yzlambda x=1, /, y=2: x + yzlambda x, /, y=1: x + yz#lambda x, /, y=1, *, z=3: x + y + zz%lambda x=1, /, y=2, *, z=3: x + y + zz#lambda x=1, /, y=2, *, z: x + y + zz>lambda x=1, y=2, z=3, /, w=4, *, l, l2: x + y + z + w + l + l2zHlambda x=1, y=2, z=3, /, w=4, *, l, l2, **kwargs: x + y + z + w + l + l2z!lambda x, /, y=1, *, z: x + y + zzlambda x: lambda y: x + yz1 if True else 2z4str or None if int or True else str or bytes or Nonez;str or None if (1 if True else 2) else str or bytes or Nonez"0 if not x else 1 if x > 0 else -1z (1 if x > 0 else -1) if x else 0z+{'2.7': dead, '3.7': long_live or die_hard}z@{'2.7': dead, '3.7': long_live or die_hard, **{'3.6': verygood}}z{**a, **b, **c}zC{'2.7', '3.6', '3.7', '3.8', '3.9', '4.0' if gilectomy else '3.10'}z{*a, *b, *c}z?({'a': 'b'}, True or False, +value, 'string', b'bytes') or Nonez()z(a,)z(a, b)z	(a, b, c)z(*a, *b, *c)z[]z6[1, 2, 3, 4, 5, 6, 7, 8, 9, 10 or A, 11 or B, 12 or C]z[*a, *b, *c]z{i for i in (1, 2, 3)}z{i ** 2 for i in (1, 2, 3)}z3{i ** 2 for i, _ in ((1, 'a'), (2, 'b'), (3, 'c'))}z2{i ** 2 + j for i in (1, 2, 3) for j in (1, 2, 3)}z[i for i in (1, 2, 3)]z[i ** 2 for i in (1, 2, 3)]z3[i ** 2 for i, _ in ((1, 'a'), (2, 'b'), (3, 'c'))]z2[i ** 2 + j for i in (1, 2, 3) for j in (1, 2, 3)]z(i for i in (1, 2, 3))z(i ** 2 for i in (1, 2, 3))z3(i ** 2 for i, _ in ((1, 'a'), (2, 'b'), (3, 'c')))z2(i ** 2 + j for i in (1, 2, 3) for j in (1, 2, 3))z{i: 0 for i in (1, 2, 3)}z1{i: j for i, j in ((1, 'a'), (2, 'b'), (3, 'c'))}z[(x, y) for x, y in (a, b)]z[(x,) for x, in (a,)]zPython3 > Python2 > COBOLzLife is Lifezcall()z	call(arg)zcall(kwarg='hey')zcall(arg, kwarg='hey')z&call(arg, *args, another, kwarg='hey')z6call(arg, another, kwarg='hey', **kwargs, kwarg2='ho')zlukasz.langa.plzcall.me(maybe)z1 .realz1.0.realz....__class__z	list[str]zdict[str, int]z	set[str,]z	tuple[()]ztuple[str, ...]ztuple[str, *types]ztuple[str, int, (str, int)]z!tuple[*int, str, str, (str, int)]z&tuple[str, int, float, dict[str, int]]zslice[0]z
slice[0:1]zslice[0:1:2]zslice[:]z
slice[:-1]z	slice[1:]zslice[::-1]z	slice[:,]zslice[1:2,]zslice[1:2:3,]zslice[1:2, 1]zslice[1:2, 2, 3]z	slice[()]zslice[*Ts,]zslice[1, *Ts]zslice[*Ts, 2]zslice[1, *Ts, 2]zslice[*Ts, *Ts]zslice[1, *Ts, *Ts]zslice[*Ts, 1, *Ts]zslice[*Ts, *Ts, 1]zslice[1, *Ts, *Ts, 2]zslice[1:2, *Ts]zslice[*Ts, 1:2]zslice[1:2, *Ts, 3:4]zslice[a, b:c, d:e:f]zslice[(x for x in a)]zCstr or None if sys.version_info[0] > (3,) else str or bytes or Nonez5f'f-string without formatted values is just a string'zf'{{NOT a formatted value}}'z:f'some f-string with {a} {few():.2f} {formatted.values!r}'zf"{f'{nested} inner'} outer"z:f'space between opening braces: { {a for a in (1, 2, 3)}}'zf'{(lambda x: x)}'z!f'{(None if a else lambda x: x)}'zf'{x}'zf'{x!r}'zf'{x!a}'z[x for x in (a if b else c)]z![x for x in a if (b if c else d)]zf(x for x in a)zf(1, (x for x in a))zf((x for x in a), 2)z(((a)))az
(((a, b)))z	1 + 2 + 3zt''zt'{a    +  b}'zt'{a!s}'zt'{a:b}'z	t'{a:b=}'Nr   )r   eqs   & r   test_annotations*AnnotationsFutureTestCase.test_annotations  se   ''
5	
?

:
6

6

6

7
3
5	
4
?
"#

$%
%&
'(
%&
'(
/0
./


 
9
9
>
/0
;
?
8
8
9
4
./
=
>


#$
:;
FG
IJ


"#
&'
$%
01
23
01
KL
UV
./
&'

AB
HI
/0
-.
89
MN

PQ
>
LM
4
6

8
;
>
4
CD
>
#$
()
@A
?@
#$
()
@A
?@
#$
()
@A
?@
&'
>?
()
"#
&'
>
8
;

#$
34
CD


9
:
?
;

;
;

 
()
./
34
:
<
>
:
<
;
=
;
=
?
?

; 	=
?
?


 
 
 
"#


!"
!"
"#
PQ
BC
)*
GH
-.
GH
 
./
8
:
:
)*
./

!"
!"
9c
<"
;
5	

:
:
;r   c                    V P                  R RR7       V P                  RRR7       V P                  RRR7       V P                  R RR7       V P                  RRR7       V P                  R	R
R7       R# )z	f'{x=!r}'z
f'x={x!r}'r   zf'{x=:}'z	f'x={x:}'zf'{x=:.2f}'zf'x={x:.2f}'z	f'{x=!a}'z
f'x={x!a}'zf'{x=!s:*^20}'zf'x={x!s:*^20}'Nr   r   s   &r   test_fstring_debug_annotations8AnnotationsFutureTestCase.test_fstring_debug_annotations  sx     	"";"F"":"D""=>"J"";"F"";"F""#3>O"Pr   c                   R \        \        P                  P                  ^,           4      ,           pV R2pV P	                  RVR7       V P	                  RVR7       V P	                  RRV 2R7       V P	                  RRV 2R7       V P	                  R	R
V RV R2R7       V P	                  R4       V P	                  RRV RV R2R7       V P	                  RR
V RV R2R7       R# )1ej1e1000r   1e1000jz-1e1000-z	3+1e1000jz3 + z(1e1000, 1e1000j)r   z, r   z'inf'z"('inf', 1e1000, 'infxxx', 1e1000j)z('inf', z, 'infxxx', z(1e1000, (1e1000j,))z, (z,))N)reprsys
float_info
max_10_expr   )r   infinfjs   &  r   test_infinity_numbers/AnnotationsFutureTestCase.test_infinity_numbers  s   T#..33a788ay""8c":""9t"<""93%y"A"";4v"G""#61SED6QRAS"T""7+""#GT\]`\aamnrmsstRu"v""#9auCPTvUXDY"Zr   c                    V P                  \        4      ;_uu_ 4        \        R 4       RRR4       R#   + '       g   i     R# ; i)z8from __future__ import annotations
object.__debug__: intN)r+   r,   r-   r   s   &r   #test_annotation_with_complex_target=AnnotationsFutureTestCase.test_annotation_with_complex_target  s/    {++( ,+++s	   4A	c                >   V P                  \        R 4      4      pVP                  R4      pV P                  V! 4       P                  4       V P                  VP                  P                  R4       V P                  V! 4       P                  P                  R4       R# )z
        from __future__ import annotations

        def foo():
            outer = 1
            def bar():
                inner: outer = 1
            return bar
        fooNr   )	r   r   popassertIsNone__closure__r   __code__co_cellvarsco_freevars)r   	namespacer   s   &  r   "test_annotations_symbol_table_pass<AnnotationsFutureTestCase.test_annotations_symbol_table_pass  sz    %%f . ' 	 mmE"#%++,112633R8r   c                \   V P                  \        4      ;_uu_ 4        V P                  R 4       RRR4       V P                  \        4      ;_uu_ 4        V P                  R4       RRR4       V P                  \        4      ;_uu_ 4        V P                  R4       RRR4       V P                  \        4      ;_uu_ 4        V P                  R4       RRR4       V P                  \        4      ;_uu_ 4        V P                  R4       RRR4       V P                  \        4      ;_uu_ 4        V P                  R4       RRR4       V P                  \        4      ;_uu_ 4        V P                  R4       RRR4       V P                  \        4      ;_uu_ 4        V P                  R4       RRR4       V P                  \        4      ;_uu_ 4        V P                  \        R	4      4       RRR4       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     ELk; i  + '       g   i     ELH; i  + '       g   i     EL%; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     R# ; i)
ztest: (yield)Nztest.test: (yield a + b)ztest[something]: (yield from x)z7def func(test: (yield from outside_of_generator)): passzdef test() -> (await y): passz-async def test() -> something((a := b)): passzBtest: await some.complicated[0].call(with_args=True or 1 is not 1)ztest: f'{(x := 10):=10}'zO            def foo():
                def bar(arg: (yield)): pass
            )r+   r,   r   r   r   s   &r   test_annotations_forbidden4AnnotationsFutureTestCase.test_annotations_forbidden  s   {++o. , {++89 , {++?@ , {++WX , {++=> , {++MN , {++bc , {++89 , {++f &   ,+1 ,++ ,++ ,++ ,++ ,++ ,++ ,++ ,+ ,++sk   G;HH#H7:I1I(I3JJ;H	H 	#H4	7I	I	I0	3J	J	J+	c                    V P                  \        R 4      4      pVP                  R4      pV P                  VR,          VR,          4       R# )z        class StarredC: pass
        class C:
          def __iter__(self):
            yield StarredC()
        c = C()
        def f(*args: *c): pass
        import typing
        hints = typing.get_type_hints(f)
        hintsargsStarredCN)r   r   r   rw   )r   r   r   s   &  r   -test_get_type_hints_on_func_with_variadic_argGAnnotationsFutureTestCase.test_get_type_hints_on_func_with_variadic_arg  sI    
 %%f 	. 	' 		 g&eFmYz-BCr   r   )NFF)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   s   @r   r   r      sQ     	H( 
+gRQ
[9 >D Dr   r   __main__)re   rk   unittesttest.supportr   test.support.script_helperr   r   textwrapr   r   rer   r   compiler	   r   TestCaser   r   r   mainr   r   r   <module>r      s     
  & @  	 	 
QZZ)*v/"" v/pD 1 1 DD
 zMMO r   