
    /hh                       S SK r S SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKrS SK	r	S SK
r
S SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKrS SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJrJ r J!r!  S SK"J#r#  S S	K$J%r%  S S
K&J'r'J(r(J)r)  S SK*J+r+  S SK,J-r-J.r.J/r/  S SK0J1r1  S SK2J3r3  S SK&J4r4  S SK5J6r6J7r7   S SK8r8S SK9r9Su  r;r<\;\<-   S:H  r=Sr> " S S5      r? " S S5      r@ " S S5      rASSSSSSS S!S"S#\B" \R                  5      \R                  4S$\D4S%S&\D4S'\D4S(\D4S)\D4\E" S*S+5      S,4\F" S-5      \D4/rGSSSSSSS S.\D4S"S/\D4\B" \R                  5      \R                  4S$\D4S0\D4S&\D4S'\D4S(\D4S)\D4\E" S*S+5      S,4\F" S-5      \D4/rH " S1 S25      rI " S3 S45      rJS5 rKS6 rL " S7 S8\R                  5      rN " S9 S:\R                  5      rO\R                  " \8S;5       " S< S=\R                  5      5       rQ " S> S?\R                  5      rR " S@ SA\R                  5      rS\' " SB SC\R                  5      5       rT " SD SE\R                  5      rUSF rV\WSG:X  a  \R                  " 5         gg! \: a    S=r8r9 GNf = f)H    N)	ExitStack)partial)CO_COROUTINE)product)dedent)AsyncGeneratorTypeFunctionTypeCellType)neg)support)cpython_only	swap_attrmaybe_get_event_loop_policy)import_module)EnvironmentVarGuardTESTFNunlink)assert_python_ok)check_warnings)requires_IEEE_754)	MagicMockpatch)g 7yACg):@g7yAC{   c                   &    \ rS rSrS rS rS rSrg)Squares6   c                     Xl         / U l        g Nmaxsofarselfr    s     :/opt/python-3.13.8/usr/lib/python3.13/test/test_builtin.py__init__Squares.__init__8       
    c                 ,    [        U R                  5      $ r   lenr!   r#   s    r$   __len__Squares.__len__<   s    c$**o-r(   c                     SUs=::  a  U R                   :  d  [        e  [        e[        U R                  5      nX!::  a)  U R                  R	                  X"-  5        US-  nX!::  a  M)  U R                  U   $ Nr      )r    
IndexErrorr+   r!   appendr#   ins      r$   __getitem__Squares.__getitem__>   sf    A  
"2 
"2

OfJJac"FA f zz!}r(   r   N__name__
__module____qualname____firstlineno__r%   r-   r7   __static_attributes__ r(   r$   r   r   6   s     .r(   r   c                   &    \ rS rSrS rS rS rSrg)
StrSquaresF   c                     Xl         / U l        g r   r   r"   s     r$   r%   StrSquares.__init__H   r'   r(   c                 ,    [        U R                  5      $ r   r*   r,   s    r$   r-   StrSquares.__len__L   s    4::r(   c                    SUs=::  a  U R                   :  d   [        e  [        e[        U R                  5      nX!::  a2  U R                  R	                  [        X"-  5      5        US-  nX!::  a  M2  U R                  U   $ r0   )r    r2   r+   r!   r3   strr4   s      r$   r7   StrSquares.__getitem__O   sn    A   !

OfJJc!#h'FA f zz!}r(   r   Nr9   r?   r(   r$   rA   rA   F   s    r(   rA   c                       \ rS rSrS rSrg)	BitBucketX   c                     g r   r?   )r#   lines     r$   writeBitBucket.writeY   s    r(   r?   N)r:   r;   r<   r=   rO   r>   r?   r(   r$   rK   rK   X   s    r(   rK   )0r   )1r1   )9	   )10
   )99c   )100d   )314:  ) 314r\   )z314 r\   )  		  314  		  r\   z  1x)  1  r1   z  1    z  		  s   \u0663\u0661\u0664 zraw-unicode-escaper\   i   r]   r^   r_   c                       \ rS rSrS rSrg)TestFailingBool   c                     [         er   RuntimeErrorr,   s    r$   __bool__TestFailingBool.__bool__       r(   r?   N)r:   r;   r<   r=   rh   r>   r?   r(   r$   rc   rc          r(   rc   c                       \ rS rSrS rSrg)TestFailingIter   c                     [         er   rf   r,   s    r$   __iter__TestFailingIter.__iter__   rj   r(   r?   Nr:   r;   r<   r=   rp   r>   r?   r(   r$   rm   rm      rk   r(   rm   c                 0    [        U 5      [        S5      :  $ )Nd)ordargs    r$   filter_charrx      s    s8c#hr(   c                 0    [        [        U 5      S-   5      $ Nr1   )chrru   rv   s    r$   map_charr|      s    s3xz?r(   c                      \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rS rS r\R"                  " \R&                  =(       d    \R(                  S5      S 5       rS rS rS rS rS rS rS rS rS rS rS r S r!S r"S r#S r$S r%S  r&S! r'S" r(S# r)S$ r*S% r+S& r,\RZ                  " S'5      S( 5       r.S) r/S* r0S+ r1S, r2S- r3S. r4S/ r5S0 r6S1 r7S2 r8S3 r9S4 r:S5 r;S6 r<S7 r=S8 r>S9 r?\R"                  " \@R                  R                  S:5      S; 5       rC\R                  " 5       S< 5       rES= rFS> rGS? rHS@ rISA rJSB rK\LR                  " 5       R                  SC5      =(       a     \LR                  " 5       R                  SD5      rP\Q" SE5      SE:g  rR\R"                  " \P=(       a    \RSF5      SG 5       rSSH rTSI rUSJ rV\W\R"                  " \XSK5      \R                  SL 5       5       5       rZSM r[\\SN 5       r]\\SO 5       r^ " SP SQ\_5      r`SR raSS rbST rcSU rdSV reSW rfSX rgSY rhSZ riS[ rjS\ rk\R                  S] 5       rlS^ rmS_ rnS` roSa rpSb rqSc rrSd rsSe rtSf ruSgrvgh)iBuiltinTest   c                    Un[         R                  " X5      n[         R                  " U5      nU R                  [	        U5      [	        U5      5        U R                  [        U5      U5        [         R                  " U5      n [        U5        [         R                  " X5      n[         R                  " U5      nU R                  [        U5      USS  5        g ! [         a     g f = frz   )pickledumpsloadsassertEqualtypelistnextStopIteration)r#   itseqprotoitorgrt   s         r$   check_iter_pickleBuiltinTest.check_iter_pickle   s    LL#\\!_ed2h/b3' \\!_	H LL#\\!_b3qr7+	  		s   C 
C('C(c                    [        S5        [        S5        [        S5        [        SS9  [        SSS9  U R                  [        [         S5        U R                  [        [         SS	S
S5        U R                  [        [         S5        U R                  [        [         SSS9  U R                  [        5         U R                  [        [         SS S SS.0 SSS9  S S S 5        U R                  [        [         S5        g ! , (       d  f       N*= f)Nsystimestringnamer   )r   levelspamspamr1            r`   __main__)__package____spec__r:   )foo)localsfromlistr   zstring )
__import__assertRaisesModuleNotFoundError	TypeError
ValueErrorassertWarnsImportWarningImportErrorr,   s    r$   test_importBuiltinTest.test_import   s    568a(-z:F)ZAq!<*j"5)ZUCm,k:r.2R\]%'(!  E -
 	-z<H -,s   8"C>>
Dc                    U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        [        R                  * S-
  5      S:  5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        [        S5        U R                  [        S	5      S5        U R                  [        S
5      S5        U R                  [        [        5        U R                  [        [        S 5         " S S[        5      nU R                  [        U" 5       5      S5        g )Nr     i.r1           gQ	@gQ	aTFc                       \ rS rSrS rSrg)&BuiltinTest.test_abs.<locals>.AbsClass   c                     g)Nr?   r,   s    r$   __abs__.BuiltinTest.test_abs.<locals>.AbsClass.__abs__       r(   r?   N)r:   r;   r<   r=   r   r>   r?   r(   r$   AbsClassr          r(   r   r   )r   abs
assertTruer   maxsizer   r   object)r#   r   s     r$   test_absBuiltinTest.test_abs   s   Q#TD)UT*S[[LN+a/0S3'TD)UT*)S#.TA&UQ')S))S$/	v 	 	XZ"-r(   c                    U R                  [        / SQ5      S5        U R                  [        / SQ5      S5        U R                  [        [        S[	        5       S/5        U R                  [        [        [        5       5        U R                  [        [        S5        U R                  [        [        5        U R                  [        [        / SQ/ 5        U R                  [        / 5      S5        U R                  [        S[	        5       /5      S5        S	S
/nU R                  [        S U 5       5      S5        / SQnU R                  [        S U 5       5      S5        g )Nr   r      T)r   Nr   Fr   r   rV   r   2   <   c              3   *   #    U  H	  oS :  v   M     g7f*   Nr?   .0xs     r$   	<genexpr>'BuiltinTest.test_all.<locals>.<genexpr>        /QVQ   )r   (   r   c              3   *   #    U  H	  oS :  v   M     g7fr   r?   r   s     r$   r   r      r   r   )r   allr   rg   rc   rm   r   r#   Ss     r$   test_allBuiltinTest.test_all   s   Y.\*E2,a1BA-FG,_->?)S"-)S))S)R8R$'a!234e<H/Q//6/Q//7r(   c                    U R                  [        / SQ5      S5        U R                  [        / SQ5      S5        U R                  [        [        S [	        5       S/5        U R                  [        [        [        5       5        U R                  [        [        S5        U R                  [        [        5        U R                  [        [        / SQ/ 5        U R                  [        / 5      S5        U R                  [        S[	        5       /5      S5        / S	QnU R                  [        S
 U 5       5      S5        / SQnU R                  [        S U 5       5      S5        g )N)NNNF)Nr   NTr   rV   r   r1   )r   r      c              3   *   #    U  H	  oS :  v   M     g7fr   r?   r   s     r$   r   'BuiltinTest.test_any.<locals>.<genexpr>   r   r   )rV      r   c              3   *   #    U  H	  oS :  v   M     g7fr   r?   r   s     r$   r   r      r   r   )r   anyr   rg   rc   rm   r   r   s     r$   test_anyBuiltinTest.test_any   s   /0%8_-t4,dO4Eq-IJ,_->?)S"-)S))S)R8R%(a!234d;/Q//6/Q//7r(   c                   ^  T R                  [        S5      S5        T R                  [        S5      S5        T R                  [        S5      S5        T R                  [        / 5      S5        T R                  [        0 5      S5        / nUR                  U5        T R                  [        U5      S	5        0 nXS'   T R                  [        U5      S
5        U 4S jnU" S5        U" S5        U" S5        U" S5        U" S5        U" S5        U" S5        U" S5        U" S5        U" S5        T R                  [        S5      S5        SnT R                  [        U5      S5        g )Nr`   ''r   rQ   r?   ()[]{}[[...]]
{0: {...}}c                 N   > TR                  [        U 5      [        U 5      5        g r   )r   asciirepr)sr#   s    r$   
_check_uni*BuiltinTest.test_ascii.<locals>._check_uni   s    U1XtAw/r(   '"z"' z
	 .   u   ῿u   𒿿u   u   u   𝄡z'\U0001d121'u   ' "
	 abcdé𒿿𝄡xxx.z:'\'\x00"\n\r\t abcd\x85\xe9\U00012fff\ud800\U0001d121xxx.')r   r   r3   )r#   r   r   r   s   `   r$   
test_asciiBuiltinTest.test_ascii   s2   rF+q3'rD)rD)rD)	q9-!q<0	03354:68< 88 	|,o>BqM	Or(   c                     [         R                  * S-
  nU R                  [        U[        5      5        U R                  U* [         R                  S-   5        g rz   )r   r   r   
isinstanceintr   r#   r   s     r$   test_negBuiltinTest.test_neg  s>    [[LN
1c*+!S[[]+r(   c                    U R                  [        [        5      5        U R                  [        S5      5        U R                  [        [        5      5        U R                  [        S 5      5        U R                  [        [        5      5        S nU R                  [        U5      5         " S S5      nU R                  [        U5      5        U" 5       nU R                  [        UR
                  5      5        U R                  [        U5      5        S Ul        U R                  [        U5      5        S Ul        U R                  [        U5      5        U?U R                  [        U5      5         " S S[        5      nU" 5       nU R                  [        U5      5        S Ul        U R                  [        U5      5         " S	 S
U5      nU" 5       nU R                  [        U5      5        g )Nr   c                 
    X-   $ r   r?   r   ys     r$   <lambda>+BuiltinTest.test_callable.<locals>.<lambda>  s    aer(   c                      g r   r?   r?   r(   r$   f$BuiltinTest.test_callable.<locals>.f      r(   c                       \ rS rSrS rSrg)%BuiltinTest.test_callable.<locals>.C1i!  c                     g r   r?   r,   s    r$   meth*BuiltinTest.test_callable.<locals>.C1.meth"  s    Dr(   r?   N)r:   r;   r<   r=   r  r>   r?   r(   r$   C1r  !  s     r(   r  c                     gNr   r?   r,   s    r$   r   r   +  s    !r(   c                       \ rS rSrS rSrg)%BuiltinTest.test_callable.<locals>.C2i0  c                     g r   r?   r,   s    r$   __call__.BuiltinTest.test_callable.<locals>.C2.__call__1  s    r(   r?   N)r:   r;   r<   r=   r  r>   r?   r(   r$   C2r	  0  s    $r(   r  c                       \ rS rSrSrg)%BuiltinTest.test_callable.<locals>.C3i6  r?   Nr:   r;   r<   r=   r>   r?   r(   r$   C3r  6  s    dr(   r  )r   callabler+   assertFalse__builtins__r  r  r   )r#   r   r  cr  c2r  c3s           r$   test_callableBuiltinTest.test_callable  sY   &#'*+!345,/0$	! 	!%D()!% 
!%#
!%J!%	% 	%T%%T%r(   c                    U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S	5      S
5        U R                  [        [        5        U R                  [        [        S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        [        S5        U R                  [        [        S5        U R                  [        [        S 5        U R                  [        [        S!5        U R                  [        [        S"5        U R                  [        [        S#S$-  5        U R                  [        [        S#S$-  * 5        g )%Nr   r       ra   A   Aa   r         ÿg     @P@     ￿      𐀀     𐀁    󿿾    󿿿      􀀀     􀀁    􏿾    􏿿i   i       l     r     )r   r{   r   r   r   r,   s    r$   test_chrBuiltinTest.test_chr:  s   Q&R#&R#&R#&TF+)S))S$/Z,7Z,7Z,7Z,7Z,7Z,7Z,7Z,7Z,7*c2.*c:6*c51*c73*c62*c1d73*cAtG84r(   c                 L    U R                  [        [        S5      (       + 5        g )Ncmp)r   hasattrbuiltinsr,   s    r$   test_cmpBuiltinTest.test_cmpS  s    GHe445r(   c                    [        SSS5        Sn[        US-   SS5        [        SSSS9  [        S	S
SSS9  [        SSSSS9  [        [        S5      SS5        U R                  [        [         5        U R                  [        [         SSS5        U R                  [        [         SSSS5        U R                  [        [         SSSSSS
S9  [        SSS5        U R                  [
        [         [        S5      SS5        U R                  [        [         [        S5      SS5        SnS nSS	UR                  S	S	4S S!S"/nU H  tpVU R                  US#9   / nUR                  [        US$SUS%95        [        R                  " X%S%9nUR                  [        US$SUS%95        U H5  n	0 n
[        X5        U
S   " 5       nU R                  U[        U5      5        M7     S S S 5        M     g ! , (       d  f       M  = f)&Nz	print(1)
r`   exec   ﻿s	   print(1)
pass?)sourcefilenamemodeFtmprQ   eval)dont_inheritrD  rC  rE  T)rH  rE  s   textr   z
print(42)
<string>badmodesingler  )rE  rC  rD  u   print("å")
r   r   za = 1badaJ  def f():
        """doc"""
        debug_enabled = False
        if __debug__:
            debug_enabled = True
        try:
            assert False
        except AssertionError:
            return (True, f.__doc__, debug_enabled, __debug__)
        else:
            return (False, f.__doc__, debug_enabled, __debug__)
        c                      g r   r?   r?   r(   r$   r   #BuiltinTest.test_compile.<locals>.fu  s    r(   r3  )r   TdocTT)r1   FrO  FF)r   FNFF)optvalz<test>)optimize)compile
memoryviewr   r   r   SyntaxErrorr{   rH   __doc__subTestr3   astparser?  r   tuple)r#   bomcodestrr   valuesrP  expectedcodeobjstreecodensrvs               r$   test_compileBuiltinTest.test_compileV  s   b&)m#R0v&9UU3VL$V<
7#VV4)W-*g}j)T*g}j(TXY)Wfc6%cE 	 	C!2v.+wAVD*gs7|S%H 	y!))Y	B.102 "(FV,6F STyy:h PQ$DBNCB$$Rx9	 % -, "(,,s   BG))
G8	c           	          Sn/ SQn[        X5       HV  u  p4[        U5      n[        USU[        R                  S9nU R                  UR                  [        -  [        SU SU 3S9  MX     g )NrK  r?  )zdef f():pass
z[x for x in l]z{x for x in l}z(x for x in l)z{x:x for x in l}rB  flagssource= mode=msg)r   r   rR  rW  PyCF_ALLOW_TOP_LEVEL_AWAITassertNotEqualco_flagsr   )r#   modescode_samplesrE  code_samplerC  cos          r$   $test_compile_top_level_await_no_coro0BuiltinTest.test_compile_top_level_await_no_coro  s{    "
 ")!=DK(F "%"@"@BB
 l :L&-fXVD6$B   D ">r(   zsocket.accept is brokenc           	         S nSn/ SQn[        5       n [        X#5       GH
  u  pV[        U5      nU R                  [        SU SU 3S9   [        USU5        S S S 5        [        USU[        R                  S9nU R                  UR                  [        -  [        SU SU 3S9  [        S	US
.n	[        X5      n
[        R                  " U
" 5       5        U R                  U	S   S5        [        S	US
.n	[        R                  " [        X5      5        U R                  U	S   S5        GM     [        R                  " U5        g ! , (       d  f       N= f! [        R                  " U5        f = f)Nc                :   #    [        U 5       H  nU7v   M
     g 7fr   ranger6   r5   s     r$   arange8BuiltinTest.test_compile_top_level_await.<locals>.arange       1X    rf  )
z$a = await asyncio.sleep(0, result=1)z2async for i in arange(1):
                   a = 1z8async with asyncio.Lock() as l:
                   a = 1z#a = [x async for x in arange(2)][1]z%a = 1 in {x async for x in arange(2)}z%a = {x:1 async for x in arange(1)}[0]z<a = [x async for x in arange(2) async for x in arange(2)][1]z6a = [x async for x in (x async for x in arange(5))][1]z.a, = [1 for x in {x async for x in arange(1)}]z;a = [await asyncio.sleep(0, x) async for x in arange(2)][1]ri  rj  rk  rB  rg  r   )asyncior   r{  r   r1   )r   r   r   r   rT  rR  rW  rm  r   ro  r   r  r	   runrG  set_event_loop_policy)r#   r{  rp  rq  policyrE  rr  rC  rs  globals_async_fs              r$   test_compile_top_level_await(BuiltinTest.test_compile_top_level_await  se   	 #
 -.	2%,U%A!,&&#76(&)G ' IFC.I V !#&#A#AC
   |!;\'.vhfTF%C ! E (/Q&I&r4GI&  #2 (/Q&ID./  #2/ &B2 ))&1/I I. ))&1s$   6E ECE 
E	E E/c           	         S nSn/ SQn[        5       n [        X#5       H}  u  pV[        U5      nU R                  [        SU SU 3S9   [        USU5        S S S 5        U R                  [        SU SU 3S9   [        USU[        R                  S9nS S S 5        M     [        R                  " U5        g ! , (       d  f       Nf= f! , (       d  f       M  = f! [        R                  " U5        f = f)	Nc                :   #    [        U 5       H  nU7v   M
     g 7fr   rx  rz  s     r$   r{  FBuiltinTest.test_compile_top_level_await_invalid_cases.<locals>.arange  r}  r~  rf  )zdef f():  await arange(10)
z(def f():  [x async for x in arange(10)]
z.def f():  [await x async for x in arange(10)]
z_def f():
                   async for i in arange(1):
                       a = 1
            zedef f():
                   async with asyncio.Lock() as l:
                       a = 1
            ri  rj  rk  rB  rg  )
r   r   r   r   rT  rR  rW  rm  r  r  )	r#   r{  rp  rq  r  rE  rr  rC  rs  s	            r$   *test_compile_top_level_await_invalid_cases6BuiltinTest.test_compile_top_level_await_invalid_cases  s   	 #
 -.	2%,U%A!,&&#76(&)G ' IFC.I &&#76(&)G ' I  !#&#A#ACBI I &B ))&1I II I ))&1s;   5C 
B8"C :C	C 8
C	C 	
C	C C3c                     [        S5      n[        USS[        R                  S9n0 n[	        X#5        U R                  [        US   " 5       5      [        5        g )Nz~async def ticker():
                for i in range(10):
                    yield i
                    await asyncio.sleep(0)rB  r?  rg  ticker)r   rR  rW  rm  r?  r   r   r   )r#   r`  rs  globs       r$   test_compile_async_generator(BuiltinTest.test_compile_async_generator   sT      . /
 T3c.L.LMRd8n./1CDr(   c                 &   Sn[        US[        R                  06R                  S   n[        US[        R                  06R                  S   n[        [        R
                  " US   5      /USS  Q7S[        R                  06R                  S   nX#U4 H  nU R                  UR                  [        R                  5        U R                  UR                  R                  [        R                  5        U R                  UR                  R                  [        R                  5        U R                  UR                  R                  R                  S5        M     UR                  R                  nU R                  U[        R                  5        U R                  UR                  [        R                   5        U R                  UR                  R                  S5        U R                  UR                  [        R                   5        U R                  UR                  R                  S5        X44 HU  nUR                  R                  nU R                  U[        R                   5        U R                  UR                  S5        MW     g )N)za*(1+2)zf.pyr?  rh  r   r1   r   r   r   )rR  rW  PyCF_ONLY_ASTbodyPyCF_OPTIMIZED_ASTrX  assertIsInstancevalueBinOpopMultleftNamer   idrightConstant)	r#   argsrawopt1opt2r_  	raw_rightopt	opt_rights	            r$   test_compile_astBuiltinTest.test_compile_ast  s   *t7S%6%67<<Q?=c&<&<=BB1Esyya)UDHUc>T>TUZZ[\]%D!!$**cii8!!$**--:!!$**//388<TZZ__//5	 & IIOO	i3inncll;--q1ioos||<..2<C		I!!)S\\:Y__a0  r(   c                     S[         l        [        [         S5        U R                  [        [        5        U R                  [        [        [         5        SnU R                  [        U[        [         S5        g )Nr1   spam*^attribute name must be string, not 'int'$)r   r  delattrr   r   assertRaisesRegexr#   rl  s     r$   test_delattrBuiltinTest.test_delattr(  sP    V)W-)Wc2;y#wQ?r(   c                    U R                  [        [        SS5        SnU R                  S[        5       5        U R                  S[        [        5      5         " S S[
        R                  5      nU" S5      nU R                  [        [        U5        U R                  S[        [        5      5        U R                  S	[        [        5      5         " S
 S[        5      nU" 5       nU R                  S[        U5      5         " S S[        5      nU" 5       nU R                  S[        U5      5         " S S[        5      nU" 5       nU R                  S[        U5      5        U R                  S[        U5      5         " S S[        5      nU" 5       nU R                  [        U5      / SQ:H  5         " S S[        5      n[        U" 5       5      nU R                  U[        5        U R                  U/ SQ:H  5         " S S[        5      n[        U" 5       5      nU R                  U[        5        U R                  [        U5      / SQ5         " S S[        5      nU" 5       nU R                  [        [        U5         [        e! [         a8  nU R                  [!        [        UR"                  5      5      S5         S nAOS nAff = fU R                  [        / R%                  5       5      [        / 5      5        g )Nr   r1   	local_varexitc                       \ rS rSrSrSrg)!BuiltinTest.test_dir.<locals>.Fooi<     r?   N)r:   r;   r<   r=   __dict__r>   r?   r(   r$   Foor  <  s    Hr(   r  r   strip__mro__c                       \ rS rSrS rSrg)r  iF  c                 .    SU l         SU l        SU l        g )N   r  rT   r   r   zr,   s    r$   r%   *BuiltinTest.test_dir.<locals>.Foo.__init__G  s    r(   r  N)r:   r;   r<   r=   r%   r>   r?   r(   r$   r  r  F  s    r(   r   c                       \ rS rSr/ rSrg)r  iO  r?   N)r:   r;   r<   r=   	__slots__r>   r?   r(   r$   r  r  O  s    Ir(   __repr__c                   "    \ rS rSrSS/rS rSrg)r  iV  	__class__r  c                     SU l         g )Nwowbarr,   s    r$   r%   r  X  s	     r(   r  N)r:   r;   r<   r=   r  r%   r>   r?   r(   r$   r  r  V  s    $j1I!r(   r  c                       \ rS rSrS rSrg)r  i_  c                 
    / SQ$ )N)kangaroor?   r,   s    r$   __dir__)BuiltinTest.test_dir.<locals>.Foo.__dir__`  s    ++r(   r?   Nr:   r;   r<   r=   r  r>   r?   r(   r$   r  r  _  s    ,r(   )r  r  r  c                       \ rS rSrS rSrg)r  if  c                     g)N)br  r   r?   r,   s    r$   r  r  g  s    &r(   r?   Nr  r?   r(   r$   r  r  f      'r(   r   r  r  c                       \ rS rSrS rSrg)r  in  c                 
    1 Sk$ )N>   r   r  r  r?   r,   s    r$   r  r  o  s    &&r(   r?   Nr  r?   r(   r$   r  r  n  r  r(   c                       \ rS rSrS rSrg)r  iv  c                     g)Nr  r?   r,   s    r$   r  r  w      r(   r?   Nr  r?   r(   r$   r  r  v  s    r(   r   )r   r   dirassertInr   types
ModuleTyperH   assertNotInr   r   r  r   r   sortedr2   r+   __traceback__r  )r#   r  r  r   reses         r$   test_dirBuiltinTest.test_dir0  sC   )S"b1 	k35) 	fc#h'	%"" 	J)S!, 	gs3x(CH-	& 	
 Ec3q6"	& 	Ej#a&)	!& 	! ESV,eSV$	,& 	, EA"667	'& 	' #%jc4(./	'& 	' #%jc4(o6	& 	 E)S!,	; 	;SQ__!56::	; 	

-s2w7s   J
 

K.KKc                     U R                  S R                  S 5      5        U R                  S R                  S5      [        5        U R                  S R                  S5      [        5        g )Nr   abc)r  __ne__assertIsNotImplementedr,   s    r$   test___ne__BuiltinTest.test___ne__  sF    T*+dkk!nn5dkk%(.9r(   c                 (   U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        [        R                  * S	-
  S
5      [        R                  S	-   S45        S HA  u  pn[        X5      nU R	                  US   US   5        U R	                  US	   US	   5        MC     U R                  [        [        5        g )N   r  )r1      i)r   i)r  r  )r1   r   r1   r3  r   ))      
@      ?)      @g      ?)      
r  )      g      ?)r        )r  g      )r  r  )r  g      п)r   divmodr   r   assertAlmostEqualr   r   )r#   numdenom
exp_resultresults        r$   test_divmodBuiltinTest.test_divmod  s    A/Q1B2R'2Q3ckk!mQ5GH'E"C
 C'F""6!9jm<""6!9jm<'E 	)V,r(   c                    U R                  [        S5      S5        U R                  [        S5      S5        SSS.nSSS.nU R                  [        S	U5      S5        U R                  [        S	X5      S5        U R                  [        S
X5      S5        U R                  [        SX5      S5        SSS.nSSS.nSnU R                  [        US-   X5      S5        U R                  [        SU5      S5        U R                  [        [        5        U R                  [        [        S5        U R                  [        [        US S S-   5         " S S5      nU R                  [
        [        S0 U" 5       5        g )N1+1r   z 1+1
r1   r   r     ,  )r  r  r   r  r  r@     au   "å"   år?   c                       \ rS rSrS rSrg) BuiltinTest.test_eval.<locals>.Xi  c                     [         er   r   r#   keys     r$   r7   ,BuiltinTest.test_eval.<locals>.X.__getitem__        r(   r?   Nr:   r;   r<   r=   r7   r>   r?   r(   r$   Xr        !r(   r  r   )r   rG  r   r   rT  r   )r#   globalsr   rZ  r  s        r$   	test_evalBuiltinTest.test_eval  sG   ea(h+"%c7+a0c73Q7c73S9c73S9"%cDj':A>h0&9)T*)T2.+tS!Wt^<	! 	! 	*dE2qs;r(   c                 t    SS0nU R                  [        SUS9S5        U R                  [        SUS9S5        g )NA_GLOBAL_VALUEi  zglobals()['A_GLOBAL_VALUE']r  r   r   )r   rG  r#   datas     r$   test_eval_kwargsBuiltinTest.test_eval_kwargs  s<     #&;TJCP;DI3Or(   c                 v    " S S5      nU" 5       n[        5       nU R                  [        SX25      S5        U R                  [        [        SX25        U R                  [        SX25      [        S5      5        U R                  [        SX25      U5        U R                  [        S	X25      U5        U R                  [        [        SU5         " S
 S5      nU" 5       nU R                  [        [        SX25         " S S[        5      nU" 5       nU R                  [        SX65      S5        U R                  [        [        SX65        U R                  [        SX65      [        S5      5        U R                  [        SX65      U5        U R                  [        S	X65      U5        [        SX65        [        SU[        R                  " 5       5         " S S5      nU" 5       nSUS'   SUS'   SUS'   U R                  US   S5         " S S5      n	U R                  [        [        S[        5       U	" 5       5        g )Nc                        \ rS rSrS rS rSrg)(BuiltinTest.test_general_eval.<locals>.Mi  c                     US:X  a  g[         eNr   r  KeyErrorr
  s     r$   r7   4BuiltinTest.test_general_eval.<locals>.M.__getitem__  s    #:r(   c                     [        S5      $ Nxyzr   r,   s    r$   keys-BuiltinTest.test_general_eval.<locals>.M.keys      E{"r(   r?   Nr:   r;   r<   r=   r7   r(  r>   r?   r(   r$   Mr    s    #r(   r,  r   r  r  zdir()r&  z	globals()zlocals()c                       \ rS rSrSrg)(BuiltinTest.test_general_eval.<locals>.Ai  r?   Nr  r?   r(   r$   r  r.    s    r(   r  c                        \ rS rSrS rS rSrg)(BuiltinTest.test_general_eval.<locals>.Di  c                 :    US:X  a  g[         R                  X5      $ r   )dictr7   r
  s     r$   r7   4BuiltinTest.test_general_eval.<locals>.D.__getitem__  s    #:''22r(   c                     [        S5      $ r%  r'  r,   s    r$   r(  -BuiltinTest.test_general_eval.<locals>.D.keys  r*  r(   r?   Nr+  r?   r(   r$   Dr0    s    3#r(   r6  z[locals() for i in (2,3)]c                   $    \ rS rSr0 rS rS rSrg)2BuiltinTest.test_general_eval.<locals>.SpreadSheeti  c                      X R                   U'   g r   )_cells)r#   r  formulas      r$   __setitem__>BuiltinTest.test_general_eval.<locals>.SpreadSheet.__setitem__  s    #*C r(   c                 F    [        U R                  U   [        5       U 5      $ r   )rG  r:  r  r
  s     r$   r7   >BuiltinTest.test_general_eval.<locals>.SpreadSheet.__getitem__  s    DKK,gi>>r(   r?   N)r:   r;   r<   r=   r:  r<  r7   r>   r?   r(   r$   SpreadSheetr8    s    F+?r(   r@  5a1za1*6a2za2*7a3   c                        \ rS rSrS rS rSrg)(BuiltinTest.test_general_eval.<locals>.Ci  c                     [        U5      er   r!  )r#   items     r$   r7   4BuiltinTest.test_general_eval.<locals>.C.__getitem__  s    tn$r(   c                     grz   r?   r,   s    r$   r(  -BuiltinTest.test_general_eval.<locals>.C.keys  r  r(   r?   Nr+  r?   r(   r$   CrG    s    %r(   rM  )
r  r   rG  r   	NameErrorr   r   r2  collectionsUserDict)
r#   r,  mgr  r6  rt   r@  ssrM  s
             r$   test_general_evalBuiltinTest.test_general_eval  s   	# 	# CIc1"-)T35gq,d5k:k10!4j!/3)T32	 	 C)T35	# 	# Cc1"-)T35gq,d5k:k10!4j!/3 	(!/(![-A-A-CD	? 	? ]444D3'	 	
 	)T7GIqsCr(   c                    0 n[        SU5        SU;   a  US	 U R                  USS05        [        SU5        SU;   a  US	 U R                  USS05        0 n0 n[        5          [        R                  " SSS	S
9  [        SX5        S S S 5        SU;   a  US	 SU;   a  US	 U R                  X4SS0SS045        g ! , (       d  f       N:= f)Nzz = 1r  r  r1   zz = 1+1r   ignorezglobal statementrI  )modulezglobal a; a = 1; b = 2r   r  )r?  r   r   warningsfilterwarnings)r#   rR  ls      r$   	test_execBuiltinTest.test_exec  s    WaQ.!S!H%YQ.!S!H%##H.@%')10  Q.!Q.!!3(S!H!56 s   ##B::
Cc                     0 n[        SUS9  SU;   a  US	 U R                  USS05        0 n[        SUS9  U R                  U0 5        g )Nzglobal z
z = 1r  r  r  r1   r  )r?  r   )r#   rR  s     r$   test_exec_kwargsBuiltinTest.test_exec_kwargs  sX    *Q.!S!H% q)Br(   c                     [        SSS5      nU R                  [        S[        US0 05        U R	                  [
        [        USS05        g )Nzprint('Hello World!')r`   r?  zname 'print' is not definedr  r   )rR  r  rN  r?  r   r   )r#   r`  s     r$   test_exec_globalsBuiltinTest.test_exec_globals"  sO    .F;y*G#TNB+?	A 	)~s&;	=r(   c           	      6  ^  " S S[         5      m " U4S jS[        5      n[        [        [        R
                  5      (       a  U" [        R                  5      nOU" [        5      n[        SSS5      nU R                  T[        USU05        [        S	S
S5      nU R                  [        S[        US0 05        [        USU05        U R                  [        S[        USU" 5       05        U" 0 5      n[        SSS5      nU R                  T[        X45        g )Nc                       \ rS rSrSrg)>BuiltinTest.test_exec_globals_frozen.<locals>.frozendict_errori,  r?   Nr  r?   r(   r$   frozendict_errorrf  ,      r(   rg  c                   "   > \ rS rSrU 4S jrSrg)8BuiltinTest.test_exec_globals_frozen.<locals>.frozendicti/  c                    > T" S5      e)Nzfrozendict is readonlyr?   )r#   r  r  rg  s      r$   r<  DBuiltinTest.test_exec_globals_frozen.<locals>.frozendict.__setitem__0  s    &'?@@r(   r?   N)r:   r;   r<   r=   r<  r>   )rg  s   r$   
frozendictrj  /  s    A Ar(   rm  z1__builtins__['superglobal']=2; print(superglobal)testr?  r  zclass A: passr`   z__build_class__ not foundzx=1)	Exceptionr2  r   r  r  r  r  rR  r   r?  r  rN  )r#   rm  frozen_builtinsr`  	namespacerg  s        @r$   test_exec_globals_frozen$BuiltinTest.test_exec_globals_frozen+  s   	y 		A 	A
 lE$4$455()>)>?O(6OJFTZ[*~&G	I F3y*E#TNB+?	A 	TNO45y*E#TNJL+I	K rN	uff-*	1r(   c           
         ^  " S S[         5      m " U4S jS[        5      n[        SSS5      nU R                  T[        X!" SS05      5        [        S	SS5      nU R                  T[        US
U" S	S05      05        g )Nc                       \ rS rSrSrg)@BuiltinTest.test_exec_globals_error_on_get.<locals>.setonlyerroriM  r?   Nr  r?   r(   r$   setonlyerrorrv  M  rh  r(   rw  c                   "   > \ rS rSrU 4S jrSrg)?BuiltinTest.test_exec_globals_error_on_get.<locals>.setonlydictiP  c                    > Ter   r?   )r#   r  rw  s     r$   r7   KBuiltinTest.test_exec_globals_error_on_get.<locals>.setonlydict.__getitem__Q  s	    ""r(   r?   Nr  )rw  s   r$   setonlydictry  P  s    # #r(   r|  
globalnamern  r?  r1   superglobalr  )ro  r2  rR  r   r?  )r#   r|  r`  rw  s      @r$   test_exec_globals_error_on_get*BuiltinTest.test_exec_globals_error_on_getK  s    	9 		#$ 	#
 |VV4,k<2C&D	F }ff5,d);q7I+JK	Mr(   c           	           " S S[         5      n[        SSS5      n[        USU" SS05      05        U R                  [        S[        USU" 5       05        g )	Nc                       \ rS rSrSrg)?BuiltinTest.test_exec_globals_dict_subclass.<locals>.customdicti_  r?   Nr  r?   r(   r$   
customdictr  _  rh  r(   r  r~  rn  r?  r  r1   !name 'superglobal' is not defined)r2  rR  r?  r  rN  )r#   r  r`  s      r$   test_exec_globals_dict_subclass+BuiltinTest.test_exec_globals_dict_subclass^  sY    	 	 }ff5TNJq/A$BCDy*M#TNJL+I	Kr(   c                     [        SSS5      nS[        R                  " SS05      0nU R                  [	        X5      S5        S[        R                  " 0 5      0nU R                  [        S[        X5        g )Nr~  rn  rG  r  r1   r  )rR  r  MappingProxyTyper   rG  r  rN  r#   r`  ra  s      r$   test_eval_builtins_mapping&BuiltinTest.test_eval_builtins_mappingi  sk    }ff5e44mQ5GHId+e44R89y*M#T	/r(   c                    [        SSS5      nS[        R                  " 0 5      0nU R                  [        S[
        X5        S[        R                  " SS 05      0n[        X5        U R                  US   S	X"S S
45        g )Nzimport foo.barrn  r?  r  z__import__ not foundr   c                      U $ r   r?   r  s    r$   r   ?BuiltinTest.test_exec_builtins_mapping_import.<locals>.<lambda>w  s    RVr(   r   zfoo.barr   )rR  r  r  r  r   r?  r   r  s      r$   !test_exec_builtins_mapping_import-BuiltinTest.test_exec_builtins_mapping_imports  sz    '8e44R89{,BD$Se44lDV5WXYTEYa$@Ar(   c                 <   [        SSS5      n[        R                  " 0 5      [        SS/5      S.nU R	                  [
        S[        X5        [        R                  " S[        05      [        SS/5      S.nU R                  [        X5      [        SS/4S45        g )	Nzx.__reduce__()rn  rG  r1   r   )r  r   iterr   )rR  r  r  r  r  AttributeErrorrG  r   r  s      r$   !test_eval_builtins_mapping_reduce-BuiltinTest.test_eval_builtins_mapping_reduce{  s    '8#44R8tQF|L~vtTF#44fd^D4QRTUPV<Xd$!Q	1)=>r(   c                     [         R                  nS [         l         [        S5        U[         l        g ! [         a     Nf = f! U[         l        f = f)Nr   )r   stdoutr?  rN  )r#   
savestdouts     r$   test_exec_redirected BuiltinTest.test_exec_redirected  sE    ZZ

	$I $CJ  		 $CJs    4 
AA  AA Ac                   ^ S nSmU4S jnU" 5       u  p4Sm[        UR                  UR                  UR                  S9  U R	                  TS5        Sm[        S5      [        S5      UR                  S   4n[        UR                  UR                  US9  U R	                  TS	5        U R                  [        [         UR                  UR                  US9  U R                  [        [         UR                  UR                  S S9  U R                  [        [         UR                  UR                  UR                  S9  [        U5      nU R                  [        [         UR                  UR                  US9  [        U5      nU R                  [        [         S
[        S9  U R                  [        [         S
US9  [        U5      n[        US'   [        U5      nU R                  [        [         UR                  UR                  US9  g )Nc                      g)N   r?   r?   r(   r$   function_without_closures@BuiltinTest.test_exec_closure.<locals>.function_without_closures  s    r(   r   c                  >   >^^^ SmSmSmUUU4S jn UUUU4S jnX4$ )Nr   r   r  c                     > T T-  mg r   r?   )r   r  r  s   r$   three_freevarsUBuiltinTest.test_exec_closure.<locals>.make_closure_functions.<locals>.three_freevars  s     1r(   c                     > T T-  T-  mg r   r?   )r   r  r  r  s   r$   four_freevarsTBuiltinTest.test_exec_closure.<locals>.make_closure_functions.<locals>.four_freevars  s    
 1Qr(   r?   )r  r  r   r  r  r  s     @@@r$   make_closure_functions=BuiltinTest.test_exec_closure.<locals>.make_closure_functions  s,    AAA
  "00r(   )closurer   #   H   r   i	  rA  )r?  __code____globals____closure__r   r
   r   r   r   rY  r   )r#   r  r  r  r  
my_closurer  s         @r$   test_exec_closureBuiltinTest.test_exec_closure  s   	 	1  )?(@% ^$$&&"..	0 	# rlHRL.2L2LQ2OP
^$$&&	  	& 	)%..%11	 	 	  	)##&&	 	 	 	)##&&!--	 	 	/ *%
)##&&	 	 	 
 :&
 	) 	 	 	) 	 	  *%

1:&
)##&&	 	 	 r(   c                     U R                  [        [        S S5      5      [        S5      5        U R                  [        [        S SS/ S/SS SS	/5      5      SSS/S/5        U R                  [        [        S
 / SQ5      5      / SQ5        U R                  [        [        S [        S5      5      5      / SQ5        U R                  [        [        S [        S5      5      5      / SQ5        S n[        U[        S5      5        U R	                  [
        [        5         " S S[        5      nU R	                  [        [        [        S U" 5       5      5        S nU R	                  [
        [        [        U[        S5      5      5        U R                  [        [        S S5      5      SS/5        U R                  [        [        S S5      5      SS/5        U R	                  [
        [        [        SS5      5        g )Nc                 ,    SU s=:*  =(       a    S:*  $ s  $ )Nr   r  r?   )r  s    r$   r   )BuiltinTest.test_filter.<locals>.<lambda>  s    sa3r(   zHello Worldelloorldr1   hellor   r`   rT   r   c                     U S:  $ r  r?   r   s    r$   r   r    s    q1ur(   )r1   rT   r   r   )r1   rT   r   rV   )	r1   r   rT         $   1   @   Q   c                     U S-  $ )Nr   r?   r  s    r$   r   r    s    qsr(   )r1   rT   r  r  r  c                     grz   r?   )rI  s    r$   identity)BuiltinTest.test_filter.<locals>.identity  s    r(   r  c                       \ rS rSrS rSrg)'BuiltinTest.test_filter.<locals>.BadSeqi  c                     US:  a  g[         e)Nr   r   r	  r#   indexs     r$   r7   3BuiltinTest.test_filter.<locals>.BadSeq.__getitem__  s    7  r(   r?   Nr  r?   r(   r$   BadSeqr    s    !r(   r  c                     U $ r   r?   r  s    r$   r   r    s    Qr(   c                      g r   r?   r?   r(   r$   badfunc(BuiltinTest.test_filter.<locals>.badfunc      r(   r1   r   r   c                     U S:  $ )Nr   r?   r  s    r$   r   r    s    q!tr(   r1   r   r   r   r   r   )	r   r   filterr   r   r   r   r   ry  )r#   r  r  r  s       r$   test_filterBuiltinTest.test_filter  s   f%>NOQUV`QabfTAwQCT1a+PQRUVX_bcadfgThif_6FGH)TfT72;78:[\f]GBK@ACUV	x$)V,	!V 	!
 	*dF;,IJ	)T6'58+DE 	fT623aV<f^\BCaVL)T6"f+=>r(   c                     [        [        R                  S-   5       H?  n[        [        S5      n[        [        S5      nU R                  U[        U5      U5        MA     g )Nr1   
abcdeabcde)ry  r   HIGHEST_PROTOCOLr  rx   r   r   )r#   r   f1f2s       r$   test_filter_pickleBuiltinTest.test_filter_pickle  sJ    622Q67E\2B\2B""2tBx7 8r(   cpuc                     Sn[        [        [        U5      5      n[        U5       H  n[        [        U5      nM     A[        R                  " 5         g )Ni@B )r  boolry  gccollect)r#   	max_itersr5   _s       r$   test_filter_deallocBuiltinTest.test_filter_dealloc  s@     	4y)*y!AtQA "


r(   c                    U R                  [        [        S5      [        R                  L 5        U R	                  [
        [        5        U R	                  [
        [        [        5        SnU R                  [
        U[        [        S5        U R                  [
        U[        [        SS5        U R	                  [        [        [        [        [        R                  5      5        U R	                  [        [        SS5        g )Nr  r  r1   r  u   픞)
r   getattrr   r  r   r   r  r  r{   
maxunicoder  s     r$   test_getattrBuiltinTest.test_getattr  s    X.#**<=)W-)Wc2;y#wQ?y#wQG.'3CNN8KL.'1nEr(   c           	         U R                  [        [        S5      5        U R                  [        [        5        U R                  [        [        [        5        SnU R                  [        U[        [        S5        U R                  S[        [        [        [        R                  5      5      5         " S S5      nU R                  [        [        U" 5       S5         " S S	5      nU R                  [        [        U" 5       S5        g )
Nr  r  r1   Fc                       \ rS rSrS rSrg)#BuiltinTest.test_hasattr.<locals>.Ai+  c                     [         er   )
SystemExitr#   whats     r$   __getattr__/BuiltinTest.test_hasattr.<locals>.A.__getattr__,  r  r(   r?   Nr:   r;   r<   r=   r  r>   r?   r(   r$   r  r  +  r  r(   r  r  c                       \ rS rSrS rSrg)#BuiltinTest.test_hasattr.<locals>.Bi/  c                     [         er   r	  r  s     r$   r  /BuiltinTest.test_hasattr.<locals>.B.__getattr__0  r  r(   r?   Nr  r?   r(   r$   Br  /  r  r(   r  )r   r:  r   r   r   r  r   r{   r  r  r   )r#   rl  r  r  s       r$   test_hasattrBuiltinTest.test_hasattr!  s    X./)W-)Wc2;y#wQ?S-@ AB	! 	! 	*gqsC8	! 	! 	*gqsC8r(   c                    [        S 5        U R                  [        S5      [        S5      5        U R                  [        S5      [        S5      5        [        S5        U R                  [        S5      [        S5      5        [        S5        S n[        U5        U R                  [        [         / 5        U R                  [        [         0 5         " S S5      nU R                  [	        [        U" 5       5      5      [
        5         " S	 S
[
        5      nU R                  [        U" S5      5      [        S5      5        g )Nr1   r  r  s   spamr   r1   r   r   c                      g r   r?   r?   r(   r$   r    BuiltinTest.test_hash.<locals>.f;  r   r(   c                       \ rS rSrS rSrg) BuiltinTest.test_hash.<locals>.Xi@  c                     SS-  $ )Nr   rZ   r?   r,   s    r$   __hash__)BuiltinTest.test_hash.<locals>.X.__hash__A  s    #vr(   r?   Nr:   r;   r<   r=   r  r>   r?   r(   r$   r  r  @  s    r(   r  c                       \ rS rSrS rSrg) BuiltinTest.test_hash.<locals>.ZiD  c                     U $ r   r?   r,   s    r$   r  )BuiltinTest.test_hash.<locals>.Z.__hash__E      r(   r?   Nr  r?   r(   r$   Zr	  D      r(   r  r   )hashr   r   r   r   r   )r#   r   r  r  s       r$   	test_hashBuiltinTest.test_hash4  s    T
a$q'*a$s),VftG}5YQ)T2.)T2.	 	 	d13i#.	 	 	aed2h/r(   c                     U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        [        0 5        g )Nr  0x10iz-0x10)r   hexr   r   r,   s    r$   test_hexBuiltinTest.test_hexI  s<    R&)S7+)S"-r(   c                     [        S 5        [        S5        [        S5        [        S5        [        S5        [        / SQ5        [        SSSS.5        g )Nr1   r  r  r  r   r   )r  eggsham)r  r,   s    r$   test_idBuiltinTest.test_idN  s;    
4
1
3
6

9
9
Aq+,r(   c                 H   U R                  [        [        5        U R                  [        [        SS5        SSS/S/nU H_  n[        U5      nU R                  [	        U5      S5        U R                  [	        U5      S5        U R                  [
        [        U5        Ma     g )Nr   )rR   2rR   r  12)r   r   r  r   r   r   )r#   listsr[  r5   s       r$   	test_iterBuiltinTest.test_iterY  s    )T*)T2r2c3Z.AQAT!Wc*T!Wc*mT15	 r(   c                     " S S5      n " S SU5      n " S S5      nU" 5       nU" 5       nU" 5       nU R                  [        XA5      5        U R                  [        XQ5      5        U R                  [        Xa5      (       + 5        U R                  [        XB5      (       + 5        U R                  [        SU5      (       + 5        U R                  [        [        US5        U R                  [        [        5        g )Nc                       \ rS rSrSrg)&BuiltinTest.test_isinstance.<locals>.Cid  r?   Nr  r?   r(   r$   rM  r$  d  rh  r(   rM  c                       \ rS rSrSrg)&BuiltinTest.test_isinstance.<locals>.Dif  r?   Nr  r?   r(   r$   r6  r&  f  rh  r(   r6  c                       \ rS rSrSrg)&BuiltinTest.test_isinstance.<locals>.Eih  r?   Nr  r?   r(   r$   Er(  h  rh  r(   r)  r   )r   r   r   r   r#   rM  r6  r)  r  rt   r  s          r$   test_isinstanceBuiltinTest.test_isinstancec  s    	 		 		 	CCC
1()
1()Jq,,-Jq,,-Jua001)ZE:)Z0r(   c                     " S S5      n " S SU5      n " S S5      nU" 5       nU" 5       nU" 5       nU R                  [        X!5      5        U R                  [        X5      5        U R                  [        X5      (       + 5        U R                  [        [        SU5        U R                  [        [        US5        U R                  [        [        5        g )Nc                       \ rS rSrSrg)&BuiltinTest.test_issubclass.<locals>.Civ  r?   Nr  r?   r(   r$   rM  r/  v  rh  r(   rM  c                       \ rS rSrSrg)&BuiltinTest.test_issubclass.<locals>.Dix  r?   Nr  r?   r(   r$   r6  r1  x  rh  r(   r6  c                       \ rS rSrSrg)&BuiltinTest.test_issubclass.<locals>.Eiz  r?   Nr  r?   r(   r$   r)  r3  z  rh  r(   r)  r   )r   
issubclassr   r   r*  s          r$   test_issubclassBuiltinTest.test_issubclassu  s    	 		 		 	CCC
1()
1()Jq,,-)Z:)ZE:)Z0r(   c                    U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        / SQ5      S5        U R                  [        0 5      S5        U R                  [        SSS	.5      S5         " S
 S5      nU R                  [        [        U" 5       5         " S S5      nU R                  [        [        U" 5       5         " S S5      nU R                  [        [        U" 5       5         " S S5      nU R                  [        [        U" 5       5         " S S5      nU R                  [
        [        U" 5       5         " S S5      nU R                  [        [        U" 5       5         " S S[        5      nU R                  [        [        U" 5       5        g )N123r   r?   r   r  r   r1   r   r  c                       \ rS rSrS rSrg)$BuiltinTest.test_len.<locals>.BadSeqi  c                     [         er   r	  r,   s    r$   r-   ,BuiltinTest.test_len.<locals>.BadSeq.__len__  r  r(   r?   Nr:   r;   r<   r=   r-   r>   r?   r(   r$   r  r:    r  r(   r  c                       \ rS rSrS rSrg)(BuiltinTest.test_len.<locals>.InvalidLeni  c                     g r   r?   r,   s    r$   r-   0BuiltinTest.test_len.<locals>.InvalidLen.__len__  s    r(   r?   Nr=  r?   r(   r$   
InvalidLenr?    r  r(   rB  c                       \ rS rSrS rSrg)&BuiltinTest.test_len.<locals>.FloatLeni  c                     g)Ng      @r?   r,   s    r$   r-   .BuiltinTest.test_len.<locals>.FloatLen.__len__      r(   r?   Nr=  r?   r(   r$   FloatLenrD        r(   rH  c                       \ rS rSrS rSrg))BuiltinTest.test_len.<locals>.NegativeLeni  c                     g)Nir?   r,   s    r$   r-   1BuiltinTest.test_len.<locals>.NegativeLen.__len__  rG  r(   r?   Nr=  r?   r(   r$   NegativeLenrK    rI  r(   rN  c                       \ rS rSrS rSrg)%BuiltinTest.test_len.<locals>.HugeLeni  c                 (    [         R                  S-   $ rz   r   r   r,   s    r$   r-   -BuiltinTest.test_len.<locals>.HugeLen.__len__  s    {{Q&r(   r?   Nr=  r?   r(   r$   HugeLenrP    r  r(   rT  c                       \ rS rSrS rSrg)-BuiltinTest.test_len.<locals>.HugeNegativeLeni  c                 *    [         R                  * S-
  $ )NrV   rR  r,   s    r$   r-   5BuiltinTest.test_len.<locals>.HugeNegativeLen.__len__  s    |B&r(   r?   Nr=  r?   r(   r$   HugeNegativeLenrV    r  r(   rY  c                       \ rS rSrSrg))BuiltinTest.test_len.<locals>.NoLenMethodi  r?   Nr  r?   r(   r$   NoLenMethodr[        4r(   r\  )r   r+   r   r   r   OverflowErrorr   )r#   r  rB  rH  rN  rT  rY  r\  s           r$   test_lenBuiltinTest.test_len  s^   UQ'R!$\*A.\*A.R!$!!_-q1	! 	! 	*c684	 	 	)S*,7	 	 	)S(*5	 	 	*c;=9	' 	' 	-gi8	' 	' 	*c?+<='&')S+-8r(   c                   ^ U R                  [        [        S [        SS5      5      5      / SQ5         SSKJm  U R                  [        [        U4S jS	S/S
S//5      5      SS/SS//5        U R                  [        [        S / SQ/ SQ5      5      / SQ5        S nU R                  [        [        U/ SQ5      5      / SQ5        U R                  [        [        U/ SQ/ SQ5      5      / SQ5        U R                  [        [        U/ SQ/ SQ/ SQ5      5      / SQ5        U R                  [        [        [        [        S5      5      5      / SQ5        S nU R                  [        [        U[        S5      [        S5      5      5      SS/5        U R                  [        [        5        U R                  [        [        S S 5         " S! S"5      nU R                  [        [        [        S# U" 5       5      5        S$ nU R                  [        [        [        U[        S%5      5      5        g ! [         a    S m GNf = f)&Nc                 
    X -  $ r   r?   r  s    r$   r   &BuiltinTest.test_map.<locals>.<lambda>  s    qsr(   r1   r   )r1   r   rT   r   )sqrtc                     [        U S5      $ )N      ?)powr  s    r$   rd  "BuiltinTest.test_map.<locals>.sqrt  s    1c{"r(   c                 .   > [        [        TU 5      5      $ r   )r   map)r   rd  s    r$   r   rc    s    tCaL1r(   r  r  rT         @       @g      "@r  c                 
    X-   $ r   r?   r   s     r$   r   rc    s    !#r(   )r1   r   r   )rT   r1   r   )rV   r   r   c                  $    SnU  H  o!U-   nM	     U$ r  r?   )vaccur5   s      r$   plus"BuiltinTest.test_map.<locals>.plus  s    DaxQKr(   )r1   r   r  )r   rT   r   )r  r  rT   )r1   r1   r   )r      rT   rV   )
r   r1   r   rT   r  r  r  r  r  r  c                 ,    U c  U$ Uc  U $ [        X5      $ r   )r    r  s     r$   Max!BuiltinTest.test_map.<locals>.Max  s     yyq9r(   r   r   c                     U $ r   r?   r  s    r$   r   rc    s    Ar(   r   c                       \ rS rSrS rSrg)$BuiltinTest.test_map.<locals>.BadSeqi  c              3      #    [         e7fr   r	  r,   s    r$   rp   -BuiltinTest.test_map.<locals>.BadSeq.__iter__  s       s   	r?   Nrr   r?   r(   r$   r  ry    s    r(   r  c                     U $ r   r?   r  s    r$   r   rc    s    !r(   c                     [         er   rf   r  s    r$   r  %BuiltinTest.test_map.<locals>.badfunc  s    r(   r  )r   r   rj  ry  mathrd  r   r   r   r   r   r   rg   )r#   rq  ru  r  r  rd  s        @r$   test_mapBuiltinTest.test_map  s   ]E!AJ/0	
	#! 	1RGb!W3EFG3Z#s$	
 	%w89	

	 	T9%&	
 	T9i01	
 	T9i;<!	
 	S'"+&'0	
	 	S'!*gaj12F	
 	)S))S+r:	 	 	*dCVX,FG	,c'58.DEg  	##	#s   H3 3IIc                     [        [        R                  S-   5       H?  n[        [        S5      n[        [        S5      nU R                  U[        U5      U5        MA     g )Nr1   zIs this the real life?)ry  r   r  rj  r|   r   r   )r#   r   m1m2s       r$   test_map_pickleBuiltinTest.test_map_pickle  sL    622Q67EX78BX78B""2tBx7 8r(   c                    U R                  [        S5      S5        U R                  [        SSS5      S5        U R                  [        S5      S5        U R                  [        / SQ5      S5        U R                  [        SSS5      S5        U R                  [        SSS5      S5        U R                  [        S	SS5      S5        U R                  [        S
5         [        5         S S S 5        U R	                  [        [        S5        U R                  [
        S5         [        S5        S S S 5         " S S5      nU R	                  [
        [        U" 5       5        S H)  n [        U[        5       5        U R                  U5        M+     U R                  [        S[        S9S5        U R                  [        S[        S9S5        U R                  [        SS[        S9S5        U R                  [        SS S9S 5        U R                  [        SS S9S5        U R                  [        SS S9S5        U R                  [        SS[        S9S5        U R                  [        SS[        S9S5        U R                  [        SS S9S5        [        S5       Vs/ s H  n[        R                  " S5      PM     nn[        S U 5       5      nUR                  nU R                  [        XFS9[        [!        U5      US9S   5        g ! , (       d  f       GN)= f! , (       d  f       GN= f! [         a     GM  f = fs  snf )N1231233r1   r   r   r1   r   r   r1   r   r   r  rl  r  z'max expected at least 1 argument, got 0r   z"max\(\) iterable argument is emptyr?   c                       \ rS rSrS rSrg)$BuiltinTest.test_max.<locals>.BadSeqi   c                     [         er   r	  r  s     r$   r7   0BuiltinTest.test_max.<locals>.BadSeq.__getitem__  r  r(   r?   Nr  r?   r(   r$   r  r     r  r(   r  )zmax(key=int)zmax(default=None)zmax(1, 2, default=None)zmax(default=None, key=int)zmax(1, key=int)zmax(1, 2, keystone=int)zmax(1, 2, key=int, abc=int)zmax(1, 2, key=1)r1   r  r  defaultr  r  rZ   r  c              3   P   #    U  H  o[         R                  " S 5      4v   M     g7fr   Nrandom	randranger   elems     r$   r   'BuiltinTest.test_max.<locals>.<genexpr>$       BTT6++B/0T   $&r3  )r   r    r  r   r   r   r?  r  failr   ry  r  r  r2  r7   r  reversedr#   r  stmtr5   r  r(  r   s          r$   test_maxBuiltinTest.test_max  s   X,Q1q)/0!4/0!4Q3-QQ+S!Q+##5
 E	
 	)S"-##1
 G	

	! 	! 	*c684	D T79% 		$	" 	Ts+Q/U,a0Qs+Q/R.5T40!4UD115R4a8VQC8!<V.2/4Sz:z!  %z:BTBBT)A6r:	<e
 

 
,  $ ;s0   L"L&L/ M
L
L,/
L>=L>c                 x   U R                  [        S5      S5        U R                  [        SSS5      S5        U R                  [        S5      S5        U R                  [        / SQ5      S5        U R                  [        SSS5      S5        U R                  [        SSS5      S5        U R                  [        S	SS5      S	5        U R                  [        S
5         [        5         S S S 5        U R	                  [        [        S5        U R                  [
        S5         [        S5        S S S 5         " S S5      nU R	                  [
        [        U" 5       5        S H)  n [        U[        5       5        U R                  U5        M+     U R                  [        S[        S9S5        U R                  [        S[        S9S5        U R                  [        SS[        S9S5        U R                  [        SS S9S 5        U R                  [        SS S9S5        U R                  [        SS S9S5        U R                  [        SS[        S9S5        U R                  [        SS[        S9S5        U R                  [        SS S9S5        [        S5       Vs/ s H  n[        R                  " S5      PM     nn[        S U 5       5      nUR                  nU R                  [        XFS9[        XFS9S   5        g ! , (       d  f       GN= f! , (       d  f       GN= f! [         a     GM  f = fs  snf )Nr  rR   r1   r   r   r  r  rl  r  z'min expected at least 1 argument, got 0r   z"min\(\) iterable argument is emptyr?   c                       \ rS rSrS rSrg)$BuiltinTest.test_min.<locals>.BadSeqi?  c                     [         er   r	  r  s     r$   r7   0BuiltinTest.test_min.<locals>.BadSeq.__getitem__@  r  r(   r?   Nr  r?   r(   r$   r  r  ?  r  r(   r  )zmin(key=int)zmin(default=None)zmin(1, 2, default=None)zmin(default=None, key=int)zmin(1, key=int)zmin(1, 2, keystone=int)zmin(1, 2, key=int, abc=int)zmin(1, 2, key=1)r  r  r  r  r  rZ   r  c              3   P   #    U  H  o[         R                  " S 5      4v   M     g7fr  r  r  s     r$   r   'BuiltinTest.test_min.<locals>.<genexpr>c  r  r  r   )r   minr  r   r   r   r?  r  r  r   ry  r  r  r2  r7   r  r  s          r$   test_minBuiltinTest.test_min)  s   X,Q1q)/0!4/0!4Q3+QQ+S!Q-##5
 E	
 	)S"-##1
 G	

	! 	! 	*c684	D T79% 		$	" 	Ts+Q/U,a0Qs+Q/R.5T40!4UD115R4a8VQC8!<V.2/4Sz:z!  %z:BTBBT),Q/	1e
 

 
,  $ ;s0   L"L&L% L7
L
L"%
L43L4c                    [        [        S5      5      nU R                  [        U5      S5        U R                  [        U5      S5        U R	                  [
        [        U5        U R	                  [
        [        U5        U R                  [        US5      S5         " S S[        5      n[        U" 5       5      nU R                  [        US5      S5        U R	                  [
        [        U5        S nU" 5       nU R                  [        U5      S5        U R	                  [
        [        U5        U R                  [        US5      S5        g )Nr   r   r1   r   c                        \ rS rSrS rS rSrg)#BuiltinTest.test_next.<locals>.Iterip  c                     U $ r   r?   r,   s    r$   rp   ,BuiltinTest.test_next.<locals>.Iter.__iter__q  r  r(   c                     [         er   )r   r,   s    r$   __next__,BuiltinTest.test_next.<locals>.Iter.__next__s  s    ##r(   r?   N)r:   r;   r<   r=   rp   r  r>   r?   r(   r$   Iterr  p  s    $r(   r  c               3      #    Sv   g 7frz   r?   r?   r(   r$   gen"BuiltinTest.test_next.<locals>.genz  s     Gs   )r  ry  r   r   r   r   r   )r#   r   r  r  s       r$   	test_nextBuiltinTest.test_nexth  s    %(^b1%b1%-r2-r2b"r*	$6 	$ $&\b"r*-r2	 Ub1%-r2b"r*r(   c                     U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        [        S5        g )NrZ   0o144iz-0o144r?   )r   octr   r   r,   s    r$   test_octBuiltinTest.test_oct  s<    S7+TH-)S"-r(   c                 Z   [        [        SSS9nU R                  [        [        5        U   UR	                  S5        UR	                  S5        UR	                  S5        UR	                  S5        UR	                  S5        UR	                  S	5        S S S 5        g ! , (       d  f       g = f)
Nwutf-8encoding1+1
z+The quick brown fox jumps over the lazy dogz.
z
Dear John
,  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX,  YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY)openr   
addCleanupr   rO   r#   fps     r$   write_testfileBuiltinTest.write_testfile  ss    &#0'HHWHHBCHHUOHH]#HHYHHY RRs   A'B
B*c                 n   U R                  5         [        [        SS9nU   U R                  UR	                  S5      S5        U R                  UR	                  5       S5        U R                  UR	                  S5      S5        U R                  UR	                  S5      S5        U R                  UR                  S	5      S
5        U R                  UR                  S5      S5        S S S 5        U R                  [        [        S5        U R                  [        [        S5        g ! , (       d  f       NE= f)Nr  r  r   r  z-The quick brown fox jumps over the lazy dog.
DearrZ   z John
r  r  r5  r  za bs   a b)r  r  r   r   readlinereadr   r   r  s     r$   	test_openBuiltinTest.test_open  s    &7+R[[^W5R[[],\]R[[^V4R[[-y9RWWS\95RWWT]I6  	*dH5*dI6 Rs   CD&&
D4zutf-8 mode is enabledc                    [        [        R                  5      n S H*  nU[        R                  ;   d  M  [        R                  U	 M,     U R                  5         [        R
                  " 5       n[        R                  " 5          [        R                  " S[        5        [        [        S5      nS S S 5        W   U R                  UR                  U5        S S S 5        [        R                  R                  5         [        R                  R                  U5        g ! , (       d  f       Ns= f! , (       d  f       N]= f! [        R                  R                  5         [        R                  R                  U5        f = f)N)LC_ALLLANGLC_CTYPErW  r  )r2  osenvironr  localegetencodingrY  catch_warningssimplefilterEncodingWarningr  r   r   r  clearupdate)r#   old_environr  current_locale_encodingr  s        r$   test_open_default_encoding&BuiltinTest.test_open_default_encoding  s    2::&	+ 6"**$

3 6 !&,&8&8&:#((*%%h@&#& +   .EF  JJJJk* +*  JJJJk*sA   E  AE  ,D1
E  ;D/E  
D,(E  /
D=9E   ?E?c                     [        [        SS9nU   U R                  [        R                  " UR                  5       5      5        S S S 5        g ! , (       d  f       g = f)Nr  r  )r  __file__r  r  get_inheritablefileno)r#   fileobjs     r$   test_open_non_inheritable%BuiltinTest.test_open_non_inheritable  s;    x'2R//0@AB WWs   4A
Ac                    U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S	5      S
5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S
5        U R                  [        [        [        R                  5      5      [        R                  5        U R                  [        [        S5        U R                  [        [        S5      5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S 5      S!5        U R                  [        S"5      S5        g )#Nra   r  r  r  r   r        r   r         Ar        r   r1  r"  r!  r$  r#  r&  r%  r(  r'  r*  r)  r,  r+  r.  r-  r0  r/  r2  )r   ru   r{   r   r  r   r   r,   s    r$   test_ordBuiltinTest.test_ord  s   S2&S2&S2&Vc*Vc*TB'TB'TB'Ws+Ws+S013>>B)S"-S]+X6\*J7\*J7\*J7\*J7\*J7\*J7\*J7\*J7\*J7r(   c           
      2	   U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S	5        U R                  [        S
S5      S5        U R                  [        S
S5      S
5        U R                  [        S
S5      S5        U R                  [        S
S5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS5      S5        S H  nS H  nS H|  n[        U[        5      (       d*  [        U[        5      (       d  [        U[        5      (       a  U R                  [        [        XU5        M`  U R                  [        XU5      S5        M~     M     M     U R                  [        SS5      S5        U R                  [        SS5      S5        U R                  [        SS
S5      S5        U R                  [        [        SSS5        U R                  [        [        5        U R                  [        SSS 9S5        U R                  [        SSS!9S"5        U R                  [        S#SS$S%9S&5        [        [        SS'9nU R                  U" S#S 9S(5        [        [        S#S 9nU R                  U" S5      S(5        [        [        SS)9nU R                  U" SS*5      S5        U R                  U" S*SS+9S5        g ),Nr   r1   r   rV   i   r   r+  r      @r  r   r   r   r  rl  g      @g      0Ag      Ag       rk         )r   rl  )rV         $@)r5  g     @@g      8@r3  rf  y              ?gUUUUUU?y      ?LXz?)exp)baser  r  r     )r  r  mod   )r  r  )r  r   )r  r  )	r   rg  r  r   floatr   r   r   r   )r#   r   r   r  twopowfifth_powermod10s          r$   test_powBuiltinTest.test_pow  s   Qq1%Qq1%Qq1%Qq1%Qq1%QrD)QrI.QrN3RA&RB'RA&RB's2ay"-s2ay"-s2ay"-s2ay"-s2ay"-s2bz51s2bz;7s2bz+<=s3qz2.s3qz3/s3qz2.s3qz3/A%A!!U++!!U++!!U++)))S!B..s1|TB &   	s2s|R0s2s|-FG 	RQ+*c1a3)S) 	QA*!+R0!3R81%A+cq)Q,$q!a(11-q1r(   c                    U R                  5         [        [        SS9n[        R                  n[        R
                  n U[        l        [        5       [        l        U R                  [        5       S5        U R                  [        5       S5        U R                  [        S5      S5        U[        l        [        R                  R                  5         U R                  [        [        5        [        5       [        l        [        R                  " S5      [        l        U R                  [        [        SS5        [        R                  " S	5      [        l        U R                  [        5       S	5        [        R                  " 5       [        l        U R                  [        [        5        [        ?U R                  [         [        S
5        [        ?U R                  [         [        S
5        U[        l        U[        l        UR                  5         g ! U[        l        U[        l        UR                  5         f = f)Nr  r  r   z,The quick brown fox jumps over the lazy dog.ztesting
z	Dear JohnzNULL r   z    'whitespace'prompt)r  r  r   r   stdinr  rK   r   inputcloser   r   ioStringIOr   EOFErrorrg   )r#   r  	savestdinr  s       r$   
test_inputBuiltinTest.test_input  sp   &7+II	ZZ
	CI"CJUWe,UW&TUU;/= $CJIIOOj%0"CJH-CIiB7$67CIUW&89CIh.
lE8<	lE8<!CI#CJHHJ "CI#CJHHJs    F1H (I c                   ^^  " UU4S jS[         R                  5      m[        R                  " [        SS 5         [        R                  " [        SS 5         [        R                  " [        SS 5         SmT" 5       [        l        T" 5       [        l        T" S5      [        l        Sm[        5         S S S 5        S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N(= f! , (       d  f       g = f)	Nc                   $   > \ rS rSrU U4S jrSrg)*BuiltinTest.test_input_gh130163.<locals>.Xi<  c                    > T(       aH  SmT" 5       [         l        T" 5       [         l        T" S5      [         l        [        R
                  " 5         [        R                  R                  X5      $ )NFinput
)	r   r  stderrr  r   
gc_collectr  r  __getattribute__)r#   r   r  r   s     r$   r  ;BuiltinTest.test_input_gh130163.<locals>.X.__getattribute__=  sI    !E!"CJ!"CJ !)CI&&({{33D??r(   r?   N)r:   r;   r<   r=   r  r>   )r  r   s   r$   r  r  <  s    @ @r(   r  r  r  r  Fr  T)	r  r  r   r   r   r  r  r  r	  )r#   r  r   s    @@r$   test_input_gh130163BuiltinTest.test_input_gh130163;  s    		@ 		@ 		@ Xt4Xt4Wd3ECJCJ)CIEG 4 5 5433 54 54s<   C1C 6A C6C >C1
CC  
C.	*C11
C?c                    U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        / 5      S5        U R                  [        0 5      S5        / nUR                  U5        U R                  [        U5      S	5        0 nXS'   U R                  [        U5      S
5        g )Nr`   r   r   rQ   r?   r   r   r   r   r   )r   r   r3   )r#   r   s     r$   	test_reprBuiltinTest.test_reprT  s    b6*a#&b4(b4(b4(	a),!a,/r(   c                 
   U R                  [        S5      S5        U R                  [        [        S5      5      [        5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S	5      S	5        U R                  [        S
5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        SS5      S5        U R                  [        [        SS5      5      [        5        U R                  [        [        SS5      5      [        5        U R                  [        [        SS5      5      [        5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S 5      S5        U R                  [        S5      S5        U R                  [        S!5      S!5        U R                  [        S"5      S"5        U R                  [        [        S5      5      [        5        U R                  [        [        S"S5      5      [        5        U R                  [        [        S"S5      5      [        5        U R                  [        [        S"S5      5      [        5        U R                  [        SSS#9S5        U R                  [        [        5         " S$ S%5      n " S& S'5      nU R                  [        U" 5       5      S(5        U R                  [        [        SS)S*5        U R                  [        [        U" 5       5        U" 5       nS+ Ul        U R                  [        [        U5        U R                  [        [        US5        g ),Nr   r  r  g    eAg@xDr  g      $g    eg@x皙?g?g333333$@g eAgg333333$g eg?g#@g33dAgg#g33dr  r3  r   r1   g      @r   g      @g      ig      r  r  )numberndigitsc                       \ rS rSrS rSrg))BuiltinTest.test_round.<locals>.TestRoundi  c                     g)N   r?   r,   s    r$   	__round__3BuiltinTest.test_round.<locals>.TestRound.__round__  r   r(   r?   N)r:   r;   r<   r=   r'  r>   r?   r(   r$   	TestRoundr$    r   r(   r)  c                       \ rS rSrSrg)+BuiltinTest.test_round.<locals>.TestNoRoundi  r?   Nr  r?   r(   r$   TestNoRoundr+    rh  r(   r,  r&  r   r   c                      U $ r   r?   r  s    r$   r   (BuiltinTest.test_round.<locals>.<lambda>  s    Dr(   )r   roundr   r   r   r   r   r'  )r#   r)  r,  ts       r$   
test_roundBuiltinTest.test_rounda  s   sS)eCj)3/sS)td+|,l;td+td+uu-}-}=uu-sS)sS)td+|,l;td+uu-}-}=sS)sT*{+\:td+te,|,m<tR%0eD"o.6eD!n-u5eD!n-u5 	sQ'sQ'tb)tb) 	q1%q1%rB'eAh-eBm,c2eBl+S1eBl+S1 	dB7?)U+	 		 	 	y{+R0)UAq!4)UKM:M()UA.)UAq1r(   Linuxalpha7y1CzItest will fail;  failure is probably due to a buggy system round functionc                    U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        g )Ng7y1Cg 7y1Cr5  g7y1Cg7y1C)r   r/  r,   s    r$   test_round_largeBuiltinTest.test_round_large  sh    
 	v/td+v/v/v/r(   c           	      (   SS[         R                  " S5      [        R                  " SS5      4 H_  nU R	                  [        US 5      [        U5      5        U R	                  [        [        US 5      5      [        [        U5      5      5        Ma     g )Nr   g
ףp=J@z1234.56i@ rZ   )decimalDecimal	fractionsFractionr   r/  r   r   s     r$   test_bug_27936BuiltinTest.test_bug_27936  so    //),$$VS13A U1d^U1X6T%4.14a>B3r(   c                 `   [        [        SS5        U R                  [        R                  S5        U R	                  [
        [         5        U R	                  [
        [         [        5        U R	                  [
        [         [        S5        SnU R                  [
        U[         [        SS5        g )Nr  r1   r  )setattrr   r   r  r   r   r  r  s     r$   test_setattrBuiltinTest.test_setattr  su    VQ1%)W-)Wc2)Wc6:;y#wQGr(   c                 R   U R                  [        / 5      S5        U R                  [        [        [        SS5      5      5      S5        U R                  [        [	        [        [        SS5      5      5      5      S5        U R                  [        [        S5      5      S5        U R                  [        [	        [        S5      5      5      S5        U R                  [        S/S/S/// 5      / S	Q5        U R                  [        [        S5      S
5      S5        U R                  [        [        S5      S
S9S5        U R                  [        [        S5      S5      S5        U R                  [        [        S5      S5      S5        U R                  [        S [        S5       5       5      S5        U R                  [        S [        S5       5       S5      S5        U R                  [        S [        S5       5       S5      S5        U R                  [        / S5      S5        U R                  [        S [        S5       5       5      S5        U R                  [        S [        S5       5       S
5      S5        U R                  [        S [        S5       5       S5      S 5        U R                  [        S!S/5      S"5        U R                  [        SS!/5      S"5        U R                  [        [        S#/5      5      S$5        U R                  [        [        S#/S#5      5      S%5        U R                  [        [        / S#5      5      S%5        U R                  [        R                  " [        [        S&5      [        S&5      /5      5      5        U R                  [        R                  " [        S'S'/5      5      5        U R                  [        [        5        U R                  [        [        S(5        U R                  [        [        / S)Q5        U R                  [        [        / S)QS*5        U R                  [        [        S+S,/S-5        [        S+5      [        S.5      /nU R                  [        [        U[        S-5      5        U R                  [        [        S/S/S//5        U R                  [        [        SS0/5        U R                  [        [        SS0/S-  SS05        U R                  [        [        / S*5        U R                  [        [        / S-5        U R                  [        [        / [        5       5         " S/ S05      nU R                  [        [        U" 5       5        / n[        S1 [        S5       5       U5        U R                  U/ 5        g )2Nr   r   r     rV   i  r1   r   r1   r   r   r5  i  )startil   (    l    l   (        c              3   0   #    U  H  oS -  S:g  v   M     g7fr   r   Nr?   r   r5   s     r$   r   'BuiltinTest.test_sum.<locals>.<genexpr>  s     ;AUaZ   r  c              3   0   #    U  H  oS -  S:g  v   M     g7frI  r?   rJ  s     r$   r   rK         <)Q!eqj)rL  il       c              3   0   #    U  H  oS -  S:g  v   M     g7frI  r?   rJ  s     r$   r   rK    rN  rL  l    l           Fc              3   *   #    U  H	  oS -  v   M     g7fr   Nr?   rJ  s     r$   r   rK    s     6IqUIr   g     6@c              3   *   #    U  H	  oS -  v   M     g7frQ  r?   rJ  s     r$   r   rK         7Y!eYr   g     @c              3   *   #    U  H	  oS -  v   M     g7frQ  r?   rJ  s     r$   r   rK    rS  r   g     B@g     @rf  g      ?g       z0.0z-0.0infgr   r  r`   r     cr(      bc                       \ rS rSrS rSrg)$BuiltinTest.test_sum.<locals>.BadSeqi  c                     [         er   r	  r  s     r$   r7   0BuiltinTest.test_sum.<locals>.BadSeq.__getitem__  r  r(   r?   Nr  r?   r(   r$   r  rY    r  r(   r  c              3   &   #    U  H  o/v   M	     g 7fr   r?   r   s     r$   r   rK    s     $)QS)s   )r   sumr   ry  r  r   r  r   r   r  isinfr   r   r   	bytearrayr   )r#   r\  r  emptys       r$   test_sumBuiltinTest.test_sum  s/   R!$T%!*-.3T$uQqz"234b9WR[)3/T'"+./5qcA3_b19=U2Y-t4U2Yd3T:U2Y0(;U2Y0(;;r;;Q?<%)<gF 	"<%)<gF 	"c"ene,6E"I66=7U2Y7>G7U2Y7A7Kc1X,aX,c4&k*E2c4&$/0&9c"dm,f5

3eeEl'C#DEF

3u~#678)S))S"-)S/:)S/2>)S4,<D/9T?3)S&)C.A)SA3aS/:)SAa5'2)SAa5'!)aU;)S"b1)S"c2)S"ik:	! 	! 	*c684$%)$e,#r(   z<sum accuracy not guaranteed on machines with double roundingc                 |    U R                  [        S/S-  5      S5        U R                  [        / SQ5      S5        g )Nr   rV   r  )r  g\nTr  g\nrl  )r   r]  r,   s    r$   test_sum_accuracyBuiltinTest.test_sum_accuracy
  s4    
 	cURZ#.893?r(   c                     U R                  [        S5      [        S5      5        U R                  [        S5      [        S5      5        g )Nr`   r8  r?   )r   r   rn  r,   s    r$   	test_typeBuiltinTest.test_type  s2    bDK0DHd2h/r(   c                      [        5       $ r   )varsr?   r(   r$   get_vars_f0BuiltinTest.get_vars_f0  s	    vr(   c                  F    [         R                  5         Sn Sn[        5       $ )Nr1   r   )r~   rk  rj  r  s     r$   get_vars_f2BuiltinTest.get_vars_f2  s    !vr(   c                   &    \ rS rSrS r\" \S9rSrg)BuiltinTest.C_get_varsi#  c                 
    SS0$ )Nr   r   r?   r,   s    r$   getDictBuiltinTest.C_get_vars.getDict$  s    7Nr(   )fgetr?   N)r:   r;   r<   r=   rs  propertyr  r>   r?   r(   r$   
C_get_varsrq  #  s    	)r(   rw  c                 2   U R                  [        [        5       5      [        [        5       5      5        U R                  [        [        [        5      5      [        [        [        5      5      5        U R                  U R                  5       0 5        U R                  U R                  5       SSS.5        U R                  [        [        SS5        U R                  [        [        S5        U R                  [        U R                  5       5      SS05        g )Nr1   r   r  r   r   )
r   setrj  r  r   rk  rn  r   r   rw  r,   s    r$   	test_varsBuiltinTest.test_vars(  s    TVc#%j1T#YSX7))+R0))+11-=>)T2r2)T2.doo/03q':r(   c                     / nU R                  U5         U H  nUR                  U5        M     S S S 5        U$ ! , (       d  f       U$ = fr   )r   r3   )r#   iterableerroritemsrI  s        r$   
iter_errorBuiltinTest.iter_error1  sG    u% T" ! &  &% s	   9
Ac           
         SnSn/ SQnU R                  [        [        X5      5      U5        / SQnU R                  [        [        X5      5      U5        SnU R                  [        [        X5      5      U5         " S S5      nU R                  [        [        X" 5       5      5      U5        U R                  [        [        5       5      / 5        U R                  [        [        / 6 5      / 5        U R                  [        [        S 5         " S S5      nU R                  [        [        X" 5       5        U R                  [
        [        U[        5       5         " S	 S
5      nU R                  [        [        U" 5       [        S5      5      5      [        [        [        S5      5      5      5         " S S5      nU R                  [        [        [        U" 5       U" 5       5      5        g )NrF  r   r  r   )r1   r   )r   r  )r   r   r   r  r   r  c                       \ rS rSrS rSrg)BuiltinTest.test_zip.<locals>.IiB  c                 0    US:  d  US:  a  [         eUS-   $ )Nr   r   r   r2   r#   r5   s     r$   r7   +BuiltinTest.test_zip.<locals>.I.__getitem__C  s    q5AE#31ur(   r?   Nr  r?   r(   r$   Ir  B  s    r(   r  c                       \ rS rSrSrg)BuiltinTest.test_zip.<locals>.GiJ  r?   Nr  r?   r(   r$   Gr  J  rh  r(   r  c                       \ rS rSrS rSrg)4BuiltinTest.test_zip.<locals>.SequenceWithoutALengthiR  c                     US:X  a  [         eU$ Nr  r  r  s     r$   r7   @BuiltinTest.test_zip.<locals>.SequenceWithoutALength.__getitem__S      6$$Hr(   r?   Nr  r?   r(   r$   SequenceWithoutALengthr  R      r(   r  r  r  c                       \ rS rSrS rSrg)$BuiltinTest.test_zip.<locals>.BadSeqi]  c                     US:X  a  [         eU$ r  r	  r  s     r$   r7   0BuiltinTest.test_zip.<locals>.BadSeq.__getitem__^  r  r(   r?   Nr  r?   r(   r$   r  r  ]  r  r(   r  )
r   r   zipr   r   rg   rm   ry  	enumerater   )r#   r   r  r0  r  r  r  r  s           r$   test_zipBuiltinTest.test_zip9  sn   $c!i!,c!i!,c!i!,	 	 	c!QSk*A.ceb)c2h,)S$/	 	)S!QS1,Q0AB
	 	 	+-uU|<=58$%	

	 	 	*dC&(,CDr(   c                     SnSn/ SQn[        [        R                  S-   5       H   n[        X5      nU R	                  XSU5        M"     g )NrF  r  r  r1   ry  r   r  r  r   r#   r   r  r0  r   z1s         r$   test_zip_pickleBuiltinTest.test_zip_picklee  sD    $622Q67EQB""2%0 8r(   c                     SnSn/ SQn[        [        R                  S-   5       H  n[        XSS9nU R	                  XSU5        M!     g )NrF  r  r  r1   Tstrictr  r  s         r$   test_zip_pickle_strict"BuiltinTest.test_zip_pickle_strictm  sG    $622Q67EQ$'B""2%0 8r(   c                 Z   SnSn/ SQn[        [        R                  S-   5       H  n[        XSS9n[        R                  " [        R
                  " XT5      5      nU R                  U R                  U[        5      U5        U R                  U R                  U[        5      U5        M     g )NrF  r  r  r1   Tr  )	ry  r   r  r  r   r   r   r  r   )r#   r   r  r0  r   r  z2s          r$   test_zip_pickle_strict_fail'BuiltinTest.test_zip_pickle_strict_failu  s    $622Q67EQ$'Bfll256BT__R<a@T__R<a@	 8r(   c                    ^ [        5       m " U4S jS5      nU R                  [         5       n[        U" 5       5        S S S 5        U R                  WR                  T5        g ! , (       d  f       N+= f)Nc                   "   > \ rS rSrU 4S jrSrg)6BuiltinTest.test_zip_bad_iterable.<locals>.BadIterablei  c                    > Ter   r?   )r#   	exceptions    r$   rp   ?BuiltinTest.test_zip_bad_iterable.<locals>.BadIterable.__iter__  s    r(   r?   Nrr   )r  s   r$   BadIterabler    s       r(   r  )r   r   r  r  r  )r#   r  cmr  s      @r$   test_zip_bad_iterable!BuiltinTest.test_zip_bad_iterable  sR    K		  	  y)R * 	bllI. *)s   A$$
A2c                 &   U R                  [        [        SSSS95      S5        U R                  [        [        [        SSSS95        U R                  [        [        [        SSSS95        U R                  [        [        [        SSSSS95        g )NrF  r  Tr  ))r1   r   )r   r  )r   r  r  r  )r   rY  r  r   r   r,   s    r$   test_zip_strictBuiltinTest.test_zip_strict  s    s9eDAB7	9*elE$?	A*efeD9	;*effeDA	Cr(   c                    [        [        S5      5      nS/n[        [        S5      5      nU R                  [        [        [        XUSS95        U R                  [        U5      S5        U R                  [        U5      S5        g )Nr  r   Tr  r   r1   )r  ry  r   r   r   r  r   r   )r#   r   r   r  s       r$   test_zip_strict_iterators%BuiltinTest.test_zip_strict_iterators  si    qNCqN*dqQt4	7a!$a!$r(   c           	        ^
  " S S[         5      m
 " U
4S jS5      nU R                  [        SU" S5      SS9T
5      nU R                  US	/5        U R                  [        SU" S
5      SSS9[        5      nU R                  US/5        U R                  [        SU" S
5      SSS9T
5      nU R                  USS/5        U R                  [        SU" S5      SS9[        5      nU R                  USS/5        U R                  [        U" S5      SSS9T
5      nU R                  US/5        U R                  [        U" S
5      SSS9[        5      nU R                  US/5        U R                  [        U" S
5      SSS9T
5      nU R                  USS/5        U R                  [        U" S5      SSS9[        5      n	U R                  U	SS/5        g )Nc                       \ rS rSrSrg)9BuiltinTest.test_zip_strict_error_handling.<locals>.Errori  r?   Nr  r?   r(   r$   Errorr    rh  r(   r  c                   .   > \ rS rSrS rS rU 4S jrSrg)8BuiltinTest.test_zip_strict_error_handling.<locals>.Iteri  c                     Xl         g r   sizer#   r  s     r$   r%   ABuiltinTest.test_zip_strict_error_handling.<locals>.Iter.__init__       	r(   c                     U $ r   r?   r,   s    r$   rp   ABuiltinTest.test_zip_strict_error_handling.<locals>.Iter.__iter__  r  r(   c                 j   > U =R                   S-  sl         U R                   S:  a  TeU R                   $ Nr1   r   r  )r#   r  s    r$   r  ABuiltinTest.test_zip_strict_error_handling.<locals>.Iter.__next__  s*    		Q	99q=Kyy r(   r  Nr:   r;   r<   r=   r%   rp   r  r>   )r  s   r$   r  r    s    !! !r(   r  ABr1   Tr  r  r   r   r  r  r1   r  ABCr  r   r  r   r  r   r  r1   r   r  r1   r  r   r  r   r  r1   r  )ro  r  r  r   r   )r#   r  l1l2l3l4l5l6l7l8r  s             @r$   test_zip_strict_error_handling*BuiltinTest.test_zip_strict_error_handling  s   	I 			! 		! __StAwt<eDhZ(__StAwDA:Nm_-__StAwdCUKm];<__StAwt<jIh12__Sa$t<eDhZ(__Sa#d;ZHhZ(__Sa%=uEh12__Sa$t<jIh12r(   c           	          " S S5      nU R                  [        SU" S5      SS9[        5      nU R                  US/5        U R                  [        SU" S5      S	SS9[        5      nU R                  US
/5        U R                  [        SU" S5      SSS9[        5      nU R                  US
S/5        U R                  [        SU" S5      SS9[        5      nU R                  USS/5        U R                  [        U" S5      SSS9[        5      nU R                  US/5        U R                  [        U" S5      S	SS9[        5      nU R                  US/5        U R                  [        U" S5      SSS9[        5      nU R                  USS/5        U R                  [        U" S5      SSS9[        5      n	U R                  U	SS/5        g )Nc                   &    \ rS rSrS rS rS rSrg)FBuiltinTest.test_zip_strict_error_handling_stopiteration.<locals>.Iteri  c                     Xl         g r   r  r  s     r$   r%   OBuiltinTest.test_zip_strict_error_handling_stopiteration.<locals>.Iter.__init__  r  r(   c                     U $ r   r?   r,   s    r$   rp   OBuiltinTest.test_zip_strict_error_handling_stopiteration.<locals>.Iter.__iter__  r  r(   c                 p    U =R                   S-  sl         U R                   S:  a  [        eU R                   $ r  )r  r   r,   s    r$   r  OBuiltinTest.test_zip_strict_error_handling_stopiteration.<locals>.Iter.__next__  s*    		Q	99q=''yy r(   r  Nr  r?   r(   r$   r  r    s    !!r(   r  r  r1   Tr  r  r   r  r  r  r  r   r  r  r  r  r  r  r  )r  r  r   r   )
r#   r  r  r  r  r  r  r  r  r  s
             r$   ,test_zip_strict_error_handling_stopiteration8BuiltinTest.test_zip_strict_error_handling_stopiteration  s   		! 		! __StAwt<jIhZ(__StAwDA:Nm_-__StAwdCZPm];<__StAwt<jIh12__Sa$t<jIhZ(__Sa#d;ZHhZ(__Sa%=zJh12__Sa$t<jIh12r(   c                     [        / /5      n[        R                  " 5         U R                  [        R                  " [        U5      5      5        g r   )r  r  r  r   
is_trackedr   )r#   r   s     r$   test_zip_result_gcBuiltinTest.test_zip_result_gc  s3    
 "Y


 	d2h/0r(   c                 L  ^  T R                  [        SS5      S5        S nU 4S jnU" U" 5       6   U 4S jnU" S5        U" S5        U" S	5        U" S
5        U" S5        U" S5        U" [        5        U" S 5         " S S5      nT R                  [        [        U" 5       S5        T R                  [        [        [        5       S5        T R                  [        [        [        5       [        5       5        [        5       R                  S5      nT R                  UR                  S5      5        T R                  [        [        5       R
                  S5        T R                  [        [        5       R
                  [        5       5        T R                  [        [        5       R
                  S 5         " S S5      nT R                  [        U" 5       5      S5        T R                  [        U" 5       S5      S5        T R                  [        U" 5       S5      S5         " S S5      n " S S[        5      n[        Xx4 H  n	U	" 5       n
T R                  [        U
5      [        U
5      5        T R                  [        U
S5      [        U
5      5        T R                  [        S[        R                  " U	R                  5      -  5         [        U
S5        S S S 5        M      " S S[        5      nT R                  [        SU" S5      5      S5        g ! , (       d  f       M  = f)Nr   r`   r  c                       " S S[         5      n  " S SU 5      n " S S[         5      n " S SU5      n " S	 S
U5      nXX44$ )Nc                        \ rS rSrS rS rSrg)7BuiltinTest.test_format.<locals>.classes_new.<locals>.Ai  c                     Xl         g r   r  r   s     r$   r%   @BuiltinTest.test_format.<locals>.classes_new.<locals>.A.__init__      Fr(   c                 2    [        U R                  5      U-   $ r   rH   r   r#   format_specs     r$   
__format__BBuiltinTest.test_format.<locals>.classes_new.<locals>.A.__format__      tvv;44r(   r  Nr:   r;   r<   r=   r%   r  r>   r?   r(   r$   r  r        5r(   r  c                       \ rS rSrSrg)BBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromAi  r?   Nr  r?   r(   r$   DerivedFromAr    s    r(   r  c                       \ rS rSrSrg)<BuiltinTest.test_format.<locals>.classes_new.<locals>.Simplei  r?   Nr  r?   r(   r$   Simpler
    s    $r(   r  c                        \ rS rSrS rS rSrg)GBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromSimplei  c                     Xl         g r   r  r   s     r$   r%   PBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromSimple.__init__  r  r(   c                 2    [        U R                  5      U-   $ r   r  r  s     r$   r  RBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromSimple.__format__  r  r(   r  Nr  r?   r(   r$   DerivedFromSimpler    r  r(   r  c                       \ rS rSrSrg)HBuiltinTest.test_format.<locals>.classes_new.<locals>.DerivedFromSimple2i  r?   Nr  r?   r(   r$   DerivedFromSimple2r    s    r(   r  )r   )r  r  r  r  r  s        r$   classes_new,BuiltinTest.test_format.<locals>.classes_new  sG    5F 5
q  '&5F 5
 >%6=$5IIr(   c                   > TR                  [        U " S5      S5      S5        TR                  [        U" S5      S5      S5        TR                  [        U" S5      S5      S5        TR                  [        U" S	5      S
5      S5        g )Nr   spec3specr   4specr  r  5abcrV   abcdef10abcdef)r   format)r  r  r  r  r#   s       r$   
class_test+BuiltinTest.test_format.<locals>.class_test  sv    VAaD&17;VLOV<gFV$5a$8%@&IV$6r$:HE')r(   c                    > TR                  [        U S5      [        U 5      5        TR                  [        U 5      [        U 5      5        g Nr`   )r   r  rH   )r  r#   s    r$   empty_format_spec2BuiltinTest.test_format.<locals>.empty_format_spec  s8     VE2.E
;VE]CJ7r(   l   .@r  g]]^Ug]]^g;q7r*g;q7rc                       \ rS rSrS rSrg)0BuiltinTest.test_format.<locals>.BadFormatResulti  c                     g)Nr  r?   r  s     r$   r  ;BuiltinTest.test_format.<locals>.BadFormatResult.__format__  rG  r(   r?   Nr:   r;   r<   r=   r  r>   r?   r(   r$   BadFormatResultr'    rI  r(   r+  r   z<object object atc                       \ rS rSrS rSrg)"BuiltinTest.test_format.<locals>.Ai3  c                     [        SU5      $ r#  )r  )r#   fmt_strs     r$   r  -BuiltinTest.test_format.<locals>.A.__format__4  s    b'**r(   r?   Nr*  r?   r(   r$   r  r-  3  s    +r(   r  r   c                       \ rS rSrSrg)"BuiltinTest.test_format.<locals>.Bi;  r?   Nr  r?   r(   r$   r  r2  ;  rh  r(   r  c                       \ rS rSrSrg)"BuiltinTest.test_format.<locals>.Ci>  r?   Nr  r?   r(   r$   rM  r4  >  rh  r(   rM  z\b%s\bc                       \ rS rSrSrg)/BuiltinTest.test_format.<locals>.DerivedFromStriK  r?   Nr  r?   r(   r$   DerivedFromStrr6  K  r]  r(   r7  r   rU   z
         0)r   r  r   r   r   r  r   
startswithrH   r  reescaper:   )r#   r  r   r$  r+  r   r  r  rM  clsobjr7  s   `           r$   test_formatBuiltinTest.test_format  si    	2,	J$	) 	KM"	8 	&!#*%+&+&,'&!$	 	 	)V_->C 	)VVXq9)VVXvx@ H#%89: 	)VX%8%8!<)VX%8%8&(C)VX%8%8$?
	+ 	+ 	b)R"-S)2.	 		 	 A>C%CVC[#c(3VC_c#h7''	(1BIIcll4K(KMsC M M	 " 	(S'>$#78,GM Ms   	L
L#	c                    U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        S5      S5        U R                  [        SS-  5      S	5        U R                  [        SS-  S-
  5      S
5        U R                  [        SS-  * 5      S5        U R                  [        SS-  S-
  * 5      S5        g )Nr   0b0r1   0b1r3  z-0b1r   r  D0b100000000000000000000000000000000000000000000000000000000000000000C0b11111111111111111111111111111111111111111111111111111111111111111zE-0b100000000000000000000000000000000000000000000000000000000000000000zD-0b11111111111111111111111111111111111111111111111111111111111111111)r   binr,   s    r$   test_binBuiltinTest.test_binN  s    Q'Q'R&)QU%56QU1W7q"uX(9:q"uQwZ*:;r(   c                     [        S5      nU R                  [        UR                  SS5        U R                  [        UR                  SS5        g )Ns   abc   1r1   s   1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111)r_  r   r   	translater   r   s     r$   test_bytearray_translate$BuiltinTest.test_bytearray_translateW  s<    f*akk4;)Q[[(A>r(   c                 z    [        5       n[        [        S5      nU R                  [        UR
                  U5        g )Nr  )r_  rj  r   r   r   extend)r#   arraybad_iters      r$   test_bytearray_extend_error'BuiltinTest.test_bytearray_extend_error\  s*    sC=*ellH=r(   c                 t   ^ [        S5      mU4S jnU R                  [        TR                  U" 5       5        g )N   ,c               3   >   >#    T R                  5         Sv   Sv   g 7fNr     B)r  )rN  s   r$   iteratorKBuiltinTest.test_bytearray_join_with_misbehaving_iterator.<locals>.iteratord  s     KKMJJs   )r_  r   BufferErrorjoin)r#   rW  rN  s     @r$   -test_bytearray_join_with_misbehaving_iterator9BuiltinTest.test_bytearray_join_with_misbehaving_iteratora  s+    $	 	+uzz8:>r(   c                 ~    [        S5      nS nU R                  [        S5      UR                  U" 5       5      5        g )NrS  c               3      #    Sv   Sv   g 7frU  r?   r?   r(   r$   rW  FBuiltinTest.test_bytearray_join_with_custom_iterator.<locals>.iteratorm  s     JJs   
s   A,B)r_  r   rZ  )r#   rN  rW  s      r$   (test_bytearray_join_with_custom_iterator4BuiltinTest.test_bytearray_join_with_custom_iteratorj  s2    $	 	6*EJJxz,BCr(   c                     S [         [        4 HS  n[        U5      nU R                  U" 5       U5        U R	                  [
        USS5        U R	                  [
        USSS9  MU     g )Nr1   r   r  )Ellipsisr  r   r  r   r   )r#   consttps      r$   test_construct_singletons%BuiltinTest.test_construct_singletonsr  sW    8^3EeBMM"$&iQ2iqA6	 4r(   c                 \   U R                  [        [        [        5        U R                  [        5         U R	                  [        5        S S S 5        U R                  [        5         U R                  [        (       + 5        S S S 5        g ! , (       d  f       NG= f! , (       d  f       g = fr   )r   DeprecationWarningr  r  r   r  r,   s    r$   test_warning_notimplemented'BuiltinTest.test_warning_notimplementedy  so     	+T>B01OON+ 201/0 21 2111s   B(B
B
B+c                    [         [        4 GH  nU R                  U5         U R                  [	        U5      UR
                  5        U R                  [	        U5      R
                  [        5        U R                  [        5         SUl        S S S 5        U R                  [        5         UR                    S S S 5        U R                  [        5         S[	        U5      l        S S S 5        U R                  [        5         [	        U5      R                    S S S 5        S S S 5        GM     g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nq= f! , (       d  f       NO= f! , (       d  f       GMv  = frz   )
r  rc  rV  r  r   r  r   r  propr   )r#   	singletons     r$   test_singleton_attribute_access+BuiltinTest.test_singleton_attribute_access  s    ((3Ii(d9oy/B/BCd9o77> &&~6%&IN 7&&~6NN 7 &&y1+,DO( 2&&~6O(( 7 )( 4 7666 2166 )(sl   A$E3D/E3+E 8E3E&E3E"E3/
D=9E3 
E
E3
EE3"
E0,E33
F	r?   N)wr:   r;   r<   r=   r   r   r   r   r   r   r   r  r6  r<  rc  rt  unittestskipIfr   is_emscriptenis_wasir  r  r  r  r  r  r  r  r  r  rT  r\  r_  rb  rr  r  r  r  r  r  r  r  r  r  requires_resourcer  r  r  r  r  r  r   r+  r5  r_  r  r  r  r  r  r  r  r  r   rh  	utf8_moder  requires_subprocessr  r  r  r  r  r  r1  platformsystemr8  machinelinux_alphar/  system_round_bugr7  r>  rB  ra  r   HAVE_DOUBLE_ROUNDINGr   rd  rg  staticmethodrk  rn  r   rw  rz  r  r  r  r  r  r  r  r  r  r  r  r=  rE  rJ  rP  r[  r`  rf  rj  ro  r>   r?   r(   r$   r~   r~      s]   ,"I$..88!OF,
 &D526/:bD* __0!82	82t#2LE 10@S8j:
-$<.P
CDJ70 =1@M&	K/B?	$[ |?28 u% &	F9&0*.
-61$1" 9D:Fx8=<~=1~+6.

 7 __SYY((*AB+ C+*   "C #C
86<2|!F20H2b ??$//8 :##%009 V}.__[5%534040CH4$l __)WY@ Y @0    *V *
;*EX11A
/C%3B3< 	1 	1cHJ<?
>
?D71)r(   r~   c                      \ rS rSrS rS rS rS rS rS r	\
R                  " \R                  R                  S5      S	 5       r\
R                  " \R                  R                  S5      S
 5       r\
R                  " \R                  R                  S5      S 5       rS r\
R                  " \R                  R                  S5      S 5       rS rS rSrg)TestBreakpointi  c                 F   [        5       U l        U R                  U R                  R                  5        U R                  R	                  [        5       5      U l        U R                  S	 U R                  R	                  [        [        S[        R                  5      5        g )NPYTHONBREAKPOINTbreakpointhook)
r   	resourcesr  r
  enter_contextr   envr   r   __breakpointhook__r,   s    r$   setUpTestBreakpoint.setUp  sp     #,,->>//0C0EFHH'($$c+S-C-CD	Fr(   c                     [        S5       n[        5         S S S 5        WR                  5         g ! , (       d  f       N= fNpdb.set_trace)r   
breakpointassert_called_oncer#   mocks     r$   test_breakpointTestBreakpoint.test_breakpoint  s+    ?#tL $! $#s   0
>c                 b    [        5       nU[        l        [        5         UR	                  5         g r   r   r   r  r  assert_called_once_withr#   my_breakpointhooks     r$   'test_breakpoint_with_breakpointhook_set6TestBreakpoint.test_breakpoint_with_breakpointhook_set  s#    %K.113r(   c                 2   [        5       nU[        l        [        5         UR	                  5         [        R
                  [        l        [        S5       n[        5         UR	                  5         S S S 5        UR	                  5         g ! , (       d  f       N= fr  )r   r   r  r  r  r  r   )r#   r  r  s      r$   )test_breakpoint_with_breakpointhook_reset8TestBreakpoint.test_breakpoint_with_breakpointhook_reset  sh    %K.113 33?#tL((* $ 	113 $#s   B
Bc                 n    [        5       nU[        l        [        SSSSSS9  UR	                  SSSSSS9  g )Nr1   r   r   r   r  fourfiver  r  s     r$   &test_breakpoint_with_args_and_keywords5TestBreakpoint.test_breakpoint_with_args_and_keywords  s;    %K.1a+11!Q1Jr(   c           
      Z    S nU[         l        U R                  [        [        SSSSSS9  g )Nc                      g r   r?   r?   r(   r$   r  MTestBreakpoint.test_breakpoint_with_passthru_error.<locals>.my_breakpointhook  r  r(   r1   r   r   r   r  r  )r   r  r   r   r  r  s     r$   #test_breakpoint_with_passthru_error2TestBreakpoint.test_breakpoint_with_passthru_error  s,    	.)ZAqqqIr(   z-E was givenc                     SU R                   S'   [        S5       n[        S5        UR                  S5        S S S 5        g ! , (       d  f       g = f)Nr   r  zbuiltins.int7r  r   r  r  r  s     r$   test_envar_good_path_builtin+TestBreakpoint.test_envar_good_path_builtin  s<    ',#$>"dsO((- #""s   A
Ac                     SU R                   S'   [        S5       n[        5         UR                  5         S S S 5        g ! , (       d  f       g = fNzsys.exitr  r  r  s     r$   test_envar_good_path_other)TestBreakpoint.test_envar_good_path_other  s8    '1#$:$L((* 	   ?
Ac                     SU R                   S'   [        S5       n[        5         UR                  5         S S S 5        g ! , (       d  f       g = f)NrQ   r  r  )r  r   r  assert_not_calledr  s     r$   test_envar_good_path_noop_0*TestBreakpoint.test_envar_good_path_noop_0  s8    '*#$?#tL""$ $##r  c                     SU R                   S'   [        S5       n[        5         UR                  5         S S S 5        g ! , (       d  f       g = f)Nr`   r  r  r  r  s     r$   !test_envar_good_path_empty_string0TestBreakpoint.test_envar_good_path_empty_string  s8    ')#$?#tL((* $##r  c                    S H  nU R                  US9   XR                  S'   U R                  R                  [	        S5      5      nU R                  R                  [        SS95      n[        5         U R                  [        UR                  5      SU S35        U R                  UR                  [        5        UR                  5         S S S 5        M     g ! , (       d  f       M  = f)	N).z..z.foozfoo.z.intzint.z.foo.barz	..foo.barz/./nosuchbuiltinznosuchmodule.nosuchcallable)envarr  r  T)quietz*Ignoring unimportable $PYTHONBREAKPOINT: "r   )rV  r  r  r  r   r   r  r   rH   messagecategoryRuntimeWarningr  )r#   r  r  r  s       r$   test_envar_unimportable&TestBreakpoint.test_envar_unimportable  s    E E*/4+,~~33E/4JKNN00d1KL  		N@qIK   ^<&&( +* +*s   B8C
C)	c                     SU R                   S'   [        S5       n[        [        l        [        5         UR                  5         S S S 5        g ! , (       d  f       g = fr  )r  r   r   r   r  r  r  r  s     r$   #test_envar_ignored_when_hook_is_set2TestBreakpoint.test_envar_ignored_when_hook_is_set  s@    '1#$:$!$CL""$ s   *A
Ac                     [         ?U R                  [        5         [	        5         S S S 5        g ! , (       d  f       g = fr   )r   r  r   rg   r  r,   s    r$   $test_runtime_error_when_hook_is_lost3TestBreakpoint.test_runtime_error_when_hook_is_lost	  s'    |,L -,,s   0
>)r  r  N)r:   r;   r<   r=   r  r  r  r  r  r  rq  rr  r   rh  ignore_environmentr  r  r  r  r  r  r  r>   r?   r(   r$   r  r    s    F"
4
4KJ __SYY11>B. C. __SYY11>B+ C+ __SYY11>B% C%+ __SYY11>B) C)$%r(   r  z,the pty and signal modules must be availablec                       \ rS rSr\S 5       rS rS rSSSSS.S	 jjr\	R                  S
 5       rS rS rS rS rS rS rS rSrg)PtyTestsi	  c                     g r   r?   )signumframes     r$   handle_sighupPtyTests.handle_sighup	  s    
 	r(   c                 "   [         R                   " [         R                  U R                  5      n U R                  X5      [         R                   " [         R                  U5        $ ! [         R                   " [         R                  U5        f = fr   )signalSIGHUPr  
_run_child)r#   childterminal_input
old_sighups       r$   	run_childPtyTests.run_child	  sR    ]]6==$2D2DE
	5??59MM&--4FMM&--4s   A' ''Bc                    [         R                  " 5       u  p4 [        R                  " 5       u  pVUS:X  aJ   [         R                  " U5        [        US5       nU" U5        S S S 5        [         R                  " S5        [         R                  " U5        [         R                  " Xb5        [        USS9 n	/ n
 U	R                  5       R                  5       nUS:X  a  OU
R!                  U5        M8  S S S 5        [#        W
5      S:w  a  [%        5       n  [         R&                  " US5      nU(       d  OUR)                  U5        M3  [         R                  " U5        UR+                  S	S
5      nU R-                  S[#        U
5      U4-  5        [         R                  " U5        [.        R0                  " USS9  U
$ ! [        [
        4 aR  n[         R                  " U5        [         R                  " U5        U R                  SR                  U5      5        e S nAff = f! , (       d  f       GN= f!   [        R                  " 5          GN= f! [         R                  " S5        f = f! , (       d  f       GN= f! [         a     GMC  f = f)Nzpty.fork() raised {}r   r  r  r  r`   r   i  r   rW  z9got %d lines in pipe but expected 2, child output was:
%s)exitcode)r  pipeptyforkOSErrorr  r
  skipTestr  r  	traceback	print_exc_exitrO   r  r  r3   r+   r_  r  rM  decoder  r   wait_process)r#   r  r  rr  pidfdr  wpiperpipelinesrN   child_outputchunks                 r$   r  PtyTests._run_child	  s   wwy	hhjGC !8!S\U%L "  	
$ !g&%E~~'--/2:T"  ' u:? %;LGGB-E ##E*  HHRL'..wALIIRU\23 4
 	S1-q ( 	HHQKHHQKMM077:;		 "\&##%  '&"  sq   F; "H2 	H "H2 6<I*I< ;HAHH 
H/*H2 -I /H2 2I	I I'*
I9<
J
JNsurrogateescapereplace)r]  stdin_errorsstdout_errorsc                t  ^^^^ [         R                  R                  5       (       a#  [         R                  R                  5       (       d  U R	                  S5        UUUU4S jnU R                  5          U R                  XrS-   5      nS S S 5        U R                  WS   SS15        US   S:w  a  U R	                  S5        [        US   5      n	UcC  T(       a  UR                  TS	5      nO)UR                  [         R                  R                  5      nU R                  X5        g ! , (       d  f       N= f)
Nzstdin and stdout must be ttysc                 Z  > T(       av  [         R                  " [        R                  R	                  5       TTS9[        l        [         R                  " [        R
                  R	                  5       TTS9[        l        [        S[        R                  R                  5       =(       a    [        R
                  R                  5       U S9   [        [        [        T5      5      U S9  g ! [         a7  n[        [        UR                  R                   SU< 35      U S9   S nAg S nAff = f)N)r  errorsztty =filez: )r  TextIOWrapperr   r  detachr  printisattyr   r	  BaseExceptionr  r:   )r  r  r  r  stdio_encodingr  s     r$   r  'PtyTests.check_input_tty.<locals>.child_	  s    ,,SYY-=-=-?6D4@B	  --cjj.?.?.A7E5BD
 '399++-E#**2C2C2EERKeE&M*7  Keq{{334Bqe<=EJKs   C) )
D*3-D%%D*s   
r   z
tty = Trueztty = Falsez%standard IO in should have been a ttyr1   r  )r   r  r  r  r  detach_readliner  r  rG  r  r  r   )
r#   r  r  r  r]  r  r  r  r  input_results
    ` ` ``   r$   check_input_ttyPtyTests.check_input_ttyY	  s     yy!!):):)<)<MM9:	K 	K !!#NN57*BCE $ 	eAh} =>8|#MMABE!H~)00ARS)001C1CD0 $#s   5D))
D7c              #     #    S[         R                  ;   a  [        S5      nSnUR                  R	                  UR
                  U5      R                  nS UR                  R	                  UR
                  U5      l         S v   X1R                  R	                  UR
                  U5      l        g S v   g ! X1R                  R	                  UR
                  U5      l        f = f7f)Nr  ctypesPyOS_ReadlineFunctionPointer)r   modulesr   c_void_pin_dll	pythonapir  )r#   r  fp_api
prev_values       r$   r  PtyTests.detach_readline{	  s      $h'A3F**1;;?EEJ;?AJJakk628J?I

!!!++v6< @J

!!!++v6<s   A=C# B4 0C#4,C  C#c                 (    U R                  SS5        g )Nr     quuxr  r,   s    r$   test_input_ttyPtyTests.test_input_tty	  s    Xw/r(   c                 *    U R                  SSS5        g )N   promptés   quuxér  r  r,   s    r$   test_input_tty_non_ascii!PtyTests.test_input_tty_non_ascii	  s    Z'Br(   c                 *    U R                  SSS5        g )Nr     quuxr   r  r,   s    r$   'test_input_tty_non_ascii_unicode_errors0PtyTests.test_input_tty_non_ascii_unicode_errors	  s    Zg>r(   c                 &    U R                  SSSS9  g )Nzprompt r(   z?ValueError: input: prompt string cannot contain null characters)r]  r  r,   s    r$   test_input_tty_null_in_prompt&PtyTests.test_input_tty_null_in_prompt	  s    Z+ 	 	,r(   c                 *    U R                  SSSSSS9  g )Nr  r  r   r  zhUnicodeEncodeError: 'ascii' codec can't encode character '\xe9' in position 6: ordinal not in range(128))r  r]  r  r,   s    r$   "test_input_tty_nonencodable_prompt+PtyTests.test_input_tty_nonencodable_prompt	  s"    Z'& 	 	'r(   c                 *    U R                  SSSSSS9  g )Nr  r  r   r  zaUnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 4: ordinal not in range(128))r  r]  r  r,   s    r$   !test_input_tty_nondecodable_input*PtyTests.test_input_tty_nondecodable_input	  s"    X{G(& 	 	'r(   c                 T    S nU R                  US5      nSnU R                  X#5        g )Nc                    [        S[        R                  R                  5       U S9  [        R
                  " 5       [        l        [        S5        [        S[        [        R                  R                  5       5      U S9  g )Nzstdin.isatty():r  r  z	captured:)
r  r   r  r  r  r  r  r	  r   getvalue)r  s    r$   r  3PtyTests.test_input_no_stdout_fileno.<locals>.child	  sN    #SYY%5%5%7eDCJ(O+uSZZ%8%8%:;%Hr(   s   quux)zstdin.isatty(): Truezcaptured: 'prompt')r  assertSequenceEqual)r#   r  r  r]  s       r$   test_input_no_stdout_fileno$PtyTests.test_input_no_stdout_fileno	  s1    	I
 ui0
 	  1r(   r?   r   )r:   r;   r<   r=   r~  r  r  r  r  
contextlibcontextmanagerr  r  r  r  r  r  r!  r(  r>   r?   r(   r$   r  r  	  ss    
  5<| 1!%%6&/ 1D  (0C?,
''2r(   r  c                   ,    \ rS rSrS rS rS rS rSrg)
TestSortedi	  c                    [        [        S5      5      nUS S  n[        R                  " U5        U R	                  U[        U5      5        U R                  X5        UR                  5         [        R                  " U5        U R	                  U[        US S95        U R                  X5        [        R                  " U5        U R	                  U[        USS95        U R                  X5        g )NrZ   c                     U * $ r   r?   r  s    r$   r   'TestSorted.test_basic.<locals>.<lambda>	  s    1"r(   r  T)reverse)r   ry  r  shuffler   r  rn  r1  )r#   r  copys      r$   
test_basicTestSorted.test_basic	  s    E#JAwtvd|,D'tvd=>D'tvdD9:D'r(   c                    [        / 5        U R                  [        5         [        / S9  S S S 5        [        / S S9  U R                  [        5         [        / S 5        S S S 5        g ! , (       d  f       NC= f! , (       d  f       g = f)N)r}  r  )r  r   r   r,   s    r$   test_bad_argumentsTestSorted.test_bad_arguments	  sb    r
y)B * 	rty)2t *)	 *) *)s   
A(A9(
A69
Bc           	      ~   Sn[         [        [        /nU H-  nU R                  [	        U5      [	        U" U5      5      5        M/     SR                  [        U5      5      n[        [        [        [         [        [        R                  /nU H-  nU R                  [	        U5      [	        U" U5      5      5        M/     g )Nabracadabrar`   )
r   rY  rH   r   r  rZ  ry  	frozensetr2  fromkeys)r#   r   r  Ts       r$   test_inputtypesTestSorted.test_inputtypes	  s    uc"AVAYqt5  GGCFOc9dE4==AAVAYqt5 r(   c                 `    SR                  5       nU R                  [        [        US S 5        g )Nz,The quick Brown fox Jumped over The lazy Dogc                     gr  r?   r   s     r$   r   .TestSorted.test_baddecorator.<locals>.<lambda>	  s    Qr(   )splitr   r   r  r  s     r$   test_baddecoratorTestSorted.test_baddecorator	  s&    =CCE)VT4Gr(   r?   N)	r:   r;   r<   r=   r4  r7  r>  rD  r>   r?   r(   r$   r-  r-  	  s    (	6Hr(   r-  c                       \ rS rSrS rSrg)ShutdownTesti	  c                     Sn[        SUSS9u  p#nU R                  SS/UR                  5       R                  5       5        g )Naf  if 1:
            import builtins
            import sys

            class C:
                def __del__(self):
                    print("before")
                    # Check that builtins still exist
                    len(())
                    print("after")

            c = C()
            # Make this module survive until builtins and sys are cleaned
            builtins.here = sys.modules[__name__]
            sys.here = sys.modules[__name__]
            # Create a reference loop so that this module needs to go
            # through a GC phase.
            here = sys.modules[__name__]
            z-cr   )PYTHONIOENCODINGbeforeafter)r   r   r  
splitlines)r#   r`  rcouterrs        r$   test_cleanupShutdownTest.test_cleanup	  sE    2 (d9@B(G,cjjl.E.E.GHr(   r?   N)r:   r;   r<   r=   rP  r>   r?   r(   r$   rG  rG  	  s    Ir(   rG  c                   x    \ rS rSr\R
                  S:  a  SrOSrSSS\\/\	" SS	5      Q7r
S
 rS rS rS rSrg)ImmortalTestsi	
  l        i?r4  NTFr   i  c                     U R                  U5         U R                  [        R                  " U5      U R                  5        S S S 5        g ! , (       d  f       g = fr   )rV  r   r   getrefcountIMMORTAL_REFCOUNTr#   immortals     r$   assert_immortalImmortalTests.assert_immortal
  s9    \\(#S__X68N8NO $##s   1A
Ac                 L    U R                    H  nU R                  U5        M     g r   )	IMMORTALSrY  rW  s     r$   test_immortalsImmortalTests.test_immortals
  s    H  * 'r(   c                 |    [        U R                  5      S-  nU R                   H  nU R                  U5        M     g Nr   )r   r\  rY  r#   refsrX  s      r$   $test_list_repeat_respect_immortality2ImmortalTests.test_list_repeat_respect_immortality
  s1    DNN#b(H  * 'r(   c                 |    [        U R                  5      S-  nU R                   H  nU R                  U5        M     g r`  )rY  r\  rY  ra  s      r$   %test_tuple_repeat_respect_immortality3ImmortalTests.test_tuple_repeat_respect_immortality 
  s1    T^^$r)H  * 'r(   r?   )r:   r;   r<   r=   r   r   rV  rc  r  ry  r\  rY  r]  rc  rf  r>   r?   r(   r$   rS  rS  	
  sL     {{g))tUHnNuR~NIP++
+r(   rS  c                   P    \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rSrg)TestTypei&
  c                 N   [        SS0 5      nU R                  UR                  S5        U R                  UR                  S5        U R                  UR                  [        5        U R                  UR
                  [        45        U R                  UR                  [        5        U R                  SUR                  5        U" 5       nU R                  [        U5      U5        U R                  UR                  U5         " S S5      n[        SU[        4SS 05      nU R                  UR                  S5        U R                  UR                  S5        U R                  UR                  [        5        U R                  UR
                  U[        45        U R                  UR                  [        5        U R                  SUR                  5        U R                  S	UR                  5        U" S
5      nU R                  US
5        U R                  [        U5      U5        U R                  UR                  U5        U R                  UR                  5       S5        U R                  UR                  5       S5        U R                  UR!                  SS5      S5        g )Nr  r?   r=   c                       \ rS rSrS rSrg)!TestType.test_new_type.<locals>.Bi3
  c                     SU -  $ )Nzham%dr?   r,   s    r$   r  %TestType.test_new_type.<locals>.B.ham4
  s    ~%r(   r?   N)r:   r;   r<   r=   r  r>   r?   r(   r$   r  rl  3
  s    &r(   r  rM  r  c                     SU -  $ )Nzspam%sr?   r,   s    r$   r   (TestType.test_new_type.<locals>.<lambda>6
  s    hor(   r  r   ham42spam42r   littles   * )r   r   r:   r<   r;   	__bases__r   r  __base__r  r  r  r   r  r  r  to_bytes)r#   r  r   r  rM  s        r$   test_new_typeTestType.test_new_type'
  s   b"S)-x0vi0ajj&)*AJJ7Cd1gq!akk1%	& 	& q#h)E FGS)-x0q#h/ajj#&fajj)

+bEBd1gq!akk1%'*8,Ax0+>r(   c                     U R                  [        5         [        SS0 SS9  S S S 5        U R                  [        5         [        SS0 S9  S S S 5        g ! , (       d  f       N8= f! , (       d  f       g = f)Nr   r?   r  r  r2  )r   r   r   r,   s    r$   test_type_nokwargsTestType.test_type_nokwargsF
  sU    y)b"" *y)br" *) *)))s   A A&
A#&
A4c                    S H  nU R                  US9   [        US0 5      nU R                  UR                  U5        U R                  UR                  U5        U R                  UR
                  [        5        S S S 5        M     U R                  [        5         [        SS0 5        S S S 5        U R                  [        5         [        SS0 5        S S S 5        U R                  [        5         [        SS0 5        S S S 5        [        SS0 5      nS Hy  nU R                  US9   Xl        U R                  UR                  U5        U R                  UR                  S5        U R                  UR
                  [        5        S S S 5        M{     [        SS0 5      nU R                  [        5         SUl        S S S 5        U R                  UR                  S5        U R                  [        5         SUl        S S S 5        U R                  UR                  S5        U R                  [        5         SUl        S S S 5        U R                  UR                  S5        g ! , (       d  f       GMr  = f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GM  = f! , (       d  f       GN
= f! , (       d  f       N= f! , (       d  f       N= f)N)r     Ä   🐍zB.A42r`   r   r?   zA Bu   ABr  rM  )
rV  r   r   r:   r<   r;   r   r   UnicodeEncodeErrorr   )r#   r   r  rM  s       r$   test_type_nameTestType.test_type_nameL
  s   >D4(r2&  T2  6  x8	 )( ? z*2r" +12R$ 3y)r2 * b">D4(!
  T2  5  x8	 )( ? b"z*!AJ +S)12#AJ 3S)y)AJ *S); )(
 +*22))
 )( +* 32 *)sa   A&I%I8J
2J)AJ.6K7K8K$%
I5	8
J

J
J+.
J>	
K
K!$
K2c                    [        SSSS05      nU R                  UR                  S5        U R                  UR                  S5        U R                  UR                  [        5        U R                  [        5         [        SSSS05        S S S 5        U R                  UR                  S5        SUl        U R                  UR                  S5        U R                  UR                  S5        U R                  [        5         SUl        S S S 5        U R                  UR                  S5        g ! , (       d  f       N= f! , (       d  f       N<= f)Nr  r?   r<   zB.CrV  zD.E)r   r   r:   r<   r;   r   r   r#   r  s     r$   test_type_qualnameTestType.test_type_qualnamem
  s    b>512S)/x0y)b>401 */S)/y)!AN */ *) *)s   =D2E2
E 
Ec                    [        SSSS05      nU R                  UR                  S5        U R                  UR                  [        5        U R                  UR                  S   S5        SUl        U R                  UR                  S5        U R                  SUR                  5        SUl        U R                  UR                  S   S5        g )Nr  r?   r=   r   
testmodule+   )r   r   r:   r;   r  r  r=   r  s     r$   test_type_firstlinenoTestType.test_type_firstlineno}
  s    b,b12S)x0$56;#|4*AJJ7$56;r(   c                 P   S " 5       nUR                   u  nU R                  U[        R                  5        SUl         U R	                  UR                   S5        U R                  [        5         U? S S S 5        U R	                  UR                   S5        g ! , (       d  f       N+= f)Nc                  0   ^ S 7=n 4m " U4S jST7
o5      $ )r=  c                      > \ rS rSr Y rSrg)(TestType.test_type_typeparams.<locals>.Ai
  r?   N)r:   r;   r<   r=   __type_params__r>   ).type_paramss   r$   r  r  
  s     r(   r  r?   )r=  .generic_baser  s     @r$   <generic parameters of A>@TestType.test_type_typeparams.<locals>.<generic parameters of A>
  s     	 	 	r(   whatever)r  r  typingTypeVarr   r   r   )r#   r  r=  s      r$   test_type_typeparamsTestType.test_type_typeparams
  s~    	a0&**J7y)! ***J7 *)s   /B
B%c                    S H.  n[        SSSU05      nU R                  UR                  U5        M0     U R                  [        5         [        SSSS05        S S S 5        [        SS0 5      nU R                  UR                  S 5        S H%  nXl        U R                  UR                  U5        M'     g ! , (       d  f       Nc= f)N)r   r~  r  x y   xr   Nr  r?   rU     xy)r   r~  r  r  r  r  r   N)r   r   rU  r   r  )r#   rO  r  s      r$   test_type_docTestType.test_type_doc
  s    FCS"y#./AQYY, G 12b9j12 3 b"D)RCIQYY, S 32s   
B77
Cc                    U R                  [        5         [        5         S S S 5        U R                  [        5         [        SS5        S S S 5        U R                  [        5         [        SS0 S5        S S S 5        U R                  [        5         [        SS0 S9  S S S 5        U R                  [        5         [        S/ 0 5        S S S 5        U R                  [        5         [        SS[        R                  " 0 5      5        S S S 5        U R                  [        5         [        SS0 5        S S S 5        U R                  [        5         [        S[
        40 5        S S S 5        U R                  [        5         [        S[        [        40 5        S S S 5        g ! , (       d  f       GN= f! , (       d  f       GNq= f! , (       d  f       GNW= f! , (       d  f       GN@= f! , (       d  f       GN'= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nr  r?   rz  r   )r   r   r   r  r  r  r   rH   r,   s    r$   test_bad_argsTestType.test_bad_args
  sf   y)F *y)bM *y)b"b! *y)br" *y)b" *y)b%0045 *y)gr" *y)tgr" *y)sCj"% *)! *)))))))))))))))))sj   F#F5(GG=G+("G='HHH0#
F25
G
G
G(+
G:=
H
H
H-0
H>c                    U R                  [        5         [        SSSS05        S S S 5        U R                  [        5         [        S[        4SS05        S S S 5        U R                  [        5         [        SSSS05        S S S 5        U R                  [        5         [        SSSS05        S S S 5        U R                  [        5         [        SSSS05        S S S 5        U R                  [        5         [        SSSS	S
.5        S S S 5        U R                  [        5         [        SSSS05        S S S 5        U R                  [        5         [        SSSS05        S S S 5         " S S5      nU R                  [        5         [        SU4SS05        S S S 5        U R                  [        5         [        SU4SS05        S S S 5        g ! , (       d  f       GN= f! , (       d  f       GN= f! , (       d  f       GN|= f! , (       d  f       GNa= f! , (       d  f       GNF= f! , (       d  f       GN*= f! , (       d  f       GN= f! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)Nr  r?   r  r  r   r`   r  r  r   )r  r   )r  r  )__weakref__r  c                       \ rS rSrSrg)"TestType.test_bad_slots.<locals>.Bi
  r?   Nr  r?   r(   r$   r  r  
  rh  r(   r  r  r  )r   r   r   r   r   )r#   r  s     r$   test_bad_slotsTestType.test_bad_slots
  s   y)b;-. *y)sf{C01 *y)b;+, *y)b;-. *y)b;12 *z*b!45 +y)b;(@AB *y)b;(FGH *	 	y)qd[*56 *y)qd[-89 *)+ *)))))))))**))))
 *)))sw   GG(5G:"HH<H0*III%<I6
G%(
G7:
H	
H
H-0
H?
I
I"%
I36
Jc                    [         R                  " SS/5      nUR                  S5        [        UR	                  5       5      n[        SSU5      nU R                  [        UR                  R	                  5       5      S S SS/5        g )N)r   r1   )r  r   r   rM  r?   r   )rO  OrderedDictmove_to_endr   r  r   r   r  )r#   odr]  rM  s       r$   test_namespace_orderTestType.test_namespace_order
  so    $$h%9:
s
#b"ajj..01"15(7KLr(   r?   N)r:   r;   r<   r=   rw  r{  r  r  r  r  r  r  r  r  r>   r?   r(   r$   ri  ri  &
  s6    ?>#*B0 	<	8-&(:2Mr(   ri  c                 p    SSK Jn  [        R                  S:X  a  UR	                  U" [
        5      5        U$ )Nr   )DocTestSuiteshort)doctestr  r   float_repr_styleaddTestr;  )loadertestspatternr  s       r$   
load_testsr  
  s)    $
w&l8,-Lr(   r   )YrW  r  r;  rO  r*  r:  r<  r  r  r  r  r  r   rx  r  r9  r   r  r  r  rq  rY  r   	functoolsr   inspectr   	itertoolsr   textwrapr   r   r	   r
   operatorr   rn  r   test.supportr   r   r   test.support.import_helperr   test.support.os_helperr   r   r   test.support.script_helperr   test.support.warnings_helperr   r   unittest.mockr   r   r  r  r   r   r   r}  r  r   rA   rK   r   r   r   rH   r{   test_conv_no_signtest_conv_signrc   rm   rx   r|   TestCaser~   r  
skipUnlessr  r-  rG  rS  ri  r  r:   mainr?   r(   r$   <module>r     s          	 	   	    	 
             < <   O O 4 H H 7 7 * * 1A)     $ 
 	$	ckk	CKK(		Z 	Z	j	Z 	$%9	:C@	UZ ' . 			
+	ckk	CKK(		*	Z 	Z	j	Z 	$%9	:C@	UZ ',  A )(## A )H@kX&& k\ 
SHIq2x   q2 Jq2f(H"" (HVI8$$ ID +H%% + +8nMx   nMb zMMO gU  C&s   I9 9
JJ