+
    Bij                         ^ RI t ^ RIt^ RIt^ RIt^ RIHt R tR t ! R R] P                  4      t	]
R8X  d   ] P                  ! 4        R# R# )    N)	ALWAYS_EQc              #      "   W,
          V,          ^ 8  d-   WV,
          V,          ,          pW8w  d   V x  W,          p K  R# R# 5ir   N startstopsteps   &&&&/usr/lib/python3.14/test/test_range.pypyranger   
   sB     ! 	%%mKME 	 "s   AAc                 b    WV,
          V,          ,          p\        W,
          W,
          V) 4      # N)r   r   s   &&&r   pyrange_reversedr      s(    T\T!!D4;te44    c                      a  ] tR t^t o R!R ltR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R t"V t#R# )"	RangeTestNc           	        Ve-   \         P                  ! W4      p\         P                  ! W$4      p\        4       p\         P                  ! WVR7      p\	        V4       F  w  pw  rW8X  d   K  W8X  d$   V P                  RP                  W7V	4      4       K9  W8X  d$   V P                  RP                  W8V4      4       Kb  V P                  RP                  W7W4      4       K  	  R # )N)	fillvaluez;{}: iterator ended unexpectedly at position {}; expected {}z/{}: unexpected excess element {} at position {}z5{}: wrong element at position {}; expected {}, got {})	itertoolsisliceobjectzip_longest	enumeratefailformat)
selfxsystest_idlimitsentinelpairsixys
   &&&&&     r   assert_iterators_equal RangeTest.assert_iterators_equal   s     !!",B!!",B8%%bA"5)IAvv		 88>w18MO		 ((.w1(=? 		 006w10HJ *r   c           
     p   V P                  \        \        ^4      4      . RO4       V P                  \        \        ^^4      4      . R	O4       V P                  \        \        ^ 4      4      . 4       V P                  \        \        R
4      4      . 4       V P                  \        \        ^^
^4      4      . RO4       V P                  \        \        ^RR
4      4      . RO4       ^
p^dp^2pV P                  \        \        W^,           4      4      W^,           .4       V P                  \        \        V^,           VR4      4      V^,           V^,           .4       V P                  \        \        V^,           VR4      4      V^,           V^,           .4       \        \        WV4      4      pV P                  W4       V P	                  W$4       V P                  \        V4      ^4       \        \        W!V) 4      4      pV P                  W$4       V P	                  W4       V P                  \        V4      ^4       \        \        V) V) V) 4      4      pV P                  V) V4       V P	                  V) V4       V P                  \        V4      ^4       V P                  \        \        4       V P                  \        \        ^^^^4       V P                  \        \        ^^^ 4       V P                  \        \        R^^4       V P                  \        \        ^R^4       V P                  \        \        ^^R4       V P                  \        \        RRR4       V P                  \        \        ^ R4       V P                  \        \        ^ ^*R4       V P                  \        \        ^ \        P                  \        P                  ^,
          4      4      ^4       \        \        P                  ) \        P                  ^4      pV P                  \        V4      \        P                  4       R# )           g       @      ?}Ô%IT\nTspamN)r         )r/   r0   r)      )r/   r1      )   r0   r5   )assertEquallistrangeassertInassertNotInlenassertRaises	TypeError
ValueErrorsysmaxsize)r   abcseqrs   &     r   
test_rangeRangeTest.test_range.   s   eAh3eAqk*L9eAh,eBi"-eAr1o.	:eAr2./@eAsm,qA#h7eAaCB/01Q3!*=eAaCB/01Q3!*=5q>"a S1%5r?#a S1%5!aR!$%qb#!S!S1%)U+)UAq!Q7*eQ15)UCA6)UAsA6)UAq#6)UE5%@)UAv6)UAr6:U1ckk3;;q=ABAF3;;,Q/Q-r   c           
     $   V P                  \        R 4      ;_uu_ 4        \        4        RRR4       V P                  \        R4      ;_uu_ 4        \        ^^^^^^4       RRR4       R#   + '       g   i     LI; i  + '       g   i     R# ; i)z)range expected at least 1 argument, got 0Nz)range expected at most 3 arguments, got 6)assertRaisesRegexr@   r;   r   s   &r   %test_range_constructor_error_messages/RangeTest.test_range_constructor_error_messages^   s{    ##;
 
 G	
 ##;
 
 !Q1a#	
 

 

 
 
