
    sh                    6   S SK Jr  S SK Jr  S SKJrJr  S SKJr  S SKrS SK	J
r
Jr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  S SKJ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/S# r0S$ r1S% r2S& r3S' r4S( r5S) r6S* r7S+ r8S, r9S- r:S. r;S/ r<S0 r=S1 r>S2 r?S3 r@S4 rAS5 rBS6 rCS7 rDS8 rES9 rFS: rGS; rHS< rIS= rJS> rKS? rLS@ rMSA rNSB rOSC rPSD rQSE rRSF rSSG rTSH rUSI rVSJ rWSK rXSL rYSM rZSN r[SO r\SP r]SQ r^SR r_SS r`ST raSU rbSV rcSW rdSX reSY rfSZ rgS[ rhS\ ri " S] S^\\
5      rj/ S_Qrk/ S`Qrl/ SaQrm " Sb Sc\j5      rn " Sd Se\j5      ro " Sf Sg\j5      rp " Sh Si\j5      rq\rSj:X  a  \R                  " 5         gg)k    )product)permutations)njittypeof)typesN)TestCaseno_pyobj_flagsMemoryLeakMixin)TypingErrorUnsupportedErrorUnsupportedBytecodeError)_MAX_UNICODE)_header_lead)overload)	PYVERSIONc                 &    [        S U  5       5      $ )Nc              3   >   #    U  H  n[        U5      S :  v   M     g7f)   Nord).0cs     l/Users/tiagomarins/Projetos/claudeai/copy_bank/venv/lib/python3.13/site-packages/numba/tests/test_unicode.py	<genexpr>isascii.<locals>.<genexpr>   s     'Qs1v|Qs   )allss    r   isasciir      s    'Q'''    c                      gN   大处着眼，小处着手。 r$   r    r   literal_usecaser%      s    +r    c                     U $ Nr$   xs    r   passthrough_usecaser*      s    Hr    c                 
    X:H  $ r'   r$   r)   ys     r   
eq_usecaser.      	    6Mr    c                     [        U 5      $ r'   lenr(   s    r   len_usecaser3   !       q6Mr    c                     [        U 5      $ r'   )boolr(   s    r   bool_usecaser7   %   s    7Nr    c                 
    X   $ r'   r$   r)   is     r   getitem_usecaser;   )   s	    4Kr    c                     [        X   5      $ r'   )hashr9   s     r   getitem_check_kind_usecaser>   -   s    :r    c                 $    U R                  U5      $ r'   )zfillr,   s     r   zfill_usecaserA   1       771:r    c                 
    X-   $ r'   r$   r,   s     r   concat_usecaserD   5   	    5Lr    c                 
    X-  $ r'   r$   r,   s     r   repeat_usecaserG   9   rE   r    c                     X-  n U $ r'   r$   r,   s     r   inplace_concat_usecaserI   =   s    FAHr    c                 
    X;   $ r'   r$   r,   s     r   
in_usecaserK   B   r/   r    c                 
    X:  $ r'   r$   r,   s     r   
lt_usecaserM   F   rE   r    c                 
    X:*  $ r'   r$   r,   s     r   
le_usecaserO   J   r/   r    c                 
    X:  $ r'   r$   r,   s     r   
gt_usecaserQ   N   rE   r    c                 
    X:  $ r'   r$   r,   s     r   
ge_usecaserS   R   r/   r    c                 $    U R                  U5      $ r'   )	partitionr   seps     r   partition_usecaserX   V   s    ;;sr    c                 $    U R                  U5      $ r'   findr,   s     r   find_usecaser\   Z       66!9r    c                 $    U R                  X5      $ r'   rZ   r)   r-   starts      r   find_with_start_only_usecasera   ^   s    66!r    c                 &    U R                  XU5      $ r'   rZ   r)   r-   r`   ends       r   find_with_start_end_usecasere   b   s    66!C  r    c                 $    U R                  U5      $ r'   )
rpartitionrV   s     r   rpartition_usecaserh   f   s    <<r    c                 $    U R                  U5      $ r'   countr,   s     r   count_usecaserl   j   rB   r    c                 $    U R                  X5      $ r'   rj   r_   s      r   count_with_start_usecasern   n       771r    c                 &    U R                  XU5      $ r'   rj   rc   s       r   count_with_start_end_usecaserq   r       771S!!r    c                 $    U R                  U5      $ r'   rfindr,   s     r   rfind_usecaserv   v   rB   r    c                 $    U R                  X5      $ r'   rt   r_   s      r   rfind_with_start_only_usecaserx   z   ro   r    c                 &    U R                  XU5      $ r'   rt   rc   s       r   rfind_with_start_end_usecaserz   ~   rr   r    c                 $    U R                  X5      $ r'   replace)r   r)   r-   s      r   replace_usecaser~      s    99Q?r    c                 &    U R                  XU5      $ r'   r|   r   r)   r-   rk   s       r   replace_with_count_usecaser      s    99Q5!!r    c                 $    U R                  U5      $ r'   rindexr,   s     r   rindex_usecaser          88A;r    c                 $    U R                  X5      $ r'   r   r_   s      r   rindex_with_start_only_usecaser      s    88Ar    c                 &    U R                  XU5      $ r'   r   rc   s       r   rindex_with_start_end_usecaser      s    88Ac""r    c                 $    U R                  U5      $ r'   indexr,   s     r   index_usecaser      rB   r    c                 $    U R                  X5      $ r'   r   r_   s      r   index_with_start_only_usecaser      ro   r    c                 &    U R                  XU5      $ r'   r   rc   s       r   index_with_start_end_usecaser      rr   r    c                 $    U R                  U5      $ r'   
startswithr,   s     r   startswith_usecaser      s    <<?r    c                 $    U R                  U5      $ r'   endswithr,   s     r   endswith_usecaser      s    ::a=r    c                 "    U R                  5       $ r'   
expandtabsr   s    r   expandtabs_usecaser          <<>r    c                 $    U R                  U5      $ r'   r   r   tabsizes     r   expandtabs_with_tabsize_usecaser      s    <<  r    c                      U R                  US9$ )N)r   r   r   s     r   %expandtabs_with_tabsize_kwarg_usecaser      s    <<<((r    c                 $    U R                  X5      $ r'   r   r_   s      r   "startswith_with_start_only_usecaser      s    <<!!r    c                 &    U R                  XU5      $ r'   r   rc   s       r   !startswith_with_start_end_usecaser      s    <<#&&r    c                 $    U R                  X5      $ r'   r   r_   s      r    endswith_with_start_only_usecaser      s    ::ar    c                 &    U R                  XU5      $ r'   r   rc   s       r   endswith_with_start_end_usecaser      s    ::a$$r    c                 $    U R                  U5      $ r'   splitr,   s     r   split_usecaser      rB   r    c                 $    U R                  X5      $ r'   r   r)   r-   maxsplits      r   split_with_maxsplit_usecaser          771r    c                      U R                  XS9$ N)r   r   r   s      r   !split_with_maxsplit_kwarg_usecaser      s    7717((r    c                 "    U R                  5       $ r'   r   r(   s    r   split_whitespace_usecaser          779r    c                 "    U R                  5       $ r'   
splitlinesr   s    r   splitlines_usecaser      r   r    c                 $    U R                  U5      $ r'   r   r   keependss     r    splitlines_with_keepends_usecaser      s    <<!!r    c                      U R                  US9$ )N)r   r   r   s     r   &splitlines_with_keepends_kwarg_usecaser      s    <<<**r    c                 $    U R                  U5      $ r'   rsplitrV   s     r   rsplit_usecaser      s    88C=r    c                 $    U R                  X5      $ r'   r   r   rW   r   s      r   rsplit_with_maxsplit_usecaser      s    88C""r    c                      U R                  XS9$ r   r   r   s      r   "rsplit_with_maxsplit_kwarg_usecaser      s    88C8++r    c                 "    U R                  5       $ r'   r   r   s    r   rsplit_whitespace_usecaser          88:r    c                 "    U R                  5       $ r'   lstripr(   s    r   lstrip_usecaser      r   r    c                 $    U R                  U5      $ r'   r   r)   charss     r   lstrip_usecase_charsr          88E?r    c                 "    U R                  5       $ r'   rstripr(   s    r   rstrip_usecaser      r   r    c                 $    U R                  U5      $ r'   r   r   s     r   rstrip_usecase_charsr      r   r    c                 "    U R                  5       $ r'   stripr(   s    r   strip_usecaser     r   r    c                 $    U R                  U5      $ r'   r   r   s     r   strip_usecase_charsr     s    775>r    c                 $    U R                  U5      $ r'   )joinr,   s     r   join_usecaser   
  r]   r    c                 J    S/nUR                  5         U R                  U5      $ N )popr   )r)   ls     r   join_empty_usecaser     s     	AEEG66!9r    c                 $    U R                  U5      $ r'   centerr,   s     r   center_usecaser     r   r    c                 $    U R                  X5      $ r'   r   r)   r-   fillchars      r   center_usecase_fillcharr     s    88A  r    c                 $    U R                  U5      $ r'   ljustr,   s     r   ljust_usecaser     rB   r    c                 $    U R                  X5      $ r'   r   r   s      r   ljust_usecase_fillcharr   !  r   r    c                 $    U R                  U5      $ r'   rjustr,   s     r   rjust_usecaser  %  rB   r    c                 $    U R                  X5      $ r'   r   r   s      r   rjust_usecase_fillcharr  )  r   r    c                 "    U R                  5       $ r'   )istitler(   s    r   istitle_usecaser  -      99;r    c                 >    / nU  H  nUR                  U5        M     U$ r'   append)r)   r   r:   s      r   iter_usecaser  1  s!    
A	 Hr    c                 "    U R                  5       $ r'   )titler(   s    r   r  r  8  r   r    c                  >    / n S H  nU R                  U5        M     U $ r"   r
  )r   r:   s     r   literal_iter_usecaser  <  s!    
