MOON
Server: Apache/2.2.34 (Unix) mod_ssl/2.2.34 OpenSSL/0.9.8e-fips-rhel5 mod_bwlimited/1.4 FrontPage/5.0.2.2635
System: Linux server.asjudinet.com 2.6.32-042stab141.3 #1 SMP Fri Nov 15 22:45:34 MSK 2019 i686
User: asjudine (504)
PHP: 5.2.17
Disabled: NONE
Upload Files
File: //proc/3/task/3/cwd/usr/lib/python2.4/test/test_descr.pyc
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	cCs2|idjpt‚|idjpt‚dS(Nii(RIRtAssertionErrorR(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(RkRbRiReRRmRVRURTRWRRïR-R"RbR†R_RgR=RoRoRˆ((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(NRq(R(R)RË(((RRrss!shouldn't be allowed to set a.fooRUcBstZgZRS(N(R(R)RË(((RRUstC2cBstZgZRS(N(R(R)RË(((RRs&s(RR2RïRR0RŽRÒRRRrRRRRURs(RRrRsRURï((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)(((RRxmsRtaaiitLcBstZRS(N(R(R)(((RRzvsltdynamicmetaclasscBstZRS(N(R(R)(((RR{st	someclasscstZˆZRS(N(R(R)R{Rî((R{(RR|s(RR2RïRR"RÒRRbRR0RŽRutmethodRCRBRR®RvR}RÏtnewRwRRRR%RxRURzRR{R|(RwRvRbRRïR"RxR|RzRR%R{((R{Rtdynamics6sl									

		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ÄRztreverse(RÄRz((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†Rnttest_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ÒRq(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ÿÿÿÿRz(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êRzR¡R€(RIRz((Rtrev”s
(R(R)R1RñRò(((RRð’siiiit	madstringcBstZdZd„ZRS(NcCsS|idj	o|iSnt|ƒ}|iƒ|idi|ƒƒ|_|iS(NR¹(RIRñR1RêRzR¡R€tjoin(RIRz((RRò·s
(R(R)R1RñRò(((RRóµstabcdefghijklmnopqrstuvwxyztzyxwvutsrqponmlkjihgfedcbaiR¹t12345tRˆt
madunicodecBstZdZd„ZRS(NcCsS|idj	o|iSnt|ƒ}|iƒ|idi|ƒƒ|_|iS(Nu(RIRñR1RêRzR¡R€Rô(RIRz((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*RRý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ÿtgotRRý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†R€tstrictuabctsequenceitbogus_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&RER0((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žR1RIR2(RIRž(R1(RR²È	scCs|iS(N(RIR3(RI((RR±Í	s(R(R)R*RNR²R±((R1(RR1Ÿ	s	tABCR†taBcREiRFittHreeittWotTHrEEtONetthrEE(RRFR1RR%R0RÈ(R1R%((R1Rtstr_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³RARBRCRD((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ÂR1RdRR@tzzRŽR®R2RêRRbR¬R»R<RRˆR=R>R0R(RŽRER@RbRR<R»R¬R1RR=RˆRdR>((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...RxcBstZRS(N(R(R)(((RRxH
siRzcBstZRS(N(R(R)(((RRzK
slR"cBstZRS(N(R(R)(((RR"P
sf0.0RbcBstZRS(N(R(R)(((RRbW
sx0.00.0(
RR®RxtcoerceRURzR¯R"RÂRb(RbRxR"Rz((Rt	coercionsF
s4	cCs=to	dGHnd„}|tidƒ|tidƒdS(Ns!Testing descriptor doc strings...cCst|i|ƒdS(N(RtdescrR*twhat(RIRJ((Rtcheckc
ssTrue if the file is closeds	file name(RRKRþtclosedR|(RK((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Ë(((RROˆ
si(RR2RbRïRR"RÄtcls2RˆR€R0RNRêR®ROtTruetbooltoRR1(
RbRR"RORPRSRNRˆ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
((RRN˜
s

(	RR2RbRRRRRNR1(RRbRN((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%RVRztsort(R%Rz((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ÃRXRNRC(((RRUº
s			RscBs2tZdd„Zd„Zdd„Zd„ZRS(NicCstt|ƒi||ƒS(N(RýRsRÄRÃR(RÄRRR((RRÃÇ
scCs|i|it|ƒfS(N(RIRRR®(RI((RRXÉ
scCs||_||_dS(N(RRIR(RIRRR((RRNË
s	cCsd|i|it|ƒfS(NsC2(%r, %r)<%r>(RIRRR®(RI((RRCÎ
s(R(R)RÃRXRNRC(((RRsÆ
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)RNRYRZ(((RRVÒ
s		t	C4classiccBstZRS(N(R(R)(((RR[Û
sRWcBstZRS(N(R(R)(((RRWÝ
siittexttbinaryii*iRRsa = x =sb = y =R (ii(%RtpickletcPickleRWR2RbRêRUR®RsRVR[RWtptbinR(RÄtdumpsRotloadsRPR0RR>RRˆR=RR€RRBRRÛRRÒRÓR (RPR_RÄRaRWRÓ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%ReRÄ((RRYAs

cCs1x*|iƒD]\}}t|||ƒq
WdS(N(R%RVRÚRÛR÷RI(RIR%RÚRÛ((RRZMs
(R(R)RËRYRZ(((RRb?s		cBstZRS(N(R(R)(((RRïPsRii*idiŽRcBstZdgZRS(NR(R(R)RË(((RResRÒ(RR^R_R2RÿRRbRïRbRYRRˆRcR=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...RxcsAtZd„Z‡d†ZeZd‡d†Zd‡d†ZRS(NcCsdt|ƒS(NsI(%r)(R®RI(RI((RRC‰scsˆt|ƒt|ƒƒS(N(RxR®RIRž(RIRž(Rx(RR‹scs\|djo#ˆtt|ƒt|ƒƒƒSn)ˆtt|ƒt|ƒt|ƒƒƒSdS(N(R”R1RxR—R®RIRž(RIRžR”(Rx(Rt__pow__Žs
#cs_|djo&ˆtt|ƒt|ƒ|ƒƒSn)ˆtt|ƒt|ƒt|ƒƒƒSdS(N(R”R1RxR—R®RžRI(RIRžR”(Rx(Rt__rpow__“s
&(R(R)RCRRêR1RhRi((Rx(RRxˆs
	iisI(3)isI(8)itScBstZd„ZRS(NcCs|iƒ|iƒjS(N(RIRRž(RIRž((RR²¡s(R(R)R²(((RRj s(RR®RxRRBR—RFRj(RxRj((RxRt
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ÏRRRReRfR"(RhRbRÿRR}R%ReRï((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)(((RRmðsR†tMyUnicBstZRS(N(R(R)(((RRnúsuabctMyIntcBstZRS(N(R(R)(((RRosi*s2subclass of int should not have a buffer interface(tbinasciiRRFRmRRRtb2a_hexRRnR®RoRRY(RpRRRoRmRn((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(RpRqRI(RI(Rp(RRÌscCs|dS(Ns repr(RI(RI((RRCs(R(R)RÌRC((Rp(RRssRhiAt41sA reprs41
41
(Rpt	cStringIORRFRsRSRRRBtordRÌRCtStringIOtcapturetgetvalueR(RuRsRpRSRx((RpRtstr_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*R iii(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 Rd(RRRRd((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)RqR(
R2RbRR]RtiterkeysRzR<RVR(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)RqR(R2RbRR]RRWRzRãR<RVR(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âRQ(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 exceptionRmcBstZRS(N(R(R)(((RRm
ssoops -- shouldn't works$string subclass allowed as exception(RtastringRRFRmt	newstringRY(RmRš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((RRY
scCs2t|ƒdjpt‚|d|_|_dS(Nii(R{tlstRcRIRœRÒ(RIRŸ((RRZ
s(R(R)R1RNRRžRYRZ(((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__ ...RithellRjcBstZd„ZRS(NcCsti||ƒS(N(RFR5RIRˆ(RIRˆ((RR54
s(R(R)R5(((RRj3
siiiRcBstZd„ZRS(NcCsti||ƒS(N(RR5RIRˆ(RIRˆ((RR5>
s(R(R)R5(((RR=
sRzcBstZd„ZRS(NcCsti||ƒS(N(RêR5RIRˆ(RIRˆ((RR5H
s(R(R)R5(((RRzG
si(iii(ii(iii(ii(iii(ii(iii(ii(iii(ii(iii(ii(RRtsliceRFR5RjRRRêRzRR"(RRzRjR((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ŠR1RSRjR=(R=RSRŠ((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ˆ
sRRqi(	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Å((RRh°
s(R(R)Rh(((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Á
sRscstZ‡d†Zd„ZRS(Ncs/|djodSntˆ|ƒi|ƒSdS(NRi(RØRýRsRIR(RIRØ(Rs(RRÄ
s
cCsdS(Ni((RI((RRÉ
s(R(R)RR((Rs(RRsÃ
sRïcBstZRS(N(R(R)(((RRïË
sRcBstZRS(N(R(R)(((RRÍ
siiRzcBstZRS(N(R(R)(((RRzÚ
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(RR2RbRsRïRR%RaRRRRt__subclasses__RêRzR
RYRRERFR'R°RR(	RbRR'RzR%RERsRaRï((RsRttest_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=sRscBstZRS(N(R(R)(((RRs@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·R2RbRsRïRR"R-R*tE_mro_beforetD_mro_beforeRRÄRR(
RbRR-R"R³R·R¹RsRž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ÁRRIRøRYRR®(RIR
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ËRStwhatever(RSRÈ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__RnRÄRØ(RIRØ(R†(RR}Zs(R(R)R}((R†(RRÎYssOops!(RR†RÎRnRÄ(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ØReRfRŽtFalse(RRÒRbRÑRe((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à(RRK¢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)Rhsx ** 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ßRKR»tN1tN2Rt	ClassTypeRþR1R|R	tiexprtrnameRhRÿRRtinameRbR(RðRbRàRKRñ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;RBRSRpRtRR€R…R‰RŠRRŽRRžR¢R«R­RÅRÍRÚRåRR#R$R;R?RFRHRMRTRURdRgRkRlRrRzR{R|RR†R‡R‹RRR‘RfR’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;RBRORPRSRpRtRR€R…R‰RŠRRŽRRžR¢R«R­RÅRÍRÚRåRR#R$R;R?RFRHRMRTRURdRfRgRkRlRrRzR{R|RR†R‡R‹RRR‘R’R“R˜R›R R£R¥R§R©R«R­R¯R²RºR»RŒR¿RÀRÂRÆRÇRÈRÍRÐRÕRÞRòRó(sR3RÈR…RÕR#RR²R;RRžR!R²RßRÆRÂRòRÇRHR“RORRRR|RºR»R?RÅR§R«R;RR­R¯R¿RRrR†R’RdR€R¢R¶RóRURþRåRÃRPRìR RÀRTRSR˜RÚRÍR¿R#RDRÍRRéRŒRÞR_RR£R¥R‰RlRœR›RpRRÐRgRfRMRR×RtR.R9R«RŠR©R+R‡R	R&RRŽRŸR|R RRBR{RFR‘R2RRRÙRzRkRÍR‚R$R‹R­RR0Rµ((Rt?sü+
			

				S	}±


W


					$	-	4		¢		ƒ	&			
			¥	/	O	-	&					"			9		Š		=	m	ÿX		+	!		N			*		t	W			F						.	
												,		
	
		
		j	7			4	
	(	(								G	a