s   A+A>+A;	>B	c           	     	   \        RR^4      pV P                  \        V4      ^4       V P                  \        \        V4      4      ^4       \        RR^4      pV P                  \        V4      ^ 4       V P                  \        \        V4      4      ^ 4       V P	                  V4       \        RRR4      pV P                  \        V4      ^ 4       V P                  \        \        V4      4      ^ 4       V P	                  V4       \        RRR4      pV P                  \        V4      ^4       V P                  \        \        V4      4      ^4       V P                  V4       \        ^^d,          ) 4      \        ^ ^^d,          ) 4      \        ^ ^^d,          R4      3 F/  pV P                  \        V4      . 4       V P	                  V4       K1  	  \        ^
\        P                  ,          4      p\        ^d\        P                  ,          4      p\        ^2\        P                  ,          4      pV P                  \        \        W"^,           4      4      W"^,           .4       V P                  \        \        V^,           VR4      4      V^,           V^,           .4       V P                  \        \        V^,           VR4      4      V^,           V^,           .4       \        \        W#V4      4      pV P                  W%4       V P                  W54       V P                  \        V4      ^4       V P                  V^ ,          V4       V P                  VR,          W$,           4       \        \        W2V) 4      4      pV P                  W54       V P                  W%4       V P                  \        V4      ^4       V P                  V^ ,          V4       V P                  VR,          W4,
          4       \        \        V) V) V) 4      4      pV P                  V) V4       V P                  V) V4       V P                  \        V4      ^4       V P                  V^ ,          V) 4       V P                  VR,          V) V,
          4       R# )
   N      Fx:^V l   
  Fx:^V r2   r5   r8   )r;   r9   r>   r:   assertFalse
assertTrueintrB   rC   r<   r=   )r   r$   rD   rE   rF   rG   s   &     r   test_large_operandsRangeTest.test_large_operandsk   s|   &)Q'Q#T!Wq))VQ'Q#T!Wq)&)R(Q#T!Wq))VR(Q#T!Wq) C.AsF7#1c62&(A T!Wb)Q	( S[[ !ckk!"S[[ !eAsm,qA#h7eAaCB/01Q3!*=eAaCB/01Q3!*=5q>"a S1%Q#R!#&5r?#a S1%Q#R!#&5!aR!$%qb#!S!S1%Q!$R1"Q$'r   c                   R  p\         P                  ) p\         P                  pW2,
          p\        W#4      pV P                  W%4       V P	                  W54       V P                  \        \        V4       V P                  V4       V P                  V! V4      V4       V P                  V^ ,          V4       \         P                  ^,           pV P                  WV,          W&,           4       V P                  WVV^,            ^ ,          W&,           4       V P                  \        4      ;_uu_ 4        WT) ^,
          ,           RRR4       V P                  \        4      ;_uu_ 4        WT,           RRR4       ^ p^\         P                  ,          pW2,
          p\        W#4      pV P                  W%4       V P	                  W54       V P                  \        \        V4       V P                  V4       V P                  V! V4      V4       V P                  V^ ,          V4       \         P                  ^,           pV P                  WV,          W&,           4       V P                  WVV^,            ^ ,          W&,           4       V P                  \        4      ;_uu_ 4        WT) ^,
          ,           RRR4       V P                  \        4      ;_uu_ 4        WT,           RRR4       ^ p\         P                  ^
,          p^\         P                  ,          p^W2,
          V,          ,           p\        W#V4      pV P                  W%4       V P	                  W54       V P                  \        \        V4       V P                  V4       V P                  V! V4      V4       V P                  V^ ,          V4       \         P                  ^,           pV P                  WV,          W&V,          ,           4       V P                  WVV^,            ^ ,          W&V,          ,           4       V P                  \        4      ;_uu_ 4        WT) ^,
          ,           RRR4       V P                  \        4      ;_uu_ 4        WT,           RRR4       \         P                  ^
,          p^ pR\         P                  ,          p^W2,
          V,          ,           p\        W#V4      pV P                  W%4       V P	                  W54       V P                  \        \        V4       V P                  V4       V P                  V! V4      V4       V P                  V^ ,          V4       \         P                  ^,           pV P                  WV,          W&V,          ,           4       V P                  WVV^,            ^ ,          W&V,          ,           4       V P                  \        4      ;_uu_ 4        WT) ^,
          ,           RRR4       V P                  \        4      ;_uu_ 4        WT,           RRR4       R#   + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL; i  + '       g   i     EL1; i  + '       g   i     EL; i  + '       g   i     L; i  + '       g   i     R# ; i)c                      \        V 4      pV#   \         dA    T ^,          T ^ ,          ,
          p^T R,          T ^ ,          ,
          T,          ,           p T# i ; i)r/   r5   )r>   OverflowError)r$   lengthr
   s   &  r   