A-	 .Hr    c                 J    SnSn[        U 5       H  u  p4X-  nUS-  nM     X4$ )Nr   r      )	enumerate)r)   bufscanr:   r   s        r   enumerated_iter_usecaser  C  s6    
CD!	  9r    c                 p    [        U 5      n[        U 5      n[        US-   5       H  n[        U5        M     g )Nr  )r2   iterrangenext)r)   nr:   _s       r   iter_stopiteration_usecaser  L  s-    AAQA1q5\Q r    c                  t    Sn [        U 5      n[        U 5      n[        US-   5       H  n[        U5        M     g )Nr#   r  )r  r2   r  r  )r   r:   r  r  s       r   "literal_iter_stopiteration_usecaser  S  s2    (AQAAA1q5\Q r    c                 "    U R                  5       $ r'   )islowerr(   s    r   islower_usecaser"  [  r  r    c                 "    U R                  5       $ r'   )lowerr(   s    r   lower_usecaser%  _  r   r    c                     [        U 5      $ r'   r   r(   s    r   ord_usecaser'  c  r4   r    c                     [        U 5      $ r'   )chrr(   s    r   chr_usecaser*  g  r4   r    c                   (   ^  \ rS rSrU 4S jrSrU =r$ )BaseTestik  c                 *   > [         [        U ]  5         g r'   )superr,  setUp)self	__class__s    r   r/  BaseTest.setUpl  s    h#%r    r$   )__name__
__module____qualname____firstlineno__r/  __static_attributes____classcell__)r1  s   @r   r,  r,  k  s    & &r    r,  )r   ascii12345
1234567890   ¡Y tú quién te crees?   🐍⚡r#   )r   aaar>  baababascascihr9  asciju   大处着眼，小处着手r#   u%   大处着眼，小处着手。🐍⚡) r   r   )r   r9  )r9  r   )zasc ii )r9  ci)r9  r9  )r9     Ă)r9     大处)r9     étú?)r   +   大处 着眼，小处着手。大大大处)rK  r   )rK  rF  )rK  rG  )rK  u   大处大处)rK  rK  )rK  rH  rK  rI  )rK  rJ  )r      tú quién te crees?)rM  r   )rM  rF  )rM  rG  )rM  rM  )rM  rH  )rM  rI  )rM  rJ  )ababababa)rN  rA  )rN  aba)
aaaaaaaaaar>  )rQ     aĂ)aabbaaaabbaaaac                   \   \ rS rSrS r\4S jr\4S jrS rS r	\4S jr
\4S jr\4S	 jr\4S
 jr\4S jr\4S j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\4S jrS rS r \4S j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- r0S. r1S/ r2S0 r3S1 r4S2 r5S3 r6S4 r7S5 r8S6 r9S7 r:S8 r;S9 r<S: r=S; r>S< r?S= r@S> rAS? rB\4S@ jrC\4SA jrDSB rESC rFSD rGSE rHSF rISG rJSH rKSI rLSJ rMSK rNSL rOSM rPSN rQSO rRSP rSSQ rTSR rUSS rVST rWSU rXSV rY\4SW jrZSX r[SY r\SZ r]S[ r^S\ r_\4S] jr`\4S^ jra\4S_ jrb\4S` jrc\4Sa jrdSb reSc rfSd rgSe rhSf riSg rjSh rkSi rlSj rmSk rnSl roSm rpSn rqSo rrSp rsSq rtSr ruSs rvSt rwSu rxSv rySw rzSx r{Sy r|Sz r}S{ r~S|rg})~TestUnicodei  c                 f    [         n[        [         5      nU R                  U" 5       U" 5       5        g r'   )r%   r   assertPreciseEqualr0  pyfunccfuncs      r   test_literalTestUnicode.test_literal  s%     _%%'2r    c                 |    [         n[        U5      n[         H!  nU R                  U" U5      U" U5      5        M#     g r'   )r*   r   UNICODE_EXAMPLESassertEqualr0  flagsrZ  r[  r   s        r   test_passthroughTestUnicode.test_passthrough  s2    $V!AVAYa1 "r    c           	      X   [         n[        U5      n[         H  n[        [        5       Hy  nU R	                  U" XE5      U" XE5      U< SU< 35        U R	                  U" US5      U" US5      U< SS< 35        U R	                  U" SU5      U" SU5      S< SU< 35        M{     M     g )Nz, r  )r.   r   r_  reversedr`  r0  rb  rZ  r[  rO  r?  s         r   test_eqTestUnicode.test_eq  s    V!A./  !&q!Q.?A   1!&q!!Q.?A  1!&q!!Q.?A 0 "r    c                     [         S 5       n[        S6  H,  u  p#U R                  U" X#5      UR                  X#5      5        M.     g )Nc                 <    U S:  a  SnOS nUS:  a  SnOS nX#:X  a  gg)Nr   concrete
      r$   )pred1pred2	resolved1	resolved2s       r   foo)TestUnicode.test_eq_optional.<locals>.foo  s2    qy&	 	qy&	 	 %r    )r  ru  )r   r   r`  py_func)r0  rs  p1p2s       r   test_eq_optionalTestUnicode.test_eq_optional  sD    		 
	   0HRS[#++b*=> 1r    c                    Un[        U5      n[         H8  nU R                  U" XD5      U" XD5      UR                  < SU< SU< S35        M:     [	        [        SS9 Ho  u  pEU R                  U" XE5      U" XE5      UR                  < SU< SU< S35        U R                  U" XT5      U" XT5      UR                  < SU< SU< S35        Mq     g )Nz: "z", ""   r)r   UNICODE_ORDERING_EXAMPLESr`  r3  r   )r0  usecaserZ  r[  rO  r?  s         r   _check_ordering_opTestUnicode._check_ordering_op  s    V +Aqa$+$4$4a; + !!:a@DAqa$+$4$4a; qa$+$4$4a; Ar    c                 .    U R                  [        5        g r'   )r  rM   r0  rb  s     r   test_ltTestUnicode.test_lt      
+r    c                 .    U R                  [        5        g r'   )r  rO   r  s     r   test_leTestUnicode.test_le  r  r    c                 .    U R                  [        5        g r'   )r  rQ   r  s     r   test_gtTestUnicode.test_gt  r  r    c                 .    U R                  [        5        g r'   )r  rS   r  s     r   test_geTestUnicode.test_ge  r  r    c                 |    [         n[        U5      n[         H!  nU R                  U" U5      U" U5      5        M#     g r'   )r3   r   r_  r`  ra  s        r   test_lenTestUnicode.test_len  s2    V!AVAYa1 "r    c                 |    [         n[        U5      n[         H!  nU R                  U" U5      U" U5      5        M#     g r'   )r7   r   r_  r`  ra  s        r   	test_boolTestUnicode.test_bool  s2    V!AVAYa1 "r    c                     [         n[        U5      n/ SQnSnU H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )N	r   	zt	t	za	u   	⚡z	a	bc
ab	cu   🐍	⚡u   🐍⚡
		🐍	zabab			ab
	az*Results of "{}".expandtabs() must be equalmsg)r   r   r`  formatr0  rZ  r[  casesr  r   s         r   test_expandtabsTestUnicode.test_expandtabs  sN    #VN ;AVAYacjjmD r    c                    [        [        5      [        [        5      /nSS/n/ SQnU H_  n[        SS5       HL  n[	        X5       H:  u  pgU R                  UR                  XE5      U" XE5      UR                  XE5      S9  M<     MN     Ma     g )Nz,Results of "{}".expandtabs({}) must be equalz4Results of "{}".expandtabs(tabsize={}) must be equalr  rv  rm  r  )r   r   r   r  zipr`  rw  r  )r0  fnsmessagesr  r   r   fnr  s           r   test_expandtabs_with_tabsize(TestUnicode.test_expandtabs_with_tabsize  s    349:<BJLN A R="31GB$$RZZ%;R^),A)? % A  2 ) r    c                 .   [         n[        U5      n[        R                  [        4nU R                  [        5       nU" SS5        S S S 5        SR                  U5      nU R                  U[        WR                  5      5        g ! , (       d  f       NE= f)Nr  333333@z"tabsize" must be {}, not float)r   r   r   IntegerintassertRaisesr   r  assertInstr	exception)r0  rZ  r[  accepted_typesraisesr  s         r   ,test_expandtabs_exception_noninteger_tabsize8TestUnicode.test_expandtabs_exception_noninteger_tabsize+  so    0V---{+v$ ,/66~Fc3v//01 ,+s   
B
Bc           	          [         n[        U5      n/ SQn/ SQnSS/nU[        -    H?  nSSUS S USS  XfU-   /nXG-   U-    H!  nU R                  U" Xh5      U" Xh5      5        M#     MA     g )	Nhello
helloworldr   
her  r  ellor   lowolor  r  ohellohellohellorF  r   r)      r   r   r_  r`  )	r0  rZ  r[  cpython_strcpython_subs
extra_subsr   default_subsprefixs	            r   test_startswith_default#TestUnicode.test_startswith_default5  s    #V1
 (-
//AQsVQqrUA1u=L&5
B  !2E!4DE C 0r    c                    [         n[        U5      n/ SQn/ SQnSS/nU[        -    Ha  nSSUS S USS  XfU-   /nXG-   U-    HC  n[        [	        S	S
5      5      S /-    H#  n	U R                  U" XhU	5      U" XhU	5      5        M%     ME     Mc     g Nr  r  r  rF  r   r)   r  r  rn  )r   r   r_  listr  r`  )
r0  rZ  r[  r  r  r  r   r  r  r`   s
             r   test_startswith_with_start&TestUnicode.test_startswith_with_startD  s    3V1
 (-
//AQsVQqrUA1u=L&5
B!%R.1TF:E$$VAu%=%*1e%<> ; C 0r    c                 Z   [         n[        U5      n/ SQn/ SQnSS/nU[        -    H  nSSUS S USS  XfU-   /nXG-   U-    Hc  n[        [	        S	S
5      5      S /-    HC  n	[        [	        S	S
5      5      S /-    H#  n
U R                  U" XhX5      U" XhX5      5        M%     ME     Me     M     g r  r   r   r_  r  r  r`  )r0  rZ  r[  r  r  r  r   r  r  r`   rd   s              r   test_startswith_with_start_end*TestUnicode.test_startswith_with_start_endU  s    2V1
 (-
//AQsVQqrUA1u=L&5
B!%R.1TF:E#E#rN3tf<((5)F).q%)EG  = ; C 0r    c                    SnU R                  [        U5         [        [        5      nU" SS5        S S S 5        SnU R                  [        U5         [        [        5      nU" SSS5        S S S 5        SnU R                  [        U5         [        [
        5      nU" SSSS	5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N[= f! , (       d  f       g = f)
Nz9The arg 'prefix' should be a string or a tuple of stringsr  )r  r  z:When specified, the arg 'start' must be an Integer or Noner  zinvalid startz8When specified, the arg 'end' must be an Integer or Noner   zinvalid end)assertRaisesRegexr   r   r   r   r   )r0  msg_invalid_prefixr[  msg_invalid_startmsg_invalid_ends        r   &test_startswith_exception_invalid_args2TestUnicode.test_startswith_exception_invalid_argsg  s    G 	##K1CD+,E'9% E
 I 	##K1BC;<E'41 D
 G 	##KA:;E'4M2 BA ED DC BAs#   B0CC0
B>
C
C c           	          [         n[        U5      n/ SQn/ SQnSS/nU[        -    HC  nSSUS S USS  XfU-   /nXG-   U-    H%  nUS	4n	U R                  U" Xi5      U" Xi5      5        M'     ME     g )
Nr  r  r  rF  r   r)   r  r  r  r  )
r0  rZ  r[  r  r  r  r   r  sub_strr  s
             r   test_startswith_tuple!TestUnicode.test_startswith_tuplez  s    #V1
 (-
//AQsVQqrUA1u=L'6C!4  !2!&q!13 D 0r    c                 b   [         n[        U5      n/ SQn/ SQnSS/nU[        -    H  nSSUS S USS  XfU-   /nXG-   U-    Hg  n[        [	        S	S
5      5      S /-    HG  n	[        [	        S	S
5      5      S /-    H'  n
US4nU R                  U" XkX5      U" XkX5      5        M)     MI     Mi     M     g )Nr  r  r  rF  r   r)   r  r  r  rn  r  r  )r0  rZ  r[  r  r  r  r   r  r  r`   rd   r  s               r   test_startswith_tuple_args&TestUnicode.test_startswith_tuple_args  s    2V1
 (-
//AQsVQqrUA1u=L'6C!%R.1TF:E#E#rN3tf<")4((5)F).q%)EG  = ; D 0r    c           
          [         n[        U5      n/ SQn/ SQnSS/nU[        -    HO  nSSUS S USS  XfU-   /nXG-   U-    H1  nS	n	U R                  U" Xh5      U" Xh5      U	R	                  Xh5      S
9  M3     MQ     g )Nr  r  r  rF  r   r)   r  r  z)Results "{}".endswith("{}") must be equalr  r   r   r_  r`  r  )
r0  rZ  r[  r  r  r  r   r  r  r  s
             r   test_endswith_default!TestUnicode.test_endswith_default  s    !V 2
 (-
//AQsVQqrUA1u=L'6CA  !3U15F%(ZZ%; ! = D 0r    c                 <   [         n[        U5      n/ SQn/ SQnSS/nU[        -    Hr  nSSUS S USS  XfU-   /nXG-   U-    HT  n[        [	        S	S
5      5      S /-    H4  n	Sn
U R                  U" XhU	5      U" XhU	5      U
R                  XhU	5      S9  M6     MV     Mt     g )Nr  r  r  rF  r   r)   r  r  r  rn  z-Results "{}".endswith("{}", {}) must be equalr  )r   r   r_  r  r  r`  r  )r0  rZ  r[  r  r  r  r   r  r  r`   r  s              r   test_endswith_with_start$TestUnicode.test_endswith_with_start  s    1V 2
 (-
//AQsVQqrUA1u=L'6C!%R.1TF:EIC$$VA%>%*1u%=),A)F % H ; D 0r    c                 |   [         n[        U5      n/ SQn/ SQnSS/nU[        -    H  nSSUS S USS  XfU-   /nXG-   U-    Ht  n[        [	        S	S
5      5      S /-    HT  n	[        [	        S	S
5      5      S /-    H4  n
SnU R                  U" XhX5      U" XhX5      UR                  XhX5      S9  M6     MV     Mv     M     g )Nr  r  r  rF  r   r)   r  r  r  rn  OResults "{}".endswith("{}", {}, {})                               must be equalr  r   r   r_  r  r  r`  r  )r0  rZ  r[  r  r  r  r   r  r  r`   rd   r  s               r   test_endswith_with_start_end(TestUnicode.test_endswith_with_start_end  s    0V 2
 (-
//AQsVQqrUA1u=L'6C!%R.1TF:E#E#rN3tf<.((E)G).q5)F-0ZZE-O ) Q  = ; D 0r    c           
          [         n[        U5      n/ SQn/ SQnSS/nU[        -    HS  nSSUS S USS  XfU-   /nXG-   U-    H5  nS	n	US
4n
U R                  U" Xj5      U" Xj5      U	R	                  Xj5      S9  M7     MU     g )Nr  r  r  rF  r   r)   r  r  z'Results "{}".endswith({}) must be equalr  r  r  )r0  rZ  r[  r  r  r  r   r  r  r  
tuple_subss              r   test_endswith_tupleTestUnicode.test_endswith_tuple  s    !V 2
 (-
//AQsVQqrUA1u=L'6C?%t_
  !6!&q!5%(ZZ%> ! @ D 0r    c                    [         n[        U5      n/ SQn/ SQnSS/nU[        -    H  nSSUS S USS  XfU-   /nXG-   U-    Hx  n[        [	        S	S
5      5      S /-    HX  n	[        [	        S	S
5      5      S /-    H8  n
SnUS4nU R                  U" XlX5      U" XlX5      UR                  XlX5      S9  M:     MZ     Mz     M     g )Nr  r  r  rF  r   r)   r  r  r  rn  r  r  r  r  )r0  rZ  r[  r  r  r  r   r  r  r`   rd   r  r  s                r   test_endswith_tuple_args$TestUnicode.test_endswith_tuple_args  s    0V 2
 (-
//AQsVQqrUA1u=L'6C!%R.1TF:E#E#rN3tf<.&-t_
((u)J).qe)I-0ZZ8=.D ) E	  = ; D 0r    c                     [         n[        U5      n[         HK  nSSUS S S2   US S USS  XDU-   /nU H+  nU R                  U" Xd5      U" Xd5      SU< SU< S35        M-     MM     g )	Nr   xxrv  r  r  'z' in ''?)rK   r   r_  r`  )r0  rb  rZ  r[  rO  extrassubstrs          r   test_inTestUnicode.test_in  st    V!A$$B$3B12q5AF   !2!&v!14:A!>@ ! "r    c                 0   U R                  5         [        n[        U5      nX4 HO  nU R                  [        5       nU" SS5        S S S 5        U R                  S[        WR                  5      5        MQ     [        R                  [        R                  4nU R                  [        5       nU" SS 5        S S S 5        SR                  U5      nU R                  U[        WR                  5      5        g ! , (       d  f       N= f! , (       d  f       NV= fNrO  r   empty separatorz"sep" must be {}, not none)disable_leak_checkrX   r   r  
ValueErrorr  r  r  r   UnicodeTypeUnicodeCharSeqr   r  r0  rZ  r[  funcr  r  r  s          r   $test_partition_exception_invalid_sep0TestUnicode.test_partition_exception_invalid_sep  s    !"V OD"":.&S" /MM+S1A1A-BC $
  ++U-A-AB{+v#t ,*11.Ac3v//01 /.
 ,+   
C6-
D6
D	
Dc           	          [         n[        U5      n/ SQnSnU H1  u  pVU R                  U" XV5      U" XV5      UR                  XV5      S9  M3     g )N	r      ⚡abcabcr  r=  r     🐍⚡🐍r  abababarO  r  r?  r  r   r  rA  r  rP  z-Results of "{}".partition("{}") must be equalr  )rX   r   r`  r  r0  rZ  r[  CASESr  r   rW   s          r   test_partitionTestUnicode.test_partition'  sU    "V

 >FAVA^U1]!$A!3  5 r    c                 X   [         n[        U5      n[         Vs/ s H  oDSSUS S USS  U/4PM     nnS/ SQ4S/ SQ4S	S
/4SS
/4SS/4S/ SQ4SSS/4SS/4SS/4SS/4/
nXV-    H<  u  pGU H1  nSn	U R                  U" XH5      U" XH5      U	R	                  XH5      S9  M3     M>     g s  snf )Nr   r  r  r  uf   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaĂrH  u   ȁu   Ġu   Ƞuh   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa􀌄   􀌄u   􀈄u   􂀄   ĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂarO    􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄a  􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄ĂrH  daaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)rH  r   rR  u   a􀌄   ĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂr   u   Ă􀌄   ĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂa_a_  􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄a_  􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄Ă_   Ă_z%Results "{}".find("{}") must be equalr  )r\   r   r_  r`  r  )
r0  rb  rZ  r[  r   r  r  subsr  r  s
             r   	test_findTestUnicode.test_find;  s   V 8H
7G!T1Sb61QR5!,-7G 	 
 "#KL% (6 7!C5)%u-*XJ7JKl,>?@"TF+&/+i[9
 $2GA=  !3U15F%(ZZ%; ! =   3%
s   B'c                 
   [         n[        U5      n[         Hh  nSSUS S USS  U4 HT  n[        [	        SS5      5      S /-    H4  nSnU R                  U" X4U5      U" X4U5      UR                  X4U5      S9  M6     MV     Mj     g )	Nr   r  r  r  r  rn  z)Results "{}".find("{}", {}) must be equalr  )ra   r   r_  r  r  r`  r  r0  rZ  r[  r   r  r`   r  s          r   test_find_with_start_only%TestUnicode.test_find_with_start_onlyW  s    -V!AafaeQ7!%R.1TF:EEC$$VA%>%*1u%=),A)F % H ; 8 "r    c                 &   [         n[        U5      n[        [        SS5      5      S /-   =p4[         H\  nSSUS S USS  U4 HH  n[        X45       H6  u  pxSn	U R                  U" XVXx5      U" XVXx5      U	R                  XVXx5      S9  M8     MJ     M^     g )	Nr  rn  r   r  r  r  z0Results of "{}".find("{}", {}, {}) must be equalr  )re   r   r  r  r_  r   r`  r  
r0  rZ  r[  startsendsr   r  r`   rd   r  s
             r   test_find_with_start_end$TestUnicode.test_find_with_start_endc  s    ,VU3^,v55!AafaeQ7")&"7JELC$$VA%C%*1u%B),A)K % M #8 8 "r    c                 \   [         n[        U5      n[        R                  [        R                  4nS Hd  u  pEnU R                  [        5       nU" SSXE5        S S S 5        SR                  Xc5      nU R                  U[        WR                  5      5        Mf     g ! , (       d  f       NI= fN))皙?   r`   )r         ?rd   r9  sciz"{}" must be {}, not float)re   r   r   r  NoneTyper  r   r  r  r  r  )	r0  rZ  r[  acceptedr`   rd   namer  r  s	            r   (test_find_exception_noninteger_start_end4TestUnicode.test_find_exception_noninteger_start_endp  s    ,VMM5>>2 DE"";/6gue1 0.55dECMM#s6#3#345	 !E//s   B
B+	c                 0   U R                  5         [        n[        U5      nX4 HO  nU R                  [        5       nU" SS5        S S S 5        U R                  S[        WR                  5      5        MQ     [        R                  [        R                  4nU R                  [        5       nU" SS 5        S S S 5        SR                  U5      nU R                  U[        WR                  5      5        g ! , (       d  f       N= f! , (       d  f       NV= fr  )r  rh   r   r  r  r  r  r  r   r  r  r   r  r  s          r   %test_rpartition_exception_invalid_sep1TestUnicode.test_rpartition_exception_invalid_sep{  s    !#V OD"":.&S" /MM+S1A1A-BC $
  ++U-A-AB{+v#t ,*11.Ac3v//01 /.
 ,+r	  c           	          [         n[        U5      n/ SQnSnU H1  u  pVU R                  U" XV5      U" XV5      UR                  XV5      S9  M3     g )Nr  z.Results of "{}".rpartition("{}") must be equalr  )rh   r   r`  r  r  s          r   test_rpartitionTestUnicode.test_rpartition  sU    #V

 ?FAVA^U1]!$A!3  5 r    c                     [         n[        U5      nSn[         H7  u  pEU" XE5      nU" XE5      nU R                  XgUR	                  XEXg5      5        M9     g )Nz6'{0}'.py_count('{1}') = {2}
'{0}'.c_count('{1}') = {3})rl   r   UNICODE_COUNT_EXAMPLESr`  r  )r0  rZ  r[  	error_msgr   sub	py_resultc_results           r   
test_countTestUnicode.test_count  sT    VM	,FAqIQ}HY&--aiJL -r    c                 J   [         n[        U5      nSS-  n[         H  u  pE[        SS5       H8  nU" XEU5      nU" XEU5      nU R	                  XxUR                  XEXgU5      5        M:     U" XES 5      nU" XES 5      nU R	                  XxUR                  XES UU5      5        M     g )N%s
%s)z '{0}'.py_count('{1}', {2}) = {3}z'{0}'.c_count('{1}', {2}) = {4}   )rn   r   rJ  r  r`  r  )	r0  rZ  r[  rK  r   rL  r:   rM  rN  s	            r   test_count_with_start!TestUnicode.test_count_with_start  s    )V  C C	 -FA3^"11-	 +  !*!1!1!!2:"<= $ qt,IQT*HY&--adI.689 -r    c                     [         n[        U5      nSS-  n[         H  u  pE[        [	        SS5      S5       H;  u  pgU" XEXg5      nU" XEXg5      n	U R                  XUR                  XEXgUU	5      5        M=     [	        SS5       H;  nU" XES U5      nU" XES U5      n	U R                  XUR                  XES XxU	5      5        M=     U" XES S 5      nU" XES S 5      n	U R                  XUR                  XES S UU	5      5        M     g )NrR  )%'{0}'.py_count('{1}', {2}, {3}) = {4}z$'{0}'.c_count('{1}', {2}, {3}) = {5}rS  rT  )rS  rT  )rq   r   rJ  r   r  r`  r  )
r0  rZ  r[  rK  r   rL  r:   jrM  rN  s
             r   test_count_with_start_end%TestUnicode.test_count_with_start_end  s#   -V  H H	 -FAc2	:"110	 .  !*!1!1!!	2:"<= ; 3^"143	 q1  !*!1!1!$2:"<= $ qtT2IQT40HY&--adD).689# -r    c                 \   [        [        5      nU R                  [        5       nU" SSSS5        S S S 5        U R	                  S[        WR                  5      5        U R                  [        5       nU" SSSS5        S S S 5        U R	                  S[        UR                  5      5        U R                  [        5       nU" SSSS5        S S S 5        U R	                  S	[        UR                  5      5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       NV= f)
Nr9  r   r  r<  ,The slice indices must be an Integer or Noneg333333?      z(The substring must be a UnicodeType, not)r   rq   r  r   r  r  r  r0  r[  r  s      r   test_count_arg_type_check%TestUnicode.test_count_arg_type_check  s    12{+v'33' ,D&**+	- {+v'3Q' ,D&**+	- {+v'2q!$ ,@&**+	- ,+
 ,+
 ,+s#   C;3DD;
D	
D
D+c                 v  ^ [         mU4S jnU R                  [        5       nU" SSSS5        S S S 5        U R                  S[	        WR
                  5      5        SS-  n[        R                  " [        R                  [        R                  [        R                  " [        R                  5      [        R                  " [        R                  5      5      n[        U/5      " T5      nT" SSSS	5      nU" SSSS	5      nU R                  XgUR                  SSSS	UU5      5        g ! , (       d  f       GN= f)
Nc                    > [         R                  " [         R                  [         R                  [         R                  " [         R                  5      [         R                  " [         R                  5      5      n[        U/5      " T5        g r'   )r   int64unicode_typeOptionalfloat64r   )argsbad_sigrZ  s     r   try_compile_bad_optionalPTestUnicode.test_count_optional_arg_type_check.<locals>.try_compile_bad_optional  sS    kk%"4"4"'"4"4"'.."?"'.."?AG 'OF#r    	   tú quis?u   tú皙?r]  rR  )rX  z''{0}'.c_count_op('{1}', {2}, {3}) = {5}r      )rq   r  r   r  r  r  r   re  rf  rg  r   r`  r  )	r0  rk  r  rK  sig_optionalcfunc_optionalrM  rN  rZ  s	           @r   "test_count_optional_arg_type_check.TestUnicode.test_count_optional_arg_type_check  s	   -	$ {+v$[%cB ,D&**+	-   K K	{{5#5#5#(#5#5#(>>%++#>#(>>%++#>@ |n-f5;q!4	!+ua;"))+uaI*24	5 ,+s   D))
D8c                 b   [         n[        U5      n[         Vs/ s H  o3SSUS S USS  U/4PM     nnS/ SQ4S/ SQ4S	S
S/4SS/4SS/4SS/4S/ SQ4SSS/4SS/4SS/4SS/4/nXE-    H<  u  p6U H1  nSnU R                  U" X75      U" X75      UR	                  X75      S9  M3     M>     g s  snf )Nr   r  r  r  uf   Ăaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar  uh   􀌄aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar  abcdefghiabcabc   aĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂrO    a􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄  Ă􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄rH  r$  )rH  r   u   Ăau   􀌄ar%  r   u   􀌄Ă   _aĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂĂ_a  _a􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄  _Ă􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄􀌄   _Ăz&Results "{}".rfind("{}") must be equalr  )rv   r   r_  r`  r  	r0  rZ  r[  r   r  r  r+  r  r  s	            r   
test_rfindTestUnicode.test_rfind
  s   V 8H
7G!T1Sb61QR5!,-7G 	 
 "#KL% (6 7eR[)!C5)%u-*XJ7JKl,>?@"TF+&/+i[9
 $2GA>  !3U15F%(ZZ%; ! =   3'
s   B,c                 
   [         n[        U5      n[         Hh  nSSUS S USS  U4 HT  n[        [	        SS5      5      S /-    H4  nSnU R                  U" X4U5      U" X4U5      UR                  X4U5      S9  M6     MV     Mj     g )	Nr   r  r  r  r  rn  z*Results "{}".rfind("{}", {}) must be equalr  )rx   r   r_  r  r  r`  r  r/  s          r   test_rfind_with_start_only&TestUnicode.test_rfind_with_start_only'  s    .V!AafaeQ7!%R.1TF:EFC$$VA%>%*1u%=),A)F % H ; 8 "r    c                 V   [         n[        U5      n[        [        SS5      5      S /-   n[        [        SS5      5      S /-   n[         H\  nSSUS S USS  U4 HH  n[        X45       H6  u  pxSn	U R                  U" XVXx5      U" XVXx5      U	R                  XVXx5      S9  M8     MJ     M^     g )	Nr  rn  r   r  r  r  z1Results of "{}".rfind("{}", {}, {}) must be equalr  )rz   r   r  r  r_  r   r`  r  r3  s
             r   test_rfind_with_start_end%TestUnicode.test_rfind_with_start_end3  s    -VeCn%.E#rN#tf,!AafaeQ7")&"7JEMC$$VA%C%*1u%B),A)K % M #8 8 "r    c                 D   [        [        5      n[         Hv  nS Hm  nU R                  [        5       nU" X#5        S S S 5        SR                  [        R                  5      nU R                  U[        WR                  5      5        Mo     Mx     g ! , (       d  f       N[= f)N)Nr  F
must be {})r   rv   r_  r  r   r  r   r  r  r  r  )r0  r[  r   r  r  r  s         r   test_rfind_wrong_substr#TestUnicode.test_rfind_wrong_substrA  ss    ]#!A+&&{3v!% 4"))%*;*;<c3v'7'7#89	 , "33s   	B
Bc           
         [        [        5      n[        R                  [        R                  4n[
         GH  nSSUS S USS  U4 H  n[        SS/SS/5       Hb  u  pVU R                  [        5       nU" X4XV5        S S S 5        S	R                  U5      nU R                  U[        WR                  5      5        Md     [        SS/S
S/5       Hb  u  pVU R                  [        5       nU" X4XV5        S S S 5        SR                  U5      nU R                  U[        WR                  5      5        Md     M     GM     g ! , (       d  f       N= f! , (       d  f       Nc= f)Nr   r  r  r  r:  Frv  r  z"start" must be {}gTz"end" must be {})r   rz   r   r  r>  r_  r   r  r   r  r  r  r  )	r0  r[  r  r   r  r`   rd   r  r  s	            r   test_rfind_wrong_start_end&TestUnicode.test_rfind_wrong_start_endK  s)   12--8!!AafaeQ7")3,Q"@JE**;76a%5 8.55nECMM#s6+;+;'<=	 #A #*2q'D$<"@JE**;76a%5 8,33NCCMM#s6+;+;'<=	 #A 8 " 87 87s   4
E 	*
E	 
E
Ec                    [         S   nUSS n[        R                  [        R                  4nSR	                  U5      nS nU R                  [        5       nU" XSS5        S S S 5        U R                  U[        WR                  5      5        S nU R                  [        5       nU" XSS5        S S S 5        U R                  U[        UR                  5      5        g ! , (       d  f       N= f! , (       d  f       NE= f)Nr   r  rv  r  c                  "   [         R                  " [         R                  [         R                  [         R                  " [         R                  5      [         R                  " [         R
                  5      5      n[        U/5      " [        5        g r'   )r   re  rf  rg  rh  intpr   rz   ri  wrong_sig_optionals     r    try_compile_wrong_start_optionalYTestUnicode.test_rfind_wrong_start_end_optional.<locals>.try_compile_wrong_start_optionale  sW    !&U-?-?-2-?-?-2^^EMM-J-2^^EJJ-G"I $%&'CDr    r:  c                  "   [         R                  " [         R                  [         R                  [         R                  " [         R                  5      [         R                  " [         R
                  5      5      n[        U/5      " [        5        g r'   )r   re  rf  rg  r  rh  r   rz   r  s     r   try_compile_wrong_end_optionalWTestUnicode.test_rfind_wrong_start_end_optional.<locals>.try_compile_wrong_end_optionalp  sW    !&U-?-?-2-?-?-2^^EJJ-G-2^^EMM-J"L $%&'CDr    )
r_  r   r  r>  r  r  r   r  r  r  )r0  r   r  r  r  r  r  r  s           r   #test_rfind_wrong_start_end_optional/TestUnicode.test_rfind_wrong_start_end_optional_  s    QAb'--8!!.1	E {+v,Qa@ ,c3v//01	E {+v*1q#> ,c3v//01 ,+ ,+s   C!(C2!
C/2
D c           
      8   [         n[        U5      n[         Vs/ s H  o3SUS S USS  U/4PM     nnS/ SQ4SS/4SS/4S	S
/4SS/4SS/4SS/4/nXE-    H<  u  p6U H1  nSnU R                  U" X75      U" X75      UR	                  X75      S9  M3     M>     g s  snf )Nr   r  r  ru  r   defrv  rw  rO  rx  ry  rH  rz  r{  r|  r}  r~  z'Results "{}".rindex("{}") must be equalr  )r   r   r_  r`  r  r  s	            r   test_rindexTestUnicode.test_rindex{  s    V 2B
1AAQsVQqrUA&'1A 	 
 /0!C5)%u-*XJ7"TF+&/+i[9
 $2GA?  !3U15F%(ZZ%; ! =   3
   Bc           
      8   [         n[        U5      n[         Vs/ s H  o3SUS S USS  U/4PM     nnS/ SQ4SS/4SS/4S	S
/4SS/4SS/4SS/4/nXE-    H<  u  p6U H1  nSnU R                  U" X75      U" X75      UR	                  X75      S9  M3     M>     g s  snf )Nr   r  r  ru  r  r!  rO  r"  r#  rH  r&  r'  r(  r)  r*  z&Results "{}".index("{}") must be equalr  )r   r   r_  r`  r  r  s	            r   
test_indexTestUnicode.test_index  s    V 2B
1AAQsVQqrUA&'1A 	 
 /0!C5)%u-*XJ7"TF+&/+i[9
 $2GA>  !3U15F%(ZZ%; ! =   3
r  c                 2   [         [        /nSS/n/ SQn[        X5       H  u  pE[        U5      nU H  n[	        U5      nS[        [        SUS-   5      5      4US S S/[        [        SSU-
  5      5      -   4US	S  [        [        S
5      5      [        [        SS
U-
  5      5      -   4US/[        [        SSU-
  5      5      -   4/n	U	 HA  u  pUS /-    H2  nU R                  U" XzU5      U" XzU5      UR                  XzU5      S9  M4     MC     M     M     g )Nz*Results "{}".index("{}", {}) must be equalz+Results "{}".rindex("{}", {}) must be equalr9  r:  r;  r<  r#   r   r  r  r   r     r  )	r   r   r  r   r2   r  r  r`  r  )r0  pyfuncsr  unicode_examplesrZ  r  r[  r   r   r  r  r4  r`   s                r   !test_index_rindex_with_start_only-TestUnicode.test_index_rindex_with_start_only  s5   013@AC
 w1KFLE%FeCQ/01sVaS4c1q5(9#::;qrUDqNT%QU2C-DDEd5a!e#4556	 (-OG!'4&((E)B).q5)A-0ZZE-J ) L "1 (- & 2r    c                    [         [        /nSS/n/ SQn[        X5       GHY  u  pE[        U5      nU GHA  n[	        U5      nS[        [        SUS-   5      5      [        [        US5      5      4US S S	/[        [        SSU-
  5      5      -   SS
/[        [        US-
  S5      5      -   4USS  [        [        S5      5      [        [        SS
5      5      -   [        [        US5      5      4US	/[        [        SSU-
  5      5      -   [        [        US5      5      4/n	U	 HN  u  pn[        US /-   U5       H4  u  pU R                  U" XzX5      U" XzX5      UR                  XzX5      S9  M6     MP     GMD     GM\     g )Nz1Results of "{}".index("{}", {}, {}) must be equalz2Results of "{}".rindex("{}", {}, {}) must be equalr  r   r  r  rm  r  r   rv  r~  r  r  r  )
r   r   r  r   r2   r  r  r   r`  r  )r0  r  r  r  rZ  r  r[  r   r   r  r  r4  r5  r`   rd   s                  r    test_index_rindex_with_start_end,TestUnicode.test_index_rindex_with_start_end  s   /1NOGHJ
 w1KFLE%FeCQ/0$uQ|2DEsVaS4c1q5(9#::"XU1q5"%5 668qrUDqNT%R.-AA%2,')d5a!e#455tE!RL7IJ .3)GT&-fvot&D
((E)G).q5)F-0ZZE-O ) Q 'E .3 & 2r    c                    U R                  5         / SQn[        [        /nU GH  n[        U5      nU H  n[	        U5      nS[        [        US-   S5      5      U/4US S S/[        [        US-
  5      5      4USS  [        [        S	S5      5      U/4US /[        [        U5      5      4/nU Hr  u  pn
[        X5       H]  u  pX44 HQ  nU R                  [        5       nU" XXX5        S S S 5        S
nU R                  U[        WR                  5      5        MS     M_     Mt     M     GM
     g ! , (       d  f       NK= f)Nr  r   r  rm  r  r   r~  r  r  zsubstring not found)r  r   r   r   r2   r  r  r   r  r  r  r  r  )r0  r  r  rZ  r[  r   r   r  r  r4  r5  r`   rd   r  r  r  s                   r   /test_index_rindex_exception_substring_not_found;TestUnicode.test_index_rindex_exception_substring_not_found  s0   !
 01NOFLE%FeAE2./!5sVaS$uQU|"45qrUDq".4U1X/	 .3)GT&-f&;
%+OD!%!2!2:!>& $Q < "?"7C MM#s63C3C/DE	 %4 '< .3 &  "?!>s   !
D00
D>c           	      z   [         R                  [         R                  4n[        [        /nU Hx  n[        U5      nS Hd  u  pVnU R                  [        5       nU" SSXV5        S S S 5        SR                  Xq5      n	U R                  U	[        WR                  5      5        Mf     Mz     g ! , (       d  f       NM= fr9  )r   r  r>  r   r   r   r  r   r  r  r  r  )
r0  r?  r  rZ  r[  r`   rd   r@  r  r  s
             r   0test_index_rindex_exception_noninteger_start_end<TestUnicode.test_index_rindex_exception_noninteger_start_end  s    MM5>>2/1NOFLE$H D&&{3v'5%5 4299$Ic3v'7'7#89	 %I  43s   B,,
B:c           	          [         n[        U5      n[         HL  n[        [	        U5      * [	        U5      5       H&  nU R                  U" X45      U" X45      SX44-  5        M(     MN     g )N	'%s'[%d]?)r;   r   r_  r  r2   r`  )r0  rZ  r[  r   r:   s        r   test_getitemTestUnicode.test_getitem  sZ     V!ACF7CF+  !&q!,v!57 , "r    c           	          [         n[        U5      nSS/nU HL  n[        [        U5      * [        U5      5       H&  nU R	                  U" XE5      U" XE5      SXE4-  5        M(     MN     g )Nu   aሴu   ¡着r  )r>   r   r  r2   r`  )r0  rZ  r[  samplesr   r:   s         r   test_getitem_scalar_kind$TestUnicode.test_getitem_scalar_kind  sf     ,Vg&ACF7CF+  !&q!,v!57 , r    c                    U R                  5         [        n[        U5      n[         H  nU R	                  [
        5       nU" U[        U5      5        S S S 5        U R                  S[        WR                  5      5        U R	                  [
        5       nU" U[        U5      5        S S S 5        U R                  S[        UR                  5      5        M     g ! , (       d  f       N= f! , (       d  f       NI= f)Nzstring index out of range)
r  r;   r   r_  r  
IndexErrorr2   r  r  r  )r0  rZ  r[  r   r  s        r   test_getitem_errorTestUnicode.test_getitem_error#  s    ! V!A"":.&q#a&! /MM5s6;K;K7LM"":.&aQ  /MM5s6;K;K7LM ".. /.s    CC+
C(	+
C9	c                 Z   [         n[        U5      n[         H  n[        [	        [        U5      * [        U5      5      5       Ha  n[        [	        [        U5      * [        U5      5      5       H2  n[        XE5      nU R                  U" X65      U" X65      SX4U4-  5        M4     Mc     M     g )N'%s'[%d:%d]?)r;   r   r_  r  r  r2   slicer`  r0  rZ  r[  r   r:   rY  sls          r   test_slice2TestUnicode.test_slice22  s     V!A%QQ01eSVGSV45AqB$$VA]%*1\%3qQi%?A 6 2 "r    c                 &   [         n[        U5      n[         Hv  nSS[        U5      [        U5      S-   4 HT  nSS[        U5      [        U5      S-   4 H2  n[	        XE5      nU R                  U" X65      U" X65      SX4U4-  5        M4     MV     Mx     g )Nr  rv  r  r  r;   r   r_  r2   r  r`  r  s          r   test_slice2_errorTestUnicode.test_slice2_error>  s     V!A"c!fc!fqj1b#a&#a&1*5AqB$$VA]%*1\%3qQi%?A 6 2 "r    c                 2   [         n[        U5      nSS/nU H|  nSSSSS[        U5      [        U5      S-   4 HW  nSSSSS[        U5      [        U5      S-   4 H2  n[        XV5      nU R	                  U" XG5      U" XG5      SXEU4-  5        M4     MY     M~     g )	N	   abcሴሴu   ¡¡¡着着着r  rv  r   r  r~  r  )r>   r   r2   r  r`  )r0  rZ  r[  r  r   r:   rY  r  s           r   test_getitem_slice2_kind$TestUnicode.test_getitem_slice2_kindJ  s     ,V$&78A"aAs1vs1vz:b!Q3q63q6A:>AqB$$VA]%*1\%3qQi%?A ? ; r    c                 J   [         n[        U5      n[         H  n[        [	        U5      * [	        U5      5       Hb  n[        [	        U5      * [	        U5      5       H<  nS H3  n[        XEU5      nU R                  U" X75      U" X75      SX4XV4-  5        M5     M>     Md     M     g )Nr  rv  r  r~  '%s'[%d:%d:%d]?)r;   r   r_  r  r2   r  r`  r0  rZ  r[  r   r:   rY  kr  s           r   test_slice3TestUnicode.test_slice3X  s     V!ACF7CF+AwA/A+"1^(().q):aA\)IK , 0 , "r    c                 J   [         n[        U5      n/ SQnU H  n[        [        U5      * [        U5      5       Hb  n[        [        U5      * [        U5      5       H<  nS H3  n[	        XVU5      nU R                  U" XH5      U" XH5      SXEXg4-  5        M5     M>     Md     M     g )N)r  u   aሴbሴc¡¡¡着着着u   ¡着¡着¡着u   着a着b着cu   ¡着a¡着b¡着cu   ¡着a着¡cr  r  )r>   r   r  r2   r  r`  )	r0  rZ  r[  r  r   r:   rY  r  r  s	            r   test_getitem_slice3_kind$TestUnicode.test_getitem_slice3_kinde  s     ,V$ ACF7CF+AwA/A+"1^(().q):aA\)IK , 0 , r    c                 :   [         n[        U5      n[         H  nSS[        U5      [        U5      S-   4 H^  nSS[        U5      [        U5      S-   4 H<  nS H3  n[	        XEU5      nU R                  U" X75      U" X75      SX4XV4-  5        M5     M>     M`     M     g )Nr  rv  r  r  r  r  r  s           r   test_slice3_errorTestUnicode.test_slice3_errorz  s     V!A"c!fc!fqj1b#a&#a&1*5A+"1^(().q):aA\)IK , 6 2 "r    c                 P    [         S 5       nSnU R                  U" U5      S5        g)zk
Make sure ascii flag is False when ascii and non-ascii characters are
mixed in output of Unicode slicing.
c                 J    U S S S2   R                   U SS S2   R                   4$ )Nr~  r  	_is_asciir   s    r   f,TestUnicode.test_slice_ascii_flag.<locals>.f  s+    SqS6##Qqt!tW%6%666r    u    ¿abc¡Y tú, quién te cre		es?)r   r  Nr   r`  r0  r  r   s      r   test_slice_ascii_flag!TestUnicode.test_slice_ascii_flag  s1    
 
	7 
	7 11v&r    c           	      b   [         n[        U5      n/ SQnU R                  [        5       nU" US   S5        S S S 5        U R	                  S[        WR                  5      5        U H4  n[        SS5       H!  nU R                  U" XV5      U" XV5      5        M#     M6     g ! , (       d  f       Nn= f)N)r9  z+asciiz-asciiz-asc ii-r:  z-12345z+12345r   u   ¡Y tú crs?r=  u   +🐍⚡u   -🐍⚡u   大眼，小手。u   +大眼，小手。u   -大眼，小手。r   rn  z<width> must be an Integerrn  )	rA   r   r  r   r  r  r  r  r`  )r0  rZ  r[  ZFILL_INPUTSr  r   widths          r   
test_zfillTestUnicode.test_zfill  s    V
$ {+v,q/3' ,2C8H8H4IJAr2  !1!&q2 ' 	 ,+s   B  
B.c                     [         n[        U5      n[         H>  n[        S S S2    H+  nU R                  U" XE5      U" XE5      SU< SU< S35        M-     M@     g Nrv  r  z' + 'r  )rD   r   r_  r`  rg  s         r   test_concatTestUnicode.test_concat  sP    V!A%dd+  !&q34a!8: , "r    c           	          [         n[        U5      n[         HH  nS H?  nU R                  U" XE5      U" XE5      5        U R                  U" XT5      U" XT5      5        MA     MJ     g )N)rv  r   r  r~  r  r  r;  r^  ro     F   )rG   r   r_  r`  rg  s         r   test_repeatTestUnicode.test_repeat  sZ    V!A9  !&q.  !&q. : "r    c                 
   U R                  5         [        [        5      nU R                  [        5       nU" SS5        S S S 5        U R                  [        S-   [        WR                  5      5        g ! , (       d  f       N;= f)Nhig      @z" Function(<built-in function mul>))	r  r   rG   r  r   r  r   r  r  r`  s      r   test_repeat_exception_float'TestUnicode.test_repeat_exception_float  sb    !^${+v$ ,l%II&**+	- ,+s   
A44
Bc                    U R                  5         [        n[        U5      nX4 HO  nU R                  [        5       nU" SS5        S S S 5        U R                  S[        WR                  5      5        MQ     g ! , (       d  f       N8= fNrO  r   r   )r  r   r   r  r  r  r  r  r0  rZ  r[  r  r  s        r   test_split_exception_empty_sep*TestUnicode.test_split_exception_empty_sep  si    !V OD"":.&S" /MM+S1A1A-BC $..   
A99
B	c                     [         n[        U5      nS HT  nU R                  [        5       nU" SUS5        S S S 5        U R	                  S[        WR                  5      SU-  5        MV     g ! , (       d  f       N<= f)NrF  NrO  r  rh  z"non-integer maxsplit with sep = %s)r   r   r  r   r  r  r  )r0  rZ  r[  rW   r  s        r   (test_split_exception_noninteger_maxsplit4TestUnicode.test_split_exception_noninteger_maxsplit  sh    ,V C"";/6c3$ 0MM)S)9)9%:>DF //s   A--
A;	c           
          [         n[        U5      n/ SQnU H-  u  pEU R                  U" XE5      U" XE5      SU< SU< S35        M/     g )N
) a Nr  r  r  r  r  r  r  r  r  r  z	'.split('')?)r   r   r`  )r0  rZ  r[  r  test_strsplitters         r   
test_splitTestUnicode.test_split  sL    V
 #(HVH7"864<hGI #(r    c           
          / SQn[         S4[        S44 HA  u  p#[        U5      nU H+  u  pVnU R                  U" XVU5      U" XVU5      X5Xg4-  5        M-     MC     g )N
)r  Nr  )r   r  r  )r  r  r  )r=  r  r  )r  r  r  )r  rO  r~  )r  r?  r  )r  r   r~  )r  rA  r  )r  rP  r;  z'%s'.split('%s', %d)?z'%s'.split('%s', maxsplit=%d)?)r   r   r   r`  )r0  r  rZ  fmt_strr[  r  r	  r   s           r   test_split_with_maxsplit$TestUnicode.test_split_with_maxsplit  sy    
 "=!8!:!B!A!C DOF
 LE05,H  H!E!&x8!D!(h+I!IK 16 Dr    c                     [         n[        U5      nSR                  [        [        / SQ5      5      nSSSSSSSU-   S	-   /nU H'  nU R                  U" U5      U" U5      S
U< S35        M)     g )Nr   	   rm     r_                           i  i    i   i   i   i   i   i   i   i   i	   i
   i(   i)   i/   i_   i 0  r     🐍 ⚡   🐍 ⚡ 🐍   🐍   ⚡ 🐍       🐍   ⚡ 🐍    🐍
   ⚡ 🐍  r  z
'.split()?)r   r   r   mapr)  r`  )r0  rZ  r[  all_whitespacer  r  s         r   test_split_whitespace!TestUnicode.test_split_whitespace  s     *V S +
 "  n$|3
 HVH-"8_08:< r    c                 l   [         n[        U5      n[        R                  [        [        R
                  [        4nS Hb  u  pEU R                  [        5       nU" SU5        S S S 5        SR                  X45      nU R                  U[        WR                  5      5        Md     g ! , (       d  f       NI= f)N))noneN)rf  None
z"keepends" must be {}, not {})r   r   r   r  r  Booleanr6   r  r   r  r  r  r  )r0  rZ  r[  r  tyr   r  r  s           r   %test_split_exception_invalid_keepends1TestUnicode.test_split_exception_invalid_keepends0  s    1V--emmTBFLB"";/6dH% 0188LCMM#s6#3#345	 G//s   
B%%
B3	c                     [         n[        U5      n/ SQnSnU H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nr   r*  z
abcabc
u   🐍⚡u   🐍⚡🐍u    aba babaz

abcz*Results of "{}".splitlines() must be equalr  )r   r   r`  r  r  s         r   test_splitlinesTestUnicode.test_splitlines;  sN    #VM ;AVAYacjjmD r    c           
          [         [        /nSS/n/ SQn/ SQn[        X5       HP  u  pV[        U5      n[	        X45       H1  u  pU R                  U" X5      U" X5      UR                  X5      S9  M3     MR     g )Nz,Results of "{}".splitlines({}) must be equalz5Results of "{}".splitlines(keepends={}) must be equalr0  )TFr   r  rv  d   r  )r   r   r  r   r   r`  r  )
r0  r  r  r  all_keependsrZ  r  r[  r   r   s
             r   test_splitlines_with_keepends)TestUnicode.test_splitlines_with_keependsF  s    ,2

 ;C
M3w1KFLE&u;  !4eA6H%(ZZ%< ! >  < 2r    c                    U R                  5         [        n[        U5      nX4 HO  nU R                  [        5       nU" SS5        S S S 5        U R                  S[        WR                  5      5        MQ     g ! , (       d  f       N8= fr  )r  r   r   r  r  r  r  r  r  s        r   test_rsplit_exception_empty_sep+TestUnicode.test_rsplit_exception_empty_sepY  si    !V OD"":.&S" /MM+S1A1A-BC $..r  c                 B   [         n[        U5      n[        R                  [        4nS Ha  nU R                  [        5       nU" SUS5        S S S 5        SR                  U5      nU R                  U[        WR                  5      5        Mc     g ! , (       d  f       NI= f)Nr  rO  r  z "maxsplit" must be {}, not float)r   r   r   r  r  r  r   r  r  r  r  )r0  rZ  r[  r  rW   r  r  s          r   )test_rsplit_exception_noninteger_maxsplit5TestUnicode.test_rsplit_exception_noninteger_maxsplite  sy    -V---C"";/6c3$ 04;;NKCMM#s6#3#345	 //s   B
B	c           	          [         n[        U5      n/ SQnSnU H1  u  pVU R                  U" XV5      U" XV5      UR                  XV5      S9  M3     g )Nr  z*Results of "{}".rsplit("{}") must be equalr  )r   r   r`  r  r  s          r   test_rsplitTestUnicode.test_rsplitp  sU    V
 ;FAVA^U1]!$A!3  5 r    c                     [         [        /n/ SQnSS/n[        X5       HK  u  pE[        U5      nU H5  u  pxn	U R	                  U" XxU	5      U" XxU	5      UR                  XxU	5      S9  M7     MM     g )Nr  z.Results of "{}".rsplit("{}", {}) must be equalz7Results of "{}".rsplit("{}", maxsplit={}) must be equalr  )r   r   r  r   r`  r  )
r0  r  r  r  rZ  r  r[  r  rW   r   s
             r   test_rsplit_with_maxsplit%TestUnicode.test_rsplit_with_maxsplit  s    /57
 =E

 w1KFLE+0'x  x!@!&xh!?%(ZZx%H ! J ,1 2r    c                     [         n[        U5      nSR                  [        [        / SQ5      5      nSSSSSSSU-   S	-   /nS
nU H1  nU R                  U" U5      U" U5      UR                  U5      5        M3     g )Nr   r  r  r  r  r  r   r!  r"  z&Results of "{}".rsplit() must be equal)r   r   r   r#  r)  r`  r  )r0  rZ  r[  r$  r  r  r   s          r   test_rsplit_whitespace"TestUnicode.test_rsplit_whitespace  s    *V S +
 "  n$|3
 7AVAYa#**Q-@ r    c                     [         n[        U5      nSS/nU H'  nU R                  U" U5      U" U5      SU< S35        M)     g )Nr      🐍🐍🐍r  z'.join([])?)r   r   r`  )r0  rZ  r[  r  rW   s        r   test_join_emptyTestUnicode.test_join_empty  sN     $V 

 CVC["3Z1468 r    c                    [         n[        U5      nU R                  [        5       nU" S/ SQ5        S S S 5        [	        WR
                  5      nU R                  SU5        U R                  SU5        g ! , (       d  f       NH= f)Nr   )r  r~  r  z,During: resolving callee type: BoundFunctionzreflected list(int)r   r   r  r   r  r  r  )r0  rZ  r[  r  exc_messages        r   test_join_non_string_exception*TestUnicode.test_join_non_string_exception  so    V {+v"i  ,
 &**+:	

 	*K8 ,+s   A55
Bc           
          [         n[        U5      nS/ SQ4S/ SQ4S/ SQ4SS/S-  4/nU H-  u  pEU R                  U" XE5      U" XE5      SU< S	U< S
35        M/     g )Nr   )r   r   r   rO  )rO  bbbbr   rH     ⚡⚡r;  r  '.join('r  r   r   r`  r0  rZ  r[  r  rW   partss         r   	test_joinTestUnicode.test_join  st    V ,#$hZ!^,	
  JCVC/"3.36>@  r    c           
          [         n[        U5      nSS/nU H-  u  pEU R                  U" XE5      U" XE5      SU< SU< S35        M/     g )N)rv  123)rH  rQ  r  rR  r  rS  rT  s         r   test_join_interleave_str$TestUnicode.test_join_interleave_str  sS    V &

  JCVC/"3.36>@  r    c                    [         S4[        S4[        S44 H  u  p[        U5      nU R	                  [
        5       nU" [        S   S5        S S S 5        U R                  S[        WR                  5      5        [         H:  n[        SS5       H'  nU R                  U" XV5      U" XV5      S	XRU4-  5        M)     M<     M     g ! , (       d  f       N|= f)
Nr   r   r  r   rn  The width must be an Integerr  rn  z'%s'.%s(%d)?)r   r   r  r   r  r   r_  r  r  r  r  r`  )r0  rZ  	case_namer[  r  r   r  s          r   test_justificationTestUnicode.test_justification  s    #18"<#0'":#0'":"<F LE"";/6&q)3/ 0MM8#f>N>N:OP%"2r]E$$VA%5%*1_%3qU6K%KM + &"<
 0/s   C
C	c                    [         S4[        S4[        S44 H  u  p[        U5      nS H  nU R	                  [
        5       nU" [        S   SU5        S S S 5        U R                  S[        WR                  5      5        [         H=  n[        SS	5       H*  nU R                  U" XgU5      U" XgU5      S
XbUU4-  5        M,     M?     M     M     g ! , (       d  f       N= f)Nr   r   r  )rF  +   úu   处r   rn  r]  r  rn  z'%s'.%s(%d, '%s')?)r   r   r  r   r  r   r_  r  r  r  r  r`  )r0  rZ  r^  r[  r   r  r   r  s           r   test_justification_fillchar'TestUnicode.test_justification_fillchar  s    #:H"E#97"C#97"C"EF LE 4&&{3v*1-sH= 4<!&"2"235 *A!&r2((()C).q)B)=AFAIAK *KL "/ * 4"E 43s   C
Cc                 "   U R                  5         [        [        [        4 H  n[	        U5      nS HW  nU R                  [        5       nU" [        S   SU5        S S S 5        U R                  S[        WR                  5      5        MY     S HW  nU R                  [        5       nU" [        S   SU5        S S S 5        U R                  S[        WR                  5      5        MY     M     g ! , (       d  f       N= f! , (       d  f       NM= f)N)r   z+0u   quiénu   处着r   rn  z&The fill character must be exactly one)r  rn  z"The fillchar must be a UnicodeType)r  r   r   r  r   r  r  r_  r  r  r  r   )r0  rZ  r[  r   r  s        r   %test_justification_fillchar_exception1TestUnicode.test_justification_fillchar_exception!  s    !.--/F LE ;&&z2f*1-r8< 3F!&"2"235 ; %&&{3v*1-r8< 4B!&"2"235 %/ 32 43s   
C/'D /
C= 
Dc                     [         n[        U5      n[         H>  n[        S S S2    H+  nU R                  U" XE5      U" XE5      SU< SU< S35        M-     M@     g r  )rI   r   r_  r`  rg  s         r   test_inplace_concatTestUnicode.test_inplace_concat7  sP    'V!A%dd+  !&q34a!8: , "r    c                     S n[        U5      n/ SQn/ SQnSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )isidentifierr   s    r   rZ  -TestUnicode.test_isidentifier.<locals>.pyfuncA  s    >>##r    )rO  Zr  b0bcb_   µu   𝔘𝔫𝔦𝔠𝔬𝔡𝔢rF  [   ©0   u   u   u   u   abu   abu	   abau	   abaz,Results of "{}".isidentifier() must be equalr   r  r   r_  r`  r  r0  rZ  r[  cpythoncpython_extrasr  r   s          r   test_isidentifierTestUnicode.test_isidentifier@  sj    	$ VH@ =!RD(72^CAVAYacjjmD Dr    c                 6  ^ / SQn[         S4[        S4[        S44 HD  u  mn[        T5      nU H-  u  pEU R	                  T" U5      U" U5      SU< SU< S35        M/     MF     [
        S4[        S4[        S44 GH  u  mn[        T5      n[        R                  " [        R                  [        R                  " [        R                  5      5      n[        U/5      " T5      nU4S jnX84 HO  n	U R                  [        5       n
U	" S	S
5        S S S 5        U R                  S[        W
R                  5      5        MQ     X74 H:  n	U H1  u  pEU R	                  T" XE5      U	" XE5      SU< SU< SU< S35        M3     M<     GM     g ! , (       d  f       N~= f)N))ass ciiai)r  N)assciiai )zasscii r  )	 asscii  r  )r  zasci )r  r   )z      rF  )r   rF  rE  )r   Nr  )
  asscii  r  )r  r   )r  N)rM     étú? )     tú quién te crees?   r  )u     tú qrees?   r   )r  NrL  )    大处大处  r   )z	
abcd	z	a)r  N)z	 abcd 	N)z
 abcd 
N)z abcd N)z abcd N)z abcd N)u
    abcd N)u	   abcd Nr   r   r   r  z'.z()?c                     > [         R                  " [         R                  [         R                  " [         R                  5      5      n[	        U/5      " T5        g r'   )r   rf  rg  rh  r   )ri  badrZ  s     r   rk  8TestUnicode.test_strip.<locals>.try_compile_bad_optional  s:    ((););).)FHcUF#r    rm  rn  z%The arg must be a UnicodeType or Nonez('r  )r   r   r   r   r`  r   r   r   r   rf  rg  r  r   r  r  r  )r0  STRIP_CASESr^  r[  stringr   sig1rq  rk  r  r  rZ  s              @r   
test_stripTestUnicode.test_stripQ  s   
D $1'":#18"<#18"<">FI LE!,  !&v17!CE "-"> $7"@#7"B#7"B"DFI LE%%e&8&8&+nnU5G5G&HJD!4&\&1N$
 5&&{3v{C( 4E!&"2"235 6 +%0MF$$VF%:%'%69?9>&@A &1 ,)"D 43s   
F


Fc                     S n[        U5      n/ SQn/ SQnSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )isspacer   s    r   rZ  (TestUnicode.test_isspace.<locals>.pyfunc      99;r    )	u    u    u   —   𐐁   𐐧   𐐩   𐑎   🐍   👯rx  z'Results of "{}".isspace() must be equalr   r  rz  r{  s          r   test_isspaceTestUnicode.test_isspace  sj    	 VK@ 8!RD(72^CAVAYacjjmD Dr    c           
         [         n[        U5      nSn[         Vs/ s H  oDR                  5       PM     nn/ SQn[        U-   U-   nU H5  nU" U5      n	U" U5      n
U R	                  XUR                  XU
5      5        M7     g s  snf )Nz0'{0}'.py_istitle() = {1}
'{0}'.c_istitle() = {2})r   z    z  AA  z  Ab  1A123A12Bcdz+abA12AbcA12abcu   %^Abc 5 $% Def𐐁𐐩u   𐐧𐑎r  r  u   🐍 Isu   🐍 NOTu   👯Is   ῼu   Greek ῼitlecases ...)r  r   r_  r  r`  r  )r0  rZ  r[  rK  r)   unicode_titlespecialISTITLE_EXAMPLESr   rM  rN  s              r   test_istitleTestUnicode.test_istitle  s     VG	,<=,<q,<=
, ,m;gE!Aq	IQxHY&--aHEG "3 >s   Bc                     S n[        U5      n/ SQnSn[        U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )isprintabler   s    r   rZ  ,TestUnicode.test_isprintable.<locals>.pyfunc  s    ==?"r    )	r   rF  abcdefgzabcdefg
u   ʹu   ͸ry  r  u   󠀠z+Results of "{}".isprintable() must be equalr  rz  r0  rZ  r[  r|  r  r   s         r   test_isprintableTestUnicode.test_isprintable  sT    	# V9 <!G+AVAYacjjmD ,r    c                 V    S n[        U5      nS/nU R                  U" U6 U" U6 5        g )Nc                     U S S  $ r'   r$   rO  s    r   rZ  0TestUnicode.test_pointless_slice.<locals>.pyfunc  s    Q4Kr    rO  r  r0  rb  rZ  r[  ri  s        r   test_pointless_slice TestUnicode.test_pointless_slice  s/    	Vut5r    c                 V    S n[        U5      nS/nU R                  U" U6 U" U6 5        g )Nc                     U S S S2   $ )Nrv  r$   r  s    r   rZ  /TestUnicode.test_walk_backwards.<locals>.pyfunc  s    TrT7Nr    rO  r  r  s        r   test_walk_backwardsTestUnicode.test_walk_backwards  s/    	Vut5r    c                 V    S n[        U5      nS/nU R                  U" U6 U" U6 5        g )Nc                     U S S S2   $ Nr~  r$   r  s    r   rZ  -TestUnicode.test_stride_slice.<locals>.pyfunc  s    SqS6Mr    rO  r  r  s        r   test_stride_sliceTestUnicode.test_stride_slice  s/    	Vut5r    c                 X    S n[        U5      nSS/nU R                  U" U6 U" U6 5        g )Nc                 
    X:  $ r'   r$   rO  r?  s     r   rZ  )TestUnicode.test_basic_lt.<locals>.pyfunc  	    5Lr    rA  r?  r  r  s        r   test_basic_ltTestUnicode.test_basic_lt  1    	Vc{t5r    c                 X    S n[        U5      nSS/nU R                  U" U6 U" U6 5        g )Nc                 
    X:  $ r'   r$   r  s     r   rZ  )TestUnicode.test_basic_gt.<locals>.pyfunc  r  r    rA  r?  r  r  s        r   test_basic_gtTestUnicode.test_basic_gt  r  r    c           	          S n[        U5      n[        [        SS9 H8  u  p4S H-  nXSU/nU R                  U" U6 U" U6 SR	                  U5      S9  M/     M:     g )Nc                 |    U S:X  a  X:H  $ U S:X  a  X:g  $ U S:X  a  X:  $ U S:X  a  X:  $ U S:X  a  X:*  $ U S:X  a  X:  $ g )N==!=<><=>=r$   optionr)   r-   s      r   rZ  +TestUnicode.test_comparison.<locals>.pyfunc  sY    ~v4v3u3u4v4vr    r~  r  r  r  r  r  r  r  r   failed on {}r  )r   r   r  r`  r  )r0  rZ  r[  r)   r-   cmpopri  s          r   test_comparisonTestUnicode.test_comparison   si    	  V !:a@DA?!}  t%3%:%:4%@ ! B @ Ar    c                     S n[        U5      nS/nU R                  U" U6 U" U6 5        S/nU R                  U" U6 U" U6 5        g )Nc                 P    Sn[        U 5      (       a  US-   U -   S-   $ X-   S-   U -   $ )Nrv  b123IOrY  r1   )r)   rv  s     r   rZ  /TestUnicode.test_literal_concat.<locals>.pyfunc  s5    C1vvV|a'$..w**r    r)   r   r  r0  rZ  r[  ri  s       r   test_literal_concatTestUnicode.test_literal_concat  sP    	+ Vut5tt5r    c                     S n[        U5      nS H,  nU/nU R                  U" U6 U" U6 SR                  U5      S9  M.     g )Nc                     SnSnU S:X  a  X:H  $ U S:X  a  X:g  $ U S:X  a  X:  $ U S:X  a  X:  $ U S:X  a  X:*  $ U S:X  a  X:  $ g )	Na123aa12r  r  r  r  r  r  r$   r  s      r   rZ  3TestUnicode.test_literal_comparison.<locals>.pyfunc(  sc    AA~v4v3u3u4v4vr    r  r  r  r   r`  r  )r0  rZ  r[  r  ri  s        r   test_literal_comparison#TestUnicode.test_literal_comparison'  sP    	$ V;E7DVT]E4L!/!6!6t!<  > <r    c                 X    S n[        U5      nU R                  U" 5       U" 5       5        g )Nc                      [        S5      $ Nrv  r1   r$   r    r   rZ  ,TestUnicode.test_literal_len.<locals>.pyfuncA  s    u:r    r  rY  s      r   test_literal_lenTestUnicode.test_literal_len@  s$    	V57+r    c                     S n[        U5      nSSS[        SS 5      [        S S5      4 H,  nU/nU R                  U" U6 U" U6 SR                  U5      S9  M.     g )Nc                     SU    $ r  r$   )whichs    r   rZ  0TestUnicode.test_literal_getitem.<locals>.pyfuncG  s    <r    rv  r   r  r  r  )r   r  r`  r  r0  rZ  r[  rO  ri  s        r   test_literal_getitem TestUnicode.test_literal_getitemF  se    	 VaE!TNE$O<A3DVT]E4L!/!6!6t!<  > =r    c                     S n[        U5      nS H,  nU/nU R                  U" U6 U" U6 SR                  U5      S9  M.     g )Nc                     U S;   $ )N
9876zabiuhr$   r(   s    r   rZ  +TestUnicode.test_literal_in.<locals>.pyfuncP  s    $$r    )rO  9r  r   8uha987r  r  r  r  s        r   test_literal_inTestUnicode.test_literal_inO  sP    	% V3A3DVT]E4L!/!6!6t!<  > 4r    c                     S n[        U5      n[        SSS9 H)  nU R                  U" U6 U" U6 SR                  U5      S9  M+     g )Nc                 F    SR                  U 5      SR                  U5      4$ )Nrv  cde)r   r   r,   s     r   rZ  0TestUnicode.test_literal_xyzwith.<locals>.pyfuncZ  s!    ##A&q(999r    r  r~  r  r  r  )r   r   r`  r  r  s       r   test_literal_xyzwith TestUnicode.test_literal_xyzwithY  sP    	: V a0DVT]E4L!/!6!6t!<  > 1r    c                     S n[        U5      nS H,  nU/nU R                  U" U6 U" U6 SR                  U5      S9  M.     g )Nc                 F    SR                  U 5      U R                  S5      4$ )Nrv  rO  rZ   r(   s    r   rZ  -TestUnicode.test_literal_find.<locals>.pyfuncc  s    ::a=!&&+--r    )rA  r  r  r  r  s        r   test_literal_findTestUnicode.test_literal_findb  sP    	. VA3DVT]E4L!/!6!6t!<  > r    c                     S n[        U5      n[         H,  nU/nU R                  U" U6 U" U6 SR                  U5      S9  M.     g )Nc                     U (       + $ r'   r$   r(   s    r   rZ  $TestUnicode.test_not.<locals>.pyfuncm  s	    5Lr    r  r  rz  r  s        r   test_notTestUnicode.test_notl  sP    	 V!A3DVT]E4L!/!6!6t!<  > "r    c                     S n[        U5      n/ SQnS/nSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )
capitalizer(   s    r   rZ  +TestUnicode.test_capitalize.<locals>.pyfuncw  s    <<>!r    )	   𐑏   𐑏𐑏   𐐧𐑏   𐑏𐐧
   X𐐧x𐑏u   hİu   ῒİu   ﬁnnish   AͅΣ   𐀀􀀀z*Results of "{}".capitalize() must be equalr   r  rz  r{  s          r   test_capitalizeTestUnicode.test_capitalizev  sj    	" V@ 11:!RD(72^CAVAYacjjmD Dr    c                 6   S n[        U5      n[         Vs/ s H  o3R                  5       PM     nn/ SQn/ SQnU Vs/ s H  o3S-  PM	     nn[        U-   U-   U-   U-    H,  nU/n	U R                  U" U	6 U" U	6 SR	                  U	5      S9  M.     g s  snf s  snf )Nc                 "    U R                  5       $ r'   )isupperr(   s    r   rZ  (TestUnicode.test_isupper.<locals>.pyfunc  r  r    AA12Aaa12au   大AA12Au   大aa12au   AAAǄAu	   A 1 1 大u   Ⅷ   ⅷr  r  r  r  r  r  r  r  r  )r   r_  upperr`  r  )
r0  rZ  r[  r)   uppersr  r|  fourxcpyrO  ri  s
             r   test_isupperTestUnicode.test_isupper  s    	 V%56%5'')%56R=#*+7aE7+!F*V3g=HA3DVT]E4L!/!6!6t!<  > I 7 ,s
   BBc                     S n[        U5      n[         H,  nU/nU R                  U" U6 U" U6 SR                  U5      S9  M.     g )Nc                 "    U R                  5       $ r'   )r.  r(   s    r   rZ  &TestUnicode.test_upper.<locals>.pyfunc  s    779r    r  r  rz  r  s        r   
test_upperTestUnicode.test_upper  sP    	 V!A3DVT]E4L!/!6!6t!<  > "r    c                     S n[        U5      n/ SQnS/nSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )casefoldr(   s    r   rZ  )TestUnicode.test_casefold.<locals>.pyfunc      ::<r    )r  hELlo   ß   ﬁ   Σr!  rt  r"  z(Results of "{}".casefold() must be equalr   r  rz  r{  s          r   test_casefoldTestUnicode.test_casefold  si    	  V. 118!RD(72^CAVAYacjjmD Dr    c                     S n[        U5      n/ SQn/ SQnSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )isalphar(   s    r   rZ  (TestUnicode.test_isalpha.<locals>.pyfunc  r  r    )r  r  r  r  r  r  r  rx  z'Results of "{}".isalpha() must be equalr   r  rz  r0  rZ  r[  r|  r  r  r   s          r   test_isalphaTestUnicode.test_isalpha  sg    	 V=8 8!RD(61G;AVAYacjjmD <r    c                     S n[        U5      n/ SQnSn[        U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )r   r(   s    r   rZ  (TestUnicode.test_isascii.<locals>.pyfunc  r  r    )r    z       érF  z'Results of "{}".isascii() must be equalr  rz  r  s         r   test_isasciiTestUnicode.test_isascii  sS    	 V H7!G+AVAYacjjmD ,r    c                     [         n[        U5      n/ SQnSn[        S/-   U-    H/  nU R                  U" U5      U" U5      UR	                  U5      S9  M1     g )N)	r  r  u   𐑏𐑏 𐑏𐑏u   𐐧𐑏 𐐧𐑏u   𐑏𐐧 𐑏𐐧u   X𐐧x𐑏 X𐐧x𐑏u   ﬁNNISHu	   AΣ ᾡxyu   AΣAz%Results of "{}".title() must be equalr   r  )r  r   r_  r`  r  r  s         r   
test_titleTestUnicode.test_title  sY    V? 6!RD(72AVAYacjjmD 3r    c                     S n[        U5      n/ SQnS/nSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )swapcaser(   s    r   rZ  )TestUnicode.test_swapcase.<locals>.pyfunc  r<  r    )r  r  r  r  r  r   r?     İr@     ͅΣr!     AͅΣar!  u   AΣͅ   Σͅ r@  r>  u   ῒr"  z(Results of "{}".swapcase() must be equalr   r  rz  r{  s          r   test_swapcaseTestUnicode.test_swapcase  si    	  V- 118!RD(72^CAVAYacjjmD Dr    c                 N   [         n[        U5      n[         Vs/ s H  o3R                  5       PM     nn/ SQn/ SQnXf Vs/ s H  o3S-  PM	     sn-  nSn[        U-   S/-   U-   U-    H/  nU R	                  U" U5      U" U5      UR                  U5      S9  M1     g s  snf s  snf )Nr)  r,  r  z'Results of "{}".islower() must be equalr   r  )r"  r   r_  r$  r`  r  )	r0  rZ  r[  r)   lowersr  r|  r  r   s	            r   test_islowerTestUnicode.test_islower  s     V%56%5'')%56RK7+7aE7++7!F*bT1F:WDAVAYacjjmD E 7 ,s   BB"c                     S n[        U5      n/ SQn/ SQnSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )isalnumr(   s    r   rZ  (TestUnicode.test_isalnum.<locals>.pyfunc	  r  r    )r  r  r  r     𝟶   𑁦   𐒠   🄇rx  z'Results of "{}".isalnum() must be equalr   r  rz  rG  s          r   test_isalnumTestUnicode.test_isalnum	  sh    	 VK8 8!RD(61G;AVAYacjjmD <r    c                     [         n[        U5      n/ SQn/ SQn/ SQnSnUR                  U5        Sn[        S/-   U-   U-   U-    H/  nU R	                  U" U5      U" U5      UR                  U5      S9  M1     g )Nr)  )r  r  r  r  u   𐐧𐐧r  r   rZ  )r@  r[  r!  r\  r]  u   򏿾r-  u   AΣ΢z%Results of "{}".lower() must be equalr   r  )r%  r   r  r_  r`  r  )	r0  rZ  r[  r  r|  sigmaextra_sigmar  r   s	            r   
test_lowerTestUnicode.test_lower	  s    VR7: &[!5!RD(61G;eCAVAYacjjmD Dr    c                     S n[        U5      n/ SQn/ SQnSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )	isnumericr(   s    r   rZ  *TestUnicode.test_isnumeric.<locals>.pyfunc/	      ;;= r    )r   rO  rw     ①   ¼   ٠
01234567890123456789ar  r  r  r  r  r     𑁥rh  ri  rj  rk  rx  z)Results of "{}".isnumeric() must be equalr   r  rz  r{  s          r   test_isnumericTestUnicode.test_isnumeric.	  i    	! VK
- :!RD(72^CAVAYacjjmD Dr    c                     S n[        U5      n/ SQn/ SQnSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )isdigitr(   s    r   rZ  (TestUnicode.test_isdigit.<locals>.pyfuncB	  r  r    )rx  ry  rz  r  r  r  r  r  r  r}  rh  ri  rj  rk  rx  z'Results of "{}".isdigit() must be equalr   r  rz  r{  s          r   test_isdigitTestUnicode.test_isdigitA	  si    	 V!
@ 8!RD(72^CAVAYacjjmD Dr    c                     S n[        U5      n/ SQn/ SQnSn[        S/-   U-   U-    H/  nU R                  U" U5      U" U5      UR                  U5      S9  M1     g )Nc                 "    U R                  5       $ r'   )	isdecimalr(   s    r   rZ  *TestUnicode.test_isdecimal.<locals>.pyfuncU	  rw  r    )r   rO  rw  rx  ry  rz  r{  r|  r  r  r  r  r  r  r}  rk  rh  ri  rj  rx  z)Results of "{}".isdecimal() must be equalr   r  rz  r{  s          r   test_isdecimalTestUnicode.test_isdecimalT	  r  r    c                     [         n[        U5      n/ SQnU H4  u  pEnU R                  U" XEU5      U" XEU5      SU< SU< SU< S35        M6     g )N
)rv  r   A)r   r  r  )r  r  r  )r=  r  r  )r  r  r  )r  rO  r  )r  r?  r  )r  r   r  )r  rA  r  )r  rP  r  r  '.replace('', 'r  )r~   r   r`  )r0  rZ  r[  r  r  old_strnew_strs          r   test_replaceTestUnicode.test_replaceg	  sU     V
 +0&HwVHw?"8g>&:; +0r    c                     [         n[        U5      n/ SQn/ SQnU HA  u  pVnU H5  nU R                  U" XVXx5      U" XVXx5      SU< SU< SU< SU< S3	5        M7     MC     g )Nr  )rv  r  r   r;  r  r  r  r  )r   r   r`  )	r0  rZ  r[  r  
count_testr  r  r  rk   s	            r   test_replace_with_count#TestUnicode.test_replace_with_count~	  sh    +V
 #
*/&Hw#  7!J!&x'!I"*GWe"EF $ +0r    c                 f   S n[        U5      nU R                  [        5       nU" SSSS5        S S S 5        SnU R                  U[	        WR
                  5      5        U R                  [        5       nU" SSSS5        S S S 5        S	nU R                  U[	        UR
                  5      5        U R                  [        5       nU" SSSS5        S S S 5        S	nU R                  U[	        UR
                  5      5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       NX= f)
Nc                 &    U R                  XU5      $ r'   r|   r   s       r   rZ  4TestUnicode.test_replace_unsupported.<locals>.pyfunc	  s    99Q5))r    
abababababbaqqqg      @z7Unsupported parameters. The parameters must be Integer.r   r  z!The object must be a UnicodeType.)r   r  r   r  r  r  )r0  rZ  r[  r  r  s        r   test_replace_unsupported$TestUnicode.test_replace_unsupported	  s    	* V{+v,eS1 ,Gc3v//01{+v,5!, ,1c3v//01{+v,a+ ,1c3v//01 ,+
 ,+
 ,+s#   D 4DD" 
D
D"
D0r$   N)r3  r4  r5  r6  r\  r	   rc  rh  rz  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,  r0  r6  rA  rD  rG  rO  rU  rZ  ra  rr  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  r
  r  r%  r-  r1  r6  r9  r<  r?  rB  rE  rI  rM  rV  rZ  r_  rd  rg  rj  r~  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r#  r1  r6  rA  rH  rQ  rT  r^  rb  rl  rq  r~  r  r  r  r  r  r7  r$   r    r   rV  rV    s   3
 &4 2 + A?,4 + , + , + , + , , 2 - 2	EA2F>"G$3&3"G&=&H*Q.@*E2 + @2$5( - =8
HM	62$5(	L9(96-$5:=:
HM:>(28=0=0L8Q:F:	:77N
A
AAKK*K
'2> !/ : !/ .-
D	FI,K2<:	6	E>&
D	65*J6A48 9&@ @M L*5, )7 :E"HATE""GHE *8 6 )7 6 '5 6 #1 6 #1 6B26>2,>>>>>E">&>EE$EE E&E E$E.E&E&E&;.F42r    rV  c                   8    \ rS rSrS rS rS rS rS rS r	Sr
g	)
TestUnicodeInTuplei	  c                     [         S 5       nU R                  UR                  5       U" 5       5        [         S 5       nU R                  UR                  5       U" 5       5        g )Nc                      SS:  $ )N)rT  bbr$   r$   r    r   r  9TestUnicodeInTuple.test_const_unicode_in_tuple.<locals>.f	      W$$r    c                      SS:  $ )N)ccr  r$   r$   r    r   r  r  	  r  r    r   r`  rw  r0  r  s     r   test_const_unicode_in_tuple.TestUnicodeInTuple.test_const_unicode_in_tuple	  sZ    		% 
	% 	ac*		% 
	% 	ac*r    c                     [         S 5       nU R                  UR                  5       U" 5       5        [         S 5       nU R                  UR                  5       U" 5       5        g )Nc                      SS:  $ )NrT  r  )r  r  r$   r$   r    r   r  @TestUnicodeInTuple.test_const_unicode_in_hetero_tuple.<locals>.f	      y((r    c                      SS:  $ )Nr  )rT  r~  r$   r$   r    r   r  r  	  r  r    r  r  s     r   "test_const_unicode_in_hetero_tuple5TestUnicodeInTuple.test_const_unicode_in_hetero_tuple	  sZ    		) 
	) 	ac*		) 
	) 	ac*r    c                 x    [         S 5       n[         H$  nU R                  U" U5      [        U5      5        M&     g )Nc                     U R                   $ r'   r  r   s    r   r  3TestUnicodeInTuple.test_ascii_flag_unbox.<locals>.f	  s    ;;r    )r   r_  r`  r   r  s      r   test_ascii_flag_unbox(TestUnicodeInTuple.test_ascii_flag_unbox	  s8    		 
	 "AQqT71:. "r    c                 J    [         S 5       nU R                  U" 5       S5        g )Nc                      Sn SnSnSnSR                  X/5      R                  SR                  X/5      R                  SR                  X/5      R                  SR                  X#/5      R                  4$ )Nrv  rY  r=  r#   ,)r   r  s1s2s3s4s       r   r  2TestUnicodeInTuple.test_ascii_flag_join.<locals>.f	  sp    BBB1BHHbX&00NNB8,66HHbX&00HHbX&002 2r    )r  r   r   r   r  r  s     r   test_ascii_flag_join'TestUnicodeInTuple.test_ascii_flag_join	  s(    		2 
	2 	l+r    c                 J    [         S 5       nU R                  U" 5       S5        g )Nc                  ~    Sn SnU S   R                   U SS  R                   US   R                   USS  R                   4$ )Nabc123u   🐍⚡🐍⚡🐍⚡r   r~  r  )r  r  s     r   r  5TestUnicodeInTuple.test_ascii_flag_getitem.<locals>.f	  sH    B(BqEOORV%5%5r!uqrF$$& &r    )r  r  r   r   r  r  s     r   test_ascii_flag_getitem*TestUnicodeInTuple.test_ascii_flag_getitem	  s(    		& 
	& 	l+r    c                 J    [         S 5       nU R                  U" 5       S5        g )Nc                      Sn SnSnSnX-   R                   X-   R                   X#-   R                   U S-  R                   US-  R                   4$ )Nrv  rY  r=  r#   r~  r  r  s       r   r  5TestUnicodeInTuple.test_ascii_flag_add_mul.<locals>.f	  s[    BBB1BW''W''W''!V&&!V&&	( (r    )r  r   r   r  r   r  r  s     r   test_ascii_flag_add_mul*TestUnicodeInTuple.test_ascii_flag_add_mul	  s(    			( 
		( 	o.r    r$   N)r3  r4  r5  r6  r  r  r  r  r  r  r7  r$   r    r   r  r  	  s     ++/,,/r    r  c                   2    \ rS rSrS rS rS rS rS rSr	g)	TestUnicodeIterationi	  c                 |    [         n[        U5      n[         H!  nU R                  U" U5      U" U5      5        M#     g r'   )r  r   r_  rX  r0  rZ  r[  rO  s       r   test_unicode_iter&TestUnicodeIteration.test_unicode_iter	  s2    V!A##F1IuQx8 "r    c                 ^    [         n[        U5      nU R                  U" 5       U" 5       5        g r'   )r  r   rX  rY  s      r   test_unicode_literal_iter.TestUnicodeIteration.test_unicode_literal_iter
  s$    %V%'2r    c                 |    [         n[        U5      n[         H!  nU R                  U" U5      U" U5      5        M#     g r'   )r  r   r_  rX  r  s       r   test_unicode_enumerate_iter0TestUnicodeIteration.test_unicode_enumerate_iter
  s2    (V!A##F1IuQx8 "r    c                     U R                  5         [        n[        U5      nX4 H6  n[         H)  nU R	                  [
        5         U" U5        S S S 5        M+     M8     g ! , (       d  f       MA  = fr'   )r  r  r   r_  r  StopIteration)r0  rZ  r[  r  rO  s        r   test_unicode_stopiteration_iter4TestUnicodeIteration.test_unicode_stopiteration_iter
  sV    !+VA%&&}5aD 65 & !55s   	A  
A/c                     [         n[        U5      nX4 H(  nU R                  [        5         U" 5         S S S 5        M*     g ! , (       d  f       M<  = fr'   )r  r   r  r  )r0  rZ  r[  r  s       r   'test_unicode_literal_stopiteration_iter<TestUnicodeIteration.test_unicode_literal_stopiteration_iter
  s>    3VA""=1 21 !11s   A
A	r$   N)
r3  r4  r5  r6  r  r  r  r  r  r7  r$   r    r   r  r  	  s    93
9r    r  c                   8    \ rS rSrS rS rS rS rS rS r	Sr
g	)
TestUnicodeAuxillaryi
  c                     [         n[        U5      n[         H*  nU H!  nU R                  U" U5      U" U5      5        M#     M,     g r'   )r'  r   r_  rX  )r0  rZ  r[  exrO  s        r   test_ordTestUnicodeAuxillary.test_ord!
  s<    V"B''q	58<  #r    c                    U R                  5         [        n[        U5      nX4 HW  nS HN  nU R                  [        5       nU" U5        S S S 5        U R                  S[        WR                  5      5        MP     MY     U R                  [        5       nU" S5        S S S 5        U R                  [        [        WR                  5      5        g ! , (       d  f       N= f! , (       d  f       NI= f)N)r   rv  zord() expected a charactergGz?)
r  r'  r   r  	TypeErrorr  r  r  r   r   )r0  rZ  r[  r  chr  s         r   test_ord_invalid%TestUnicodeAuxillary.test_ord_invalid(
  s    !V OD!&&y1VH 2:!&"2"235 " $ {+v$K ,lC(8(8$9: 21 ,+s   	C	C!
C!
C/c                     [         n[        U5      n[         H5  nU H,  n[        U5      nU R	                  U" U5      U" U5      5        M.     M7     S[
        4 H!  nU R	                  U" U5      U" U5      5        M#     g )Nr   )r*  r   r_  r   rX  r   )r0  rZ  r[  r  r)   rO  s         r   test_chrTestUnicodeAuxillary.test_chr;
  sn    V"BF''q	58<  #
 |$A##F1IuQx8 %r    c                    [         n[        U5      nX4 H`  nS[        S-   4 HN  nU R                  [        5       nU" U5        S S S 5        U R                  S[        WR                  5      5        MP     Mb     U R                  [        5       nU" S5        S S S 5        U R                  [        [        WR                  5      5        g ! , (       d  f       N= f! , (       d  f       NI= f)Nr  r  zchr() arg not in rangerv  )
r*  r   r   r  r  r  r  r  r   r   )r0  rZ  r[  r  vr  s         r   test_chr_invalid%TestUnicodeAuxillary.test_chr_invalidF
  s    V OD,*+&&z2fG 36F<L<L8MN , $ {+v%L ,lC(8(8$9: 32
 ,+s   	C		C	
C
C(c                 "  ^ S m[        T5      S 5       n[        U4S j5       nSnU R                  UR                  U5      U" U5      5        U R	                  [
        R                  [
        R                  R                  R                  5        g )Nc                     g)NTr$   r(   s    r   bar7TestUnicodeAuxillary.test_unicode_type_mro.<locals>.barX
  s    r    c                    ^ Sm[        U [        R                  5      (       a!  [        U [        R                  5      (       a  SmU4S j$ )NFTc                    > T$ r'   r$   r)   oks    r   <lambda>LTestUnicodeAuxillary.test_unicode_type_mro.<locals>.ol_bar.<locals>.<lambda>a
  s    Rr    )
isinstancer   r  Hashabler  s    @r   ol_bar:TestUnicodeAuxillary.test_unicode_type_mro.<locals>.ol_bar[
  s7    B!U..//a00Br    c                    > T" U 5      $ r'   r$   )strinstr  s    r   rs  7TestUnicodeAuxillary.test_unicode_type_mro.<locals>.fooc
  s    w<r    rv  )
r   r   r`  rw  r  r   r  rf  r1  __mro__)r0  r  rs  instr  s       @r   test_unicode_type_mro*TestUnicodeAuxillary.test_unicode_type_mroV
  s|    	 
#	  
	  
	  
	  T*CI6enne&8&8&B&B&J&JKr    c                 :   S nS nS nS nS nU R                  U" S5      [        U5      " S5      5        U R                  U" S5      [        U5      " S5      5        U R                  U" S5      [        U5      " S5      5        S	S
/n[        U5      " U5      nS[        U5       S3nU R                  Xx5        [        [        4n	U R                  U	5       n
[        U5      " S	S
/5        SSS5        [        S;   a(  SnU R                  U[        W
R                  5      5        OA[        S;   a(  SnU R                  U[        W
R                  5      5        O[        [        5      eU R                  U" 5       [        U5      " 5       5        g! , (       d  f       N= f)z@test f-string support, which requires bytecode handling
        c                     SU S-    S3$ )NAA_r  _Br$   r  s    r   impl12TestUnicodeAuxillary.test_f_strings.<locals>.impl1o
  s    Qr?"r    c                     U S-    $ r  r$   r  s    r   impl22TestUnicodeAuxillary.test_f_strings.<locals>.impl2s
  s    !eWr    c                     SU  3$ )NABC_r$   r  s    r   impl32TestUnicodeAuxillary.test_f_strings.<locals>.impl3w
  s    !:r    c                     SU S 3$ )Nr  rw  r$   r  s    r   impl42TestUnicodeAuxillary.test_f_strings.<locals>.impl4{
  s    !A<r    c                      gr   r$   r$   r    r   impl52TestUnicodeAuxillary.test_f_strings.<locals>.impl5
  s    r    r  r~  DEr  BzABC_<object type:r  N))r  r  z,Use of unsupported opcode (FORMAT_WITH_SPEC)))r  rm  )r  r  )r  r_  z*format spec in f-strings not supported yet)r`  r   r   r   r   r  r   r  r  r  NotImplementedError)r0  r  r  r  r  r  list_arggotexpectedunsupported_errorsr  r  s               r   test_f_strings#TestUnicodeAuxillary.test_f_stringsk
  sZ   	#			 	 	q4;q>2q4;q>2td5k$&78 :5k(#&vh'7&8:' /0HI12fKc
# 3
"@CMM#s6#3#34555>CMM#s6#3#345%i00$u+-0 32s   F
Fr$   N)r3  r4  r5  r6  r  r  r  r  r  r'  r7  r$   r    r   r  r  
  s!    =;&	9; L*.1r    r  __main__)t	itertoolsr   r   numbar   r   
numba.corer   unittestnumba.tests.supportr   r	   r
   numba.core.errorsr   r   r   numba.cpython.unicoder   numba.core.types.functionsr   numba.extendingr   numba.core.utilsr   r   r%   r*   r.   r3   r7   r;   r>   rA   rD   rG   rI   rK   rM   rO   rQ   rS   rX   r\   ra   re   rh   rl   rn   rq   rv   rx   rz   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   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  rJ  rV  r  r  r  r3  mainr$   r    r   <module>r5     s>    "    K K9 9 . 3 $ &(,
!"""#"!)"' % )"+#,!  & &
  "! H|2( |2~?J/ J/Z!8 !Hz18 z1z zMMO r    