KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17
System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64
User : nobody ( 99)
PHP Version : 5.2.17
Disable Function : NONE
Directory :  /proc/21572/root/usr/lib/python2.4/test/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/21572/root/usr/lib/python2.4/test/test_descr.pyo
mň
‚=5Dc@sădklZlZlZlZlZlZdklZdk	Z	e	i
ddedeƒd„Z
ddd	„Zd
dd„Zd
dd„Zddd„Zddd„Zddd„Zd„Zd„Zd„Zd„Zd„Zhdd<d d!<d"d#<d$d%<d&d'<d(d(<d)d*<d+d,<d-d.<d/d0<d1d2<d3d4<d5d5<d6d7<d8d9<d:d;<d<d=<d>d?<d@dA<ZxIeiƒD];\ZZeiƒoedBZndCeZeee<qŠWhdDd<dEd!<dFdF<dGdH<dIdI<dJdJ<dKdK<dLdL<dMdM<ZxIeiƒD];\ZZeiƒoedNZndOeZeee<qLWgdP„ZdQ„Z dR„Z!dS„Z"dT„Z#dU„Z$dV„Z%dW„Z&dX„Z'dY„Z(dZ„Z)d[„Z*d\„Z+d]„Z,d^„Z-d_„Z.d`Z/da„Z0db„Z1dc„Z2dd„Z3de„Z4df„Z5dg„Z6dh„Z7di„Z8dj„Z9dk„Z:dl„Z;dm„Z<dn„Z=do„Z>dp„Z?dq„Z@dr„ZAds„ZBdt„ZCdu„ZDdv„ZEdw„ZFdx„ZGdy„ZHdz„ZId{„ZJd|„ZKd}„ZLd~„ZMd„ZNd€„ZOd„ZPd‚„ZQdƒ„ZRd„„ZSd…„ZTd†„ZUd‡„ZVdˆ„ZWd‰„ZXdŠ„ZYd‹„ZZdŒ„Z[d„Z\dŽ„Z]d„Z^d„Z_d‘„Z`d’„Zad“„Zbd”„Zcd•„Zdd–„Zed—„Zfd˜„Zgd™„Zhdš„Zid›„Zjdœ„Zkd„Zldž„ZmdŸ„Znd „ZodĄ„Zpd˘„ZqdŁ„Zrd¤„ZsdĽ„ZtdŚ„Zud§„Zvdk	Z	d¨„ZwdŠ„ZxdŞ„ZyedŤjoeyƒndS(Ź(sverifysvereqsverboses
TestFailedsTESTFNsget_original_stdout(sdeepcopyNtignores,complex divmod\(\), // and % are deprecated$s(<string>|%s)$cCs(||j	otd||f‚ndS(Ns%r is %r(tatbt
TestFailed(RR((t%/usr/lib/python2.4/test/test_descr.pytveriss
slen(a)t__len__cCsĂto
dG|GHnhd|<}tt||ƒ|ƒt|ƒ}t	||ƒ}x"||ijo|i
d}qWWt||i|ƒt||ƒ|ƒt	||ƒ}t|ƒ|ƒdS(NtcheckingRi(tverbosetexprRtdicttvereqtevaltresttypetttgetattrtmethtmt__dict__t	__bases__tbm(RR
R	RRRR
R((Rttestunops
sa+bt__add__c	Csúto
dG|GHnhd|<d|<}|djodddjo
d}ntt||ƒ|ƒt	|ƒ}t||ƒ}x"||i
jo|id	}qˆWt||i
|ƒt|||ƒ|ƒt||ƒ}t||ƒ|ƒdS(
NRRRt__div__iif0.5t__truediv__i(RR	RRR
RRRR
RRRRRRR(	RRR
R	RRRR
R((Rt	testbinops

sa[b:c]t__getslice__c
Csáto
dG|GHnhd|<d|<d|<}tt||ƒ|ƒt	|ƒ}	t|	|ƒ}x"||	ijo|	id}	qiWt||	i|ƒt||||ƒ|ƒt||ƒ}t|||ƒ|ƒdS(NRRRtci(RR	RRRR
RRR
RRRRRRRR(
RRRR
R	RRRR
R((Rt
testternop.s
!sa+=bt__iadd__c	Bseo
dG|GHnhde|ƒ<d|<}||Ue|d|ƒe|ƒ}e
||ƒ}x"||i
jo|id}qiWe||i
|ƒe|ƒ|d<||d|ƒe|d|ƒe|ƒ|d<e
|d|ƒ}||ƒe|d|ƒdS(NRRRi(RtstmttdeepcopyRRR
RR
RRRRRRRR(	RRR
RRRR
RR((Rt	testsetop;s$

sa[b]=ct__setitem__c
Bs"eo
dG|GHnhde|ƒ<d|<d|<}||Ue|d|ƒe	|ƒ}e||ƒ}x"||ijo|id}qrWe||i|ƒe|ƒ|d<||d||ƒe|d|ƒe|ƒ|d<e|d|ƒ}	|	||ƒe|d|ƒdS(NRRRRi(RRR RRRR
RR
RRRRRRRR(
RRRR
RRRR
RR((Rt
testset2opMs$
'
sa[b:c]=dt__setslice__cBs1eo
dG|GHnhde|ƒ<d|<d|<d|<}||Ue|d|ƒe
|ƒ}	x"||	i
jo|	id}	qlWe|	|ƒ}e||	i
|ƒe|ƒ|d<||d|||ƒe|d|ƒe|ƒ|d<e|d|ƒ}
|
|||ƒe|d|ƒdS(NRRRRtdi(RRR RRRR%R
RR
RRRRRRRR(RRRR%R
RRRR
RR((Rt
testset3op_s$
0cCs'dfd„ƒY}t|idƒt|iddƒdfd„ƒY}t|idjƒdtfd„ƒY}t|id	ƒt|idd	ƒd
tfd„ƒY}t|idjƒdtfd
„ƒY}t|id	ƒt|idd	ƒdtfd„ƒY}t|idjƒdS(NtClassiccBstZdZRS(sA classic docstring.(t__name__t
__module__t__doc__(((RR'rssA classic docstring.R*tClassic2cBstZRS(N(R(R)(((RR+wst	NewStaticcBstZdZRS(sAnother docstring.(R(R)R*(((RR,{ssAnother docstring.t
NewStatic2cBstZRS(N(R(R)(((RR-€st
NewDynamiccBstZdZRS(sAnother docstring.(R(R)R*(((RR.„stNewDynamic2cBstZRS(N(R(R)(((RR/‰s(R'RR*RR+tverifytNonetobjectR,R-R.R/(R'R,R/R.R-R+((Rtclass_docstringsqsc	Csâto	dGHntdgdgddgddƒtdddgddddƒtdddgd	d
ddƒtdddgddddƒtdddgd
dddgd
dƒtdgdgddgddƒtddgdddddddgddƒtdddgdddƒtddgdddddddgddƒtddgdddddddgddƒtddgddddgddƒtdddd	gddddgdddd	gddƒdS(NsTesting list operations...iisa+bRisb in at__contains__iisa[b]t__getitem__sa[b:c]Rsa+=bRsa*=bt__imul__slen(a)Rsa*bt__mul__sb*at__rmul__sa[b]=cR"iisa[b:c]=dR$(RRRR!RR#R&(((Rtlistss	"("...%cCsGto	dGHnthdd<hdd<dddƒthdd<dd<ddd	d
ƒthdd<dd<ddd	d
ƒthdd<dd<dddd
ƒhdd<dd<}g}x!|iƒD]}|i|ƒqŰWg}x!t|ƒD]}|i|ƒqWt	||ƒg}x!|i
ƒD]}|i|ƒq<Wt	||ƒg}x$ti
|ƒD]}|i|ƒqvWt	||ƒhdd<dd<}t|dddƒt	t
t|ƒhƒ|ƒt	t
|iƒhƒ|ƒthdd<dd<ddhdd<dd<dd<ddƒdS(NsTesting dict operations...iii˙˙˙˙scmp(a,b)t__cmp__iisb in aR4isa[b]R5slen(a)Rsa[b]=cR"(RRR%tl1tkeystitappendtltiterRt__iter__R
RRtreprt__repr__R#(R%R=R?R;((Rtdictsœs>	((((





c	CsÍto	dGHntƒ}t|hƒthƒ}t|hƒthdd<dd<ƒ}t|hdd<dd<ƒt|t|iƒƒƒt|t|iƒƒƒthdd<dd<ƒ}t|tddddƒƒt|t|ƒt|thdd<ddƒƒt|td"gddƒƒt|td#d$g|ƒt|t|j	ƒxŠd
ddd
d
gd%fD]m}yt|ƒWnFtj
oq‡t	j
o(|d
joqôt
d|ƒ‚q‡Xt
d|ƒ‚q‡WythhƒWntj
onXt
dƒ‚dfd„ƒY}yt|ƒƒWntj
onXt
dƒ‚d„|_d„|_
t|ƒƒ}t||iƒdfd„ƒY}t|ddƒ|ddƒ|ddƒ|ddƒgƒ}t|hdd<dd<ƒtttdƒtddƒƒƒ}t|tg}tdƒD]}|||dfqT~ƒƒxNd&gd'gfD]:}yt|ƒWnt	j
oq‹Xt
d!|ƒ‚q‹WdS((NsTesting dict constructor ...iiRRtonettwoidiČilx0.00.0t0sno TypeError from dict(%r)sno TypeError from dict({}, {})tMappingcBs)tZhdd<dd<dd<ZRS(NiiiiRx0.01.0(R(R)R
(((RRHÝss*no TypeError from dict(incomplete mapping)cCs
|iiƒS(N(tselfR
R<(RI((Rt<lambda>čscCs|i|S(N(RIR
R=(RIR=((RRJéstAddressBookEntrycBstZd„Zd„ZRS(NcCs||_||_dS(N(tfirstRItlast(RIRLRM((Rt__init__ďs	cCst|i|igƒS(N(R@RIRLRM(RI((RRAňs(R(R)RNRA(((RRKîs	tTimtWarsawtBarrytPetersiittooshortttootlongsby 1sno ValueError from dict(%r)(RFi(REid(RFiČ(i(RS(RTslongsby 1(RR
R%Rtitemst	iteritemsR0tbadargt	TypeErrort
ValueErrorRRHR<R5RKtziptranget_[1]R=tbad(RKR=R^RXRHR]R%((Rtdict_constructor´sn		

"
<$>csŘto	dGHnd}	ttƒdgƒ~	xEdddddgdd	d/hdd<ttfD]}t|ƒq`Wd
fd„ƒY}dd
ddg}tt|ƒ|ƒt	dt|i
ƒjƒ|ƒ}tt|ƒ|ƒd|_d„|_
tt|ƒ|ddgƒt	dt|i
ƒjƒd|fd„ƒY}ddg|}tt|ƒ|ƒt	dt|iƒjƒ|ƒ}
tt|
ƒ|ƒt	dt|
iƒjƒd|
_d„|
_tt|
ƒ|ddgƒd„}d
tfd„ƒY}dd
g}t|t|ƒƒ|ƒ|ƒ}t|t|ƒƒ|ƒt	dt|i
ƒjƒd|_d„|_
t|t|ƒƒ|ddgƒt	dt|i
ƒjƒd|fd„ƒY}ddg|}t|t|ƒƒ|ƒt	dt|iƒjƒ|ƒ}
t|t|
ƒƒ|ƒd|
_d „|
_t|t|
ƒƒ|ddgƒt	dt|
iƒjƒdk}d!t|ƒfd"„ƒY}
|
d#ƒ}d|_d$|_g}t|ƒD]$}|d%dgjo||qÔqÔ~}t|d&d'gƒd(|
fd)„ƒY}|d*ƒ}d|_d$|_t|id+ƒyt|ƒWnt j
onXttdƒtt"ƒƒd,tf‡d-†ƒY‰d
tf‡d.†ƒY}t|ƒƒdS(0NsTesting dir() ...itjunkilx0.02.0f2.0t2u2tCcBstZdZd„ZRS(NicCsdS(N((RI((RtCmethods(R(R)tCdataRc(((RRbsRdRcR*R)tim_selfcCsdS(Ni((RI((RRJstcdatatcmethodtAcBstZdZd„ZRS(NicCsdS(N((RI((RtAmethod%s(R(R)tAdataRi(((RRh#sRjRii*cCsdS(Ni((RI((RRJ.stadatatamethodcCs3g}|D]!}|idƒp||qq~S(Nt_(R]tstringstst
startswith(RnR]Ro((Rtinteresting3scBstZdZd„ZRS(NicCsdS(N((RI((RRc8s(R(R)RdRc(((RRb6scCsdS(Ni((RI((RRJBscBstZdZd„ZRS(NicCsdS(N((RI((RRiHs(R(R)RjRi(((RRhFscCsdS(Ni((RI((RRJPstMcBstZRS(N(R(R)(((RRrVsRiR(RRtM2cBstZd„ZeeƒZRS(NcCsdS(NsNot a dict!((RI((Rtgetdict_s(R(R)RttpropertyR(((RRs^s	tm2sNot a dict!tWrappercs;tZd„Zd„Z‡d†Zd„Z‡d†ZRS(NcCs
||_dS(N(tobjRIt
_Wrapper__obj(RIRx((RRNrscCsdt|iƒS(NsWrapper(%s)(RBRIRy(RI((RRCtscsˆ|i|ƒS(N(RwRIRytkey(RIRz(Rw(RR5vscCs
t|iƒS(N(tlenRIRy(RI((RRxscsˆt|i|ƒƒS(N(RwRRIRytname(RIR|(Rw(Rt__getattr__zs(R(R)RNRCR5RR}((Rw(RRwqs
			cs tZ‡d†ZeeƒZRS(Ncsˆt|ƒƒS(N(RwRRI(RI(Rw(Rt
__getclass~s(R(R)t_C__getclassRut	__class__((Rw(RRb}s(i($RR`RtdirRttest_dirtargRbtcstuffR0RcRRfRgRhtastuffRiRRkRlRqR2tsysRrt	minstanceRR]txtnamesRst
m2instanceRRYR1tEllipsisRw(R…RsRbRwR‰RƒR„R‡RhR`RrRŠR†RRR]RqRˆ((RwRR‚sŠ	4							#		#			>		taddt+tsubt-tmult*tdivt/tmodt%tdivmodtpows**tlshifts<<trshifts>>tandt&txort^tort|tcmptltt<tles<=teqs==tnes!=tgtt>tges>=s(a, b)sa %s btpostnegtabstinvertt~tintRUtfloattoctthexs(a)s%s acCsűhd|<d|<}xntiƒD]`\}}||joGd|}t||ƒo)t	||ƒ}t|||||ƒq…q%q%WxktiƒD]]\}}||joDd|}t||ƒo&t	||ƒ}t
||||ƒqóq–q–WdS(NRRs__%s__(RRR
tbinopsRVR|R	tskipthasattrRR
RtunopsR(RRRłR
R|R
R	((Rtnumops´s


"


cCsŰto	dGHntddƒtdiƒdƒtdiƒdƒdtfd„ƒY}t|dƒd	ƒy|ƒd
Wntj
onXtd‚dk}y||i	dƒWnt
j
onXtd‚dS(
NsTesting int operations...idiiiRbcBstZd„ZRS(NcCstS(N(tNotImplemented(RItother((RRËs(R(R)R(((RRbĘslits+NotImplemented should have caused TypeErrors should have raised OverflowError(RRśRt__nonzero__RŽRbRYRR†tmaxintt
OverflowError(RbR†((RtintsĂs$	
		cCs!to	dGHntddƒdS(NsTesting long operations...ldl(RRś(((RtlongsÜs	cCs!to	dGHntddƒdS(NsTesting float operations...f100.0f3.0(RRś(((Rtfloatsŕs	cCsëto	dGHntdddddddd	d
dgƒdtfd
„ƒY}|dddƒ}tt|ƒdƒt|idƒ||ddƒ}tt|ƒdƒt|idƒ|dƒ}tt|ƒdƒt|idƒdS(NsTesting complex operations...x0.0100.0x0.03.0RłRĄRŁRŚR¨RŽRURŻtNumbercBs)tZdgZd„Zd„ZeZRS(NtpreccOs+ti||Œ}|iddƒ|_|S(NRÁi(tcomplext__new__tclstargstresulttkwdstgetRÁ(RÄRĹRÇRĆ((RRĂéscCsm|i}|idjod||ifSn|idjod||ifSnd||i||ifS(Nf0.0s%.*gs%.*gjs(%.*g+%.*gj)(RIRÁtimagtreal(RIRÁ((RRCís	(R(R)t	__slots__RĂRCt__str__(((RRŔçs			f3.1400000000000001RÁis3.14is3.1f234.5s234.5i(RRśRÂRŔRRRBRÁ(RRŔ((Rt	complexesäs	(c
Cs,to	dGHndk}dk}dd„}||i|i<t|dgƒ|dgƒ|ddgƒddƒt|dddgƒdddd	ƒt|dddgƒd
ddd	ƒt|dddgƒdddd
ƒt|dddgƒdd|ddgƒddƒt	|dgƒ|dgƒ|ddgƒddƒt	|ddgƒd|ddddddgƒddƒt
|dddgƒdddƒt|ddgƒd|ddddddgƒddƒt|ddgƒd|ddddddgƒddƒt|ddgƒdd|ddgƒddƒt|dddd
gƒdd|ddgƒ|dddd
gƒddƒd |ifd!„ƒY}|ƒ}t|gƒt|iƒdƒ|id"ƒt|d"gƒt|iƒdƒ|id#ƒt|iƒd#ƒdS($NsTesting spamlist operations...cCsdk}|i|ƒS(N(t	xxsubtypetspamtspamlistR?(R?tmemoRĎ((RRĐs	iisa+bRisb in aR4iisa[b]R5sa[b:c]Rsa+=bRsa*=bR6slen(a)Rsa*bR7sb*aR8sa[b]=cR"iisa[b:c]=dR$RbcBstZd„ZRS(NcCsdS(Ni((RI((Rtfoos(R(R)RŇ(((RRbsidi*(RtcopyRÎRĎR1RĐt_deepcopy_dispatchRRR!RR#R&RbRRRŇR>tgetstatetsetstate(RRĎRbRĐRÓ((Rt	spamlistss:	4%%%*
*
:"::1-	


c	Cs9to	dGHndk}
dk}dd„}||
i|i<t|hdd<ƒ|hdd<ƒdddƒt|hdd<dd	<ƒddd
dƒt|hdd<dd	<ƒddd
dƒt|hdd<dd	<ƒddd
dƒ|hdd<dd	<ƒ}g}	x!|i
ƒD]}|	i|ƒq-Wg}x!t|ƒD]}|i|ƒqWWt||	ƒg}x!|iƒD]}|i|ƒqŽWt||	ƒg}x0t|hƒƒi|ƒD]}|i|ƒqÔWt||	ƒhdd<dd	<}||ƒ}t|dddƒt|t|ƒddƒt|hdd<dd	<ƒdd|hdd<dd<dd	<ƒddƒd|ifd„ƒY}|ƒ}t|iƒgƒt|iƒdƒd|d<t|iƒdgƒt|iƒdƒ|idƒt|iƒdƒdS(NsTesting spamdict operations...cCs@dk}|iƒ}x$|iƒD]\}}|||<q"W|S(N(RÎRĎtspamdicttsdR%RVtktv(R%RŃRĎRÚRŰRŮ((RRŘ)s	
iii˙˙˙˙scmp(a,b)R:iisb in aR4isa[b]R5slen(a)Rsrepr(a)RCsa[b]=cR"RbcBstZd„ZRS(NcCsdS(Ni((RI((RRŇIs(R(R)RŇ(((RRbHstbarRŇid(sfooRÜ(RRÓRÎRĎR1RŘRÔRR%R;R<R=R>R?R@RRARt	straightdtspamdRRBR#RbRRVRŇRŐRÖ(RRÝRŘR=RĎR?R%RŢRbR;RÓ((Rt	spamdicts&sX	4...





H
	

cCsTto	dGHnttttƒƒtthtƒƒtƒ}t|hƒt|itjƒtt|tƒƒdtfd„ƒY}tt|tƒƒ|dƒ}t|i
dƒ|ddddƒ}t|ddjo|ddƒ|ƒ}t|i
d	ƒt|i
ƒd	ƒ|id
ƒt|i
d
ƒt|i
ƒd
ƒ|idƒt|i
dƒt|i
ƒdƒt|dd
ƒd
|d<t|dd
ƒto	dGHnd}xJt|ƒD]<}|ƒ||<x&t|ƒD]}|||||<qéWqÉWxDt|ƒD]6}x-t|ƒD]}t|||||ƒq)WqWdS(Ns"Testing Python subclass of dict...RbcBs;tZdZd„Zd„Zd„Zd„Zd„ZRS(Ni˙˙˙˙cOsa|o$tt|ƒdƒ|d|_n|o+x(|iƒD]\}}|||<q?WndS(Nii(	RRR{RItstatetkwRVRÚRŰ(RIRRáRŰRÚ((RRN]s
cCs|i|dƒS(Ni(RIRČRz(RIRz((RR5cscCs0tt|tdƒƒƒti|||ƒdS(Ni(R0t
isinstanceRzRR
R"RItvalue(RIRzRă((RR"escCs
||_dS(N(RŕRI(RIRŕ((RRÖhscCs|iS(N(RIRŕ(RI((RRŐjs(R(R)RŕRNR5R"RÖRŐ(((RRb[s				iRŇiRÜii˙˙˙˙ii
i*ispydict stress test ...i2(RR0t
issubclassR
RâR%RR€Rbta1Rŕta2RRŐRÖtNR\R=tj(RRbR%R=RčRçRĺRć((RtpydictsSsP		
"	


	




cCsto	dGHndtfd„ƒY}|ƒ}|idddgƒt|ddƒt|ddƒt|dd	ƒt|dd
!dƒdS(Ns"Testing Python subclass of list...RbcBstZd„Zd„ZRS(NcCsti||ƒdS(Nid(tlistR5RIR=(RIR=((RR5ŠscCs
||fS(N(R=Rč(RIR=Rč((RRŒs(R(R)R5R(((RRb‰s	iiiidieifiČ(idiČ(RRęRbRtextendR(RRb((Rtpylists‡s		cs÷to	dGHndfd„ƒY}|ƒ}t|iƒdƒ|idƒt|iƒdƒdfd„ƒY}t|iƒ|ƒ|ƒ}
t	|
i
|jƒdtfd	„ƒY‰df‡d
†ƒY}t|i
dƒ|ƒ}t|i
dƒdtfd
„ƒY‰dtf‡d†ƒY‰df‡d†ƒY}t|idƒt|ifƒt	d|ijƒ|ƒ}t|iƒdƒdtf‡d†ƒY‰df‡d†ƒY}d|fd„ƒY}d|fd„ƒY}d||fd„ƒY}t|ƒiƒdƒd||fd„ƒY}t|ƒiƒdƒdtf‡d †ƒY‰df‡d!†ƒY}|ƒ}t	t|d"ƒƒd#|_t|id#ƒt|id$ƒd%ˆˆfd&„ƒY‰df‡d'†ƒY}d|fd(„ƒY}d|fd)„ƒY}d||fd*„ƒY}t|ƒidƒd+tf‡d,†ƒY‰df‡d-†ƒY}tˆi!dƒ|ƒ}tt|ƒ|ƒtˆi!dƒdtfd.„ƒY}|ƒ}y|ƒWnt"j
onXt#d/‚dS(0NsTesting __metaclass__...RbcBs)tZeZd„Zd„Zd„ZRS(NcCs
d|_dS(Ni(RIt	_C__state(RI((RRN™scCs|iS(N(RIRí(RI((RR՛scCs
||_dS(N(RŕRIRí(RIRŕ((RR֝s(R(R)Rt
__metaclass__RNRŐRÖ(((RRb—s		ii
tDcBstZdefd„ƒYZRS(NRîcBstZd„ZRS(NcCs|S(N(RÄ(RÄ((RtmyselfĽs(R(R)Rđ(((RRî¤s(R(R)RRî(((RRďŁstM1cBstZd„ZRS(NcCs d|d<ti||||ƒS(Nit__spam__(R
RRĂRÄR|tbases(RÄR|RóR
((RRĂŞs
(R(R)RĂ(((RRńŠscstZˆZRS(N(R(R)RńRî((Rń(RRb­sit	_instancecBstZRS(N(R(R)(((RRôłsRscs)tZd„ZeeƒZ‡d†ZRS(NcCs.ti|ƒ}||_||_||_|S(N(R2RĂRÄRIR|RóR
(RÄR|RóR
RI((RRĂśs
			cs[ˆƒ}xK|iD]@}|idƒoqnt|||i|i||ƒƒqW|S(Nt__(RôtitRIR
RzRptsetattrt__get__(RIRöRz(Rô(Rt__call__˝s	
'(R(R)RĂtstaticmethodRů((Rô(RRsľs	cstZˆZd„ZRS(NcCsdS(Ni*((RI((RRĎÇs(R(R)RsRîRĎ((Rs(RRbĹsRĎi*t	autosupercstZ‡d†ZRS(Ncsytˆ|ƒi||||ƒ}x |d djo|d}q$W|od|}nd}t||t|ƒƒ|S(NiRms
_%s__supert__super(	tsuperRűt	metaclassRĂR|RóR
RÄR÷(RţR|RóR
RÄ(Rű(RRĂÔs(R(R)RĂ((Rű(RRűŃsRhcstZˆZd„ZRS(NcCsdS(NRh((RI((RRâs(R(R)RűRîR((Rű(RRhŕstBcBstZd„ZRS(NcCsd|iiƒS(NR˙(RIt	_B__superR(RI((RRĺs(R(R)R(((RR˙äscBstZd„ZRS(NcCsd|iiƒS(NRb(RIt	_C__superR(RI((RRčs(R(R)R(((RRbçscBstZd„ZRS(NcCsd|iiƒS(NRď(RIt	_D__superR(RI((RRës(R(R)R(((RRďęstDCBAtEcBstZd„ZRS(NcCsd|iiƒS(NR(RIt	_E__superR(RI((RRďs(R(R)R(((RRîstEBCAtautopropertycstZ‡d†ZRS(Nc	sh}x˛|iƒD]¤\}}|idƒo<|d}|i|dƒ\}}|}||f||<q|idƒo<|d}|i|dƒ\}}|}||f||<qqWx3|iƒD]%\}\}}t	||ƒ||<qČWt
ˆ|ƒi
||||ƒS(Nt_get_it_set_(NN(NN(thitsR
RWRztvalRpRČR1tsetRuRýRRţRĂR|Ró(	RţR|RóR
R
RRRČRz(R(RRĂös$



(R(R)RĂ((R(RRóscs tZˆZd„Zd„ZRS(NcCs|iS(N(RIt_A__x(RI((Rt_get_x	scCs||_dS(N(RˆRIR
(RIRˆ((Rt_set_xs(R(R)RRîRR((R(RRhs	Rˆiiô˙˙˙tmultimetaclasscBstZRS(N(R(R)(((RRscstZˆZd„ZRS(NcCsdS(NRh((RI((RRs(R(R)RRîR((R(RRhscBstZd„ZRS(NcCsd|iiƒS(NR˙(RIRR(RI((RRs(R(R)R(((RR˙scBstZd„ZRS(NcCsd|iiƒS(NRb(RIRR(RI((RRs(R(R)R(((RRbscBstZd„ZRS(NcCsd|iiƒS(NRď(RIRR(RI((RR!s(R(R)R(((RRď stTcstZdZ‡d†ZRS(Nicsˆid7_dS(Ni(Rtcounter(RIRĹ(R(RRN(s(R(R)RRN((R(RR&scstZˆZRS(N(R(R)RRî((R(RRb*scBstZRS(N(R(R)(((RRb1ss5calling object w/o call method should raise TypeError($RRbRRRŐRÖRďRđR%R0R€RRńRňRR2RôRsR|RóR
RĎRűRhR˙RRRR´RˆR
RRRRYR(RűRńRsRRhRbR˙RRďRRRRR%Rô((RűRńRsRRRRôRRţ•st		
							cs…to	dGHng‰dk}t|ƒ‰dˆf‡‡d†ƒY}|dƒ}d|_|i}|`t	ˆd
ddgƒdS(
Ns$Testing Python subclass of module...tMMcsAtZ‡d†Z‡‡d†Z‡‡d†Z‡‡d†ZRS(Ncsˆi||ƒdS(N(tMTRNRIR|(RIR|(R(RRN=scs#ˆid|fƒˆi||ƒS(NR(tlogR>R|Rt__getattribute__RI(RIR|(RR(RR?scs-ˆid||fƒˆi|||ƒdS(NR÷(RR>R|RăRt__setattr__RI(RIR|Ră(RR(RRBscs'ˆid|fƒˆi||ƒdS(Ntdelattr(RR>R|Rt__delattr__RI(RIR|(RR(RREs(R(R)RNRRR((RR(RR<sRiR÷RŇRR(ssetattrsfooi(sgetattrsfoo(sdelattrsfoo(
RRR†RRRRRŇRˆR(RRR†RRˆR((RRRtpymods7s				csĎto	dGHndtfd„ƒY‰ˆƒ}t|iƒdƒ|idƒt|iƒdƒdtˆf‡d†ƒY}
|
ƒ}
t|
i
ƒgƒd|
d	<t|
iƒd1gƒt|
d	dƒt|
iƒdƒ|
idƒt|
iƒdƒt|
i|
tˆtfƒd
tfd„ƒY}d|tfd
„ƒY}t|ƒiƒdƒtt|ƒƒdƒt|ƒiƒdƒtt|ƒƒdƒdfd„ƒY}d|fd„ƒY}d|fd„ƒY‰d|ˆfd„ƒY}
t|
idƒd|
tfd„ƒY}	t|	i|	|
||ˆtfƒt|	idƒd|ˆtfd„ƒY}t|i||ˆ|tfƒt|idƒdfd„ƒY‰dˆtfd„ƒY}t|i|ˆtfƒ|ƒ}t|iƒdƒt|iƒd ƒt|iƒd!ƒdˆfd"„ƒY}
d#|
tfd$„ƒY}t|i||
ˆtfƒ|ƒ}t|iƒdƒt|iƒd%ƒt|iƒd&ƒt|iƒd'ƒd(||tfd)„ƒY}t|i||||
ˆtfƒ|ƒ}t|iƒdƒt|iƒd%ƒt|iƒd ƒt|iƒd&ƒt|i ƒd*ƒt|iƒd+ƒd,fd-„ƒY}yd.|fd/„ƒY}Wnt#j
onXt$d0‚dS(2NsTesting multiple inheritance...RbcBs#tZd„Zd„Zd„ZRS(NcCs
d|_dS(Ni(RIRí(RI((RRNSscCs|iS(N(RIRí(RI((RRŐUscCs
||_dS(N(RŕRIRí(RIRŕ((RRÖWs(R(R)RNRŐRÖ(((RRbRs		ii
RďcstZ‡d†ZRS(Ncs$thƒi|ƒˆi|ƒdS(N(RRNRIRb(RI(Rb(RRN^s(R(R)RN((Rb(RRď]stworldthellotNodecBstZd„Zd„ZRS(NcCst|iƒƒS(N(RŽRIRŇ(RI((Rt__int__mscCsdS(Nt23((RI((RRŇos(R(R)RRŇ(((RRls	tFragcBstZd„ZRS(NcCsdS(Nt42((RI((RRŇrs(R(R)RŇ(((RR qsii*RhcBstZdZRS(Ni(R(R)Rˆ(((RRh{sR˙cBstZRS(N(R(R)(((RR˙~scBstZdZRS(Ni(R(R)Rˆ(((RRbscBstZRS(N(R(R)(((RRď„siRcBstZRS(N(R(R)(((RR‰stFcBstZRS(N(R(R)(((RR"sicBstZd„Zd„ZRS(NcCsdS(NsC a((RI((RRg—scCsdS(NsC b((RI((Rt
all_method™s(R(R)RgR#(((RRb–s	RńcBstZd„Zd„ZRS(NcCsdS(NsM1 a((RI((Rtm1methodscCsdS(NsM1 b((RI((RR#Ÿs(R(R)R$R#(((RRńœs	sC asM1 asM1 bcBstZd„Zd„ZRS(NcCsdS(NsD a((RI((RtdmethodŠscCsdS(NsD b((RI((RR#Ťs(R(R)R%R#(((RRď¨s	RscBstZd„Zd„ZRS(NcCsdS(NsM2 a((RI((Rtm2methodŻscCsdS(NsM2 b((RI((RR#ąs(R(R)R&R#(((RRsŽs	sD asM2 asM2 btM3cBstZd„Zd„ZRS(NcCsdS(NsM3 a((RI((Rtm3methodźscCsdS(NsM3 b((RI((RR#žs(R(R)R(R#(((RR'ťs	sM3 asM3 bR'cBstZRS(N(R(R)(((RR'ÉstNewcBstZeZRS(N(R(R)RRî(((RR)Ěss0new class with only classic bases - shouldn't be(RR(%RR2RbRRRŐRÖR
RďR%R<RVt__mro__RRęR RRŽRhR˙RˆRR"RńRRgR$R#RsR%R&R'R(R'R)RYR(RńR'RsR)RRhR RbR˙RRďR"RR%R'R((RbRtmultiPs€		
	

"		"	cCsto	dGHndtfd„ƒY}t|ƒiƒdƒd|fd„ƒY}t|ƒiƒdƒt|ƒiƒdƒd|fd„ƒY}t|ƒiƒdƒt|ƒiƒdƒd||fd	„ƒY}t|ƒiƒdƒt|ƒiƒdƒt|i	||||tfƒd
||fd„ƒY}t|ƒiƒdƒt|ƒiƒdƒt|i	||||tfƒyd||fd
„ƒY}Wntj
onXt
d‚yd||fd„ƒY}Wntj
onXt
d‚dS(Ns-Testing multiple inheritance special cases...RhcBstZd„ZRS(NcCsdS(NRh((RI((RRĎÖs(R(R)RĎ(((RRhŐsR˙cBstZd„Zd„ZRS(NcCsdS(NR˙((RI((RtbooŮscCsdS(NR˙((RI((RRĎÚs(R(R)R,RĎ(((RR˙Řs	RbcBstZd„ZRS(NcCsdS(NRb((RI((RR,Ţs(R(R)R,(((RRbÝsRďcBstZRS(N(R(R)(((RRďásRcBstZRS(N(R(R)(((RRĺsR"cBstZRS(N(R(R)(((RR"ëss#expected MRO order disagreement (F)tGcBstZRS(N(R(R)(((RR-ńss#expected MRO order disagreement (G)(RR2RhRRĎR˙R,RbRďR*RR"RYRR-(RhRbR˙R-R"RRď((RtdiamondÓs8		c	CsĆto	dGHndtfd„ƒY}dtfd„ƒY}dtfd„ƒY}d|fd	„ƒY}d
|fd„ƒY}d||||fd
„ƒY}t|i	||||||tfƒdS(Ns(Testing ex5 from C3 switch discussion...RhcBstZRS(N(R(R)(((RRhűsR˙cBstZRS(N(R(R)(((RR˙üsRbcBstZRS(N(R(R)(((RRbýstXcBstZRS(N(R(R)(((RR/ţstYcBstZRS(N(R(R)(((RR0˙stZcBstZRS(N(R(R)(((RR1s(
RR2RhR˙RbR/R0R1RR*(RhRbR˙R0R/R1((Rtex5ůs	cCs6to	dGHndtfd„ƒY}d|fd„ƒY}d|fd„ƒY}d|fd	„ƒY}d
|fd„ƒY}d||fd
„ƒY}d|fd„ƒY}d||fd„ƒY}t
|i|||||tfƒt
|i||||tfƒt
|i||||||||tf	ƒdS(NsTesting MRO monotonicity...tBoatcBstZRS(N(R(R)(((RR3stDayBoatcBstZRS(N(R(R)(((RR4st	WheelBoatcBstZRS(N(R(R)(((RR5	st
EngineLesscBstZRS(N(R(R)(((RR6
stSmallMultihullcBstZRS(N(R(R)(((RR7stPedalWheelBoatcBstZRS(N(R(R)(((RR8stSmallCatamarancBstZRS(N(R(R)(((RR9
stPedalocBstZRS(N(R(R)(((RR:s(RR2R3R4R5R6R7R8R9R:RR*(R9R7R4R6R:R5R8R3((Rtmonotonicitys 				c	CsĆto	dGHndtfd„ƒY}dtfd„ƒY}dtfd„ƒY}d||fd	„ƒY}d
||fd„ƒY}d||fd
„ƒY}t|i	||||||tfƒdS(Ns Testing consistentcy with EPG...tPanecBstZRS(N(R(R)(((RR<stScrollingMixincBstZRS(N(R(R)(((RR=stEditingMixincBstZRS(N(R(R)(((RR> stScrollablePanecBstZRS(N(R(R)(((RR?!stEditablePanecBstZRS(N(R(R)(((RR@"stEditableScrollablePanecBstZRS(N(R(R)(((RRA#s(
RR2R<R=R>R?R@RARR*(R?RAR=R<R@R>((Rtconsistency_with_epgs		sCCannot create a consistent method resolution
order (MRO) for bases c	CsRto	dGHnd„}dtfd„ƒY}d|fd„ƒY}dtfd„ƒY}|td	td
||fhƒ|tttd
||fhƒ|tttd
|||fhƒdtfd„ƒY}d
|fd„ƒY}d|fd„ƒY}d||fd„ƒY}d||fd„ƒY}|tttd||fhƒdS(Ns.Testing error messages for MRO disagreement...cGsjy||ŒWnH|j
o<}t|ƒi|ƒptdt|ƒ|f‚qfnXtd|‚dS(NsMessage %r, expected %rsExpected %s(tcallableRĹtexctmsgtstrRptexpectedR(RDRGRCRĹRE((Rtraises.s"RhcBstZRS(N(R(R)(((RRh7sR˙cBstZRS(N(R(R)(((RR˙8sRbcBstZRS(N(R(R)(((RRb9ssduplicate base class AR/t
GridLayoutcBstZRS(N(R(R)(((RRIBstHorizontalGridcBstZRS(N(R(R)(((RRJCstVerticalGridcBstZRS(N(R(R)(((RRKDstHVGridcBstZRS(N(R(R)(((RRLEstVHGridcBstZRS(N(R(R)(((RRMFstConfusedGrid(RRHR2RhR˙RbRYRtmro_err_msgRIRJRKRLRM(	RhRLRbR˙RMRKRJRHRI((Rtmro_disagreement,s&							cCsto	dGHntƒ}t|itƒtt|ƒtƒtƒ}t||j	ƒtt|dƒƒy
d|_	Wnt
tfj
onXtddƒtttƒdƒƒdtfd„ƒY}|ƒ}t|ihƒd	|_	t|i	d	ƒt|ihdd	<ƒdS(
NsTesting object class...RŇiis1object() should not allow setting a foo attributeRtCdictcBstZRS(N(R(R)(((RRQZsi(RR2RRR€RRR0R´RŇtAttributeErrorRYRQRˆR(RRRQRˆ((RtobjectsJs(			

		csŢto	dGHndtfd„ƒY}|ƒ}tt|dƒƒtt|dƒƒdtfd„ƒY}|ƒ}tt|dƒƒtt|dƒƒd	|_t|id	ƒd|_t
|idƒ|`tt|dƒƒd
tfd„ƒY}|ƒ}tt|dƒƒtt|dƒƒtt|dƒƒtt|d
ƒƒd	|_d|_d|_
t|id	ƒt|idƒt|i
dƒdtfd„ƒY}	|	dƒ}tt|dƒƒtt|dƒƒt|iƒdƒy
d|_Wntj
onXtd‚ydtfd„ƒY}Wntj
onXtd‚ydtfd„ƒY}Wntj
onXtd‚ydtfd„ƒY}Wntj
onXtd‚ydtfd„ƒY}Wntj
onXtd‚ydtfd„ƒY}Wntj
onXtd ‚dtfd!„ƒY}d"tf‡d#†ƒY‰dtfd$„ƒY}|ƒ}ˆƒ|_ˆƒ|_ˆƒ|_
tˆidƒ~tˆid%ƒd&|fd'„ƒY}|ƒ}ˆƒ|_ˆƒ|_tˆidƒ~tˆid%ƒd(|fd)„ƒY}
|
ƒ}ˆƒ|_ˆƒ|_ˆƒ|_tˆidƒ~tˆid%ƒd*tfd+„ƒY}
g}|
ƒ}ˆƒ|g|_tˆid	ƒd}dk}|iƒtˆid%ƒdk }dk}d,tfd-„ƒY}|ƒ}t#|i$ƒƒ}xt&d.ƒD]}||jq_Wt#|i$ƒƒ}t||ƒd/tfd0„ƒY}|i*}|i,|_*|ƒ}z~Wd||_*XdS(1NsTesting __slots__...tC0cBstZgZRS(N(R(R)RË(((RRTdsRRŇtC1cBstZdgZRS(NR(R(R)RË(((RRUjsRitC3cBstZdddgZRS(NRRR(R(R)RË(((RRVvsRRiitC4cBs)tZdZdgZd„Zd„ZRS(sValidate name manglingt__acCs
||_dS(N(RăRIt_C4__a(RIRă((RRN‡scCs|iS(N(RIRY(RI((RRȉs(R(R)R*RËRNRČ(((RRW„s		iRXis$Double underscored names not mangledRbcBstZdgZRS(N(R(R)R1RË(((RRb˜ss[None] slots not caughtcBstZdgZRS(Nsfoo bar(R(R)RË(((RRbŸss['foo bar'] slots not caughtcBstZdgZRS(Ntfoobar(R(R)RË(((RRbŚss['foo\0bar'] slots not caughtcBstZdgZRS(Nt1(R(R)RË(((RRb­ss['1'] slots not caughtcBstZdgZRS(NRš(R(R)RË(((RRb´ss[''] slots not caughtcBstZddddgZRS(NRta_bt_atA0123456789Z(R(R)RË(((RRbşstCountedcs&tZdZ‡d†Z‡d†ZRS(Nicsˆid7_dS(Ni(R_R(RI(R_(RRNŔscsˆid8_dS(Ni(R_R(RI(R_(Rt__del__Âs(R(R)RRNR`((R_(RR_žscBstZdddgZRS(NRRR(R(R)RË(((RRbÄsiRďcBstZRS(N(R(R)(((RRďÍsRcBstZdgZRS(Nte(R(R)RË(((RRŐsR"cBstZddgZRS(NRR(R(R)RË(((RR"ŕsR-cBstZd„ZRS(NcCsdS(Ni((RIR¸((RR:îs(R(R)R:(((RR-ísi
tHcBs&tZddgZd„Zd„ZRS(NRRcCsd|_d|_dS(Nii(RIRR(RI((RRNřs	cCsdS(N((RI((RR`űs(R(R)RËRNR`(((RRbös	(.RR2RTRˆR0R´RURRR1RRVRRRWRČRXRRRRbRYR_RRďtzRRaR"RRotgctcollectR†R-tgR{tget_objectstorig_objectstxrangeR=tnew_objectsRbtstderrtsave_stderrtstdoutth(RjRbRhRdRRlRVRURTRWRRďR-R"RbR†R_RfR=RnRoRˆ((R_Rtslotsbsä									
											
	

			cCsÂto	dGHndtfd„ƒY}|ƒ}tt|dƒƒtt|dƒƒd|_t|ihdd<ƒdtfd	„ƒY}|ƒ}tt|dƒƒtt|dƒƒy
d|_Wnt
j
onXtd
‚d||fd„ƒY}|ƒ}tt|dƒƒtt|dƒƒd|_t|ihdd<ƒd
||fd„ƒY}|ƒ}tt|dƒƒtt|dƒƒd|_t|ihdd<ƒdS(Ns0Testing __dict__ and __weakref__ in __slots__...RďcBstZdgZRS(NR(R(R)RË(((RRď
sRt__weakref__i*RŇtWcBstZdgZRS(NRp(R(R)RË(((RRqss!shouldn't be allowed to set a.fooRUcBstZgZRS(N(R(R)RË(((RRUstC2cBstZgZRS(N(R(R)RË(((RRr&s(RR2RďRR0R´RŇRRRqRRRRURr(RRqRrRURď((Rtslotspecialss:				
					cs{to	dGHndtfd„ƒY}d|fd„ƒY}d|fd„ƒY}d|_t|idƒt|idƒt|idƒd	tfd
„ƒY}|ƒ}	t	t
|	dƒƒd|_t|	idƒd
„|_t|	iƒdƒd„|_
tt|	ƒdƒd„|_tt|	ƒdƒt|	idƒt	t
|	dƒƒd„}||_t|	idƒd|	_t|	idƒd„}||_y
d|	_Wntj
onXt	ddƒt|	idƒd|fd„ƒY}|ƒ}
d|
_t|
idƒdtfd„ƒY}td|dƒdƒt|dƒddƒtd|dƒd ƒt|dƒdd ƒt|dƒ|dƒd ƒd!tfd"„ƒY}td|d#ƒdƒt|d#ƒddƒtd|dƒd ƒt|dƒdd ƒt|dƒ|dƒd ƒd$tfd%„ƒY‰d&f‡d'†ƒY}t	|tjƒdS((Ns&Testing class attribute propagation...RďcBstZRS(N(R(R)(((RRď8sRcBstZRS(N(R(R)(((RR:sR"cBstZRS(N(R(R)(((RR"<siRbcBstZRS(N(R(R)(((RRbDstfoobaricCsdS(Ni*((RI((RRJJsi*cCsdS(NsC()((RI((RRJLssC()cCsdS(Nid((RI((RRJNsidRĎcCs|djodSnt‚dS(NRĎ(R|RR(RIR|((Rt	mygetattrRs
icCs*|djo
t‚nti|||ƒS(NRĎ(R|RRR2RRIRă(RIR|Ră((Rt	mysetattrZs

snot spamisexpected AttributeErrorcBstZRS(N(R(R)(((RRďfstIcBstZRS(N(R(R)(((RRwmsRtaaiitLcBstZRS(N(R(R)(((RRyvsltdynamicmetaclasscBstZRS(N(R(R)(((RRzst	someclasscstZˆZRS(N(R(R)RzRî((Rz(RR{s(RR2RďRR"RŇRRbRR0R´RttmethodRCRBRRŽRuR}RĎtnewRvRRRR%RwRURyRRzR{(RvRuRbRRďR"RwR{RyRR%Rz((RzRtdynamics6sl									

		cCsdto	dGHnydttfd„ƒY}Wntj
onXtddƒydtdfd„ƒY}Wntj
onXtddƒdfd	„ƒY}y dt	t
ƒfd
„ƒY}Wntj
onXtddƒydtfd„ƒY}Wntj
onXtdd
ƒydtfd„ƒY}Wntj
onXtddƒdS(NsTesting errors...RbcBstZRS(N(R(R)(((RRb‰sis5inheritance from both list and dict should be illegalcBstZRS(N(R(R)(((RRb‘ss+inheritance from non-type should be illegalR'cBstZRS(N(R(R)(((RR'—scBstZRS(N(R(R)(((RRb›ss,inheritance from CFunction should be illegalcBstZdZRS(Ni(R(R)RË(((RRbŁss__slots__ = 1 should be illegalcBstZdgZRS(Ni(R(R)RË(((RRbŤss!__slots__ = [1] should be illegal(RRęR
RbRYR0R2R1R'RR{(RbR'((Rterrors…s8	

 

cCsGto	dGHndtfd„ƒY}|ƒ}t|idƒ|dfƒt|idƒ|dfƒt|idƒ|dfƒd|fd„ƒY}|ƒ}t|idƒ|dfƒt|idƒ|dfƒt|idƒ|dfƒt|i|dƒ|dfƒd„}t
|ƒ}t|idt
ƒd	ƒt
d	fƒt|idƒd	ƒt
d	fƒt|ii|ƒt|ii|ƒtt||ƒii|ƒtt||ƒii|ƒtt||ƒiƒ|fƒtt||ƒiƒ|fƒyt
dƒidƒWntj
onXtd
‚dS(NsTesting class methods...RbcBstZd„ZeeƒZRS(NcGs|S(N(R(R((RRŇľs(R(R)RŇtclassmethodtgoo(((RRb´s	iRďcBstZRS(N(R(R)(((RRďťscCs
||fS(N(RÄRƒ(RÄRƒ((RtfĂsii*s(classmethod should check for callability(RR2RbRRRRŇRďR%R‚R€tffRřRŽRReRýRYR(RR‚RbR%RƒRď((Rtclassmethods˛s8				%"cCsĹto	dGHndk}d}hdd<}|ii||Ž\}}}t
||iƒt||ƒt||ƒ|iƒi||Ž\}}}t
||iƒt||ƒt||ƒdS(Ns Testing C-based class methods...iiitabci{(iii(RRÎRĎRR%RĐt	classmethRˆRĺtd1RR(RR%RĎRĺRˆR‡((Rtclassmethods_in_cŘs		

!
cCsto	dGHndtfd„ƒY}|ƒ}t|idƒdƒt|idƒdƒt|idƒ|dfƒd|fd„ƒY}|ƒ}t|idƒd	ƒt|idƒd
ƒt|idƒ|dfƒt|i|dƒ|dfƒdS(NsTesting static methods...RbcBstZd„ZeeƒZRS(NcGs|S(N(R(R((RRŇés(R(R)RŇRúR(((RRbčs	iRďcBstZRS(N(R(R)(((RRďďs(i(i(i(i(	RR2RbRRRRŇRďR%(RRbR%Rď((Rt
staticmethodsćs			cCsżto	dGHndk}d}hdd<}|ii||Ž\}}}t
|dƒt||ƒt||ƒ|iƒi||Ž\}}}t
|dƒt||ƒt||ƒdS(Ns!Testing C-based static methods...iiiR…i{(iii(RRÎRĎRR%RĐt
staticmethRˆRĺR‡RR1Rtd2(RR%RĎRĺRˆR‡R‹((Rtstaticmethods_in_c÷s		


!

csjto	dGHndfd„ƒY‰ˆƒ}tˆidƒˆdfƒt|idƒˆdfƒt|idƒ|dfƒdˆfd„ƒY}|ƒ}t|idƒ|dfƒt|idƒ|dfƒt|idƒ|dfƒt|i|dƒ|dfƒdf‡d†ƒY}t|ƒiˆiƒt	t
ˆiiˆƒƒƒid	ƒƒdS(
NsTesting classic classes...RbcBstZd„ZeeƒZRS(NcGs|S(N(R(R((RRŇs(R(R)RŇR€R(((RRbs	iRďcBstZRS(N(R(R)(((RRďsRcstZˆiZRS(N(R(R)RbRŇ((Rb(RRss<bound method (
RRbRRRRŇRďR%RR0RBRřRp(RR%RbRďR((RbRtclassics 			cCs˜to	dGHndtfd„ƒY}|ƒ}t|idƒt|idƒd|_t|idƒt|idƒ|`tt|dƒdƒdS(	NsTesting computed attributes...RbcBsTtZdefd„ƒYZd„Zd„Zd„Zd„ZeeeeƒZRS(Ntcomputed_attributecBs5tZddd„Zdd„Zd„Zd„ZRS(NcCs||_||_||_dS(N(RČRIt_computed_attribute__getRt_computed_attribute__settdeletet_computed_attribute__delete(RIRČRR‘((RRNs		cCs
|i|ƒS(N(RIRRx(RIRxR((RRř"scCs|i||ƒS(N(RIRRxRă(RIRxRă((Rt__set__$scCs
|i|ƒS(N(RIR’Rx(RIRx((Rt
__delete__&s(R(R)R1RNRřR“R”(((RRŽs	cCs
d|_dS(Ni(RIt_C__x(RI((RRN(scCs|i}|d|_|S(Ni(RIR•Rˆ(RIRˆ((Rt__get_x*s	
cCs
||_dS(N(RˆRIR•(RIRˆ((Rt__set_x.scCs
|`dS(N(RIR•(RI((Rt
__delete_x0s(	R(R)R2RŽRNt	_C__get_xt	_C__set_xt_C__delete_xRˆ(((RRbs				iii
iRˆ(RR2RbRRRˆR´(RRb((Rtcompattrs			cCs˜to	dGHndtfd„ƒY}|ƒ}t|idƒt|i|jƒd|fd„ƒY}|ƒ}t|idƒt|i|jƒdS(Ns Testing __new__ slot override...RbcBstZd„Zd„ZRS(NcCsti|ƒ}d|_|S(Ni(RęRĂRÄRIRŇ(RÄRI((RRĂ?s	cCs|id|_dS(Ni(RIRŇ(RI((RRNCs(R(R)RĂRN(((RRb>s	iRďcBstZRS(N(R(R)(((RRďHs(
RRęRbRRRŇR0R€RďR(RRbRRď((Rtnewslot<s			cs6to	dGHndtfd„ƒY}d|fd„ƒY}d|fd„ƒY}d||fd	„ƒY}t|iƒ||||tgƒt|i||||tfƒt|ƒi	ƒdƒd
t
fd„ƒY‰d||||f‡d
†ƒY}t|it|||||fƒt|ƒi	ƒdƒdS(Ns"Testing mro() and overriding it...RhcBstZd„ZRS(NcCsdS(NRh((RI((RR‚Qs(R(R)R‚(((RRhPsR˙cBstZRS(N(R(R)(((RR˙RsRbcBstZd„ZRS(NcCsdS(NRb((RI((RR‚Us(R(R)R‚(((RRbTsRďcBstZRS(N(R(R)(((RRďVstPerverseMetaTypecBstZd„ZRS(NcCsti|ƒ}|iƒ|S(N(RtmroRÄRytreverse(RÄRy((RRŸ]s
(R(R)RŸ(((RRž\sR/cstZˆZRS(N(R(R)RžRî((Rž(RR/as(
RR2RhR˙RbRďRRŸR*R‚RRžR/(RhRbR˙RžR/Rď((RžRtaltmroNs	"""csto	dGHndtfd„ƒY‰dˆf‡d†ƒY}|ƒ}t|idƒd|_t|idƒ|`t|idƒt|ddƒd
|d<t|i	dƒ|d=t|i
dƒt|dd!dƒd|dd+t|idƒ|dd5t|idƒdS(NsTesting operator overloading...R˙cBstZdZRS(s<Intermediate class because object doesn't have a __setattr__(R(R)R*(((RR˙isRbcs_tZd„Z‡d†Z‡d†Zd„Zd„Zd„Zd„Zd„Z	d	„Z
RS(
NcCs%|djod|fSnt‚dS(NRŇR(R|RR(RIR|((RR}ns
cs7|djo||f|_nˆi|||ƒSdS(NRŇ(R|RăRIR÷R˙R(RIR|Ră(R˙(RRss
cs.|djo
||_nˆi||ƒSdS(NRŇ(R|RIRR˙R(RIR|(R˙(RRxs

cCs
d|fS(Ntgetitem(Rz(RIRz((RR5~scCs||f|_dS(N(RzRăRItsetitem(RIRzRă((RR"€scCs
||_dS(N(RzRItdelitem(RIRz((Rt__delitem__‚scCs
d||fS(Ntgetslice(R=Rč(RIR=Rč((RR…scCs|||f|_dS(N(R=RčRăRItsetslice(RIR=RčRă((RR$‡scCs||f|_dS(N(R=RčRItdelslice(RIR=Rč((Rt__delslice__‰s(R(R)R}RRR5R"RĽRR$RŠ((R˙(RRbls						RRŇiR˘iii
RŚ(sgetattrsfoo(sfooi(sgetitemi(ii(sgetsliceii
(ii
sfoo(ii
(
RR2R˙RbRRRŇR÷RRŁR¤R§R¨(RRbR˙((R˙Rtoverloadingfs(	 		


csto	dGHndtfd„ƒY‰ˆdƒ‰tˆiƒdƒdˆf‡‡d†ƒY}|dƒ}t|iƒdƒt|iƒdƒt|i	ƒdƒdtf‡d	†ƒY}t|ƒiˆiƒttˆii
ˆdƒƒƒid
ƒƒdS(NsTesting methods...RbcBstZd„Zd„ZRS(NcCs
||_dS(N(RˆRI(RIRˆ((RRN˘scCs|iS(N(RIRˆ(RI((RRҤs(R(R)RNRŇ(((RRbĄs	iRďcstZˆiZˆiZRS(N(R(R)RbRŇR,tc1R((RbRŤ(RRď¨s	iRcstZˆiZRS(N(R(R)RbRŇ((Rb(RRŻss<bound method (RR2RbRŤRRŇRďR‹R,RRR0RBRřRp(RbRRŤR‹Rď((RbRŤRtmethodsŸs	cCsto	dGHndtfd„ƒY}|ƒ}
|ƒ}	t|
ƒtt|
ƒt|
ƒƒtt	|
|	ƒt	t|
ƒt|	ƒƒƒt|
|
ƒt|
|	jƒt|
|
jƒt|
|	jƒtt
|
ƒidƒdjƒtt
|
ƒt|
ƒƒtd|
jƒx$t
dƒD]}t||
jƒqWtd|
jƒdtfd	„ƒY}|ƒ}|ƒ}t|ƒtt|ƒt|ƒƒtt	||ƒt	t|ƒt|ƒƒƒt||ƒt||jƒt||jƒt||jƒtt
|ƒid
ƒdjƒtt
|ƒt|ƒƒtd|jƒx$t
dƒD]}t||jƒqRWtd|jƒdtfd„ƒY}|dƒ}
|d
ƒ}|dƒ}t|
ƒt|ƒtt|
ƒtdƒƒt|
|
ƒt|
|jƒt|
|
jƒt|
|ƒtt	|
|ƒdƒtt	|
|
ƒdƒtt	|
|ƒd
ƒtt
|
ƒdƒtt|
ƒdƒ|t
dƒƒ}td|jƒx$t
dƒD]}t||jƒqšWtd|jƒdtfd„ƒY}|dƒ}
|d
ƒ}|dƒ}t|
ƒt|ƒtt|
ƒtdƒƒt|
|
ƒt|
|jƒt|
|
jƒt|
|ƒtt	|
|ƒdƒtt	|
|
ƒdƒtt	|
|ƒd
ƒtt
|
ƒdƒtt|
ƒdƒ|t
dƒƒ}td|jƒx$t
dƒD]}t||jƒq Wtd|jƒd„}|ddƒ|ddƒ|d
dƒ|dd
ƒ|d
dƒ|dd
ƒdt
fd„ƒY}dk}|i}tƒ|_y|dƒGHWntj
onXtd‚||_dS(NsTesting special operators...RbcBstZd„ZRS(NcCs0d|jo
djno|Snt‚dS(Nii
(R=t
IndexError(RIR=((RR5šs(R(R)R5(((RRb¸ssC object at ii˙˙˙˙i
RďcBstZd„ZRS(NcCs0d|jo
djno|Snt‚dS(Nii
(R=R­(RIR=((RR5Ďs(R(R)R5(((RRďÎssD object at tProxycBsYtZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z	d	„Z
RS(
NcCs
||_dS(N(RˆRI(RIRˆ((RRNĺscCs	|iS(N(RIRˆ(RI((RRşçscCs
t|iƒS(N(thashRIRˆ(RI((Rt__hash__éscCs
|i|jS(N(RIRˆR¸(RIR¸((Rt__eq__ëscCs
|i|jS(N(RIRˆR¸(RIR¸((Rt__ne__íscCst|i|iƒS(N(R RIRˆR¸(RIR¸((RR:ďscCsd|iS(NsProxy:%s(RIRˆ(RI((RRĚńscCsd|iS(Ns	Proxy(%r)(RIRˆ(RI((RRCóscCs
||ijS(N(RăRIRˆ(RIRă((RR4ős(R(R)RNRşR°RąR˛R:RĚRCR4(((RRŽäs								isProxy:0sProxy(0)tDProxycBsYtZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z	d	„Z
RS(
NcCs
||_dS(N(RˆRI(RIRˆ((RRN
scCs	|iS(N(RIRˆ(RI((RRşscCs
t|iƒS(N(RŻRIRˆ(RI((RR°scCs
|i|jS(N(RIRˆR¸(RIR¸((RRąscCs
|i|jS(N(RIRˆR¸(RIR¸((RR˛scCst|i|iƒS(N(R RIRˆR¸(RIR¸((RR:scCsd|iS(Ns	DProxy:%s(RIRˆ(RI((RRĚscCsd|iS(Ns
DProxy(%r)(RIRˆ(RI((RRCscCs
||ijS(N(RăRIRˆ(RIRă((RR4s(R(R)RNRşR°RąR˛R:RĚRCR4(((RRłs								sDProxy:0s	DProxy(0)cCsJy|ii||ƒWntj
onXtd|i||f‚dS(Ns"shouldn't allow %s.__cmp__(%r, %r)(RR€R:RRYR(RR((Rt	unsafecmp4s
u123t123f1.0ltLettercBstZd„Zd„ZRS(NcCs.|djoti|ƒSnti||ƒS(NtEPS(tletterRFRĂRÄ(RÄR¸((RRĂDs
cCs|pdSn|S(NRˇ(RI(RI((RRĚHs(R(R)RĂRĚ(((RRśCs	tws+expected a RuntimeError for print recursion( RR2RbRŤtc2R0RRŻtidR RFtfindRBR\R=RďR‡R‹RŽtp0tp1tp_1tp10RłR´RśR†Rmttest_stdouttget_original_stdouttRuntimeErrorR(R‹R‡RłRŽRśRbRďRŔRÁRşRŤRżR†R˝RžR=R´((Rtspecials´sÂ			+

		+





	





			c	CsEto	dGHndk}dtfd„ƒY}|ƒ}|i|ƒ}t|ƒ|jƒ~t|ƒdjƒ~dtfd„ƒY}|ƒ}y|i|ƒWn4tj
o(}tt
|ƒidƒdjƒnXtddƒd	tfd
„ƒY}|ƒ}|i|ƒ}t|ƒ|jƒ~t|ƒdjƒ~dS(NsTesting weak references...RbcBstZRS(N(R(R)(((RRb]stNoWeakcBstZdgZRS(NRŇ(R(R)RË(((RRĹessweak referenceis!weakref.ref(no) should be illegaltWeakcBstZddgZRS(NRŇRp(R(R)RË(((RRĆns(RtweakrefR2RbRtreftrR0R1RĹtnoRYRERFRźRĆtyes(	RRĘRĆRbRÇRERÉRËRĹ((RtweakrefsZs0				$
	c	Csžto	dGHndtfd„ƒY}|ƒ}tt|dƒƒd|_t|idƒt|idƒ|`tt|dƒƒtt|dƒƒ|ii	|dƒt|ii
|ƒdƒ|ii|ƒtt|dƒƒ|id}tt|tƒƒt|ƒ}td|jƒtd	|jƒtd
|jƒtd|jƒt|idƒt|i|id
jƒt|i|idjƒt|i|idjƒx†dD]~}yt||dƒWnQtj
oE}t|ƒidƒdjo td|t|ƒfƒ‚q9qťXtd|ƒ‚qťWdtfd„ƒY}|ƒ}yx|D]}t|ƒqfWWnt j
onXtd‚dS(NsTesting property...RbcBs;tZd„Zd„Zd„ZeeeeddƒZRS(NcCs|iS(N(RIR•(RI((RtgetxzscCs
||_dS(N(RăRIR•(RIRă((Rtsetx|scCs
|`dS(N(RIR•(RI((Rtdelx~stdocsI'm the x property.(R(R)RÍRÎRĎRuRˆ(((RRbys			Rˆi*R•idR*tfgettfsettfdelsI'm the x property.RÍRÎRĎtreadonlyisLwhen setting readonly attr %r on a property, got unexpected TypeError msg %rsDexpected TypeError from trying to set readonly %r attr on a propertyRďcBstZed„ƒZRS(NcCsddS(Nii((Ro((RRJŠs(R(R)RuR5(((RRď¨ss,expected ZeroDivisionError from bad property(s__doc__sfgetsfsetsfdel(!RR2RbRR0R´RˆRR•R“RřR”RtrawRâRuRtattrsR*RŃRŇRÓtattrR÷RYRERFRźRRďR%R=tZeroDivisionError(	RŐRÖRERbRďR×RR%R=((Rt
propertieswsV			
%	cséto	dGHndtfd„ƒY}t|ƒidƒdƒd|f‡d†ƒY‰tˆƒidƒd	ƒd
|fd„ƒY}t|ƒ|_t|ƒidƒd
ƒd|ˆf‡d†ƒY‰tˆƒidƒdƒdtf‡d†ƒY‰dˆf‡‡d†ƒY‰tˆƒidƒdƒdˆfd„ƒY}ˆ|ƒ|_
t|ƒidƒdƒytˆdƒWntj
onXtd‚ytˆ|ƒƒWntj
onXtd‚ytˆƒidƒWntj
onXtd ‚ytˆƒi|ƒƒWntj
onXtd!‚d"tfd#„ƒY}
d$|
fd%„ƒY}	|	ƒ}t|id&ƒtt|	|ƒidƒd'tfd(„ƒY}d)|f‡d*†ƒY‰tˆiƒ|iƒdS(+NsTesting super...RhcBstZd„ZRS(NcCsd|S(NsA(%r)(R(RIR((RR¸s(R(R)R(((RRhˇsisA(1)R˙cstZ‡d†Zd„ZRS(Ncstˆ|ƒ|_dS(N(RýR˙RIR(RI(R˙(RRNžscCsd||ii|ƒS(NsB(%r)(RRIRR(RIR((RRŔs(R(R)RNR((R˙(RR˙˝sisB(2)A(2)RbcBstZd„ZRS(NcCsd||ii|ƒS(NsC(%r)(RRIRR(RIR((RRĆs(R(R)R(((RRbĹsisC(3)A(3)RďcstZ‡d†ZRS(Ncsd|tˆ|ƒi|ƒS(NsD(%r)(RRýRďRIR(RIR(Rď(RRÍs(R(R)R((Rď(RRďĚsisD(4)C(4)B(4)A(4)tmysupercstZ‡d†ZRS(Ncstˆ|ƒi|ŒS(N(RýRÚRIRNRĹ(RIRĹ(RÚ(RRNŐs(R(R)RN((RÚ(RRÚÔsRcstZ‡‡d†ZRS(Ncsd|ˆˆ|ƒi|ƒS(NsE(%r)(RRÚRRIR(RIR(RRÚ(RRŮs(R(R)R((RÚR(RRŘsisE(5)D(5)C(5)B(5)A(5)R"cBstZd„ZRS(NcCs*|i}d||iif|i|ƒS(Ns	F(%r)[%s](RIt	_F__superRoRR€R(R(RIRRo((RRßs	(R(R)R(((RR"Ţsis!F(6)[mysuper]E(6)D(6)C(6)B(6)A(6)i*sshouldn't allow super(D, 42)sshouldn't allow super(D, C())is$shouldn't allow super(D).__get__(12)s%shouldn't allow super(D).__get__(C())tDDbasecBstZd„ZeeƒZRS(NcCsdS(Ni*((RI((RRÍs(R(R)RÍRuRˆ(((RRÜs	tDDsubcBstZd„ZeeƒZRS(NcCsdS(NR((RI((RRÍs(R(R)RÍRuRˆ(((RRÝs	RtBasecBstZed„ƒZRS(NcCsdS(NRŇ((RI((RRJs(R(R)RutaProp(((RRŢstSubcs tZ‡d†ZeeƒZRS(Ncstˆ|ƒiS(N(RýRŕtklassRß(Rá(Rŕ(Rttests(R(R)RâR€((Rŕ(RRŕs(RR2RhRRR˙RbRýRRďRÚRR"RŰRYRRřRÜRÝtddRˆRŢRŕRRâRß(RhRŢRbR˙R"RăRŕRÚRRÝRÜRď((R˙RŕRÚRRďRtsupers´sZ						c
sLto	dGHndtf‡d†ƒY‰ttˆdƒdƒdƒttˆdƒdƒdƒˆd	ƒ}t|d	ƒtt|ƒd	ƒtt|ƒitjƒtt|ƒtd	ƒƒt|
itjƒt|d
?itjƒt|d
>itjƒtˆd
ƒd>itjƒtˆd
ƒd?itjƒdt	f‡d
†ƒY‰ttˆdƒdƒdƒttdˆdƒƒdƒˆd	ƒ}t|dƒtt	|ƒdƒtt|ƒtdƒƒtt	|ƒit	jƒt|
it	jƒt|it	jƒtˆd
ƒit	jƒt|d
?it	jƒt|d
>it	jƒt|d
it	jƒt|dit	jƒt|dit	jƒt|dit	jƒtd|it	jƒt|d
Bit	jƒt|d
Ait	jƒt|d@it	jƒtˆd
ƒd>it	jƒtˆd
ƒd?it	jƒttˆd
ƒƒit	jƒdt	fd„ƒY}|dƒ}t|d
it	jƒtd
|it	jƒ|dƒ}t|ihƒtt	|ƒdƒdtfd„ƒY}tt|dƒƒdƒ|d	ƒ}t|dƒtt|ƒdƒtt|ƒitjƒtt|ƒtdƒƒt|
itjƒdtfd„ƒY}
|
d d!ƒ}tt|ƒd"ƒtd d!ƒ}t|itƒt||ƒtt|ƒ|ƒtt|ƒitƒ|
|ƒ}tt|ƒd"ƒt||ƒtt|ƒ|ƒtt|ƒitƒtt|ƒt|ƒƒt|
itƒt|d
itƒt|d
|ƒt|d
itƒt|d
|ƒt|ditƒt|d|ƒt|ditƒt|d|ƒd#tfd$„ƒY}|dKƒ}t|dLƒt|iƒ|dMƒƒt|iƒiƒ|dNƒƒxKtd(ƒD]=}|t|ƒƒ}|iƒ}|iƒ}t||ƒqŁW|dOƒ}tt|ƒdPƒtt|ƒitjƒtt|ƒtdQƒƒt|itjƒt|ditjƒt|d
itjƒt|fitjƒ|fƒ}tt|ƒfƒtt|ƒitjƒt||itjƒt|d
itjƒt|ditjƒt|d%itjƒt|itjƒd)tfd*„ƒY}
|
d+ƒ}t|d+ƒt|iƒ|
d,ƒƒt|iƒiƒ|
d+ƒƒx]td-ƒD]O}|
d.it t!t|ƒƒƒƒ}|iƒ}|iƒ}t||ƒqŞW|
d/ƒ}tt|ƒd/ƒtt|ƒitjƒd0d}|
|ƒ}t||ƒtt|ƒ|ƒtt|ƒitjƒtt|ƒt|ƒƒth|d<|dƒth|d<|dƒt|d.itjƒt|d.|ƒtd.|itjƒtd.||ƒt|d
itjƒt|d
d.ƒt|ditjƒt|d|ƒt|d%itjƒt|d%||ƒt|itjƒt||ƒt|d
d
!itjƒt|d
d
!d.ƒt|i"ƒitjƒt|i"ƒ|ƒt|i#ƒitjƒt|i#ƒ|ƒt|i$ƒitjƒt|i$ƒ|ƒd.ig}td-ƒD]}|t!|ƒqˆ~ƒ}t|i'|ƒitjƒt|i'|ƒ|ƒt|i'|d1ƒitjƒt|i'|d1ƒ|ƒt|i'|d0ƒd.ƒt|i(d1d1ƒitjƒt|i(d1d1ƒ|ƒt|i)t*|ƒƒitjƒt|i)t*|ƒƒ|ƒt|i+t*|ƒƒitjƒt|i+t*|ƒƒ|ƒt|i,t*|ƒƒitjƒt|i,t*|ƒƒ|ƒt|i-ƒitjƒt|i-ƒ|ƒd2t.fd3„ƒY}|d4ƒ}t|d5ƒt|iƒ|d6ƒƒt|iƒiƒ|d5ƒƒd7}||ƒ}tt.|ƒ|ƒtt.|ƒit.jƒtt|ƒt|ƒƒth|d<|dƒth|d<|dƒt|i"ƒit.jƒt|i"ƒ|ƒt|i#ƒit.jƒt|i#ƒ|ƒt|i$ƒit.jƒt|i$ƒ|ƒt|i(d8d8ƒit.jƒt|i(d8d8ƒ|ƒt|i(d9d9ƒit.jƒt|i(d9d9ƒ|ƒt|i,t*|ƒƒit.jƒt|i,t*|ƒƒ|ƒt|i)t*|ƒƒit.jƒt|i)t*|ƒƒ|ƒt|i+t*|ƒƒit.jƒt|i+t*|ƒƒ|ƒt|i-ƒit.jƒt|i-ƒ|ƒt|i0ƒit.jƒt|i0ƒ|ƒt|i1ƒit.jƒt|i1ƒ|ƒt|i2ƒit.jƒt|i2ƒ|ƒt|d:it.jƒt|d:|ƒtd:|it.jƒtd:||ƒt|d
it.jƒt|d
d:ƒt|dit.jƒt|d|ƒt|d%it.jƒt|d%||ƒt|it.jƒt||ƒt|d
d
!it.jƒt|d
d
!d:ƒd;t3fd<„ƒY}|tdƒƒ}t|tdƒƒ|i5d=ƒt|tdƒd=gƒd|d<t|td&ƒƒ|i6td&d>ƒƒt|td>ƒƒg|d?)t|td@ƒƒ|dAd@5tt*|ƒdAƒt|tdAƒƒtt3|ƒtdAƒƒt|d
d
ƒt|ddƒt|dBd
ƒt|ddƒt|d tdƒƒdCt7fdD„ƒY}t7dEt9dFdGƒ}dHdIdJg}zą|i<|ƒ|i=ƒ|t9ƒ}x}t>tddƒd!g|d%d.gƒD]Q\}}|i@ƒ}t||ƒt|iB|ƒt|iC|t*|ƒjƒq¨W|i=ƒWdy|i=ƒWnnXydkD}|iEt9ƒWnnXXdS(RNs'Testing inheritance from basic types...thexintcstZd„Z‡d†ZRS(NcCs
t|ƒS(N(RąRI(RI((RRC%scsˆti||ƒƒS(N(RĺRŽRRIR¸(RIR¸(Rĺ(RR's(R(R)RCR((Rĺ(RRĺ$s	ii	t0x10ičt0x3efi90iitoctlongcs)tZgZd„Z‡d†ZeZRS(NcCs/t|ƒ}|ddjo|d }n|S(Ni˙˙˙˙Ry(R°RIRo(RIRo((RRĚ:scs|itˆ|ƒi|ƒƒS(N(RIR€RýRčRR¸(RIR¸(Rč(RR?s(R(R)RËRĚRt__radd__((Rč(RRč8s	iit010i¸t05675l90il˙˙˙˙t	longclonecBstZRS(N(R(R)(((RRě^si˙˙˙˙t	precfloatcBs)tZdgZddd„Zd„ZRS(NRÁf0.0icCs t|ƒ|_ti|ƒdS(N(RŽRÁRIRŻRNRă(RIRăRÁ((RRNkscCsd|i|fS(Ns%.*g(RIRÁ(RI((RRCns(R(R)RËRNRC(((RRíis	f1.1000000000000001s1.1f12345.0t
madcomplexcBstZd„ZRS(NcCsd|i|ifS(Ns%.17gj%+.17g(RIRÉRĘ(RI((RRCys(R(R)RC(((RRîxsiý˙˙˙is4j-3tmadtuplecBstZdZd„ZRS(NcCsJ|idj	o|iSnt|ƒ}|iƒ|i|ƒ|_|iS(N(RIt_revR1RęRyR R€(RIRy((Rtrev”s
(R(R)R1RđRń(((RRď’siiiit	madstringcBstZdZd„ZRS(NcCsS|idj	o|iSnt|ƒ}|iƒ|idi|ƒƒ|_|iS(NRš(RIRđR1RęRyR R€tjoin(RIRy((RRńˇs
(R(R)R1RđRń(((RRňľstabcdefghijklmnopqrstuvwxyztzyxwvutsrqponmlkjihgfedcbaiRšt12345tRˆt
madunicodecBstZdZd„ZRS(NcCsS|idj	o|iSnt|ƒ}|iƒ|idi|ƒƒ|_|iS(Nu(RIRđR1RęRyR R€Ró(RIRy((RRńús
(R(R)R1RđRń(((RRřřstABCDEFuABCDEFuFEDCBAu12345uxuxyutsublistcBstZRS(N(R(R)(((RRú3	sRiiű˙˙˙ii
iö˙˙˙tCountedInputcBs#tZdZdZdZd„ZRS(s€Counts lines read by self.readline().

        self.lineno is the 0-based ordinal of the last line read, up to
        a maximum of one greater than the number of lines in the file.

        self.ateof is true if and only if the final "" line has been read,
        at which point self.lineno stops incrementing, and further calls
        to readline() continue to return "".
        icCsN|iodSnti|ƒ}|id7_|djo
d|_n|S(NRši(RItateoftfiletreadlineRotlineno(RIRo((RRţV	s


(R(R)R*R˙RüRţ(((RRűI	s	R|tmodeRšsa
sb
sc
(
iiiiiiiii	i(
iiiiiiiii	i(
ii	iiiiiiii(
iiiiiiiii	i(iiiii(iiiii(iiiii(FRRŽRĺRRBRR0R€RŻRURčRFRŤRěRRŻRíRÂRîtbaseRttupleRďRńR\R=RtuRŰRňRoRótmaptchrtstriptlstriptrstripR]tidentitytabt	translatetreplacetljustR{trjusttcentertlowertunicodeRřtuppert
capitalizettitleRęRúR>RëRýRűtTESTFNR‚tlinest
writelinestcloseR[RGRţtgotR˙Rütostunlink(RRúRűRčRRíR	RěRGRĺRňRoRRîRřRRR‚R=R]RďRRŰR((RčRĺRtinherits!s	





	

	

$

6"""	
"""





+
 	c	CsHto	dGHnttddƒdƒttddƒdƒttddƒdƒttdd	d
dƒtdd	ƒƒttdd
ƒdƒttddddƒdƒttdt	dƒƒdƒtt
ddƒt	dƒƒx`tttttttt
tf	D]=}y|ddƒWnt
j
oqXtd|ƒ‚qWdS(Ns3Testing keyword args to basic type constructors ...Rˆiif2.0ilRÉi*RĘišR2iôt500tstringR…Rtstrictuabctsequenceitbogus_keyword_args4expected TypeError from bogus keyword argument to %r(iii(iii(RRRŽRŻRURÂRFRRR\RęRýtconstructorRYR(R!((Rtkeywordsx	s"	%"c
Cs2dSdk}to	dGHn|iƒ}dt}dt}dttf}ttdƒ}|i
ƒz x™|||fD]ˆ}y|i|ƒWnAt
j
o5}t|ƒidƒdjo
d}	qÚd	}	nXd
}	|	djotd|	|fƒ‚qyqyWWdydk}|itƒWnnXXdS(Ns1Testing interaction with restricted execution ...sf = open(%r, 'w')sf = file(%r, 'w')s„f = open(%r)
t = type(f)  # a sneaky way to get the file() constructor
f.close()
f = t(%r, 'w')  # rexec can't catch this by itself
Ršt
restricteditOKs)got an exception, but not an expected ones)expected a restricted-execution exceptions	%s, in %r(trexecRtRExectsandboxRtcode1tcode2tcode3topenR‚Rtcodetr_exectIOErrorRERFRźtoutcomeRRR(
R(R)R*R‚RR'R,R%RER/((RR#	s8		




"	csto	dGHndtf‡d†ƒY‰tˆdƒdƒtdˆdƒƒttˆdƒƒdƒhˆdƒd<ˆd	ƒd
<ˆdƒd<}t|ˆdƒdƒt|ˆd
ƒd
ƒt|ˆdƒdƒtˆdƒ|jƒt|iˆdƒƒdƒdS(Ns*Testing a str subclass used as dict key ..tcistrcs,tZdZd„Z‡d†Zd„ZRS(s…Sublcass of str that computes __eq__ case-insensitively.

        Also computes a hash code of the string in canonical form.
        cCs%|iƒ|_t|iƒ|_dS(N(RăRRIt	canonicalRŻthashcode(RIRă((RRNÄ	scs0t|ˆƒpˆ|ƒ}n|i|ijS(N(RâR¸R0RIR1(RIR¸(R0(RRąČ	scCs|iS(N(RIR2(RI((RR°Í	s(R(R)R*RNRąR°((R0(RR0ž	s	tABCR…taBcREiRFittHreeittWotTHrEEtONetthrEE(RRFR0RR%R0RČ(R0R%((R0Rtstr_subclass_as_dict_keyş	s	3c
	sÁto	dGHndfd„ƒY}x—|ttfD]†}to
d|GHnd|f‡d†ƒY‰ˆdƒ}ˆdƒ}ˆd	ƒ}t	|dƒhd|<d|<d	|<}xţdD]ö}xídD]ĺ}t
t||||ƒt||ƒjd
||fƒx?dD]7}	t
td|	ƒtd|	ƒjd
||fƒqWt
t|||ƒt||ƒjd
||fƒt
t|||ƒt||ƒjd
||fƒqĚWqżWq3WdS(NsTesting classic comparisons...RcBstZRS(N(R(R)(((RRÝ	ss        (base = %s)RbcstZd„Z‡d†ZRS(NcCst|ƒ|_dS(N(RŽRăRI(RIRă((RRNâ	scs_t|ˆƒot|i|iƒSnt|tƒpt|tƒot|i|ƒSntS(N(	RâR¸RbR RIRăRŽRURˇ(RIR¸(Rb(RR:ä	s
 (R(R)RNR:((Rb(RRbá	s	iiis
x=%d, y=%dR˘s<=s==s!=R§s>=sc[x] %s c[y]sx %s y(iii(iii(R˘s<=s==s!=R§s>=(RRRŽR2RRbRŤRştc3RRRˆtyR0R topR(
RbRRR<RRˆR;RşRŤR=((RbRtclassic_comparisonsŰ	s0	
	
!7 3c	sto	dGHndtfd„ƒY}|dƒ}t|ddƒtdd|ƒdtfd„ƒY}|dƒ}t|ddƒtdd|ƒd	fd
„ƒY}x_|tt	t
fD]K}to
d|GHnd|f‡d
†ƒY‰ˆdƒ}ˆdƒ}ˆdƒ}t|dƒhd|<d|<d|<}	xĂdD]ť}x˛dD]Ş}
xĄdD]™}
ttd|
ƒtd|
ƒjd||
fƒttd|
ƒtd|
ƒjd||
fƒttd|
ƒtd|
ƒjd||
fƒqdWqWWqJWqžWdS(NsTesting rich comparisons...R1cBstZRS(N(R(R)(((RR1ű	six0.00.0tZZcBstZd„ZRS(NcCs*yt||ƒdjSWntSnXdS(Nf9.9999999999999995e-07(RŤRIR¸Rˇ(RIR¸((RRą
s(R(R)Rą(((RR?
sf	1.0000003RcBstZRS(N(R(R)(((RR

ss        (base = %s)RbcsbtZd„Zd„Z‡d†Z‡d†Z‡d†Z‡d†Z‡d†Z‡d†Z	RS(	NcCst|ƒ|_dS(N(RŽRăRI(RIRă((RRN
scCs
td‚dS(Nsshouldn't call __cmp__(R(RIR¸((RR:
scsYt|ˆƒo|i|ijSnt|tƒpt|tƒo|i|jSntS(N(RâR¸RbRIRăRŽRURˇ(RIR¸(Rb(RRą
s
 csYt|ˆƒo|i|ijSnt|tƒpt|tƒo|i|jSntS(N(RâR¸RbRIRăRŽRURˇ(RIR¸(Rb(RR˛
s
 csYt|ˆƒo|i|ijSnt|tƒpt|tƒo|i|jSntS(N(RâR¸RbRIRăRŽRURˇ(RIR¸(Rb(Rt__lt__
s
 csYt|ˆƒo|i|ijSnt|tƒpt|tƒo|i|jSntS(N(RâR¸RbRIRăRŽRURˇ(RIR¸(Rb(Rt__le__%
s
 csYt|ˆƒo|i|ijSnt|tƒpt|tƒo|i|jSntS(N(RâR¸RbRIRăRŽRURˇ(RIR¸(Rb(Rt__gt__+
s
 csYt|ˆƒo|i|ijSnt|tƒpt|tƒo|i|jSntS(N(RâR¸RbRIRăRŽRURˇ(RIR¸(Rb(Rt__ge__1
s
 (
R(R)RNR:RąR˛R@RARBRC((Rb(RRb
s		iiR˘s<=s==s!=R§s>=sc[x] %s c[y]sx %s ys
x=%d, y=%ds	c[x] %s ys	x %s c[y](iii(iii(R˘s<=s==s!=R§s>=(RRÂR1RcRR?tzzRRŽR2RęRRbRŤRşR;RRˆR<R=R0R(RRDR?RbRR;RşRŤR1RR<RˆRcR=((RbRtrich_comparisonsř	sB	
)
!   cCsčto	dGHndtfd„ƒY}t|dƒdƒtd|dƒƒdtfd„ƒY}t|dƒdƒt|dƒdƒtd|dƒƒtd|dƒƒdtfd	„ƒY}t|dƒdƒt|dƒdƒt|dƒd
ƒtd|dƒƒtd|dƒƒtd
|dƒƒdtfd„ƒY}t|dƒdƒt|dƒdƒt|dƒd
ƒt|dƒd
ƒtd|dƒƒtd|dƒƒtd
|dƒƒtd
|dƒƒdS(NsTesting coercions...RwcBstZRS(N(R(R)(((RRwH
siRycBstZRS(N(R(R)(((RRyK
slR"cBstZRS(N(R(R)(((RR"P
sf0.0RbcBstZRS(N(R(R)(((RRbW
sx0.00.0(
RRŽRwtcoerceRURyRŻR"RÂRb(RbRwR"Ry((Rt	coercionsF
s4	cCs=to	dGHnd„}|tidƒ|tidƒdS(Ns!Testing descriptor doc strings...cCst|i|ƒdS(N(RtdescrR*twhat(RHRI((Rtcheckc
ssTrue if the file is closeds	file name(RRJRýtclosedR|(RJ((Rtdescrdoca
s
		c
CsŇto	dGHndtfd„ƒY}dtfd„ƒY}	dtfd„ƒY}d|	|fd	„ƒY}xx||	||fD]d}x[||	||fD]G}|ƒ}||_	t
|i	|jƒ||_	t
|i	|jƒq—Wq~Wd
„}||ƒtƒ|tƒ|ƒ||ƒdƒ||ƒtƒ|tƒtƒ|tƒtƒdt
fd
„ƒY}|d|ƒ||ƒt
ƒ|tt
ƒ|dtƒtƒ}||tdƒƒ||tdƒƒ~dS(NsTesting __class__ assignment...RbcBstZRS(N(R(R)(((RRbj
sRďcBstZRS(N(R(R)(((RRďk
sRcBstZRS(N(R(R)(((RRl
sR"cBstZRS(N(R(R)(((RR"m
scCsny
||_Wntj
onXtd||f‚yt|dƒWntj
onXtd|‚dS(Ns!shouldn't allow %r.__class__ = %rR€s shouldn't allow del %r.__class__(RbRˆR€RYRR(RˆRb((Rtcantu
s
itIntcBstZgZRS(N(R(R)RË(((RRNˆ
si(RR2RbRďRR"RÄtcls2RˆR€R0RMRęRŽRNtTruetbooltoRR1(
RbRR"RNRORRRMRˆRÄRď((Rtsetclassh
s>					



	cCs˜to	dGHndtfd„ƒY}|ƒ}hdd<|_t|idƒd„}||dƒ||gƒ||dƒ|`||hƒdS(NsTesting __dict__ assignment...RbcBstZRS(N(R(R)(((RRb”
sRicCs:y
||_Wntj
onXtd||f‚dS(Ns shouldn't allow %r.__dict__ = %r(R
RˆRRYR(RˆR
((RRM˜
s

(	RR2RbRRRRRMR1(RRbRM((Rtsetdict’
s			


cCsito	dGHndk}dk}d„}dtfd„ƒYadtfd„ƒYadtfd„ƒYa	d	tfd
„ƒYa
dfd„ƒYad
ttfd„ƒYaxX||fD]J}xAdD]9}to|iGddg|GHnxHttt	fD]7}|i||ƒ}	|i|	ƒ}t||jƒqWtddƒ}|idƒ|idƒt	dddƒ}|i||f|ƒ}	|i|	ƒ\}
}t|
i|iƒt||
iƒ||iƒƒt|i|iƒt||iƒ||iƒƒtt|
ƒt|ƒƒtt|ƒt|ƒƒtodG|GHdG|GHnt
dƒ}
|i|
|ƒ}	|i|	ƒ}t!|
i|iƒt|
i"|i"ƒtƒ}
d|
_"|i|
|ƒ}	|i|	ƒ}t!|
i|iƒt|
i"|i"ƒqÉWqźWto	dGHndk#}x6ttt	fD]%}|i$|ƒ}t||jƒq3Wtddƒ}|idƒ|idƒt	dddƒ}|i$||fƒ\}
}t|
i|iƒt||
iƒ||iƒƒt|i|iƒt||iƒ||iƒƒtt|
ƒt|ƒƒtt|ƒt|ƒƒtodG|GHdG|GHndS(Ns=Testing pickling and copying new-style classes and objects...cCs|iƒ}|iƒ|S(N(R%RVRytsort(R%Ry((RtsorteditemsŤ
s
RbcBstZd„Zd„ZRS(NcCs)tt|ƒiƒ||_||_dS(N(RýRbRIRNRR(RIRR((RRN˛
s	cCsd|i|ifS(Ns	C(%r, %r)(RIRR(RI((RRCś
s(R(R)RNRC(((RRbą
s	RUcBs,tZd„Zd„Zd„Zd„ZRS(NcCstt|ƒi|ƒS(N(RýRURÄRĂ(RÄRR((RRĂť
scCs|i|ifS(N(RIRR(RI((Rt__getnewargs__˝
scCs||_||_dS(N(RRIR(RIRR((RRNż
s	cCsd|i|it|ƒfS(NsC1(%r, %r)<%r>(RIRRRę(RI((RRCÂ
s(R(R)RĂRWRNRC(((RRUş
s			RrcBs2tZdd„Zd„Zdd„Zd„ZRS(NicCstt|ƒi||ƒS(N(RýRrRÄRĂR(RÄRRR((RRĂÇ
scCs|i|it|ƒfS(N(RIRRRŽ(RI((RRWÉ
scCs||_||_dS(N(RRIR(RIRRR((RRNË
s	cCsd|i|it|ƒfS(NsC2(%r, %r)<%r>(RIRRRŽ(RI((RRCÎ
s(R(R)RĂRWRNRC(((RRrĆ
s	RVcBs#tZd„Zd„Zd„ZRS(NcCs
||_dS(N(RŇRI(RIRŇ((RRNÓ
scCs|iS(N(RIRŇ(RI((Rt__getstate__Ő
scCs
||_dS(N(RŇRI(RIRŇ((Rt__setstate__×
s(R(R)RNRXRY(((RRVŇ
s		t	C4classiccBstZRS(N(R(R)(((RRZŰ
sRWcBstZRS(N(R(R)(((RRWÝ
siittexttbinaryii*iRRsa = x =sb = y =R (ii(%RtpickletcPickleRVR2RbRęRURŽRrRVRZRWtptbinR(RÄtdumpsRotloadsROR0RR>RRˆR<RR€RRBRRŰRRŇRÓR (ROR^RÄR`RVRÓRRR_RoRRŰR<RˆR]((RtpicklesŚ
sŠ		
)	
				)	cCskto	dGHndk}dk}dtfd„ƒYax,ttgD]}d|fd„ƒYadtfd„ƒYay|itƒƒWnt	j
onXt
d|‚y|itƒƒWnt	j
onXt
d	|‚y|itƒƒWnt	j
onXt
d
|‚y|itƒƒWnt	j
onXt
d|‚d|fd„ƒYadtfd
„ƒYatƒ}|i|i|ƒƒ}tt|dƒdƒ|i|i|ƒƒ}tt|dƒdƒd|_|i|i|ƒƒ}t|idƒ|i|i|ƒƒ}t|idƒtƒ}d|_d|_|i|i|ƒƒ}t|i|idƒ|i|i|ƒƒ}t|i|idƒdtfd„ƒYatƒ}d|_d|_|i|i|ƒƒ}t|i|iƒt|i|iƒ|i|i|ƒƒ}t|i|iƒt|i|iƒqEWdS(Ns.Testing pickling of classes with __slots__ ...R˙cBstZRS(N(R(R)(((RR˙sRbcBstZdgZRS(NR(R(R)RË(((RRb"sRďcBstZRS(N(R(R)(((RRď$ss#should fail: pickle C instance - %ss$should fail: cPickle C instance - %ss#should fail: pickle D instance - %ss$should fail: cPickle D instance - %scBs#tZdgZd„Zd„ZRS(NRcCs—y|iiƒ}Wntj
o
h}nXxa|iiD]S}xJ|iidfƒD]3}yt
||ƒ||<WqXtj
oqXXqXWq<W|S(NRË(RIRRÓR%RRR€R*RÄRČtsnR(RIR%RdRÄ((RRXAs

cCs1x*|iƒD]\}}t|||ƒq
WdS(N(R%RVRÚRŰR÷RI(RIR%RÚRŰ((RRYMs
(R(R)RËRXRY(((RRb?s		cBstZRS(N(R(R)(((RRďPsRii*idiŽRcBstZdgZRS(NR(R(R)RË(((RResRŇ(RR]R^R2R˙RRbRďRaRYRRˆRbR<RR´RRR(R^RRˆR<R]((Rtpickleslotsst	




								cCsüto	dGHndk}dtfd„ƒY}|ƒ}d|_|i|ƒ}t|i|iƒdddg|_	|i|ƒ}t|i	|i	ƒt|i	|i	jƒ|i|ƒ}t|i|iƒ|i	idƒt|i	dddgƒdS(	Ns*Testing copy.copy() and copy.deepcopy()...RbcBstZRS(N(R(R)(((RRbtsiiiii(RRÓR2RbRRŇRRRRÜRR0R R%R>(RRbRRRÓR%((Rtcopiesqs 				cs.to	dGHndtf‡d†ƒY‰ttˆdƒˆdƒƒdƒttˆdƒdƒdƒttdˆdƒƒdƒttˆdƒˆdƒƒdƒttdˆdƒƒdƒttˆdƒdƒdƒtttˆdƒˆdƒˆd	ƒƒƒdƒd
tfd„ƒY}dS(Ns)Testing overrides of binary operations...RwcsAtZd„Z‡d†ZeZd‡d†Zd‡d†ZRS(NcCsdt|ƒS(NsI(%r)(RŽRI(RI((RRC‰scsˆt|ƒt|ƒƒS(N(RwRŽRIR¸(RIR¸(Rw(RR‹scs\|djo#ˆtt|ƒt|ƒƒƒSn)ˆtt|ƒt|ƒt|ƒƒƒSdS(N(R”R1RwR—RŽRIR¸(RIR¸R”(Rw(Rt__pow__Žs
#cs_|djo&ˆtt|ƒt|ƒ|ƒƒSn)ˆtt|ƒt|ƒt|ƒƒƒSdS(N(R”R1RwR—RŽR¸RI(RIR¸R”(Rw(Rt__rpow__“s
&(R(R)RCRRéR1RgRh((Rw(RRwˆs
	iisI(3)isI(8)itScBstZd„ZRS(NcCs|iƒ|iƒjS(N(RIRR¸(RIR¸((RRąĄs(R(R)Rą(((RRi s(RRŽRwRRBR—RFRi(RwRi((RwRt
binopoverride†s	##1cCs×to	dGHndtfd„ƒY}d|fd„ƒY}d|fd„ƒY}d||fd	„ƒY}|ƒ}tt|ƒt	|ƒƒd
„|_
tt|ƒdƒd„|_
tt|ƒd
ƒd„|_
tt|ƒdƒd„|_
tt|ƒdƒ|`
tt|ƒdƒ|`
tt|ƒd
ƒ|`
tt|ƒdƒ|`
tt|ƒt	|ƒƒd|_d|_t|idƒt|idƒd„}||_
t|idƒt|idƒd„}||_t|idƒt|idƒt|idƒ|`
t|idƒ|`t|idƒt|idƒ|`y|iWntj
onXtd‚dk}dtfd„ƒY}d|fd„ƒY}~|iƒd„|_dS(Ns6Testing propagation of slot functions to subclasses...RhcBstZRS(N(R(R)(((RRhŚsR˙cBstZRS(N(R(R)(((RR˙¨sRbcBstZRS(N(R(R)(((RRbŞsRďcBstZRS(N(R(R)(((RRďŹscCsdS(Ni*((RI((RRJ°si*cCsdS(Ni:((RI((RRJ˛si:cCsdS(Ni((RI((RRJ´sicCsdS(Nid((RI((RRJśsidcCs%|djodSnti||ƒS(NRŇi(R|R2RRI(RIR|((RRÄs
icCs"|djodSnt|‚dS(NRĎRŇRÜR(sspamsfoosbar(R|RR(RIR|((RR}Ës
Rsd.foo should be undefined nowcBstZRS(N(R(R)(((RRhâscBstZRS(N(R(R)(((RR˙äscGsdS(N(R1(R((RRJčs(RR2RhR˙RbRďR%RRŻRťR°RŇRÜRR}RĎRRRRdReR"(RhRbR˙RR}R%RdRď((Rtsubclasspropagation¤sl										
cCsdk}to	dGHndtfd„ƒY}d}||ƒ}t|i|ƒ|i|ƒƒdtfd„ƒY}d}||ƒ}t|i|ƒ|i|ƒƒdt
fd	„ƒY}|d
ƒ}y|i|ƒtdƒ‚Wnt
j
onXdS(Ns.Testing that buffer interface is inherited ...tMyStrcBstZRS(N(R(R)(((RRlđsR…tMyUnicBstZRS(N(R(R)(((RRmúsuabctMyIntcBstZRS(N(R(R)(((RRnsi*s2subclass of int should not have a buffer interface(tbinasciiRRFRlRRRtb2a_hexRRmRŽRnRRY(RoRRRnRlRm((Rtbuffer_inheritęs$		
cs2dk‰dk}to	dGHndtf‡d†ƒY}|dƒ}tt|ƒ|ƒttt|ƒƒtƒttt|ƒƒtƒtt	|ƒdƒtt|ƒdƒtt|ƒdƒt|i
ƒdƒt|iƒdƒ|iƒ}||IJ|t|ƒIJt|iƒdƒ|iƒdS(	Ns.Testing __str__ defined in subclass of str ...toctetstringcstZ‡d†Zd„ZRS(Ncs
ˆi|ƒS(N(RoRpRI(RI(Ro(RRĚscCs|dS(Ns repr(RI(RI((RRCs(R(R)RĚRC((Ro(RRrsRhiAt41sA reprs41
41
(Rot	cStringIORRFRrRRRRRBtordRĚRCtStringIOtcapturetgetvalueR(RtRrRoRRRw((RoRtstr_of_str_subclass	s&			
cCsnto	dGHnd„}t|iddƒdƒg}ti|ddddgƒt|dddgƒdS(	Ns2Testing keyword arguments to __init__, __call__...cCs|S(N(R(R((RR‚)sRi*Riii(RR‚RRůRRęRN(RR‚((Rtkwdargs's		csĽto	dGHng‰dtf‡d†ƒY}|ƒ}tˆgƒ~tˆdgƒdtfd„ƒY}|ƒ}y|d=Wntj
onXt	d‚dS(	NsTesting __del__ hook...RbcstZ‡d†ZRS(NcsˆidƒdS(Ni(RR>(RI(R(RR`3s(R(R)R`((R(RRb2siRďcBstZRS(N(R(R)(((RRď:sis$invalid del() didn't raise TypeError(
RRR2RbRRRďR%RYR(RRbRďR%R((RRtdelhook/s		
	cCsŹto	dGHndtfd„ƒY}|ƒ}yt|ƒWntj
onXtd‚dtfd„ƒY}|ƒ}yt|ƒWntj
onXtd‚dS(Ns%Testing hash of mutable subclasses...tmydictcBstZRS(N(R(R)(((RR|Css#hash() of dict subclass should failtmylistcBstZRS(N(R(R)(((RR}Mss#hash() of list subclass should fail(	RR
R|R%RŻRYRRęR}(R}R|R%((Rthashinherit@s 				cCsyddWntj
onXtd‚ydidƒWntj
onXtd‚ydidgƒWntj
onXtd‚ydidƒWntj
onXtd	‚yd
dWntj
onXtd‚ydhWntj
onXtd
‚yddWntj
onXtd‚yddWntj
onXtd‚yddWntj
onXtd‚yddWntj
onXtd‚tdiƒdƒtdiƒdƒtdddƒtdddƒdS(NRis'' + 5 doesn't raise TypeErrorRšs%''.split('') doesn't raise ValueErroris$''.join([0]) doesn't raise TypeErrort5s'''.rindex('5') doesn't raise ValueErrors%(n)ss&'%(n)s' % None doesn't raise TypeErrors%(ns&'%(n' % {} '' doesn't raise ValueErrors%*sR…s''%*s' % ('abc') doesn't raise TypeErrors%*.*ss,'%*.*s' % ('abc', 5) doesn't raise TypeErrors%siis%'%s' % (1, 2) doesn't raise TypeErrorR•s#'%' % None doesn't raise ValueErrort534253t534253xs%cs(sabci(ii(	RYRtsplitRZRótrindexR1Rtisdigit(((RtstropsWsl										cCsWto	dGHndfd„ƒY}|ƒ}|ƒ}||_||_t|ƒ}dS(Ns(Testing deepcopy of recursive objects...RcBstZRS(N(R(R)(((RR‡s(RRRRR Rc(RRRRc((Rtdeepcopyrecursive…s					cCsŽto	dGHndkl}|i|ƒ}t|ƒtt|dƒdƒtt|dƒdƒtt|dƒdƒt|i	dƒd|_t|i	hdd<ƒdS(Ns'Testing uninitialized module objects...(s
ModuleTypeR(it__file__RŇi(Rttypest
ModuleTypeRrRĂRRFRR´RR1RŇ(RrR((Rtmoduless	

	cCszdtfd„ƒY}to	dGHng}|iiƒD]
}||q:~}|iƒt	|dddddgƒdS(	NRbcBstZd„ZRS(NcCsdS(N((RI((RRs(R(R)R(((RRbœssTesting dict-proxy iterkeys...RR*R)RpR(
R2RbRR]RtiterkeysRzR<RUR(RbR<R]Rz((Rtdictproxyiterkeys›s	*
cCsgdtfd„ƒY}to	dGHng}|iiƒD]
}||q:~}tt|ƒdƒdS(NRbcBstZd„ZRS(NcCsdS(N((RI((RRŚs(R(R)R(((RRbĽss Testing dict-proxy itervalues...i(	R2RbRR]Rt
itervaluestvaluesRR{(RbR]RŽ((Rtdictproxyitervalues¤s
	*cCs€dtfd„ƒY}to	dGHng}|iiƒD]\}}||q:~}|i	ƒt
|dddddgƒdS(	NRbcBstZd„ZRS(NcCsdS(N((RI((RRŽs(R(R)R(((RRb­ssTesting dict-proxy iteritems...RR*R)RpR(R2RbRR]RRWRzRăR<RUR(RbR<RăR]Rz((RtdictproxyiteritemsŹs	0
csűto	dGHndtf‡d†ƒY}d|fd„ƒY‰t|dƒddd	gƒtˆdƒddd	gƒˆdƒ}t|idƒ|dƒ}tt	|ˆƒt
ƒt|idƒˆdƒ}tt	|ˆƒt
ƒt|idƒdS(
Ns1Testing __new__ returning something unexpected...RbcstZ‡d†ZRS(NcsSt|tƒodddgSn/t|tƒotiˆƒSnti|ƒSdS(Niii(RâRƒRFRŽR2RĂRďRÄ(RÄRƒ(Rď(RRøs
(R(R)RĂ((Rď(RRbˇsRďcBstZd„ZRS(NcCs
||_dS(N(RƒRIRŇ(RIRƒ((RRN˝s(R(R)RN(((RRďźsR[iii(RR2RbRďRR1R%RRŇRâRP(RbR%Rď((RďRtfunnynewľs	cCs
to	dGHndtfd„ƒY}|ƒ}|}|d9}t||dfƒ|}|d9}t||dfƒ|}|d9}t||dfƒ|}|dd>9}t||dd>fƒ|}|d9}t||dfƒ|}|d	9}t||d	fƒdS(
Ns Testing for __imul__ problems...RbcBstZd„ZRS(NcCs
||fS(N(RIR¸(RIR¸((RR6Îs(R(R)R6(((RRbÍsf1.0illidRŇ(RR2RbRˆR<RR1(RbR<Rˆ((RtimulbugĘs,		




csŸto	dGHndtfd„ƒY‰df‡d†ƒY}dtf‡d†ƒY}t|idƒt|ƒid	ƒt|id
ƒt|ƒidƒdS(NsTesting __doc__ descriptor...tDocDescrcBstZd„ZRS(NcCs=|o|iid}n|o
|i}nd||fS(Ns	 instancesobject=%s; type=%s(R2R€R(totype(RIR2R”((RRřčs

(R(R)Rř(((RR“çstOldClasscstZˆƒZRS(N(R(R)R“R*((R“(RR•îstNewClasscstZˆƒZRS(N(R(R)R“R*((R“(RR–đssobject=None; type=OldClasss'object=OldClass instance; type=OldClasssobject=None; type=NewClasss'object=NewClass instance; type=NewClass(RR2R“R•R–RR*(R–R•R“((R“Rt
docdescriptoräs	cCs”to	dGHnd}y
|‚Wn|j
onXtd‚dtfd„ƒY}|dƒ}y
|‚Wn"tj
ontd‚nXdS(NsTesting string exceptions ...sAn exception string.s&builtin string not usable as exceptionRlcBstZRS(N(R(R)(((RRl
ssoops -- shouldn't works$string subclass allowed as exception(RtastringRRFRlt	newstringRY(RlR™R˜((Rtstring_exceptions÷s 	
	
cCsÓto	dGHndk}dtfd„ƒY}|dƒ}|idƒt|idƒt|iƒdƒ|i|ƒ}t|idƒt|iƒdƒ|i
|ƒ}t|idƒt|iƒdƒdS(Ns8Testing that copy.*copy() correctly uses __setstate__...RbcBs;tZdd„Zdd„Zd„Zd„Zd„ZRS(NcCs||_||_dS(N(RŇRIt_C__foo(RIRŇ((RRN
s	cCs
||_dS(N(RŇRI(RIRŇ((Rtsetfoo
scCs|iS(N(RIR›(RI((Rtgetfoo
scCs
|igS(N(RIRŇ(RI((RRX
scCs|d|_|_dS(Ni(tlstRIR›RŇ(RIRž((RRY
s(R(R)R1RNRœRRXRY(((RRb
s
		i*i(RRÓR2RbRRœRRŇRRR (RRbRRÓ((Rt
copy_setstate
s		

cCsjto	dGHntdd dƒtdtdƒdƒttidtdƒƒdƒdtfd„ƒY}t|dƒd dƒt|dƒtdƒdƒt|dƒitdƒƒdƒtdd dƒtdtdƒdƒttidtdƒƒdƒd
tfd„ƒY}t|dƒd dƒt|dƒtdƒdƒt|dƒitdƒƒdƒtddd	gd ddgƒtddd	gtdƒddgƒttiddd	gtdƒƒddgƒdtfd
„ƒY}t|ddd	gƒd ddgƒt|ddd	gƒtdƒddgƒt|ddd	gƒitdƒƒddgƒ|ddd	gƒ}d	dg|tdd	ƒ<t|dd	dgƒd	dg|tdddƒ<t|d	ddgƒ|itdd	ƒddgƒt|d	ddgƒ|itdddƒdd	gƒt|dd	dgƒdS(Ns8Testing cases with slices and overridden __getitem__ ...RithellRicBstZd„ZRS(NcCsti||ƒS(N(RFR5RIRˆ(RIRˆ((RR54
s(R(R)R5(((RRi3
siiiRcBstZd„ZRS(NcCsti||ƒS(N(RR5RIRˆ(RIRˆ((RR5>
s(R(R)R5(((RR=
sRycBstZd„ZRS(NcCsti||ƒS(N(RęR5RIRˆ(RIRˆ((RR5H
s(R(R)R5(((RRyG
si(iii(ii(iii(ii(iii(ii(iii(ii(iii(ii(iii(ii(RRtsliceRFR5RiRRRęRyRR"(RRyRiR((Rtslices,
s@	"" &.&,1"csto	dGHndtf‡d†ƒY‰ˆƒ}d|_~ˆid=ttˆiƒdƒtˆididƒˆ`dS(Ns-Testing resurrection of new-style instance...RbcstZgZ‡d†ZRS(Ncsˆii|ƒdS(N(Rbt	containerR>RI(RI(Rb(RR`_
s(R(R)RŁR`((Rb(RRb\
si*i˙˙˙˙i(	RR2RbRR×RŁRR{R`(RRb((RbRtsubtype_resurrectionX
s			
cCsVto	dGHndtfd„ƒY}d}x tdƒD]}||ƒ}q9W~dS(NsTesting slot trash...ttrashcBstZdgZd„ZRS(NRˆcCs
||_dS(N(RˆRI(RIRˆ((RRN{
s(R(R)RËRN(((RRĽy
s	iPĂ(RR2RĽR1RRRiR=(R=RRRĽ((Rt	slottrashu
s	
cCsŽdtfd„ƒY}dtfd„ƒY}d||fd„ƒY}t|i|iƒtt|dƒƒtt|dƒƒd	|ƒ_dS(
NRhcBstZfZRS(N(R(R)RË(((RRh„
sR˙cBstZRS(N(R(R)(((RR˙†
sRbcBstZfZRS(N(R(R)RË(((RRbˆ
sRRpi(	R2RhR˙RbRt
__basicsize__R0R´Rˆ(RhRbR˙((Rtslotmultipleinheritance‚
scCswto	dGHndtfd„ƒY}|ƒ}t|ddƒt|ddƒtd|dƒtd|dƒdS(Ns)Testing correct invocation of __rmul__...RbcBstZd„Zd„ZRS(NcCsdS(NR((RIR¸((RR7”
scCsdS(Ntrmul((RIR¸((RR8–
s(R(R)R7R8(((RRb“
s	iRf2.2000000000000002RŠ(RR2RbRR(RRb((Rttestrmul
s		cCs=to	dGHndtfd„ƒY}|ƒ}|dC}dS(Ns)Testing correct invocation of __ipow__...RbcBstZd„ZRS(NcCsdS(N((RIR¸((Rt__ipow__Ł
s(R(R)RŤ(((RRb˘
si(RR2RbR(RRb((Rttestipowž
s
		cCshto	dGHndtfd„ƒY}ytd|ƒdƒWnnXto	dGHntitƒdS(NsTesting SF bug 551412 ...tUserLongcBstZd„ZRS(NcGsdS(N((RIRĹ((RRg°
s(R(R)Rg(((RR­Ż
slsTesting SF bug 570483...(RR2R­R—RRŸR(R­((Rt
do_this_first¨
s		c	sto	dGHndtfd„ƒY}dtf‡d†ƒY‰d|fd„ƒY}d|fd	„ƒY}|ƒ}|ƒ}|f|_ˆf|_t	|i
ƒd
ƒt	|i
ƒd
ƒt	|idƒt	|idƒt	ˆiƒ|gƒdt
fd
„ƒY}ytf|_Wntj
onXtd‚ytft
_Wntj
onXtd‚y
|`Wntj
onXtd‚y
f|_Wn5tj
o)}t|ƒdjo
td‚qÜnXtd‚y|f|_Wntj
onXtd‚y||f|_Wntj
onXtd‚y|f|_Wntj
onXtd‚dfd„ƒY}||f|_t	|iƒdƒt	|iƒdƒy|iWntj
onXtd‚y|f|_Wntj
onXtd‚dS(NsTesting mutable bases...RbcBstZRS(N(R(R)(((RRbÁ
sRrcstZ‡d†Zd„ZRS(Ncs/|djodSntˆ|ƒi|ƒSdS(NRi(R×RýRrRIR(RIR×(Rr(RRÄ
s
cCsdS(Ni((RI((RRÉ
s(R(R)RR((Rr(RRrĂ
sRďcBstZRS(N(R(R)(((RRďË
sRcBstZRS(N(R(R)(((RRÍ
siiRycBstZRS(N(R(R)(((RRyÚ
ss/shouldn't turn list subclass into dict subclasss-shouldn't be able to assign to list.__bases__s&shouldn't be able to delete .__bases__s/a new-style class can't have only classic basess'wrong error message for .__bases__ = ()s)shouldn't be able to set .__bases__ to ()s.shouldn't be able to create inheritance cycless#didn't detect repeated base classesR'cBstZd„ZRS(NcCsdS(Ni((RI((Rtmeth2s(R(R)RŻ(((RR'sisattribute should have vanisheds*new-style class must have a new-style base(RR2RbRrRďRR%RaRRRRt__subclasses__RęRyR
RYRRERFR'RŻRR(	RbRR'RyR%RERrRaRď((RrRttest_mutable_bases˝
s„					
	
					c
s.to	dGHndtf‡d†ƒY‰dtfd„ƒY‰dtfd„ƒY}dtfd	„ƒY}d
|fd„ƒY}	d|	fd
„ƒY}d|	f‡d†ƒY}d|	f‡d†ƒY}|i}|	i}y|f|	_Wn3tj
o't|i|ƒt|	i|ƒnXtd‚dS(Ns)Testing mutable bases with failing mro...tWorkOncecstZ‡d†Zd„ZRS(Ncs(d|_tˆ|ƒiˆ|||ƒS(Ni(RItflagRýR˛RĂR|Rótns(RIR|RóR´(R˛(RRĂ+s	cCs=|idjo
td‚n|id7_ti|ƒSdS(Nitbozoi(RIRłRĂRRŸ(RI((RRŸ.s
(R(R)RĂRŸ((R˛(RR˛*st
WorkAlwayscBstZd„ZRS(NcCs
ti|ƒS(N(RRŸRI(RI((RRŸ6s(R(R)RŸ(((RRś5sRbcBstZRS(N(R(R)(((RRb=sRrcBstZRS(N(R(R)(((RRr@sRďcBstZRS(N(R(R)(((RRďCsRcBstZRS(N(R(R)(((RRFsR"cstZˆZRS(N(R(R)R˛Rî((R˛(RR"IsR-cstZˆZRS(N(R(R)RśRî((Rś(RR-Lssexception not propagated(RRR˛RśR2RbRrRďRR"R-R*tE_mro_beforetD_mro_beforeRRĂRR(
RbRR-R"R˛RśR¸RrRˇRď((R˛RśRt#test_mutable_bases_with_failing_mro's$			cCs˝to	dGHndtfd„ƒY}dtfd„ƒY}d||fd„ƒY}d||fd	„ƒY}d
||fd„ƒY}y||f|_Wntj
onXt	d‚dS(
Ns+Testing mutable bases catch mro conflict...RhcBstZRS(N(R(R)(((RRhasR˙cBstZRS(N(R(R)(((RR˙dsRbcBstZRS(N(R(R)(((RRbgsRďcBstZRS(N(R(R)(((RRďjsRcBstZRS(N(R(R)(((RRmssdidn't catch MRO conflict(
RR2RhR˙RbRďRRRYR(RhRbR˙RRď((Rt%test_mutable_bases_catch_mro_conflict^s	cCsƒto	dGHndtfd„ƒY}|i}d|_t|i|if|dfƒd|_t|i|if|dfƒdS(NsTesting mutable names...RbcBstZRS(N(R(R)(((RRbzsRďsD.E(RR2RbR)R”R(R(RbR”((Rt
mutable_namesws				cCsYto	dGHndtfd„ƒY}t|dƒddƒtd|dƒdƒdtfd„ƒY}t|ƒdd	ƒtd|ƒd
ƒd|fd„ƒY}t|ƒ|ƒd
ƒt|ƒ|ƒdƒd|fd„ƒY}t|i|iƒt|ƒdd	ƒtd|ƒd
ƒt|ƒ|ƒd	ƒt|ƒ|ƒd	ƒdS(Ns=Testing correct dispatch of subclass overloading __r<op>__...R˙cBstZd„Zd„ZRS(NcCsdS(NsB.__floordiv__((RIR¸((Rt__floordiv__scCsdS(NsB.__rfloordiv__((RIR¸((Rt
__rfloordiv__’s(R(R)RźR˝(((RR˙s	isB.__floordiv__sB.__rfloordiv__RbcBstZd„Zd„ZRS(NcCsdS(NsC.__floordiv__((RIR¸((RRź›scCsdS(NsC.__rfloordiv__((RIR¸((RR˝s(R(R)RźR˝(((RRbšs	sC.__floordiv__sC.__rfloordiv__RďcBstZd„Zd„ZRS(NcCsdS(NsD.__floordiv__((RIR¸((RRźŚscCsdS(NsD.__rfloordiv__((RIR¸((RR˝¨s(R(R)RźR˝(((RRďĽs	sD.__floordiv__sD.__rfloordiv__RcBstZRS(N(R(R)(((RR°s(	RRŽR˙RR2RbRďRR˝(RbR˙RRď((Rtsubclass_right_op†s"	csuto	dGHndtfd„ƒY}dtfd„ƒY‰df‡d†ƒY}tt|iƒt|iƒƒdS(Ns2Testing type of __dict__ when __metaclass__ set...R˙cBstZRS(N(R(R)(((RR˙žsRrcBstZRS(N(R(R)(((RRrŔsRbcstZˆZRS(N(R(R)RrRî((Rr(RRbÂs(RR2R˙RRrRbRR(RbR˙Rr((RrRtdict_type_with_metaclassşs	cCsto	dGHndddg}hdd<dd<dd<}tti|ƒ|ƒthi|ƒ|ƒtid}t|i	dtƒ|ƒ|ƒt|i	hƒ|ƒ|ƒy|i	ddƒWnt
j
onXtd‚y|i	dƒWnt
j
onXtd‚y|i	ddƒWnt
j
onXtd	‚y|i	dtƒWnt
j
onXtd
‚dS(Ns1Testing __get__ method of METH_CLASS C methods...iiitfromkeyss0shouldn't have allowed descr.__get__(None, None)i*s(shouldn't have allowed descr.__get__(42)s.shouldn't have allowed descr.__get__(None, 42)s/shouldn't have allowed descr.__get__(None, int)(
RRƒR1R
RR
RŔRRHRřRYRRŽ(RHR
Rƒ((Rtmeth_class_getÇs:	!
			cCskto	dGHndtfd„ƒY}dfd„ƒY}|ƒ}||ƒ}tt||ƒƒtt||ƒƒd|fd„ƒY}|ƒ}||ƒ}tt||ƒƒtt||ƒƒdtfd„ƒY}|ƒ}||ƒ}tt||ƒƒtt||ƒƒd|fd	„ƒY}|ƒ}||ƒ}tt||ƒƒtt||ƒƒdS(
Ns+Testing proxy isinstance() and isclass()...RŽcBstZd„Zd„ZRS(NcCs
||_dS(N(RxRIt_Proxy__obj(RIRx((RRNóscCs8|idƒoti||ƒSnt|i|ƒSdS(Nt_Proxy__(R|RpR2RRIRRÂ(RIR|((RRős(R(R)RNR(((RRŽňs	RbcBstZRS(N(R(R)(((RRbűsRďcBstZRS(N(R(R)(((RRďscBstZRS(N(R(R)(((RRb	scBstZRS(N(R(R)(((RRďs(	RR2RŽRbRtpaR0RâRď(RRbRÄRŽRď((Rtisinst_isclassďs.						csˆto	dGHndtfd„ƒY}dtfd„ƒY}d|f‡d†ƒY‰ˆƒ}||ƒ}tˆid|ƒd	ƒdS(
Ns%Testing super() for a proxy object...RŽcBstZd„Zd„ZRS(NcCs
||_dS(N(RxRIRÂ(RIRx((RRNscCs8|idƒoti||ƒSnt|i|ƒSdS(NRĂ(R|RpR2RRIRRÂ(RIR|((RRs(R(R)RNR(((RRŽs	R˙cBstZd„ZRS(NcCsdS(NsB.f((RI((RR‚$s(R(R)R‚(((RR˙#sRbcstZ‡d†ZRS(Ncstˆ|ƒiƒdS(Ns->C.f(RýRbRIR‚(RI(Rb(RR‚(s(R(R)R‚((Rb(RRb'sR‚sB.f->C.f(	RR2RŽR˙RbRxR_RR(RbR˙RxR_RŽ((RbRt
proxysupers			cCs}to	dGHnytitddƒWntj
onXtd‚ytitdƒWntj
onXtd‚dS(Ns,Testing prohibition of Carlo Verre's hack...RŇi*s!Carlo Verre __setattr__ suceeded!Rs"Carlo Verre __delattr__ succeeded!(RR2RRFRYRR(((Rt
carloverre/s		csdto	dGHndk‰df‡d†ƒY}dtfd„ƒY}|ƒ}||ƒ|_~dS(NsTesting weakref segfault...tProvokercstZ‡d†Zd„ZRS(Ncsˆi|ƒ|_dS(N(RÇRČt	referrentRI(RIRÉ(RÇ(RRNGscCs|iƒ}dS(N(RIRČRˆ(RIRˆ((RR`Js(R(R)RNR`((RÇ(RRČFstOopscBstZRS(N(R(R)(((RRĘMs(RRÇRČR2RĘRRtwhatever(RRRÇRČRĘ((RÇRtweakref_segfault?s			cs^to	dGHndk‰df‡d†ƒY}|ƒˆ_y	dGHWntj
onXdS(Ns+Testing sys.stdout is changed in getattr...tStdoutGuardcstZ‡d†ZRS(Ncs ˆiˆ_td|ƒ‚dS(Ns!Premature access to sys.stdout.%s(R†t
__stdout__RmRĂR×(RIR×(R†(RR}Zs(R(R)R}((R†(RRÍYssOops!(RR†RÍRmRĂ(R†RÍ((R†Rt	filefaultUs			csŽto	dGHndtf‡d†ƒY}dtfd„ƒY‰dtf‡d†ƒY‰ˆƒ}d|i|ƒ<t|id	ƒdk	}|i
ƒtt|d
ƒtƒdS(Ns&Testing vicious_descriptor_nonsense...tEvilcstZd„Z‡d†ZRS(NcCs
tdƒS(NR×(RŻ(RI((RR°kscs
ˆ`dS(Ni(RbR×(RIR¸(Rb(RRąms(R(R)R°Rą((Rb(RRĐjs	tDescrcBstZdd„ZRS(NcCsdS(Ni((RItobR((RRřrs(R(R)R1Rř(((RRŃqsRbcstZˆƒZRS(N(R(R)RŃR×((RŃ(RRbusiiR×(
RR2RĐRŃRbRRRR×RdReR´tFalse(RRŃRbRĐRd((RŃRbRtvicious_descriptor_nonsensecs		cCsrdtfd„ƒY}ti}zAtiddtƒy|ƒWntj
onXtd‚Wd|t_XdS(NtFoocBstZd„ZRS(NcCsdS(Ni
((RI((RRN…s(R(R)RN(((RRŐ„sterrortcategorys'did not test __init__() for None return(R2RŐtwarningstfilterst
oldfilterstfilterwarningstRuntimeWarningR(RÚRŐ((Rt	test_init‚s

cs…to	dGHndk}	dk}dk‰d„}‡d†}|	id}
|	i}x(t	|i
gD]}xd4d5d6d7d8d9d:d;d<d=d>d?d@dAdBgD]Ů\}}}|d,jo
|}nd.|d/}|d0fh||<ƒ}|d1fh||<ƒ}|ƒ}
|ƒ}|||
|
ƒ|||
|ƒ||||
ƒ||||ƒ|||
|
ƒ|||
|ƒ|||
|ƒ||||ƒ|oÖ|||
|
ƒ|||
|ƒ||||
ƒ||||ƒ|||
|
ƒ|||
|ƒd2|d/}|d3fh||<ƒ}|ƒ}||||
ƒ||||ƒ||||
ƒ||||ƒq q WqfWdS(CNsTesting NotImplemented...cCstS(N(Rˇ(RIR¸((Rt
specialmethodŸscsTy'|hd|<d|<dˆ<UWnej
onXed|fƒ‚dS(NRˆR<toperatorsno TypeError from %r(R	RˆR<RßRYR(R	RˆR<(Rß(RRJ˘s
'lRsx + ysx += yt__sub__sx - ysx -= yR7sx * ysx *= yRsoperator.truediv(x, y)Rźsoperator.floordiv(x, y)Rsx / ysx /= yt__mod__sx % ysx %= yt
__divmod__sdivmod(x, y)Rgsx ** ysx **= yt
__lshift__sx << ysx <<= yt
__rshift__sx >> ysx >>= yt__and__sx & ysx &= yt__or__sx | ysx |= yt__xor__sx ^ ysx ^= yt
__coerce__scoerce(x, y)t__riRhR˙t__iRb(s__add__sx + ysx += y(s__sub__sx - ysx -= y(s__mul__sx * ysx *= y(s__truediv__soperator.truediv(x, y)N(s__floordiv__soperator.floordiv(x, y)N(s__div__sx / ysx /= y(s__mod__sx % ysx %= y(s
__divmod__sdivmod(x, y)N(s__pow__sx ** ysx **= y(s
__lshift__sx << ysx <<= y(s
__rshift__sx >> ysx >>= y(s__and__sx & ysx &= y(s__or__sx | ysx |= y(s__xor__sx ^ ysx ^= y(s
__coerce__scoerce(x, y)N(RR†RˆRßRŢRJRťtN1tN2Rt	ClassTypeRţR1R|R	tiexprtrnameRhR˙RRtinameRbR(RďRbRßRJRđRŢRîRhR˙R†RëRěRˆRRRR|R	Rţ((RßRtnotimplemented–sT					
	4

			cCsŸtƒtƒtƒtƒtƒtƒtƒtƒtƒt	ƒt
ƒtƒtƒt
ƒtƒtƒtƒtƒtƒtƒtƒtƒtƒtƒtƒtƒtƒtƒtƒtƒtƒtƒt ƒt!ƒt"ƒt#ƒt$ƒt%ƒt&ƒt'ƒt(ƒt)ƒt*ƒt+ƒt,ƒt-ƒt.ƒt/ƒt0ƒt1ƒt2ƒt3ƒt4ƒt5ƒt6ƒt7ƒt8ƒt9ƒt:ƒt;ƒt<ƒt=ƒt>ƒt?ƒt@ƒtAƒtBƒtCƒtDƒtEƒtFƒtGƒtHƒtIƒtJƒtKƒtLƒtMƒtNƒtOƒtPƒtQƒtRƒtSƒtTƒtUƒtVƒtWƒtXƒtYƒtZƒt[ƒt\ƒt]o	dGHndS(NsAll OK(^RĚRŽR3R9RDR_R‚R˝RžRżRÍR×RßRéRěRţRR+RPR.R2R;RBRSRoRsR~RR„RˆR‰RŒRRœRRĄRŞRŹRÄRĚRŮRäRR"R#R:R>RERGRLRSRTRcRfRjRkRqRyRzR{R~R…R†RŠRŒRRReR‘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(((Rt	test_mainÝsžt__main__(zttest.test_supportR0RRRRRÂRÓR RŘRŰtDeprecationWarningR(RRRRR!R#R&R3R9RDR_R‚R˛RVR|R	tislowerRľRśR˝RžRżRÍR×RßRéRěRţRR+R.R2R;RBRORPRSRoRsR~RR„RˆR‰RŒRRœRRĄRŞRŹRÄRĚRŮRäRR"R#R:R>RERGRLRSRTRcReRfRjRkRqRyRzR{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ň(sR3RÇR„RÔR"RRąR;RŒRR!R˛RßRĹRÁRńRĆRGR’RORRRR|RšRşR>RÄRŚRŞR:RRŹRŽRžRŒRqR…R‘RcRRĄRśRňRTRţRäRÂRPRěRŸRżRSRSR—RŮRĚRżR#RDRĚRœRéRťRÝR_RR˘R¤RˆRkR˝RšRoR~RĎRfReRLRR×RsR.R9RŞR‰R¨R+R†R	R&RRRžR{R R~RBRzRERR2RRRŘRyRjRÍR‚R#RŠRŹRR0Rľ((Rt?sü+
			

				S	}ą


W


					$	-	4		˘		ƒ	&			
			Ľ	/	O	-	&					"			9		Ś		=	m	˙X		+	!		N			*		t	W			F						.	
												,		
	
		
		j	7			4	
	(	(								G	a


Anon7 - 2021