_range_len.RangeTest.test_large_range.<locals>._range_len   sY    6Q M ! 6tad{quqt|45M6s    AAANr8   )rB   rC   r;   r<   r=   r?   rZ   r>   rT   r9   
IndexError)r   r\   rD   rE   expected_lenr$   idxrF   s   &       r   test_large_rangeRangeTest.test_large_range   s   	 [[LKKu!Ka-a0A51q!kk!m's1ua!%0z**mAo +z**O + Ou!Ka-a0A51q!kk!m's1ua!%0z**mAo +z**O + KKOckkMAEa<'!Na-a0A51q!kk!mE+s1ua!U)4z**mAo +z**O + KKOs{{NAEa<'!Na-a0A51q!kk!mE+s1ua!U)4z**mAo +z**O +*u +*****  +*****" +*****" +****s`   1X&'	X:Y	Y"=Y63	Z
Z	Z1&X7	:Y	Y	"Y3	6Z	
Z	Z.	1[	c           	        V P                  \        \        4       V P                  \        \        ^^^^4       V P                  \        \        ^^^ 4       \	        ^
\
        P                  ,          4      pV P                  \        \        W^,           \	        ^ 4      4       V P                  \        \        RRR4       V P                  \        \        RRR4       V P                  \        \        ^ R4       V P                  \        \        ^ ^*R4       V P                  \        \        R4       V P                  \        \        ^ R4       V P                  \        \        R^ 4       V P                  \        \        RR4       V P                  \        \        ^ ^ R4       V P                  \        \        ^ R^4       V P                  \        \        ^ RR4       V P                  \        \        R^ ^4       V P                  \        \        R^ R4       V P                  \        \        RR^4       V P                  \        \        RRR4       R# )r/   r+   r,   r-   r.   r*   N)r?   r@   r;   rA   rU   rB   rC   )r   rD   s   & r   test_invalid_invocation!RangeTest.test_invalid_invocation   s   )U+)UAq!Q7*eQ15S[[ !*eQAs1v>)UBB7)UE5%@)UAv6)UAr6: 	)UC0)UAs3)UC3)UC5)UAq#6)UAsA6)UAsC8)UCA6)UCC8)UCa8)UCc:r   c                d  a \        ^4      pV P                  VP                  ^ 4      ^ 4       V P                  VP                  ^4      ^4       V P                  \        VP                  ^4       \        R^4      pV P                  VP                  ^ 4      ^4       V P                  VP                  ^ 4      ^4       V P                  \        VP                  4        ! R R\        4      o ! V3R lR4      p\        ^4      pV P                  SVP                  V! 4       4       \        R^4      pV P                  VP                  ^ 4      ^4       V P                  \        ^^
^4      P                  ^4      ^4       V P                  \        ^RR4      P                  R	4      ^4       V P                  \        R
4      P                  ^4      ^4       V P                  \        R
4      P                  R4      R4       V P                  \        \        ^^^d,          ^4      P                  ^^W,          4       V P                  \        ^^^d,          ^4      P                  ^^W,          ^,           4      ^^V,          4       V P                  \        ^
4      P                  \        4      ^ 4       R# )r0   c                       ] tR tRtRtR# )$RangeTest.test_index.<locals>.BadExci  r   N)__name__
__module____qualname____firstlineno____static_attributes__r   r   r   BadExcrh     s    r   rn   c                   .   <a  ] tR tRt o V3R ltRtV tR# )$RangeTest.test_index.<locals>.BadCmpi  c                $   < V^8X  d   S! 4       hR# )r0   Fr   )r   otherrn   s   &&r   __eq__+RangeTest.test_index.<locals>.BadCmp.__eq__  s    A: (Nr   r   Nri   rj   rk   rl   rs   rm   __classdictcell__)__classdict__rn   s   @r   BadCmprp     s      r   rx   Nr8   r2   r4   rR   l   Fx:^V )	r;   r9   indexr?   rA   countr@   	Exceptionr   )r   urx   rD   rn   s   &   @r   
test_indexRangeTest.test_index  s   !HQ'Q'*aggq1"aLQ'Q')QWW-	Y 		 	 !H&!''684"aLQ'q"a..q115q#r*004a8v,,Q/3v,,Z8*E*eAq#vq&9&?&?BGq!S&!,221b57;QUCr3Q7r   c                h   ^\         P                  ,          p^*p ! R R4      pV P                  \        \	        V! V4      V! V^,           4      4      4      V.4       V P                  \        \	        V! V4      V! V^,           4      4      4      V.4        ! R R4      pV P                  \        \        V! 4       4        ! R R4      pV P                  \        \        V! 4       4       V P                  \	        ^
4      RV! ^4       \	        ^4      4       V P                  \        4      ;_uu_ 4        \	        ^ ^
4      RV! 4         RRR4       V P                  \        4      ;_uu_ 4        \	        ^ ^
4      RV! 4         RRR4       R#   + '       g   i     LL; i  + '       g   i     R# ; i)r0   c                   ,   a  ] tR tRt o R tR tRtV tR# )+RangeTest.test_user_index_method.<locals>.Ii9  c                &    \        V4      V n        R # r   )rU   n)r   r   s   &&r   __init__4RangeTest.test_user_index_method.<locals>.I.__init__:  s    Qr   c                    V P                   # r   r   rM   s   &r   	__index__5RangeTest.test_user_index_method.<locals>.I.__index__<  s    vvr   r   N)ri   rj   rk   rl   r   r   rm   rv   rw   s   @r   Ir   9  s       r   r   c                   &   a  ] tR tRt o R tRtV tR# ),RangeTest.test_user_index_method.<locals>.IXiB  c                    \         hr   )RuntimeErrorrM   s   &r   r   6RangeTest.test_user_index_method.<locals>.IX.__index__C  s    ""r   r   Nri   rj   rk   rl   r   rm   rv   r   s   @r   IXr   B  s     # #r   r   c                   &   a  ] tR tRt o R tRtV tR# ),RangeTest.test_user_index_method.<locals>.INiH  c                    R # )znot a numberr   rM   s   &r   r   6RangeTest.test_user_index_method.<locals>.IN.__index__I  s    %r   r   Nr   r   s   @r   INr   H  s     & &r   r   N)rB   rC   r9   r:   r;   r?   r   r@   )r   bignumsmallnumr   r   r   s   &     r   test_user_index_method RangeTest.test_user_index_method4  sC   3;;	 	
 	eAfIq!}=>IeAhK8a<ABXJO	# 	# 	,rt4	& 	& 	)UBD1 	r5AaD)584|,,!RL"$ - y))!RL"$ *) -, *))s   4F.F F	 F1	c           	     d   V P                  \        ^4      P                  R4      ^ 4       V P                  \        ^4      P                  ^ 4      ^4       V P                  \        ^4      P                  ^4      ^4       V P                  \        ^4      P                  ^4      ^4       V P                  \        ^4      P                  ^4      ^ 4       V P                  \	        \        ^4      P                  R4      4      \
        4       V P                  \	        \        ^4      P                  ^4      4      \
        4       V P                  \        R4      P                  ^4      ^4       V P                  \        R4      P                  R4      ^ 4       V P                  \        ^4      P                  ^4      ^4       V P                  \        ^^^d,          ^4      P                  ^^W,          4      ^ 4       V P                  \        ^^^d,          ^4      P                  ^^W,          ^,           4      ^4       V P                  \        ^
4      P                  \        4      ^
4       V P                  \        \        \        P                  \        P                  ^
,           4      4      ^
4       R# )r)   Nr5   rR   )r9   r;   r{   assertIstyperU   rz   r   r>   rB   rC   rM   s   &r   
test_countRangeTest.test_countW  s   q+Q/q*A.q*A.q*A.q*A.d58>>"-.4d58>>!,-s3v,,Q/3v,,V4a8q*A.q!S&!,221b591=q!S&!,221b57;Q?r3R8U3;;B?@"Er   c           	         V P                  \        \        ^4      4      R4       V P                  \        \        ^^4      4      R4       V P                  \        \        ^^^4      4      R4       R# )r/   zrange(0, 1)zrange(1, 2)zrange(1, 2, 3)N)r9   reprr;   rM   s   &r   	test_reprRangeTest.test_repri  sS    eAh7eAqk*M:eAq!n-/?@r   c                   RRRRRR^^A,          ^^A,          ^,           3.p\        \        P                  ^,           4       F  pV F{  pV P                  W#R7      ;_uu_ 4        \        V!  pV P	                  \        \        P                  ! \        P                  ! WB4      4      4      \        V4      4       RRR4       K}  	  K  	  R#   + '       g   i     K  ; i)	   )prototestNr   r      irQ      r)   r5   r      r)   r8   r0   r0   )r;   pickleHIGHEST_PROTOCOLsubTestr9   r:   loadsdumps)r   	testcasesr   trH   s   &    r   test_picklingRangeTest.test_picklingn  s    GY *q"uaeAg.>@	622Q67E\\\66q	A$$T&,,v||A7M*N%O%)!W. 76  8666s   #AC	Cc                    . ROpR F|  pVV^,
          V^,
          3^V,          ^V,          ^,           3V^,
          V^,
          ^3V) ^,           V) R3^^V^,
          3RRV) 3^V^,
          V^,
          3RV) V) 3.,          pK~  	  \        \        P                  ^,           4       EF2  pV EF'  pV P                  W4R7      ;_uu_ 4        \	        \        V!  4      ;rV\        \        V!  4      p\        P                  ! WS4      p\        P                  ! V4      pV P                  \        V4      \        V4      4       V P                  \        V4      V4       \        P                  ! V4      p \        V4       \        P                  ! YS4      p\        P                  ! T4      pT P                  \        T4      TR,          4       RRR4       EK*  	  EK5  	  R#   \         d     RRR4       EKJ  i ; i  + '       g   i     EK`  ; i)r   )r   r   N:r/   NNr5   r8   )r   r   r   r   r   r   )l        l            )r;   r   r   r   iterr:   r   r   r9   r   nextStopIteration)	r   r   Mr   r   ititorgdatads	   &        r   test_iterator_pickling RangeTest.test_iterator_picklingx  s   !	A1ac
