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/self/root/proc/3/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