Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 18.216.142.24
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : test_itertools.pyo
�
?��cc@s�ddlZddlmZddlTddlZddlmZddlmZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlmZyddlZWnek
r�eZnXejZedZd�Zd	�Zd
�Zd�Zd�Zd
fd��YZd�Zd�Zd�Zdejfd��YZ dejfd��YZ!dejfd��YZ"dejfd��YZ#d�Z$dfd��YZ%dfd��YZ&dfd ��YZ'd!fd"��YZ(d#fd$��YZ)d%fd&��YZ*d'fd(��YZ+d)�Z,d*ejfd+��YZ-d,ejfd-��YZ.d.ejfd/��YZ/d0ejfd1��YZ0d2Z1ie1d36Z2ed4�Z3e4d5kr�e3d6e5�ndS(7i����N(ttest_support(t*(tDecimal(tFraction(treduceicCsd|S(sTest function of one argumenti((tx((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytoneargscGs
t�dS(s"Test function that raises an errorN(t
ValueError(targs((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyterrfuncsccsxdD]}|VqWdS(sNon-restartable source sequenceiiiN(iii((ti((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytgen3s
cCs|ddkS(sTest predicateii((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytisEven!scCs|ddkS(sTest predicateii((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytisOdd%stStopNowcBs eZdZd�Zd�ZRS(s"Class emulating an empty iterable.cCs|S(N((tself((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt__iter__+scCs
t�dS(N(t
StopIteration(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytnext-s(t__name__t
__module__t__doc__RR(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR)s	cCstt||��S(sHConvenience function for partially consuming a long of infinite iterable(tlisttislice(tntseq((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttake0scCsttj|d�S(Ni(Rtoperatortmul(titerable((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytprod4scCsttd|d��S(t	Factoriali(Rtrange(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytfact7stTestBasicOpscBs�eZd�Zd�Zd�Zejd��Zejd�d��Z	d�Z
ejd��Zejd�d��Zd	�Z
ejd
��Zejd�d��Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zejd�d��Zd�Zejd�d��Zd�Zd�Zejd��Zejd�d��Zd�Z d�Z!d�Z"d�Z#d �Z$d!�Z%d"�Z&d#�Z'd$�Z(d%�Z)e*j+e,d&�d'��Z-d(�Z.RS()cCs�d�}x�t|fD]�}|jt|dd��td��|jt|d��td��|jt|d��g�|jtd|dd��td��|jtt|dd	��qWdS(
Ncws+x$|D]}x|D]}|VqWqWdS(sPure python version in the docsN((t	iterablestittelement((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytchain2>s

tabctdeftabcdeftitabcdii(tchaintassertEqualRRtassertRaisest	TypeError(RR&tc((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
test_chain<s	%"(cCs�|jttjddg��td��|jttjdg��td��|jttjdg��g�|jtdtjddg��td��|jtttjddg��dS(	NR'R(R)R*iR+ii(R-RR,t
from_iterableRR.R/(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_chain_from_iterableKs
+(".c
	s�|jttd�|jttddd�|jttd�|jttdd�|jttdd��g�|jtttd�d��ddddg�d	�}d
�}d�}x�td�D]�}gt|�D]}d
|d^q��x�t|d�D]�}tt�|��}|jt|�||krGdn!t	|�t	|�t	||��|jt|�tt
|���|j|t|��x�|D]�}|jt|�|�|jtt
|��|�|jt|�t|��|jt
�fd�|D���|jt|�g�D]}	|	|kr8|	^q8�q�W|j|t|�|���|j|t|�|���|j|t|�|���qWq�WdS(NR'iii����i iiic3s�t|��t��}||kr(dSt|�}t�fd�|D��Vx�x:tt|��D]"}|||||krePqeqeWdS||cd7<x1t|d|�D]}||dd||<q�Wt�fd�|D��VqRWdS(s%Pure python version shown in the docsNc3s|]}�|VqdS(N((t.0R
(tpool(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>bsic3s|]}�|VqdS(N((R4R
(R5(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>ls(ttupletlenR treversed(RtrRtindicesR
tj((R5s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
combinations1[sc3srt|��t��}xStt|�|�D]<}t|�t|�kr.t�fd�|D��Vq.q.WdS(s%Pure python version shown in the docsc3s|]}�|VqdS(N((R4R
(R5(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>tsN(R6R7tpermutationsR tsortedR(RR9RR:((R5s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
combinations2ns
c3srt|��t��}xStt|�|�D]<}tt|��|kr.t�fd�|D��Vq.q.WdS(sPure python version from cwr()c3s|]}�|VqdS(N((R4R
(R5(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>|sN(R6R7tcombinations_with_replacementR tset(RR9RR:((R5s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
combinations3vs
iiic3s|]}|�kVqdS(N((R4te(tvalues(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>�s(iii(iii(iii(iii(R.R/tcombinationstNoneRR-RR R7R!RAR>t
assertTruetall(
RR<R?RBRRR9tresultR0RC((RDs:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_combinationsRs6			'F"
#*cCs-|jttf��tdd�WdQXdS(NtAAiii (R.t
OverflowErrortMemoryErrorRE(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_combinations_overflow�ss"tuple reuse is specific to CPythonc	Csf|jtttttdd����d�|jttttttdd�����d�dS(Ntabcdeii(R-R7RAtmaptidREtassertNotEqualR(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_combinations_tuple_reuse�s.c	s�t}|jt|d�|jt|ddd�|jt|d�|jt|dd�|jt|dd��ddddddg�d	�}d
�}d�}x;td�D]-}gt|�D]}d
|d^q��x�t|d�D]�}t|�|��}|jt|�|||��|jt|�tt	|���|j|t
|��tt�|��}	|dks�|dkr�|j||	�n|jt	|�t	|	�k�x�|D]�}
|jt|
�|�gt
|
�D]\}}|^q�}
|jt|
�tt	|
���|jt|
�t
|
��|jt�fd�|
D���|j|
g�D]}||
kr||^q|�q�W|j|t|�|���|j|t|�|���q�Wq�WdS(NR'iii����tABCtAtBtCc3s�t|��t��}|r)|r)dSdg|}t�fd�|D��Vxux6tt|��D]}|||dkrgPqgqgWdS||dg||||)t�fd�|D��VqTWdS(s%Pure python version shown in the docsNic3s|]}�|VqdS(N((R4R
(R5(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>�sic3s|]}�|VqdS(N((R4R
(R5(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>�s(R6R7R8R (RR9RR:R
((R5s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytcwr1�s

c3sut|��t��}xVtt|�d|�D]<}t|�t|�kr1t�fd�|D��Vq1q1WdS(s%Pure python version shown in the docstrepeatc3s|]}�|VqdS(N((R4R
(R5(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>�sN(R6R7tproductR R>R(RR9RR:((R5s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytcwr2�s
cSs>|s|rdSdSt||d�t|�t|d�S(Nii(R!(RR9((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytnumcombs�siiiic3s|]}|�kVqdS(N((R4RC(RD(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>�s(RURU(RURV(RURW(RVRV(RVRW(RWRW(R@R.R/RFRR-RR R7RAR>RERGtgroupbyRH(RtcwrRXR[R\RRR9RIt
regular_combsR0tktvtnorunsRC((RDs:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt"test_combinations_with_replacement�s>			'"
%"#	*cCs-|jttf��tdd�WdQXdS(NRKiii@(R.RLRMR@(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt+test_combinations_with_replacement_overflow�sc	Cslt}|jtttt|dd����d�|jttttt|dd�����d�dS(NROii(R@R-R7RARPRQRRR(RR^((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt.test_combinations_with_replacement_tuple_reuse�s.c	s�|jtt�|jttddd�|jttd�|jttdd�|jttdd��g�|jttdd�|jtttd�d��ddddddg�dd	�}dd
�}x�td�D]�}gt|�D]}d|d
^q��x�t|d�D]}}tt�|��}|jt|�||kr]dnt	|�t	||��|jt|�tt
|���|j|t|��xc|D][}|jt|�|�|jtt
|��|�|jt
�fd�|D���q�W|j|t|�|���|j|t|�|���||kr!|j|tt�d���|j|tt����q!q!Wq�WdS(NR'iii����i tsiic3sNt|��t��}|dkr*|n|}||kr@dSt|�}t|||d�}t�fd�|| D��Vx�|rIx�tt|��D]�}||cd8<||dkr�||d|||d!||)||||<q�||}||||||<||<t�fd�|| D��VPq�WdSq�WdS(s%Pure python version shown in the docsNi����c3s|]}�|VqdS(N((R4R
(R5(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>�siic3s|]}�|VqdS(N((R4R
(R5(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>s(R6R7RFR R8(RR9RR:tcyclesR
R;((R5s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
permutations1�s&	!
c3s�t|��t��}|dkr*|n|}xVtt|�d|�D]<}tt|��|krIt�fd�|D��VqIqIWdS(s%Pure python version shown in the docsRYc3s|]}�|VqdS(N((R4R
(R5(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>sN(R6R7RFRZR RA(RR9RR:((R5s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
permutations2	siiic3s|]}|�kVqdS(N((R4RC(RD(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>s(ii(ii(ii(ii(ii(ii(R.R/R=RFRR-RR R7R!RAR>RGRH(RRhRiRRR9RItp((RDs:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_permutations�s4	'<"
'cCs-|jttf��tdd�WdQXdS(NRUiii@(R.RLRMR=(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_permutations_overflow#sc	Csf|jtttttdd����d�|jttttttdd�����d�dS(NROii(R-R7RARPRQR=RRR(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_permutations_tuple_reuse(s.c		Cs>x7td�D])}d| }xtd�D]}tt|d|��}tt||��}tt||��}tt||��}|jt|�||�|jt|�|r�t||d�t|�t|d�n|�|jt|�||krdnt|�t||��|jt|�||krGdn!t|�t|�t||��|j|t	t
|���|j|t	t
|���|j|t	t
|���|j|t	t
|���|j|g|D]$}t	|�t|�kr�|^q��|j|g|D]$}tt
|��|kr'|^q'�|j|g|D]$}t	|�t|�krb|^qb�|j|g|D]$}tt
|��|kr�|^q��|j|tt
|�j|��|j|tt
|�j|��|j|t	t
|�t
|�@��q*Wq
WdS(NitABCDEFGiRYii(
R RRZR@R=RER-R7R!R>RAtfiltert__contains__(	RRRfR9RR^tpermtcombtt((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_combinatorics-s,
I<F;;;;""cCs|jttdddddddddg��td��|jttdddddddg��td��|jttdddddddg��td��|jttdddddddg��td��|jttddddg��td��|jttd	ddddddg��td
��d}tjttd�|��}tjtd��}|jtt||��dd
dg|�|jttdtd��|jtttd�d�|jtttd��|jtttd�d�dS(NtdatatABCDEFt	selectorsiitACEFR*tACRTtBCi'iii(ii(
R-RtcompressR,R2RYR R.R/RF(RRRuRw((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
test_compressNs=777.7,c	Cs�|jtdt��d%d&d'g�|jtdtd��d(d)d*g�|jtdtdtd���d+d,g�|jtdtdtd���d-d.g�|jtdtdtd���d/d0g�|jttddd	�|jttd�|jtdttd
��ttd
td
��|jtdttd
��ttd
td
��|jtdtd��dddg�|jtdtd1��d2d3d4g�|jtdttd���td�td�td�g�|jtdtt	dd���t	dd�t	d
d�t	dd�g�d5}|jtdt|��||d|dg�td�}|jt
|�d�|j�|jt
|�d�td�}|jt
|�d�|j�|jt|�d�|jt
td��d�|jt
td��d �|jtttd���t
�x�tjd
tjd
d!dddtjd
tjd
fD]O}t
t|��jd"d#�}d$j|�jd"d#�}|j||�q�Wx�ddtjd
tjd
fD]�}t|�}|jttj|��|�|jttj|��|�xFttjd�D]1}|jttjtj||���|�qsWqWdS(6NR'taitbiR0iiiii����i����i����i
g
@g@g@y@s1.1s2.1s3.1ii�scount(3)scount(4)i����s	count(-9)i����g�$@scount(10.25)g$@scount(10.0)i����tLR*s	count(%r)(R}i(R~i(R0i(R}i(R~i(R0i(R}i(R~i(R}i����(R~i(R}i����(R~i����y
@�y
@�y@�y@�lC(R-tziptcountRR.R/tmaxsizeR RRtreprRttypetfloattsystmaxinttreplacet__mod__tcopytdeepcopytpickletHIGHEST_PROTOCOLtloadstdumps(RtBIGINTR0R
tr1tr2tvaluetproto((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
test_count^sL%(...47(("!+0

"C'cCsQ|jtdtdd��d:d;d<g�|jtdtd	dd
d��d=d>d?g�|jtdtd
d��d@dAdBg�|jttdd�|jtdtdd��dCdDdEg�|jtdtdd��dFdGdHg�|jtdtdd��dIdJdKg�|jtdtdd��dLdMdNg�|jtdtdd��dOdPdQg�|jtdttdd��tdttdtdd���|jtdttdd��tdttdtdd���|jtdtdtd��tdddtdtd��|jtdtdd��dddg�|jtdtddR��ddSdTg�|jtdttd�td���td�td�td �g�|jtdtt	dd�t	dd!���t	dd�t	d"d#�t	dd#�g�dU}|jtdtd
|��d|d|g�|jt
tdtdd%���t
dd&d'g��tdd�}|jt
|�d(�|j�|jt
|�d)�td*d�}|jt
|�d+�|j�|jt
|�d+�td*d,�}|jt
|�d-�|j�|jt
|�d.�|jt
|�d.�|jt
td/d��d0�|jt
td/d��d1�|jt
td/d2��d3�|jt
tdd2��d4�tdd2�}|jtt|��t
�|jtt|��t�xtjdtjdd5dddtjdtjdfD]�}x�tjdtjdd5ddddtjdtjdf	D]x}t
t||��jd6d7�}|dkrd8|jd6d7�}nd9||fjd6d7�}|j||�q�Wq�WdS(VNR'iiR}R~iR0itstarttstepi����ii����iilliiidi
g�?g
@g@y@g@g!@y @s1.1s.1s1.2s1.3iiii�g@g)@g.@scount(3, 5)scount(8, 5)i����scount(-9, 0)i����s
count(-9, -3)scount(-12, -3)g%@scount(10.5, 1.25)scount(10.5)g�?scount(10.5, 1.0)scount(10, 1.0)i����RR*s	count(%r)s
count(%r, %r)(R}i(R~i(R0i(R}i(R~i(R0i(R}i(R~i����(R0i����(R}i(R~i(R0i(R}i(R~i(R0i(R}i(R~i(R0i(R}i(R~i(R0i(R}i(R~i(R0iy
@�y@�y!@ �lC(R-R�R�R.R/RR�R RRR�RR�tintR�R�R�R�(RR�R0R
R;R�R�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_count_with_stride�sf+!+++++CF#++'"-+/7


CF!cCs�|jtdtd��td��|jttd��g�|jtt�|jttd�|jtttt��d��ddddddddddg
�dS(	Ni
R't
abcabcabcaR*iiii(R-RtcycleRR.R/RR(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
test_cycle�s
%c
s�|jgttg���|jgttgdt���|jtttdg��|jttd�|jttdd�d�d(d)d*d+d,d-d.d/g}g}xRt|d��D]>\}}x/|D]'}|j||d�|j|�q�Wq�W|j||�g}x�t|d��D]u\}}xft|d��D]R\}}xC|D];}|j||d�|j||d�|j|�q]WqJWq+W|j||�gt|d��D]\}}|^q�}tg|D]}	|	d^q��}
|jt|�|
�|jt	|�t	|
��d}gtt
|��D]\}}|^qM}	|j|	dddddg�gtt
|��D]*\}}tt|d
d��r�|^q�}	|j|	dddg�gtt
|��D]$\}}t	t|��|f^q�}	|j|	d0d1d2d3d4g�t
gtt
|��D]$\}}t	t|��|f^qRdt�d }	|j|	d5d6d7g�d t
fd!��Y�d�fd"�}dtd#�}|j�||d��|j�||d
��d$d8�fd%��Y}
|
�|
�dg}|j�||d&t�|j�||���fd'��d�_|j�|dg��d
�_|j�|ddg��dS(9NtkeyR'cSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt<lambda>�R*i
iiiiiii
iiiiiiiicSs|dS(Ni((R9((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*cSs|dS(Ni((R9((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*cSs|dS(Ni((R9((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*cSs|dS(Ni((R9((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*tabracadabraR}R~R0tdR9itreverset
ExpectedErrorcBseZRS((RR(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��sc3s&xt|�D]}dVq
W��dS(Ntyo(R (RR
(R�(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
delayed_raise�s	cSs,gt||�D]\}}||�^qS(N(R](RtkeyptfuncR`tg((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytgulp�stDummyCmpcseZ�fd�ZRS(cs
��dS(N((Rtdst(R�(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt__cmp__	s(RRR�((R�(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�sR�cs,�jdkr"�jd8_|S��dS(Nii(tskip(tobj(R�tkeyfunc(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s(ii
i(iii(iii(ii
i(iii(iii(iii(iii(iR}(iR~(iR0(iR�(iR9(iR}(iR9(iR~((R-RR]RQR.R/RFtappendRAR7R>RtTruet	ExceptionR�(RRftdupR`R�telemtiktigtkeysR9texpectedkeysR�R�R�((R�R�s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_groupby�s`"

+#+C=M		c	CsQ|jttttd���dddg�|jttddddddg��ddg�|jtttdddddg��ddg�|jtdttt���ddddg�|j	t
t�|j	t
td��|j	t
td�td�d�|j	t
ttd	�|j	t
ttd�td��j�dS(
NiiiiicSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�&R*cSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�'R*ii(R-RtifilterRR RFtboolRR�R.R/R(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_ifilter s.441"c	CsW|jttttd���dddg�|jttddddddg��dddg�|jtttdddddg��dddg�|jtdttt���ddddg�|j	t
t�|j	t
td	��|j	t
td
�td�d�|j	t
ttd�|j	t
ttd�td��j�dS(NiiiiiiiicSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�1R*cSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�2R*(R-RtifilterfalseRR RFR�RR�R.R/R(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_ifilterfalse+s.771"cCs�gtdt��D]\}}||f^q}|j|dd
dg�|jttdtd���tdtd���|jttd	td
���td	td
���|jtd
td	t���td	td
���|jttd	��td	��|jtt��t��|jttd
�|jtttd
�d
�|jgtdd�D]}t	t|��^qitdd��|jgtdd�D]}|^q�tdd��dS(NR'R}iR~iR0iiR)iR((R}i(R~i(R0i(
tizipR�R-RR R�RR.R/R6(RRtytanstpair((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt	test_izip6s1444"1%cCs{tttdd��}|jt|�t|��ttttdd���}|jttj	|��t|��dS(NR'R((
RPRQR�R-tmintmaxRR7tdicttfromkeys(Rtids((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_izip_tuple_reuseEscCs|x�dtd�gtd�dgtd�tdd�tdd�gtd�td�tdd�td	�td
�gtd�td�tdd�td	�td
�td�ggD]�}gtttt|���D]A}tg|D](}|t|�kr||nd^q��^q�}|jtt|��|�|jtt|i��|�g|D]}td�|D��^qc}|jtt|t	dd
���|�q�W|jt
dtdt���tdtd���|jtt��t��|jttg��tg��|jttd��td��|jttddi��ttd�dgd��|j
ttd�|j
tttd�d�xSddgD]E}yt|t�t��Wntk
r�q�X|jd|�q�W|jgtdd�D]}tt|��^qtdd��|jgtdd�D]}|^qYtdd��dS(NR'ii�i�i4i�i�ii�i�css'|]}|dkrdp|VqdS(tXN(RF(R4RC((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>Zst	fillvalueR�iR)tdefgsizip_longest('abc', fv=1)s4izip_longest('abc', fillvalue=1, bogus_keyword=None)sDid not raise Type in:  R((R R�RPR7R6RFR-Rtizip_longestR�RR�R�R.R/tevaltglobalstlocalstfail(RRR
targttargetRststmtR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_iziplongestLs@$3F`),4""

1%cCs{tttdd��}|jt|�t|��ttttdd���}|jttj	|��t|��dS(NR'R((
RPRQR�R-R�R�RR7R�R�(RR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_izip_longest_tuple_reusexscCs�dtfd��Y}|ddt�}|ddt�}d�}|j|||�d
ddd
g�|ddt�}|ddt�}t||d	d�}|jt|�d�|jt|�d�|jt|�d�|jtt|�dS(NtRepeatercBs#eZd�Zd�Zd�ZRS(cSs%||_t|�|_||_dS(N(toR�RsRC(RR�RsRC((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt__init__�s	cSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�scSs2|jdkr%|jd8_|jS|j�dS(Nii(RsR�RC(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s(RRR�RR(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��s		iiiicSsdg}xWt||dd�D]@\}}tjd��||fGHWdQX|j||f�qW|S(NR�itstdout(R�Rtcaptured_outputR�(R�R�RIR
R;((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytrun�s"iR�(ii(ii(ii(ii(ii(ii(ii(tobjectRR-tRuntimeErrorR�RR.(RR�R�R�R�R$((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
test_bug_7244s	%c
Cs�x6gdgfdgddgftd�td�gddddddgftd�td�td�ggftd�td�td�ggftd�td�td�ggfgD]w\}}|jtt|��|�xLtd�D]>}|jtt||��tt|td	|����q�Wq�W|jttttd
�gd���d�|jtttd�d�d�}d
�}dddt	d�t	d�tdddddd�t
d�td�ttd��g	}x�td�D]�}gttj
d��D]}tj|�^q}ttt|��}	|jttt|���|	�|jtt|��t||���|jtt|��t||���tt|�}|jttt|���|	�q�WdS( NtabR}R~iiiiiRYiics,tt|�|jdd�}t|�}|dkr@dVdStd�|D��rZdSdg|}td�t||�D��Vx�x�tt|��D]�}||t||�dkr�q�n||cd7<x%t|d|�D]}d||<q�Wtd�t||�D��VPq�WdSq�WdS(NRYiicss!|]}t|�dkVqdS(iN(R7(R4R5((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>�scss|]\}}||VqdS(N((R4R5R
((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>�scss|]\}}||VqdS(N((R4R5R
((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>�s((RPR6tgetR7tanyR�R8R (RtkwdstpoolsRR:R
R;((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytproduct1�s&
cs�tt|�|jdd�}gg}x;|D]3}g|D] }|D]}||g^qFq<}q/Wx|D]}t|�VqmWdS(s Pure python version used in docsRYiN(RPR6R�(RR�R�RIR5RR�R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytproduct2�s	
1
R*R'R0tabcdefgii
idi((R}(R~(ii(ii(ii(ii(ii(iii��(R R-RRZR�R7R.R/RFtxrangeRAR6trandomt	randrangetchoiceRRPtiter(
RRRIR9R�R�targtypesR
R;texpected_len((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_product�s2-$$4'/			3'1"((c
Cs7|jttf��tdddgd�WdQXdS(NRYiiR�iii (R.RLRMRZ(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_product_overflow�sc	Csf|jtttttdd����d�|jttttttdd�����d�dS(NR'R(i(R-R7RARPRQRZRRR(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_product_tuple_reuse�s.cCs|jttdddd��dddg�|jttdddd��g�|jttdddd��g�|jttdddd��g�|jttd�td��dddg�|jttdd��dddg�|jtdtd��dddg�|jttdd��g�|jttdd
��g�|jtt�|jttddd�|jttdd�td�}|jt	|�d
�tdd�}|jt	|�d�t|�|jt	|�d�dS(NR�R}ttimesiii����i����iii����iysrepeat((1+0j))isrepeat((1+0j), 5)srepeat((1+0j), 0)(iR}(iR}(iR}y�?y�?(
R-RRYR�R�RR.R/RFR�(RR9((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_repeat�s&.%%%((
cCs�|jttdd��d�|jttdd��d�|jttddd��d�|jttddd��d�dS(NR}i����srepeat('a', 0)i����R�(R-R�RY(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_repeat_with_negative_timess"cCs�|jtttjtd�tdd���d
ddg�|jttddtd���dddg�|jttddt���dddg�|jtdtddt���ddg�|jtttjg��g�|j	t
t�|j	t
ttj�|j	t
tdtd��j�|j	t
ttdgdg�j�|j	t
ttdgdg�j�dS(NiiiiiR'iR}R~R0i
iiii(R}i(R~i(R0i(R}i(R~i(R0i(R}i(R~i(R-RtimapRtpowR RFR�RR.R/tnegRRR	R(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt	test_imaps-!!
""%c	Cs�|jtttjttd�tdd����d
ddg�|jtdttjtt	�t	d����d
ddg�|jtttjg��g�|jtttjt
ddg�g��dg�|jttttjdg��|jtt�|jtttjdgd�|jttd	dg�j�|jtttdg�j�|jtttdg�j�dS(Niiiiiiitextrai
iiiiiii(ii(ii(ii(ii(R-RtstarmapRR�R�R RR�R�R�R.R/RFRRR	R(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_starmaps30"4"cCs�xKddddddgD]1}|jtttd�|��t|��qWxZddfddfddfgD]7\}}|jtttd�|��t|��qpW|jtttd�d��td��|jtttd�dd��td��|jtttd�ddd��td��|jtttd�dd��tdd��|jtttd�ddd��tddd��ttd��}|jtt|d��td��|jt|�tdd��ttd��}|jtt|dd��g�|jt|�tdd��|jtttd��|jtttd�dddd�|jt	ttd�d	dd�|jt	ttd�dd	d
�|jt	ttd�ddd
�|jt	ttd�ddd�|jt	ttd�d�|jt	ttd�dd�|jt	ttd�dd�|jt	ttd�ddd�|jt	ttd�ddd�|jt
ttt�ddt���d�t�}|jtt|ddd
��dg�|jt
|�d�d�dD�}tj|�}t|d�}|j|��t|�tj�|j|��dS(Ni
iiidiniiii����i����iR}i2css|]}|VqdS(N((R4R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>[s(i
ii(i
ii(i
i(i
i
(i
i(i(i
ini(i
idi(i
in(i
id(in(id(ii(R-RRR�R RFR�R.R/RR7R�R�RtweakreftreftassertIsNotNoneRt
gc_collecttassertIsNone(RRttgtargsR$R0twr((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_islice$s\
/		/+.117%"%"""""".	(

cCsHddddddddg}d	�}|jtt||��dddg�|jtt|g��g�|jtt�|jtttj�|jtttjd
gd
�|jttddg�j�|jttt	dg�j�tt
ddddddg�}|jt|�dddg�|jt|j�dS(NiiiiiiiicSs
|dkS(Ni
((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�eR*R�i
i(ii(ii(ii(R-Rt	takewhileR.R/RR�RRR	R�R(RRutundertenRs((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_takewhilecs	(!cCs�ddddddddg}d	�}|jtt||��dddddg�|jtt|g��g�|jtt�|jtttj�|jtttjdgd
�|jttdd
g�j�|jttt	dg�j�dS(NiiiiiiiicSs
|dkS(Ni
((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�sR*R�i
(ii(ii(ii(
R-Rt	dropwhileR.R/RR�RRR	(RRuR((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_dropwhileqs	.cCs�d}d�}tg�\}}|jt|�g�|jt|�g�t||��\}}|jt||�tt|�t|���t||��\}}|jt|�t|��|jt|�t|��t||��\}}x*td�D]}|j|j�|�qW~|jt|�t|��t||��\}}x*td�D]}|j|j�|�qlW~|jt|�td|��x�td�D]�}dg|dg|}tj|�ggf}t||��}	x/|D]'}|	|j�}
||j	|
�qW|j|dt|��|j|dt|��q�W|j
tt�|j
ttd�|j
ttddgd	�|j
ttddgdd	�td
�\}}t|�d�}|jt|�td��ttd�d�\}}}x*td�D]}|j|j�|�q7W|jt|�td��|j|j�|j�gtd��|jt|�tdd��|jt|�tdd��|j
ttd
d
�|j
t
tgd�xutd�D]g}td
|�}|jt|�t�|jt|�|�|jtt|�td
�g|�qWtd
�\}}t|�\}}
|j||k�td
�\}}t|�}|j
t|�|j
t|d�||�}|jt|�t|�koAt|�koAtd
�kn�ttd��\}}tj|�}|jt|d�t|��~|j
tt|d�dS(Ni�css xt|�D]}|Vq
WdS(N(R�(RR
((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytirange~sidiiiiiRR'R(i�tinvalidi����i
t	__class__(tteeR-RR�R R�RR�tshuffleR�R.R/R�RR6R7RPRGR�tproxytgetattrtReferenceError(RRRR}R~R
R;tordertliststitsR�R0RIR�tt1tt2ttnewtt3Rj((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_tee|s�	.

(*FcCsCttdd��\}}yt|�~Wn~~�nXdS(Ni-1(RRYRFR�(Rtforwardtbackward((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_tee_del_backward�s
csUdd�fd��Y}t|��\}�|jtd��t|�WdQXdS(NtIcs&eZeZd�Z�fd�ZRS(cSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�scs&|j}t|_|r"t��SdS(N(tfirsttFalseR(RR(R~(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s		(RRR�RRR((R~(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s	R((RtassertRaisesRegexpR�R(RRR}((R~s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_tee_reenter�s
s!Threading required for this test.cs�tj��tj��dd��fd��Y}t|��\}}tjdtd|g�}|j�z1�j�|jtd��t|�WdQXWd�j	�|j
�XdS(NRcs#eZd�Z��fd�ZRS(cSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�scs�j��j�dS(N(RAtwait(R(tfinishR�(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s
(RRRR((R!R�(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s	R�RR((t	threadingtEventRtThreadRR�R RR�RAtjoin(RRR}R~tthread((R!R�s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_tee_concurrent�s


cCs�|jtt�j�xOttttfD];}|jt|g�j�|jt|t��j�q)W|jttgd�j�|jttt�d�j�t
g�\}}|jt|j�|jt|j�t
t��\}}|jt|j�|jt|j�|jttdd�j�xatt
ttttfD]G}|jt|d�g�j�|jt|d�t��j�qKWdS(NicSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�R*cSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�R*(R.RR�RR,R�R]RRRFRRYR�R�R�RRR�(RtfRjtq((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_StopIterations  (/RRR1R3RJRtbigaddrspacetestRNtimpl_detailRSRcRdReRkRlRmRtR|R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�RRRRRRtunittestt
skipUnlessR"R'R*(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR";sN			>	B	<	!		+	7		Y				,	(	:					?			Z			tTestExamplescBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs&|jdjtdd��d�dS(NR*RTtDEFRv(R-R%R,(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR1scCs,|jdjtjddg��d�dS(NR*RTR0Rv(R-R%R,R2(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR3 sc	Csf|jttdd��ddd
dddg�|jtttd�d��ddddg�dS(NtABCDiRURVRWtDiiii(RURV(RURW(RUR2(RVRW(RVR2(RWR2(iii(iii(iii(iii(R-RRER (R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRJ#sc	Cs5|jttdd��dddd	d
dg�dS(NRTiRURVRW(RURU(RURV(RURW(RVRV(RVRW(RWRW(R-RR@(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRc)sc
Cs;|jttdddddddg��td��dS(NRviiRx(R-RR{(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR|-scCs8|jtttd�d��dddddg�dS(Ni
iiii
i(R-RRR�(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�0scCs/|jtttd�d��td��dS(NR1itABCDABCDABCD(R-RRR�(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�3sc	Cs>|jttd�dddddg��dddg�dS(NcSs
|dkS(Ni((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�7R*iii(R-RR(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR6scCs�|jgtd�D]\}}|^qtd��|jgtd�D]\}}t|�^qHtd�td�td�td�g�dS(NtAAAABBBCCDAABBBtABCDABt
AAAABBBCCDtAAAAtBBBtCCR2(R-R]R(RR`R�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�9s(
.cCs;|jttd�td���dddddg�dS(NcSs|dS(Ni((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�@R*i
iiiii	(R-RR�R (R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�?scCs;|jttd�td���dddddg�dS(NcSs|dS(Ni((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�CR*i
iiiii(R-RR�R (R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�BscCs/|jtttdd	��dddg�dS(
Niii
ii i	i�(iii
(iii(R-RR�R�(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�EscCs�|jttdd��td��|jttddd��td��|jttddd��td��|jttdddd��td��dS(	NRnitABitCDtCDEFGitACEG(R-RRRF(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRHs%((cCs)|jttdd��ddg�dS(	NR1txyRURRVR�(RUR(RVR�(R-RR�(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�NscCs5|jttdddd��ddd
dg�dS(NR1R>R�t-RURRVR�RWR2(RUR(RVR�(RWR?(R2R?(R-RR�(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_izip_longestQsc
Csf|jttdd��ttdj���|jtttd���ddd	d
ddg�dS(
NR1is#AB AC AD BA BC BD CA CB CD DA DB DCiii(iii(iii(iii(iii(iii(iii(R-RR=RPR6tsplitR (R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRkUscCsr|jttdd��ttdj���|jtttd�dd��d	d
ddd
dddg�dS(NR1R>sAx Ay Bx By Cx Cy Dx DyiRYiii(iii(iii(iii(iii(iii(iii(iii(iii(R-RRZRPR6RAR (R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�[s
!cCs,|jttdd��dddg�dS(Ni
i(R-RRY(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�bscCs5|jtttdd	d
g��dddg�dS(Niiii
i i	i�(ii(ii(i
i(R-RR�R�(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_stapmapes!c	Cs;|jttd�dddddg��ddg�dS(NcSs
|dkS(Ni((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�jR*iii(R-RR(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRis(RRR1R3RJRcR|R�R�RR�R�R�R�RR�R@RkR�R�RBR(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR/s(																			tTestPurePythonRoughEquivalentscBs eZed��Zd�ZRS(c
gs't|�}|jpd|jp'tj|jp3d}}}tt|||��}yt|�}Wn8t	k
r�x#t
t|�|�D]\}}	q�WdSXyAx:t|�D],\}}	||kr�|	Vt|�}q�q�WWn>t	k
r"x.t
t|d|�|�D]\}}	qWnXdS(Nii(tsliceR�tstopR�R�R�R�R�RRR�t	enumerate(
RRRfR�RER�R$tnextiR
R%((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRos"2
"
)cCs�|jt|jdd��td��|jt|jddd��td��|jt|jddd��td��|jt|jdddd��td��ttd	��}|jt|j|d
��td
��|jt|�td
d	��ttd	��}|jt|j|d
d
��g�|jt|�td
d	��t�}|jt|j|dd
d��dg�|jt|�d
�dS(
NRniR:iR;R<iR=i
iii2(	R-RRRFR�R�R R�R(RR$R0((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_islice_recipe�s(++.(%	+(RRtstaticmethodRRH(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRCmstTestGCcBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs!|j|�|j�~~dS(N(R�R(Rtiteratort	container((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt	makecycle�s

cCs g}|jt|�|�dS(N(RMR,(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR1�scCs&g}|jtj|g�|�dS(N(RMR,R2(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR3�scCs/g}|jtdd|dgd�|�dS(Niii(RMRE(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRJ�scCs/g}|jtdd|dgd�|�dS(Niii(RMR@(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRc�sc	Cs5g}|jtdddddddg�|�dS(NRvii(RMR{(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR|�scCsMg}tdtftd|��}|jt|d�|d��|�dS(NtIntRii(R�R�R�RMR�(RR}RN((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCs'g}|jt|gd�|�dS(Ni(RMR�(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCs,g}|jttd||g�|�dS(Ni(RMRR�(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�scCs-g}|jt|gdd��|�dS(NicSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*(RMR](RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCsXd}d�}xBtt|�d|�D](\}}|jjdg�j|�q(WdS(Ni
cSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*R�R(R]R�t__dict__t
setdefaultR�(RRR�R
R;((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_issue2246�s	%cCs-g}|jtd�|gd�|�dS(NcSstS(N(R�(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*i(RMR�(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCs&g}|jtd�|�|�dS(NcSstS(N(R(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*(RMR�(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCs1g}|jt|gd|gd�|�dS(Nii(RMR�(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCsjg}|jt|gd|gd�|�|dg}|jt|gd|gdd|�|�dS(NiiR�(RMR�RF(RR}R~((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR@�s'cCs-g}|jtd�|gd�|�dS(NcSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*i(RMR�(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCs*g}|jt|gdd�|�dS(Ni(RMRRF(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�scCs/g}|jtdd|dgd�|�dS(Niii(RMR=(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRk�scCs2g}|jtdd|dgdd�|�dS(NiiiRY(RMRZ(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCs g}|jt|�|�dS(N(RMRY(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCs3g}|jtd�||fgd�|�dS(NcWs|S(N((Rs((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��R*i(RMR�(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCs/g}|jttdd||g�|�dS(Nii(RMRR�(RR}((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s(RRRMR1R3RJRcR|R�R�RR�RQR�R�R�R@R�RRkR�R�R�R(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRJ�s,																					ccsx|D]}|VqWdS(sRegular generatorN((tseqnR
((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytR�s
tGcBs eZdZd�Zd�ZRS(sSequence using __getitem__cCs
||_dS(N(RR(RRR((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��scCs|j|S(N(RR(RR
((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt__getitem__s(RRRR�RU(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRT�s	RcBs)eZdZd�Zd�Zd�ZRS(s Sequence using iterator protocolcCs||_d|_dS(Ni(RRR
(RRR((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s	cCs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR	scCsD|jt|j�kr!t�n|j|j}|jd7_|S(Ni(R
R7RRR(RRa((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRs
	(RRRR�RR(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRs		tIgcBs eZdZd�Zd�ZRS(s9Sequence using iterator protocol defined with a generatorcCs||_d|_dS(Ni(RRR
(RRR((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s	ccsx|jD]}|Vq
WdS(N(RR(Rtval((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRs(RRRR�R(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRVs	R�cBs eZdZd�Zd�ZRS(s Missing __getitem__ and __iter__cCs||_d|_dS(Ni(RRR
(RRR((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s	cCsD|jt|j�kr!t�n|j|j}|jd7_|S(Ni(R
R7RRR(RRa((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRs
	(RRRR�R(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s	tNcBs eZdZd�Zd�ZRS(sIterator missing next()cCs||_d|_dS(Ni(RRR
(RRR((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�'s	cCs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR*s(RRRR�R(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRX%s	tEcBs)eZdZd�Zd�Zd�ZRS(sTest propagation of exceptionscCs||_d|_dS(Ni(RRR
(RRR((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�/s	cCs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR2scCsdddS(Nii((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR4s(RRRR�RR(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRY-s		tScBs)eZdZd�Zd�Zd�ZRS(sTest immediate stopcCsdS(N((RRR((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�9scCs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR;scCs
t�dS(N(R(R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR=s(RRRR�RR(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRZ7s		cCs(ttd�ttt|�����S(s Test multiple tiers of iteratorscSs|S(N((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�BR*(R,R�RSRVRT(RR((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR@stTestVariousIteratorArgscBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�ZRS(cCs+x$ddtd�d	tddd�fD]�}x�ttttttfD]{}|jt	t
||���t	||���|jt	t
||�||���t	||��t	||���qGW|jtt	t
t
|���|jtt	t
t|���|jtt	t
t|���q(WdS(
Nt123R*i�tdog333333�?i�i�i(R]g333333�?(R R�RTRRVRZRRSR-RR,R.R/R�RXtZeroDivisionErrorRY(RRfR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR1Gs..KcCsxddtd�d
tddd�fD]�}t|�}xWttttttfD]=}|j	t
t||�td	���t
||���qSW|j
ttt|�td	��|j
tt
tt|�td	���|j
tt
tt|�td	���q(WdS(NR\R*i�R]g333333�?i�i�ii(R]g333333�?(R R�R7RTRRVRZRRSR-RR{RYR.R/R�RXR^RY(RRfRR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR|Ps.;"(cCs�xzddtd�d	tddd�fD]Q}|jttt|��|jttt|��|jttt|��q(WdS(
NR\R*i�R]g333333�?i�i�i(R]g333333�?(	R R�R.R/RZR�RXR^RY(RRf((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�Ys.cCsxddtd�d
tddd�fD]�}xwttttttfD]]}t|�d	}t	||��d	}t	t
t||��|��}|j||�qGW|j
ttt|��|j
tt	tt|���|j
tt	tt|���q(WdS(NR\R*i�R]g333333�?i�i�ii(R]g333333�?(R R�RTRRVRZRRSR7RRR�R-R.R/R�RXR^RY(RRfR�ttgtlentexpectedtactual((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�_s.!cCs�x�td�td�td�d	tddd�fD]�}xattttttfD]G}|jgt	||��D]\}}|^qrt
||���qSW|jtt	t
|��|jtt
t	t|���|jtt
t	t|���q4WdS(
Ni
ii�iii�i�i(ii(R R�RTRRVRZRRSR-R]RR.R/R�RXR^RY(RRfR�R`tsb((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�js:EcCs�x�td�td�td�d	tddd�fD]�}xTttttttfD]:}|jt	t
t||���tt||���qSW|j
tt
tt|��|j
tt	t
tt|���|j
tt	t
tt|���q4WdS(
Ni
ii�iii�i�i(ii(R R�RTRRVRZRRSR-RR�RRoR.R/R�RXR^RY(RRfR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�rs:8"cCs�x�td�td�td�d	tddd�fD]�}xTttttttfD]:}|jt	t
t||���tt
||���qSW|jtt
tt|��|jtt	t
tt|���|jtt	t
tt|���q4WdS(
Ni
ii�iii�i�i(ii(R R�RTRRVRZRRSR-RR�RRoR
R.R/R�RXR^RY(RRfR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�zs:8"cCsxddtd�d	tddd�fD]�}x�ttttttfD]t}|jt	t
||���t||���|jt	t
||�||���t||�||���qGW|jt
t
t|��|jt
t	t
t|���|jtt	t
t|���q(WdS(
NR\R*i�R]g333333�?i�i�i(R]g333333�?(R R�RTRRVRZRRSR-RR�R�R.R/R�RXR^RY(RRfR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��s..DcCsxddtd�d	tddd�fD]�}x�ttttttfD]t}|jt	t
||���t||���|jt	t
||�||���t||�||���qGW|jt
t
t|��|jt
t	t
t|���|jtt	t
t|���q(WdS(
NR\R*i�R]g333333�?i�i�i(R]g333333�?(R R�RTRRVRZRRSR-RR�R�R.R/R�RXR^RY(RRfR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��s..Dc	CsEx>td�td�td�d	tddd�fD]	}x�ttttttfD]�}|jt	t
t||���tt||���|jt	t
t
j||�||���tt
j||�||���qSW|jtt
tt|��|jtt	t
tt|���|jtt	t
tt|���q4WdS(
Ni
iidiiii2i(ii(R R�RTRRVRZRRSR-RR�RRPRR�R.R/R�RXR^RY(RRfR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��s:4P"c	Cs�x�ddtd�dtddd�fD]�}xdttttttfD]J}|jt	t
||�d	dd
��t	||��d	dd
��qGW|jt
t
t|�d�|jt
t	t
t|�d��|jtt	t
t|�d��q(WdS(
Nt12345R*i�R]g333333�?i�i�iiii
(R]g333333�?(R R�RTRRVRZRRSR-RRRFR.R/R�RXR^RY(RRfR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s.H"c	Cs xtd�td�td�d	tddd�fD]�}xrttttttfD]X}t||�}|j	t
ttj
||���ttj
||�||���qSW|jtttj
t|��|jtt
ttj
t|���|jtt
ttj
t|���q4WdS(
Ni
iidiiii2i(ii(R R�RTRRVRZRRSR�R-RR�RR�RPR.R/R�RXR^RY(RRfR�tss((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��s:G%cCs$xtd�td�td�d	tddd�fD]�}xttttttfD]e}g}x1||�D]#}t|�s�Pn|j	|�qlW|j
ttt||���|�qSW|j
tttt|��|j
ttttt|���|j
ttttt|���q4WdS(
Ni
ii�iii�i�i(ii(R R�RTRRVRZRRSRR�R-RRR.R/R�RXR^RY(RRfR�ttgtR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s:)"cCs-x&td�td�td�d	tddd�fD]�}x�ttttttfD]n}g}x:||�D],}|r�t|�r�qln|j	|�qlW|j
ttt||���|�qSW|j
tttt|��|j
ttttt|���|j
ttttt|���q4WdS(
Ni
ii�iii�i�i(ii(R R�RTRRVRZRRSR
R�R-RRR.R/R�RXR^RY(RRfR�ReR�((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s:)"cCsx
ddtd�d
tddd�fD]�}x|ttttttfD]b}t||��\}}|j	t
|�t
||���|j	t
|�t
||���qGW|jttt
|��|jtt
tt|��d	�|jtt
tt|��d	�q(WdS(NR\R*i�R]g333333�?i�i�ii(R]g333333�?(R R�RTRRVRZRRSRR-RR.R/R�RXR^RY(RRfR�tit1tit2((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�s."&#(RRR1R|R�R�R�R�R�R�R�R�RR�RRR(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR[Es																				tLengthTransparencycBseZd�ZRS(cCsLddlm}|j|tdd��d�|jt|td��dS(Ni����(R7i2(ttest.test_iterlenR7R-RYRFR.R/(RR7((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��s(RRR�(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRh�stRegressionTestscBs5eZd�Zd�Zd�Zd�Zd�ZRS(csNd�}�fd�}g�|d	|d
�tt�}|j�|�dS(Ncsmdg��fd�}t|�}t|�|dd+t||�}t|gt|����j�dS(Nics!|r|2��j��n|S(N(R(R�R(R(tz(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR��s(RR�R�R7R(ttuple1R(ttuple2R�titemstgen((R(Rks:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt
mutatingtuple�scs|att��(dS(N(tTR(Rs(R(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR(�siiiiii(iii(iii(RRqR-(RRpR(tsecond((Rs:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_sf_793826�s	cs��fd�}�fd�}g�|jttt|�|t���|j�ddg�g�|jttt|�|t���|j�ddg�g�|jttt|���|j�ddg�dS(Nc3s6�jd�dV�jd�t��jd�dS(Niii(R�tAssertionError((thist(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytgen1�s


c3s2�jd�dV�jd�|r.t�ndS(Niii(R�R(R(Ru(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pytgen2s


ii(R.RtRR,RR-R�R�(RRvRw((Rus:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_sf_950057�s%%cCsCtjd�td�D��}|jt��t|�WdQXdS(Ncss|]}dVqdS(N(((R4tunused((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pys	<genexpr>si���(R,R2R�R.RR(RR$((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt"test_long_chain_of_empty_iterablesscsC�fd�}x-ttd�|�D]\}�t��q%WdS(Ncs#|dkrt��n|dkS(Nii(R(R(R~(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR(s
i
(R]R R(RR(R`((R~s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_issue30347_1s"csfdtf��fd��Y�tttd����d�x!td�D]}t�d�qKWdS(NtKcs2eZdZd�Z��fd�Zd�ZRS(icSsdS(N((RRa((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�'scs2�jd7_�jdkr.t�d�ntS(Ni(R
RRFR�(Rtother(R|R�(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt__eq__)scSsdS(Ni((R((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt__hash__.s(RRR
R�R~R((R|R�(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR|%s	i
ii(R�RR]R RF(RR;((R|R�s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_issue30347_2$s(RRRsRxRzR{R�(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyRj�s
				tSubclassWithKwargsTestcBseZd�ZRS(cs�x�tttttttttt	t
tfD]`�d�f�fd��Y}y|dd�Wq+tk
r�}|j
d|jd�q+Xq+WdS(NtSubclasscseZd�fd�ZRS(cs�j||�dS(N(R�(RtnewargR(tcls(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�;sN(RRRFR�((R�(s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�:sR�isdoes not take keyword argumentsi(RYR�R�R�R,R�R�RRRR�R{R/tassertNotInR(RR�terr((R�s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyttest_keywords_in_subclass6s(RRR�(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyR�5ss� Doctest for examples in the library reference: libitertools.tex


>>> amounts = [120.15, 764.05, 823.14]
>>> for checknum, amount in izip(count(1200), amounts):
...     print 'Check %d is for $%.2f' % (checknum, amount)
...
Check 1200 is for $120.15
Check 1201 is for $764.05
Check 1202 is for $823.14

>>> import operator
>>> for cube in imap(operator.pow, xrange(1,4), repeat(3)):
...    print cube
...
1
8
27

>>> reportlines = ['EuroPython', 'Roster', '', 'alex', '', 'laura', '', 'martin', '', 'walter', '', 'samuele']
>>> for name in islice(reportlines, 3, None, 2):
...    print name.title()
...
Alex
Laura
Martin
Walter
Samuele

>>> from operator import itemgetter
>>> d = dict(a=1, b=2, c=1, d=2, e=1, f=2, g=3)
>>> di = sorted(sorted(d.iteritems()), key=itemgetter(1))
>>> for k, g in groupby(di, itemgetter(1)):
...     print k, map(itemgetter(0), g)
...
1 ['a', 'c', 'e']
2 ['b', 'd', 'f']
3 ['g']

# Find runs of consecutive numbers using groupby.  The key to the solution
# is differencing with a range so that consecutive numbers all appear in
# same group.
>>> data = [ 1,  4,5,6, 10, 15,16,17,18, 22, 25,26,27,28]
>>> for k, g in groupby(enumerate(data), lambda t:t[0]-t[1]):
...     print map(operator.itemgetter(1), g)
...
[1]
[4, 5, 6]
[10]
[15, 16, 17, 18]
[22]
[25, 26, 27, 28]

>>> def take(n, iterable):
...     "Return first n items of the iterable as a list"
...     return list(islice(iterable, n))

>>> def enumerate(iterable, start=0):
...     return izip(count(start), iterable)

>>> def tabulate(function, start=0):
...     "Return function(0), function(1), ..."
...     return imap(function, count(start))

>>> import collections
>>> def consume(iterator, n=None):
...     "Advance the iterator n-steps ahead. If n is None, consume entirely."
...     # Use functions that consume iterators at C speed.
...     if n is None:
...         # feed the entire iterator into a zero-length deque
...         collections.deque(iterator, maxlen=0)
...     else:
...         # advance to the empty slice starting at position n
...         next(islice(iterator, n, n), None)

>>> def nth(iterable, n, default=None):
...     "Returns the nth item or a default value"
...     return next(islice(iterable, n, None), default)

>>> def all_equal(iterable):
...     "Returns True if all the elements are equal to each other"
...     g = groupby(iterable)
...     return next(g, True) and not next(g, False)

>>> def quantify(iterable, pred=bool):
...     "Count how many times the predicate is true"
...     return sum(imap(pred, iterable))

>>> def padnone(iterable):
...     "Returns the sequence elements and then returns None indefinitely"
...     return chain(iterable, repeat(None))

>>> def ncycles(iterable, n):
...     "Returns the sequence elements n times"
...     return chain(*repeat(iterable, n))

>>> def dotproduct(vec1, vec2):
...     return sum(imap(operator.mul, vec1, vec2))

>>> def flatten(listOfLists):
...     return list(chain.from_iterable(listOfLists))

>>> def repeatfunc(func, times=None, *args):
...     "Repeat calls to func with specified arguments."
...     "   Example:  repeatfunc(random.random)"
...     if times is None:
...         return starmap(func, repeat(args))
...     else:
...         return starmap(func, repeat(args, times))

>>> def pairwise(iterable):
...     "s -> (s0,s1), (s1,s2), (s2, s3), ..."
...     a, b = tee(iterable)
...     for elem in b:
...         break
...     return izip(a, b)

>>> def grouper(n, iterable, fillvalue=None):
...     "grouper(3, 'ABCDEFG', 'x') --> ABC DEF Gxx"
...     args = [iter(iterable)] * n
...     return izip_longest(fillvalue=fillvalue, *args)

>>> def roundrobin(*iterables):
...     "roundrobin('ABC', 'D', 'EF') --> A D E B F C"
...     # Recipe credited to George Sakkis
...     pending = len(iterables)
...     nexts = cycle(iter(it).next for it in iterables)
...     while pending:
...         try:
...             for next in nexts:
...                 yield next()
...         except StopIteration:
...             pending -= 1
...             nexts = cycle(islice(nexts, pending))

>>> def powerset(iterable):
...     "powerset([1,2,3]) --> () (1,) (2,) (3,) (1,2) (1,3) (2,3) (1,2,3)"
...     s = list(iterable)
...     return chain.from_iterable(combinations(s, r) for r in range(len(s)+1))

>>> def unique_everseen(iterable, key=None):
...     "List unique elements, preserving order. Remember all elements ever seen."
...     # unique_everseen('AAAABBBCCDAABBB') --> A B C D
...     # unique_everseen('ABBCcAD', str.lower) --> A B C D
...     seen = set()
...     seen_add = seen.add
...     if key is None:
...         for element in iterable:
...             if element not in seen:
...                 seen_add(element)
...                 yield element
...     else:
...         for element in iterable:
...             k = key(element)
...             if k not in seen:
...                 seen_add(k)
...                 yield element

>>> def unique_justseen(iterable, key=None):
...     "List unique elements, preserving order. Remember only the element just seen."
...     # unique_justseen('AAAABBBCCDAABBB') --> A B C D A B
...     # unique_justseen('ABBCcAD', str.lower) --> A B C A D
...     return imap(next, imap(itemgetter(1), groupby(iterable, key)))

This is not part of the examples but it tests to make sure the definitions
perform as purported.

>>> take(10, count())
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> list(enumerate('abc'))
[(0, 'a'), (1, 'b'), (2, 'c')]

>>> list(islice(tabulate(lambda x: 2*x), 4))
[0, 2, 4, 6]

>>> it = iter(xrange(10))
>>> consume(it, 3)
>>> next(it)
3
>>> consume(it)
>>> next(it, 'Done')
'Done'

>>> nth('abcde', 3)
'd'

>>> nth('abcde', 9) is None
True

>>> [all_equal(s) for s in ('', 'A', 'AAAA', 'AAAB', 'AAABA')]
[True, True, True, False, False]

>>> quantify(xrange(99), lambda x: x%2==0)
50

>>> a = [[1, 2, 3], [4, 5, 6]]
>>> flatten(a)
[1, 2, 3, 4, 5, 6]

>>> list(repeatfunc(pow, 5, 2, 3))
[8, 8, 8, 8, 8]

>>> import random
>>> take(5, imap(int, repeatfunc(random.random)))
[0, 0, 0, 0, 0]

>>> list(pairwise('abcd'))
[('a', 'b'), ('b', 'c'), ('c', 'd')]

>>> list(pairwise([]))
[]

>>> list(pairwise('a'))
[]

>>> list(islice(padnone('abc'), 0, 6))
['a', 'b', 'c', None, None, None]

>>> list(ncycles('abc', 3))
['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c']

>>> dotproduct([1,2,3], [4,5,6])
32

>>> list(grouper(3, 'abcdefg', 'x'))
[('a', 'b', 'c'), ('d', 'e', 'f'), ('g', 'x', 'x')]

>>> list(roundrobin('abc', 'd', 'ef'))
['a', 'd', 'e', 'b', 'f', 'c']

>>> list(powerset([1,2,3]))
[(), (1,), (2,), (3,), (1, 2), (1, 3), (2, 3), (1, 2, 3)]

>>> all(len(list(powerset(range(n)))) == 2**n for n in range(18))
True

>>> list(powerset('abcde')) == sorted(sorted(set(powerset('abcde'))), key=len)
True

>>> list(unique_everseen('AAAABBBCCDAABBB'))
['A', 'B', 'C', 'D']

>>> list(unique_everseen('ABBCcAD', str.lower))
['A', 'B', 'C', 'D']

>>> list(unique_justseen('AAAABBBCCDAABBB'))
['A', 'B', 'C', 'D', 'A', 'B']

>>> list(unique_justseen('ABBCcAD', str.lower))
['A', 'B', 'C', 'A', 'D']

t
libreftestcCs�ttttttttf}tj	|�|r�t
td�r�ddl}dgd}xAtt|��D]-}tj	|�|j�tj�||<qlW|GHntjtjt|�dS(Ntgettotalrefcounti����i(R"R[RJRjRhR�R/RCRtrun_unittestthasattrR�tgcRFR�R7tcollectR�trun_doctesttmodulesR(tverbosettest_classesR�tcountsR
((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt	test_mainDs		



t__main__R�(6R-ttestRt	itertoolsR�tdecimalRt	fractionsRR�RR�R�R�t	functoolsRR"tImportErrorRFtMAX_Py_ssize_tR�tminsizeRR	RRR
RRRR!tTestCaseR"R/RCRJRSRTRRVR�RXRYRZRR[RhRjR�R�t__test__R�RR�(((s:/usr/local/python-2.7/lib/python2.7/test/test_itertools.pyt<module>sh


									����R*a	
	
		�^�

© 2025 GrazzMean