QqS!A#a%L1ac11qb"~Aqsb"qb\AaC1QB|	 I  622Q67E\\\33!%eQi0Bq	?DR/AaB$$T%[$r(;$$T"Xt4aB!R R/AaB$$T"XtBx8! 43  8 ) !  43! 433s2   B'G;	3G >AG;	 G8+G;	7G88G;	;Hc                   \        \        P                  ^,           4       F  pV P                  VR7      ;_uu_ 4        \	        \        R4      4      pVP                  R4       \        P                  ! W!4      p\        P                  ! V4      pV P                  \        V4      R4       RRR4       K  	  R#   + '       g   i     K  ; i)r/   )r   Nl       l       )
r;   r   r   r   r   __setstate__r   r   r9   r   )r   r   r   r   s   &   r   (test_iterator_pickling_overflowing_index2RangeTest.test_iterator_pickling_overflowing_index  s    622Q67EE**%	*+	*LL+\\!_  b95 +* 8***s   A-B99C
c                   \        \        P                  ^,           4       F  p\        ^^A,          ^^A,          ^,           4      p\        V4      p \	        V4      pV^^A,          ^,           8X  g   K#   \        P
                  ! Y14      p\        P                  ! T4      pT P                  \        T4      . 4       T P                  \        T4      . 4       K  	  R# r/   N	r;   r   r   r   r   r   r   r9   r:   r   r   rH   r#   r   i2s   &     r    test_exhausted_iterator_pickling*RangeTest.test_exhausted_iterator_pickling  s    622Q67EaeQU1W%AQAG2a<Q&AaBT!Wb)T"Xr* 8r   c                p   \        \        P                  ^,           4       F  p\        ^4      p\        V4      p \	        V4      pV^8X  g   K   \        P
                  ! Y14      p\        P                  ! T4      pT P                  \        T4      . 4       T P                  \        T4      . 4       K  	  R# r   r   r   s   &     r   &test_large_exhausted_iterator_pickling0RangeTest.test_large_exhausted_iterator_pickling  s    622Q67Eb	AQAG7Q&AaBT!Wb)T"Xr* 8r   c                    . ROpV F6  p\         P                  ! V4      pV P                  \        V4      . RO4       K8  	  R# )<   c__builtin__
iter
(c__builtin__
xrange
(I10
I20
I2
tRtRI2
b.N)
r   s6   c__builtin__
iter
(c__builtin__
xrange
(K
KKtRtRKb.s6   c__builtin__
iter
c__builtin__
xrange
K
KKRRKb.s/   cbuiltins
iter
cbuiltins
range
K
KKRRKb.s<   1       builtinsiterbuiltinsrangeK
KKRRKb.sd   c__builtin__
iter
(c__builtin__
xrange
(L-36893488147419103232L
I20
I2
tRtRL18446744073709551623L
b.sa   c__builtin__
iter
(c__builtin__
xrange
(L-36893488147419103232L
KKtRtRL18446744073709551623L
b.sH   c__builtin__
iter
c__builtin__
xrange
	        KKRR	       b.sA   cbuiltins
iter
cbuiltins
range
	        KKRR	       b.sN   C       builtinsiterbuiltinsrange	        KKRR	       b.         )r   r   r9   r:   )r   r   r   r   s   &   r   test_iterator_unpickle_compat'RangeTest.test_iterator_unpickle_compat  s6    
	 AaBT"X|4 r   c                D   \        \        ^
^^4      4      pVP                  ^4       V P                  \	        V4      . RO4       \        \        ^
^^4      4      pVP                  ^4       V P                  \	        V4      ^^
.4       \        \        ^^A,          ) ^^4      4      pVP                  R4       V P                  \	        V4      . RO4       \        \        ^
^^A,          ^4      4      pVP                  R4       V P                  \	        V4      ^^
.4       R# )rQ   Nr   l           l    )r   r;   r   r9   r:   reversed)r   r   s   & r   test_iterator_setstate RangeTest.test_iterator_setstate  s    %B"#
b<0eBA&'
bB8,%BA&'
	"b<0eB2q)*
	"bB8,r   c                    V P                  \        4      ;_uu_ 4        \        . ^R4       RRR4       R#   + '       g   i     R# ; i)r/   Nr5   )r?   r@   r;   rM   s   &r   test_odd_bugRangeTest.test_odd_bug  s0     y))"a *)))s	   6A	c                @   V P                  R \        ^4      4       V P                  R\        ^4      4       V P                  R\        ^4      4       V P                  \        \        ^4      4        ! R R4      pV P                  V! 4       \        ^4      4       V P                  \	        V! 4       4      \        ^4      4        ! R R\        4      pV P                  V! ^4      \        ^
4      4       V P                  V! ^4      \        \        ^
4      4      4       R# )r+   Tc                   ,   a  ] tR tRt o R tR tRtV tR# ) RangeTest.test_types.<locals>.C2i  c                    ^# r/   r   rM   s   &r   __int__(RangeTest.test_types.<locals>.C2.__int__  s    ar   c                    ^# r   r   rM   s   &r   r   *RangeTest.test_types.<locals>.C2.__index__  s    r   r   N)ri   rj   rk   rl   r   r   rm   rv   r   s   @r   C2r     s     '))r   r   c                   &   a  ] tR tRt o R tRtV tR# ) RangeTest.test_types.<locals>.C3i  c                    R # )Tr   )r   rr   s   &&r   rs   'RangeTest.test_types.<locals>.C3.__eq__  s    Dr   r   Nru   r   s   @r   C3r     s     00r   r   Ny      ?        )r<   r;   r   r=   rU   r:   )r   r   r   s   &  r   
test_typesRangeTest.test_types  s     	c58$dE!H%dE!H%iq*	* 	* 	uQx(c"$iq*	1 	1bfeBi(bfd59o.r   c                (   \        ^ ^e^4      pV P                  ^ V4       V P                  ^V4       V P                  ^V4       V P                  ^cV4       V P                  ^dV4       V P                  ^eV4       \        ^ RR4      pV P                  ^ V4       V P                  RV4       V P                  RV4       V P                  RV4       \        ^ RR4      pV P                  RV4       V P                  RV4       V P                  RV4       R# )r   Nr5   r8   ir;   r<   r=   r   rH   s   & r   test_strided_limitsRangeTest.test_strided_limits  s    !S!aAaQc1a !S"ab!c1a !S"c1a a r   c                    \        ^ 4      pV P                  ^ V4       V P                  ^V4       \        ^ R4      pV P                  ^ V4       V P                  RV4       V P                  ^V4       R# )r   Nry   r5   )r;   r=   r   s   & r   
test_emptyRangeTest.test_empty  sf    !HAA!SMAQAr   c           
     .   R UUUu. uF2  pV) V) ^,          ^ V^,          V3 F  pR F  pW#,           NK  	  K  	  K4  	  ppppV UUUu. uF  pV F  pR F  pWVV3NK	  	  K  	  K  	  ppppVR.,          pV F  w  rVp\        WVV4      p	\        WVV4      p
RP                  WVV4      pV P                  WV^dR7       \	        \        WVV4      4      p	\        WVV4      p
RP                  WVV4      pV P                  WV^dR7       K  	  R# u upppi u upppi )	r0   zrange({}, {}, {}))r    zreversed(range({}, {}, {}))N)l        l            )r8   r5   r   r/   r0   )         i   r8   r5   r/   r0   )r   l    r/   )r;   r   r   r&   r   r   )r   r   basejigglelimitsr   endr
   test_rangesiter1iter2r   s   &           r   test_range_iteratorsRangeTest.test_range_iterators  sN    *3)a !rA2q5!QT15d 1f -- !2  5  ) 	 3
 %+C$*5"(3#A4 D) $B *"( *$* 	 C 	,-- +E%d+EE-E)00TBG''gS'IU5t45E$U6E3::5tLG''gS'I !,3Cs   8D		Dc                    \        \        \        ^ 4      4      4      pV P                  \        V^^^4       \        \        \        ^R,          4      4      4      pV P                  \        V^^^4       R# )r   i  N)r   r   r;   r?   r@   )r   rangeiter_typelong_rangeiter_types   &  r   test_range_iterators_invocation)RangeTest.test_range_iterators_invocation/  s\     d58n-)^Q1="4a4i(8#9:)%8!QBr   c           	       a a RVV 3R llp\        ^
4      \        ^ 4      \        ^^	^4      \        ^^ R4      \        \        P                  ^,           \        P                  ^
,           4      3 FM  oV! ^ ^4       V! ^ ^4       V! ^^4       V! ^^4       V! RR4       V! R^d^4       V! ^ R4       V! RRR4       KO  	  R # )Nc                    < \        WV4      pSP                  \        SV,          4      \        S4      V,          4       SP                  \        SV,          4      \        \        S4      V,          4      4       R # r   )slicer9   r:   r>   )r   r	   r
   r#   rH   r   s   &&& r   check#RangeTest.test_slice.<locals>.check8  sS    e4(AT!A$Za4S1YDGAJ8r   r   r2   r   r5   )r;   rB   rC   )r   r  rH   s   f @r   
test_sliceRangeTest.test_slice7  s    	9 	9 )(1a.1b/As{{2~6	A !QK!RL!QK"bM#sO"c1!RL"b"r   c                Z   \        ^
4      pV P                  ^ V4       V P                  ^V4       V P                  RV4       V P                  RV4       V P                  RV4       V P                  ^
V4       V P                  RV4       \        ^	RR4      pV P                  ^ V4       V P                  ^V4       V P                  RV4       V P                  RV4       V P                  RV4       V P                  ^
V4       V P                  RV4       \        ^ ^
^4      pV P                  ^ V4       V P                  ^V4       V P                  RV4       V P                  RV4       V P                  RV4       V P                  ^
V4       V P                  RV4       \        ^	RR4      pV P                  ^ V4       V P                  ^V4       V P                  RV4       V P                  RV4       V P                  RV4       V P                  ^
V4       V P                  RV4       R# )rQ   g      @gffffff@ Nr5   r8   r   r   s   & r   test_containsRangeTest.test_containsK  s   "Iaac1a QQQ!Raac1a QQQ!ROaAa a QQQ!RAac1a QQQr   c           	     H   \        ^
4      \        ^ 4      \        ^^	^4      \        ^^ R4      \        \        P                  ^,           \        P                  ^
,           4      3 F:  pV P                  \	        \        V4      4      \	        V4      RRR1,          4       K<  	  R# )rQ   Nr2   r5   )r;   rB   rC   r9   r:   r   r   s   & r   test_reverse_iteration RangeTest.test_reverse_iterationm  ss    )(1a.1b/As{{2~6	A T(1+.Q">r   c                    \        \        ^^^4      P                  ^4      !  p0 RmpV F'  pV F  pV^ 0,
           F  pWWE1,           K  	  K   	  K)  	  R# )r/   N>   Nr   r/   r0   r6      r   r      c   r  r   r   r4   r8   r5   )r;   r  indices)r   rH   valuesr#   jks   &     r   test_issue11845RangeTest.test_issue11845v  sW    5B?**2./6A1#AeHH &  r   c                
   \        ^ 4      \        ^ R4      \        ^^^4      \        ^4      \        ^^4      \        ^^^4      \        ^^^4      \        ^4      \        ^ ^^4      \        ^ ^^4      \        ^ ^^4      .p\        \        \        V4      4      pV UUu. uF  q1 F  qCV8H  NK	  	  K  	  pppV UUu. uF  q2 F  qCV8H  NK	  	  K  	  pppV P	                  WV4       V UUu. uF  q1 F  qCV8g  NK	  	  K  	  pppT P	                  Yu Uu. uF	  q'       * NK  	  up4       V F8  pV F/  pW48X  g   K  V P	                  \        V4      \        V4      4       K1  	  K:  	  V P                  \        ^ 4      R8H  R4       V P                  R\        ^ 4      8H  R4       V P                  \        ^4      ^ ^.8H  R4       V P	                  \        ^ ^^d,          ^,
          ^4      \        ^ ^^d,          ^4      4       V P	                  \        \        ^ ^^d,          ^,
          ^4      4      \        \        ^ ^^d,          ^4      4      4       V P                  \        ^ ^^d,          ^4      \        ^ ^^d,          ^,           ^4      4       V P	                  \        ^^,          ^^,          ^^c,          ,
          ^^d,          4      \        ^^,          ^^,          ^^d,          4      4       V P	                  \        \        ^^,          ^^,          ^^c,          ,
          ^^d,          4      4      \        \        ^^,          ^^,          ^^d,          4      4      4       V P                  \        ^^,          ^^,          ^^d,          4      \        ^^,          ^^,          ^,           ^^d,          4      4       V P                  \        4      ;_uu_ 4        \        ^ 4      \        ^ 4      8   RRR4       V P                  \        4      ;_uu_ 4        \        ^ 4      \        ^ 4      8   RRR4       V P                  \        4      ;_uu_ 4        \        ^ 4      \        ^ 4      8*   RRR4       V P                  \        4      ;_uu_ 4        \        ^ 4      \        ^ 4      8   RRR4       R# u uppi u uppi u uppi u upi   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; i)r   FNr5   r   )
r;   r:   maptupler9   hashr   assertNotEqualr?   r@   )	r   r  test_tuplesrD   rE   	ranges_eq	tuples_eq	ranges_ner$   s	   &        r   test_comparisonRangeTest.test_comparison  s   Qxq"uQ1~Qxq!eAq!nQ1~uQxq!QQ1~uQ1~7 3uk23 &1F[+Q!V+V[	F%0F[+Q!V+V[	F. &1F[+Q!V+V[	FI$>IqUI$>? A 6$$T!Wd1g6 !  	eAh"ne,bE!Hne,eAh1a&(%0 	q!S&1*a0q!S&!,	.eAq#vz156eAq#vq12	4E!QVQ/!!QVaZ3	5q#vq#v2~q#v>q#vq#vq#v6	8eAsFAsFQUNAsFCDeAsFAsFAsF;<	>E!S&!S&!S&9!!S&!S&1*af=	? y))!HuQx *y))!HuQx *y))!Ha  *y))!Ha  *)Q GF G$>8 *))))))))sH   R):R/(R5R;
S S
S&S9 S	S#	&S6	9T
	c                `   V P                  \        ^ 4      ^ ^ ^4       V P                  \        ^
4      ^ ^
^4       V P                  \        R4      ^ R^4       V P                  \        ^ ^
^4      ^ ^
^4       V P                  \        ^ ^
^4      ^ ^
^4       V P                  \        ^
^ R4      ^
^ R4       V P                  \        ^
^ R4      ^
^ R4       V P                  \        R4      ^ ^^4       V P                  \        RR4      ^ ^^4       V P                  \        RRR4      ^ ^^4       R# )r   TFNry   r5   r2   )assert_attrsr;   rM   s   &r   test_attributesRangeTest.test_attributes  s   %(Aq!,%)QA.%*aa0%2q/1b!4%2q/1b!4%Ar*B26%Ar*B26%+q!Q/%t,aA6%tT2Aq!<r   c                   V P                  VP                  V4       V P                  VP                  V4       V P                  VP                  V4       V P	                  \        VP                  4      \        4       V P	                  \        VP                  4      \        4       V P	                  \        VP                  4      \        4       V P                  \        4      ;_uu_ 4        ^ Vn        RRR4       V P                  \        4      ;_uu_ 4        ^
Vn        RRR4       V P                  \        4      ;_uu_ 4        ^Vn        RRR4       V P                  \        4      ;_uu_ 4        V=RRR4       V P                  \        4      ;_uu_ 4        V=RRR4       V P                  \        4      ;_uu_ 4        V=RRR4       R#   + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     L; i  + '       g   i     R# ; ir   )	r9   r   r	   r
   r   r   rU   r?   AttributeError)r   rangeobjr   r	   r
   s   &&&&&r   r6  RangeTest.assert_attrs  sa   /--d8>>*C0d8==)3/d8==)3/~..HN /~..HM /~..HM / ~.. /~.. /~.. /. /..... /......sH   -GG$G74H
HH0G!	$G4	7H	
H	H-	0I	r   r   )$ri   rj   rk   rl   r&   rI   rN   rV   ra   rd   r~   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r(  r3  r7  r6  rm   rv   r   s   @r   r   r      s     J*..`$6(pSj;0"8H! FF$A
.9<6++5$-/0!(J2C(  D?2!j= r   r   __main__)unittestrB   r   r   test.supportr   r   r   TestCaser   ri   mainr   r   r   <module>rB     sM     
   "5
}
!! }
~ zMMO r   