PKqO43ntEGG-INFO/native_libs.txtprotocols/_speedups.so PKoO4×  EGG-INFO/PKG-INFOMetadata-Version: 1.0 Name: PyProtocols Version: 1.0a0 Summary: Open Protocols and Component Adaptation for Python Home-page: http://peak.telecommunity.com/PyProtocols.html Author: Phillip J. Eby Author-email: peak@eby-sarna.com License: PSF or ZPL Description: UNKNOWN Platform: UNKNOWN PKoO4dEGG-INFO/SOURCES.txtREADME.txt setup.cfg setup.py src/PyProtocols.egg-info/PKG-INFO src/PyProtocols.egg-info/native_libs.txt src/PyProtocols.egg-info/top_level.txt src/PyProtocols.egg-info/zip-safe src/protocols/__init__.py src/protocols/_speedups.c src/protocols/adapters.py src/protocols/advice.py src/protocols/api.py src/protocols/classic.py src/protocols/generate.py src/protocols/interfaces.py src/protocols/twisted_support.py src/protocols/zope_support.py src/protocols/tests/__init__.py src/protocols/tests/checks.py src/protocols/tests/doctest.py src/protocols/tests/test_advice.py src/protocols/tests/test_classes.py src/protocols/tests/test_direct.py src/protocols/tests/test_twisted.py src/protocols/tests/test_zope.py PKoO4; EGG-INFO/top_level.txtprotocols PKoO4EGG-INFO/zip-safePK\2d)yyprotocols/__init__.py"""Trivial Interfaces and Adaptation""" from api import * from adapters import NO_ADAPTER_NEEDED,DOES_NOT_SUPPORT,Adapter,StickyAdapter from adapters import AdaptationFailure from interfaces import * from advice import metamethod, supermeta from classic import ProviderMixin from generate import protocolForType, protocolForURI from generate import sequenceOf, IBasicSequence PKqO4!sPPprotocols/__init__.pyc; Bc@sdZdkTdklZlZlZlZdklZdkTdk l Z l Z dk l Z dklZlZdklZlZdS( s!Trivial Interfaces and Adaptation(s*(sNO_ADAPTER_NEEDEDsDOES_NOT_SUPPORTsAdapters StickyAdapter(sAdaptationFailure(s metamethods supermeta(s ProviderMixin(sprotocolForTypesprotocolForURI(s sequenceOfsIBasicSequenceN(s__doc__sapisadapterssNO_ADAPTER_NEEDEDsDOES_NOT_SUPPORTsAdapters StickyAdaptersAdaptationFailures interfacessadvices metamethods supermetasclassics ProviderMixinsgeneratesprotocolForTypesprotocolForURIs sequenceOfsIBasicSequence( sIBasicSequencesAdaptationFailures sequenceOfsAdapters StickyAdaptersprotocolForTypesprotocolForURIsDOES_NOT_SUPPORTs ProviderMixins supermetas metamethodsNO_ADAPTER_NEEDED((sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/__init__.pys?s  PKqO4"protocols/_speedups.pydef __bootstrap__(): global __bootstrap__, __loader__, __file__ import sys, pkg_resources, imp __file__ = pkg_resources.resource_filename(__name__,'_speedups.so') del __bootstrap__, __loader__ imp.load_dynamic(__name__,__file__) __bootstrap__() PKqO4ЀRRprotocols/_speedups.pyc; 7Cc@sdatdS(cCsGdk}dk}dk}|itdabb|ittdS(Ns _speedups.so( ssyss pkg_resourcessimpsresource_filenames__name__s__file__s __bootstrap__s __loader__s load_dynamic(s pkg_resourcesssyssimp((sCbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/_speedups.pys __bootstrap__s N(s __bootstrap__(((sCbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/_speedups.pys?s PKqO4أL0L0protocols/_speedups.soH__TEXTpp__text__TEXT|``|__picsymbol_stub__TEXTff$__picsymbolstub1__TEXTf f __cstring__TEXTkk__DATApp__data__DATApp__dyld__DATAtt__la_symbol_ptr__DATAtt)__nl_symbol_ptr__DATAuL4uLR__bss__DATAu8__LINKEDITL 4CgfX/usr/lib/libSystem.B.dylibN F@ P6_|B}|}cx=n}| x=i|N |B}h|=kkm}iN |B?xn|}x!|~x|#x8e{|#x]x8Hce,@,==Km8<,*o(oH]9, @x}N!};,AC;@; ;8e~[8,@cx}N!x$xKx|~yAH8,@}N!;An>;H`?_=_m9 ?l=ojoA,~;,@x}N!?8~ePHU;8,@cx}N!ah8!`xhN |&|ؐB!>|{xl8e|#x{|#x]dx;8Ha];,@0=-lk=_9<+N m*mH>cxn4Ha.|~x@,<??ek;>MCmYmHpH`}-||x@ <<_k9`mH<8,@^x}N!==??:m;)k;mxH_.|~x@(H_,AY:H̀8e.}@x}N!xDxKYx.|~xAh8/@t}N!K`:-@<x}N!l^;H=<_lk+9`"m>vmA,^8,@x}N!A,|;,@x}N!<8gclHm;8.@x}N!;/@;cx}N!ax8!paxh}a N |HB|`&A<<<_a88db!p8g88dH]?,;j|;;`;@A$<??8fbH]I,yj|ex@<MGhH(=|8b(H\,@,=?-Ihb=_jj9`=ljH 0=8nf$H9,A=8ofH-A>>?i>_ip;g>>_8>>xjjjjjH\)-A$<<_|8a8g>h-9`^jK0?8`iH\.|~x@?MXhHL<_<;j9j܁=<_.9QN# <9j<88j<~ :j.<_8^ ;j/8io9j 9j08 x$8id]? F08~ G9*'l djĀ|HZa/@$??-YhB?9`\jH ~8 ,@x}N!8`H[).|~x@$>>h-9`@jH L<?;jxg9  {jH -|{xA\9%,>@x}N!cxH[i.|~xAx|HYM-@ =_>h9`@jH:&->@~x}N!;8.@cx}N!8`HY-|{x@0>?th8@A??M SYjN \jH D<?;j|dx/8io ~k H .|~xA\8/@[cx}N!xHZ!-|{xAex|HX,@ ?>h9`AjHd;;,@cx}N!;`9p- ~@x}N!8`HX.|~x@ ==h>8@DMH@=?|dx;jЀg9~ }H-|{xA\8.@x}N!cxHX.|~xA|xHV/@(==.h>9@DPjjH؁~8-@x}N!;9 ,@cx}N!|H -|{x@,==h>8@EN PjjHD;jw9,@~#}N!~;`?HA,8-@^x}N!A,;.@;cx}N!?;jk;`|H5.|~x@NhM8@F2/jHHW~|}x8/@x}N!,;A=8lbHH-|{x@h:FujojHt#8-@}N!?|k;`Hi.|~x@ hM8@GjPjHHTI-|{x@h8@GPjjHЁ:,@x}N!;jw8,@~C}N!~;`kyjH.|~x@$>_?2h-9`I9=jH8`HV%-|{x@,=< hhfj9`I>sj-H xdxHU-|zx@(><h:I>$j'jH䃞9-@x}N!;.@cx}N!:j;`wC8J/C@w}N!>?W8qdT;@HR].|~x@$>_?2hM9`JjH;j}8-@}c}N!=8hd`HQ;-|{x@ >=h9`KtljKt;j]8,@}#}N!>}8vdl;`HQ-|zx@ ==h9`LjH<xjjExHQ,@0?-8h=_8@L<N CjjHZ;-@Cx}N!=;@8kdxHP.|~x@$=> hM9`M(7jH\;j}{8.@}}N!ui<_?#=?<9Q}jbj;kC>9;jj9|jH!;-|{x@ =?h9`܂FXjK|?_zj;`H-|zx@,=> h9`(7j>NsjHL|?^j;@H.|~x@0<Mh>9`j>vjMH4a8!a=njh}c N MN M A,8/@>x}N!A,;-@cx}N!A,Z8j,z@Cx}N!A8!>?a|H8qb}c HH|B|&<_|xxb[<_|#x!8SHN; -|}x;@;A.Ax-H8`HO]-|yxA`|{x<.d[HM|~yADHMq.||xA4<x8SxhxxxHM%|zxH N M A,8,@#x}N!A,]9*,=@}x}N!A,9- @<x}N!CxAh8!`aH}c N |HBA!|#xHO|~y@<xY@eHLAX8!Px|HN |hB8@a!;AHA@ADHK|~x8D8a@8HHKy8a@8D8HHKIHM%,@D,@<YD8>4,A,I9 / @~4#}N!>8, A,9l,i@~8}N!>8 8H-C@C}N!~}AxHK.AxHG,A=~V| AHK/@??>V} `A<dV}@lV~(A <?_V8O}HGH`8,@<x}N!x^8 H4=<_lV8P kHF,.-&H,exah8!`xahx!}c HFA,|;#,<@x}N! A,;/@^x}N!A,;-@cx}N!h8!`a!|}c N |HA!HF#4<, 8Ai8 ,A8,AE9 }#Kx!X8!P}(HE||~x!C,A4~HF9`fe,A,@9`X8!P}c[x}N ||~x!C,A<~8HD̀9`fe,A ,@9`!X8!P}c[x}(N |HBa|&A<_|~xbS:;@!`;HD-:|{y:&AxHD|wy&A<eSHEy|vyA8`HHi.|zxA<8fI,HC-|xxA<8;#S8y8`8xHxIxJxaHA8A W@>HM&W`HWޠ> W`> A,8,@;cx}N! A,9L,W@w~x}N!A,:.@:Cx}N!A,x;[-X@x}N! A,;/@~x}N!AD:-@0~x8!a~a}}c N A8!aa|H}c N |HB<A#P<!<|#x9@|+x9D8IH8N8@A@!DHD,8`AA@8D,;@e9 @8,@a@}N!aD8E,C@aD}N!xah8!`}hN |HB<A#O<!<|#x9@|+x9D8HL8M8@A@!DHC,8`A@<_N܀g8DL9*,~@9 8,@a@}N!D8,@aDc}N!xh8!`N |B<_!<|~x8|#x8@|+x8GP8L@HB,8`A^@89fl@H9*(~8,@~}N!!@8d,>~@x}N!!@ ;/@a@#}N!8`Ah8!`}HN |HB<AM<!<9@|#x9D|+x9!H8F88H8@ADHA@HA,8`A @9G^!D9liH8a@DHH&i|cyA |~xH4=<hK<8@<8eF@FMMKI;a@K9, @a@#}N!DG8,@aD}N!He8/@aH}N!xh8!`N |HB<ALd<!<9@|#x9D|+x9!H8D8G8@ADHA@H@,8`A @9G^!D9liH8aD@HH$|cyA |~xH4=<hJ@<8@<8eDАFL<L@K;a@K9, @a@#}N!DG8,@aD}N!He8/@aH}N!xh8!`N |HBa}&A<#J<!<|#x9@|+x9D8C08F$8@A@!DH>,;`;8`A@<_I=9I!D9GI8@| @H=.|~x@$=<lHM9`ߐJH =8 ,@]x}N!a@xxK.|~x@$<<HM9`JHc8-@#}N!aD;H=/@0<-H=8@<GN CJLJHA<xIx8H<-@$<<#H-ieJ9`Hp^9. @x}N!<xIx8H8,@}N!aD;H7/@ =< C 9`E HA=_xDx8 H7/@ =?<_C 9`E Hl~8,@x}N!=xD ~x9 H7-,@,=?=_C 9`E <,dEH@~8/@x}N!}x9 H@A,^9, @x}N!?8~=K;=8,@x}N!@}8C/]@a@}N!Dh8 ,@aDC}N!xh8!`}N |HBa}&A<B<!<|#x9@|+x9D8:P8=\8@A@DH5,;;;`8`A@<@؁^8 !D9li!@i| @4<?B8gAK.||x@$<<?M9` hfAHd8`H6=|}y&@,=_=?8@ <M,EAܑ+AH@xx%9ie@ D8aD}H5-|{x@=_<?9` H;,@x}N!;-@x}N!~xH=;@~ AH4/A!@;H!@.AP<_}#KxBH4.||x@=<?-9` $#A=_&W`jAH?iA| AH4y,A 8.AD?<BS;:?Tx!DVx;:Ux;xXx9{z9Kz9Z8aD| @ H<_?b<:M9`) W@>KWޠ> W`>} W`>.6@V~óx}N!xH?z; `@8`H-!.||x@0<>:-9`N'3<<c:-9`P:-9`^K8`H+-|wx@(?,:<&9`^=LH)e-|wx@(=,K:<_&9`rv;~x:~ AH)/A;`|@x; 9z;#,:@Cx}N!8`xH(;-|yxAԁZ~x$x:Y H(-|wxA y;-@#x}N!; 8 -@8x}N!S;~x~:A8`H'y.||xAxxH'A-|yxA|;/@x}N!8`;H'-|wxAD#x~x9aDw H'.||xAy:C,Y@#x}N!W;*,7@w~x}N!xHD;{;}AH>v;} AH&.A;`@XV W~:>.98 8,@Cx}N!8`:xH&; -|wxAЁ~x~x;W H&q.||xA؀w8,@~x}N!X:;*-8@xx}N!;x}8;A8`H%U-|yxAxx$xH%-|wxA:}.y@y#x}N!8`; H%.||xAD~xx^8D H%m-|yxA7:I/W@~x}N!:,@x}N!>xH ;{|AHh~óxH#q-|wx@$=<K:-9`Ё Wހ>e W@>H0?<_}:sb<9`H=??:9`s<&W@H=<_l:9`<,<f_8r5K-;z8/@Cx}N!;L,T@~x}N!6:,@~óx}N!:-@~x}N!x:-@Xx}N!@8W.X@a@}N!aDk;3/+@aD}N!x8!aA}c N |B!8}N!<_'x8AX8!P|HN |HA|~x!#, A,i8, @~}N!xX8!P|}N |H|#xA|+x!c,A}N!|cy@8`X8!P|N |HAB!#|~x, A,i8, @~}N!=_8`&t8X8!P|N |#y|HB}H|H@ <%,@ <%H,AHH8}&|!Đ|#x!Bc|zx>9+%#<_D|+xxx8;; e:%8{| 888AH%,A z|APdxH -@@>[3%~@@<%@,CxdxH,A^x:H =Cx&Ha|cyA|}x8|8C,\@\x}N!=x;-@|x}N!8`Hm|}yM@,>>_3$8.>?&&H[xx;2;} H.|yx@(>>_$>?8&&Hp}:c.}@x}N!X;8 /@8x}N!T%8x|; AH\A,9l,}@x}N!A,;-@#x}N!<??',; g&Ke|}y&@$M8@&HHI|~x8d.}@]x}N!,;A =?8iKKI.|yx@s$8H8 /@}N!?<_}&; &Kȡ|}y&@ $M8@er&Q&H8`H.|yx@ $:-&&H x$xH-|uxA};,@x}N!99I,Y@y#x}N!8`; H|}y&@$8,H~xxHy.|yx@$8&H8-@~x}N!:/@x}N!<_#x'0;HY-|ux@$84H8d.y@Y#x}N!4%;,,~Jx51+Y; @~x}N!,:AK$.8@eH>_2%qH.A HH|Kƹ|}y&@$<<$-9`&H8-@~x}N!Kˁ=?i$>K9`W&H<_cx&H |cyAc|yx8:/@x}N!9,s$>_>?8&&&H̃x~x;U H|}y&@(>>_S$>?8 &&H59i, u@~x}N!x:9,@x}N!T%x};APx:HA,;'/5@~x}N! :A,8~.}@x}N!=_?',;j&K.|yx@s$8+&2&HHՁ9|~x8 ,@#x}N!,; AP=8lKMK-|ux@$$8&W`t&r&H́8,@}N!><_u&:&K|}y&@$M8@dr&Kx8`H.|yx@3$9`Iq&R&Hx$xHI-|uxA8/@x}N!;.@#x}N!8`; HA|}y&@$$84&Wހ>Ё Wހ>H,~xxH.|yx@$8(&2&HȀu;-@~x}N!]:,@}x}N!<_#x'0;H-|ux@$8&&2&H9%,9@#x}N!%;>/~Bx51,a; @~x}N!.:AKqs$.8@cr&Q&H>_2%qH.A HqHK|}y&@0<<f$-K9`D&=?i&N HT8-@~x}N!K?$>9`&>xt&H>3&|@<_>?q&&K .|yx@4<<f$:@<-KC&D&&W`H8`Hu-|ux@0=,$<8=?& &&H`<~x:#'4#xQr9KRQU z:U;uH|}y&@(=<$8<'&%&H8,@#x}N!u; :/@5~x}N!x88:K]:J.]@}x}N!<<$8@?.]&&;H6~޳x:HN&WހM A,9', =@x}N!A,9,@#x}N!A,u8-@5~x}N!>_8rKi;|9K/ \@x}N!x;.@x}N!;,@~x}N!:,@:Cx}N!;;I-[@cx}N!;h/v@~óx}N!8!ax~!}a N }(a!B!c<F|~x9K|#xC||+x8e8@x8HL~H |cyA ||xH4=<h<;i=8g;K¡~9K, ^@>x}N!;,@x}N!;/@cx}N!ah8!`xhaN } &}H!A!|#x!|{xB|+x8<_;;8e8b<_K-|~x@0<=9l<M dN kH\8`H I.|}x@,<=E8@l<M*G(H <x9 xf8  H -||x@(=_<_*8l< Hā8,@x}N!};8 ,@x}N!x88;K 8g-|@x}N!<;.=_8@l=?MIMA,~8 -@x}N!A,};.@x}N!A,;/@<x}N!<_8bK[;,@cx}N!;l,z@Cx}N!y;K-Y@#x}N!!h8!`a8`(!}c N |&|A|#x!|{xB;8<_;z8b\<_K-|~x@0<=_d9 o=M l(`N jdH\8`H5.|}x@,=<d8@o<MD`dH <x9Cxl8  H-||x@(<<_d8o=?`dHā^9 ,@~x}N!};9,@=x}N!8x8;K8-@x}N!=;Kd.<8@o <MF`dMA,~9-@>x}N!A,;.@x}N!A,;/@x}N!<_8b Kq;,@[cx}N!z;k,z@:Cx}N!Ah8!`a8`HA}c N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| p}N |B}h=k| T}N |B}h=k| 8}N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| t}N |B}h=k| X}N |B}h=k| <}N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| x}N |B}h=k| \}N |B}h=k| @}N |B}h=k| $}N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| |}N |B}h=k| `}N |B}h=k| D}N |B}h=k| (}N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| }N |B}h=k| d}N objprotocoldefaultselfob_speedups.buildClassicMROextendedClassic_speedups.buildECMROAdaptationFailureAttributeErrorDOES_NOT_SUPPORTExtensionClassFalseImportErrorNO_ADAPTER_NEEDEDProtocol__adapt__Protocol__call__TypeError_Protocol__adapters__all____bases____class__mro__adaptclassicMROexc_infoextClassMROgetgetMROmetamethodobjectsystb_next_speedups.metamethodWrapper for metaclass method that might be confused w/instance method_speedups__builtin____builtins___speedups.pyx__import__OOOOraise: arg 3 must be a traceback or Noneinstance exception may not have a separate valueexceptions must be strings, classes, or instances, not %sfuncO|OOOO|O_speedups.adapt_speedups.Protocol__call___speedups.classicMRO_speedups.extClassMRO_speedups.getMROOO_speedups.Protocol__adapt___speedups._adapt_speedups.metamethod.__get___speedups.metamethod.__set___speedups.metamethod.__delete__C Speedups for commonly-used operationsprotocols.adapters__conform____adapt____class____mro__Assume 'obj' implements 'protocol' directlyPrevent 'obj' from supporting 'protocol'Read-only attributeRead-only attributeCan't adaptPEP 246-alike: Adapt 'obj' to 'protocol', return 'default' If 'default' is not supplied and no implementation is found, raise 'AdaptationFailure'.kllAdapt to this protocolll lNot a classic classl l@l l@l l@lkvlhvl|vlvlvlvlvlvlvlwmw m vm wm(vm4wm<vmDvmLvmXvmdw$mpvmtvm|vmvmw mvp,wpwpwp wqm NHuv,vTv`EmNNuOxO'Ml%pll&pmD(pl*4qmL+md1Tmt4l9n$txklkln|||||||||||||||||||||||||||||||||||||||||p@t@t@t@t@t@t|@tx@t\@tX@tL@tH@t<@t8@t,@t(@t$@t@t@t@t @t@t@s@s@s@s@s@s@s@s@s@s @s@s@s@sx @s` @s\ @sX @s@@s4@s@s @s@s @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|@rx @rt@rp @rl@rh @rd@r` @r\@rX @rT@rP @rL@rH @rD@r@ @r<@r8 @r4@r0 @r,@r( @r$@r @r@r @r@r @r@r@q@q@q@q@q@q@q@q@q@q@q@q@uH@uD@u@@u<@u8@u4@u0@u,@u(@u$@u @u@u@u@u@u @u@u@u@t@t@t@t@t@t@t@t@t@t@t@t@t@t@t@t@t@t@t@t@t@t@d|7IS|u||||˄|$| D D D D Dt3D 4D 5D 6D 7pND ODPDQ$gDhDiDjDktDDDDd|dd<p u p,+p@6pLApXLpdWplpppppqqq.DDDDDDDDDDDD DDRt|[ v|k vxDLDtDxD|DDDDDDDDDDDD,DPD|DDDDy$hˀ<G 4HXi~ʀۀ4M`yƀۀ &>Xm7Lbtπ @@?Vl@&=~@@@@@$qqDHDNDODHDODNDH DN DR DO DR DM DO DR DL $DR (DU \ wDV DW DX DZ D[ D\ D_ DDd lD` xDd |De DX Dh Dj Dk Dm Dn 8Do dDp pDo tDr tDs Du !$HF@HY@Ho@I@J@L@M $qqrr v v+ vE v] vl v v v v w w  v  v # w 4 v C v W v i v ~ w$  v  v  v  v  w r  v  w! w! w! w!+ u!P u!o v,! vT! v`!s(!NH"N"BN"hOx"O"'"M# s#%#?&#d(#~*4#+#1T#4#9Dd Di Dd Di Dd Di $# vpDj ,Di 0De 8Df <Dh @Dj DDk H$, vtDl XDk \Dl dDm xDn Do Dp Du Dp Du Dp $5 vDq $Q vDr $o vDt $ vDs $ vDt Dv Du Dp Dq $Dr (Ds ,Dt 0Dv 4Dw @Dx D{ Dx D{ D| D~ D| D~ D| D D D| D} D D} D D~ D DDDDDDDD(D4D8DHDLDXD\DlDxD|DDDDDDDDDD0DdDhDlDpDtDDDDDDD@DDDHDlDDDDDDDDDD,D`DDDDDDDDD D DHD`DDDDDD0D`DdDhDpDDDDDDD DD4D8D<D@DLDtDDDDDD$DTDXD\DDD D4D\D`DdDDDDDDDDDDDD<DlDpDtDxD|DDDDD DTDD$ vDD$ vDD$ vDDDDDDDD$ vDDDDDDDDDDD  D$$ vD (D,D0D 4DlD p$ vDtD xD |DDD% vDDDDDDp%$d %%@e%4@f%C@g%R@h%a %b%c$%dtx%uD#D*D#D*D#D*D%D+D&D(D+D-D.D0D1D3D5D6D5D6$D8,D90D;<D>lD?D@DB%$#%@#%@#%@$%@%%@&%@'%@(& @)&&&$|&DDDF,DG0DH8DJL&)$D&>@D&J@D&V@E&d,&eT&f$T&gdDLdDMlDLpDNDMDODPDQDRDTDUDVDUDVDXDYDZPD[D\D]D^D_D`DbD`DaDdDeDf,Dh`&z$Ld&M@&MD&MH&@N&@O&R')_!){*z)*l*`*$*xDjxDkDjDkDjDkDlDmDoDpDqDs$Dt<DvTDyXDz\D{`D~lDxD|DDDDD D D ,D HD pD tD xD D D D D! D!<D!h*$jx*@j*@j*@j*@*x**$ *!D!D!D!D!D!D!D!D!D!D!*$!+ @+@ +&@+3@+=!+>!+?$t+@!D!D" D"D"$D"(D",D"<D"HD"L+U$!+p@+ +$l+"dD"dD"xD"D"D"D"D"D"D"+$"d+@,E ,c$t,d"D"D"D"D"D"D#D#D#D# D#D#D#D#D# D#(D#0D#<D#HD#PD#XD#dD#pD#|D#D#D#D#D#D$TD$D$D$D% D%<D%,x$",@,@,@,@,@,@-@..@.׀,.".%.$.t/t/tDb%Dg%Db%Dg%Dh%Db%Dh%Dc%Dh%Dc%Dg%Dh%Di%Dj&Dm&Dn&(Dw&,Dx&TDy&Dz&/'$b%/S@b/e@b/w@b/c@/dD/@e/&ft/%/&/$D~&D&D~&D&D&D~&D&D&D&D&D&D&D&D&D'D' D'D' D'$D',D'TD'D'/$~&0@~0-@~0?@~0Q@0cD0z&t0&0'0$D'D'D'D'D'D'D'D'D'D'D'D'D'D(D(D(@D(DD(HD(PD(TD(tD(D(0$'0@0@0@1@1$&t1P'1Q(1R$Ds(Dz(Ds(Dz(D{(Ds(D{(Dt(D{(Du(Dz)Dt)D{)D|)D})(D~)8D)H1SOD)`D)dD)hD)lD)pD)D)D)D)D)D)D)D)D*D* 1n$s(1@s1@s1@s1Āt@1րuD1vH2@w2@x2!&yq2M(2N*42O$D*4D*DD*HD*LD*PD*TD*XD*\D*`D*|D*D*D*D*D*D*D*D*D*D*D*D*D+D+D+D+D+D+D+DD+pD+D+2P$*42{@2@2@2@2ĀD2ՀH2@2@3 &q35*D36+37$D+D+D+D+D+D+D+D+D+D,D,D,D,D,D,D, D,$D,,D,0D,8D,<D,@D,PD,\D,dD,lD,D ,D,D ,D -D-$D -(D-,D-dD-hD-lD-pD-tD-xD-|D-D-D-D-D-D-D-D-D-D.,D".TD#.XD".\D$.dD*.hD+.D,.D0.D,.D0.D,.D-/ D./D//$D0/,D1/`D2/D1/D2/D3/D2/D3/D4/D5/D4/D5/D:0 D;0LD<0xD=0D>0D=0D@0DA0DB1DC14DD1838$+3]@3o@3@3@3D3@3@3@3@4@4&q4=+4>1T4?$Dx1TD1dDx1hD1lD1pDx1tD1xDy1D1Dy1D1D1D1D1D1D1D1D1D2 D24D2<D2@D2pD2D2D2D2D2D2D2D2D2D2D2D3 D34D38D3<D3@D3DD3HD3PD3D3D3D3D3D3D3D3D3D3D4$D4PD4|D44@$x1T4f@x4x@x4@x4y@4zD4@{4@|4@}4&q5(1d5)45*$@D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D5D5D5D5D5,D54D5<D5|D5D5D5D5D5D5D5D6D6<D6dD6hD6lD6D6D6D7D7D7\D7D7D7D7D7D7D7D8D8,D8TD8XD8\D8D8D8D8D8D8D8D9D9DD9PD9TD9TD 9D 9D 95+$45L@5^@5p@5@5D5@5@5@5@5@5&q6(46)96*$8D9D#9D9D#9D9D#9D:D:D#:D: D:$D!:(D#:,D$:4D&:8D$:@D-:HD$:LD':PD%:TD(:XD-:\D%:`D):lD&:pD*:xD':|D&:D(:D':D):D(:D*:D):D*:D-:D.:D1:D2:D;:D<:D=;D<;D=; DA;0DE;8DD;<DE;@DF;HDK;pDG;tDK;xDL;DN;DO;DR;DU;DV;DW;DX;DZ<D_<D`D>D>D> D>D>D>DD>lD>pD>tD>xD>|D>D>D>D>D>D?D?D?D?D?D? D?HD?LD?PD?TD?xD?|D?D?D?D?D@D@0D@4D@<D@DD@HD@LD@xD@D@D@D@D@D@D@DADA,DATDAXDA\DA`DAdDAhDADADB DB4DB8DB<DB`DBlDBpDBtDBDBDBDBDBDBDBDBDBDBDBDBDBDCDCDCDC@DCDDCHDClDCpDCtDCxDC|DCDCDCDCDCDCDCDCDCDDDD DDDDDDDlD DpDDtDDDDDDDDDDDDD"DDDD"EDED"ED#ED%ED#E D$E(D%E,D&E<D'EdD&EhD'ElD,ED(ED-ED)ED-ED0ED1ED2ED3ED2ED3FD4FD6FD4FD5F(D6F0D7F@D8FhD9FD;FDFDGFDJFDKFDLFDOG DTGHDPGLDTGPDQGTDTGXDUGdDWGhDUGpDVGxDWG|DXGDYGDXGDYGD^GDZGD_GD[GD_GDbGDcHDdH DeHHDfH\DhH`DfHhDgHtDhH|DiHDjHDkHDmHDHHDsHDwI DxIDzKD{LD|LHD}LtD~LDLD~LDLDLDMDM,DMTDM|DMDMDM6+$96W@6i@6{@6@6D6@6@6@6@6@7@7$@7;@7J@7Y@7h@7w@7@!7&"r797M7$(DMDN DN7$M7@8@8@8G808$TDNHDN\DN8$NH8@8$lDNDNDNDNDN8$N9@9 @ 9-@989K@9TN9UN9V$DDNDODODODOHDOLDOP9W$N9@9$DOxDOxDO|DODODO9_DO9$Ox9@9@9@:$4DODODO:`DO:+c:W$O:@:@:@:$D2OD<OD2OD?OD<OD?OD<ODDOD=OD2PD@PDAPD=P D9PD=PD:PD>PD;P DDP$D>P(DDP,D>P0D?P4DDP8D?P<D@P@D?PDDAPHD@PLDAPPDDPTDHPdDRPDXPDWPDXPD\PD[PD\PD_PD`PDcPDdPDcPDePDqPDuPDyPDxPDyPDzPDQ D{Q$DQ(DQLDQDQDQDQDQDQDQDRDRDR(DR,DR0DR4DR8DR<DR@DRlDRDRDRDRDRDRDRDSDSDS DSDSDS8DS\DShDSlDSDSDSDT DT4DT8DT<DT\DTDTDTDTDTDUDU,DU0DU4DU<DU@DUDDULDUPDUhDUlDUpDUtDUxDUDUDUDUDUDUDVDVDV$DV4DV<DV@DVDDVLDVtDVxDV|DVDVDVDVDVDVDW0DWXDW\DW`DWDWDWDWDWDWDWDWDWDWDWDWDWD X DXD XD XHD XLD XPD XTD XxD X|D XDXDXDXDXDXDXDY DYLDYdDYDYDYDYDYDZDZDDZlDZxDZ|DZDZDZDZDZDZDZDZDZD [D[ D [D#[D$[D.[4D/[DD2[LD3[PD8[TD9[D>[D?[D:[D?[D:[DD[DE[DH[DI\DDJ\DP\DJ\DP\DJ\DK\DL\DM\DN\DO\DP\DQ]DR](DQ],DR]0DS]TDR]`DS]dDT]hDU]DT]DU]D[]D\]D[]D]]D`]Db]Dc^Dd^<De^hDf^tDe^xDh^xDi^Dj^Dk^Dl_Dm_@Do_h:$2O:@2:@2:@2;@3;@4;/@5;E@6;X@7;g@8;v@9;@:;@;;O;_t;$D_D_D_D_D_D_D_D_D_D_D_D_D_D_D_D_D_D_D`D`D` D`D`D`(D`,D`0D`4D`8D`<D`dD`D`;$_;@;@;@<@<@<,_<-`<.$DD`D`D`D`DaDaDaDa DaDaDaDa(DapDaDaDaDaDaDaDaDbDb0Db4Db8Db\DbhDblDbpDbDbDbDbDbDc DcLDcXDcDcDc& 2u>/( 3v>Q( 4v>u( 5v>( 6v>( 7v>( 8v>( 9v>( :v? ( ;v?( <v?/( =v?@( >v?Q&Ep,?y&Fp@?&GpL?&HpX?&Ipd@( Kv@-( Lv@E( Mv@f( Nv@( Ov@( Pv@( Qv@( Rv@( SvA( TvA+( UvAF( VvA\( WvA}( XvA( YvA( ZvA( [vA( \vA( ^vB&aplBG&}pB( vB( wB&pB( wB&pC( +wC6( ,w CM( .wC_&0pC&rpC&qD( wD&qD?( FwDX( wDo(  w D( w$D&rD&rE& uEH& uEn&  v,E& vTE& v`E&WsF&txFOay-HWj|D)?@# G%!C$327A><J=*L"-9;/.8,6:I4F1D)?@# G%!C$327A><J=*L"-9;/.8,6:I4F1B(E'50H&+KM__dyld_func_lookupdyld_stub_binding_helper__mh_bundle_header_init_speedups_PyArg_ParseTupleAndKeywords_PyBaseObject_Type_PyClass_Type_PyCode_New_PyDict_New_PyErr_Clear_PyErr_ExceptionMatches_PyErr_Fetch_PyErr_Format_PyErr_NormalizeException_PyErr_Occurred_PyErr_Restore_PyErr_SetObject_PyErr_SetString_PyExc_AttributeError_PyExc_NameError_PyExc_TypeError_PyFrame_New_PyImport_AddModule_PyInstance_Type_PyInt_FromLong_PyIter_Next_PyList_Append_PyList_New_PyList_Type_PyMethod_New_PyModule_GetDict_PyObject_CallFunction_PyObject_CallObject_PyObject_GC_Del_PyObject_GetAttr_PyObject_GetAttrString_PyObject_GetItem_PyObject_GetIter_PyObject_IsInstance_PyObject_IsTrue_PyObject_SetAttr_PyObject_SetAttrString_PyObject_Type_PyString_FromString_PyString_FromStringAndSize_PyString_InternFromString_PyString_Type_PyThreadState_Get_PyTraceBack_Here_PyTraceBack_Type_PyTuple_New_PyTuple_Size_PyTuple_Type_PyType_IsSubtype_PyType_Ready_PyType_Type_Py_InitModule4__Py_NoneStruct{standard input}int:t1=r1;-2147483648;2147483647;char:t2=r2;0;127;void:t3=3/SourceCache/Csu/Csu-57/bundle1.s/SourceCache/Csu/Csu-57///SourceCache/Csu/Csu-57/bundle1.s/SourceCache/Csu/Csu-57/bundle1.sdyld_stub_binding_helper:F3dyld_lazy_symbol_binding_entry_pointdyld__mh_bundle_header__dyld_func_lookup:F3dyld_func_lookup_pointer/Users/tazzzzz/projects/thirdparty/PyProtocols-1.0a0dev_r2082/src/protocols/_speedups.cgcc2_compiled.___pyx_mdoc___pyx_ptype_9_speedups_metamethod___pyx_k11___pyx_k15___pyx_k16___pyx_k17___pyx_k18___pyx_doc_9_speedups_NO_ADAPTER_NEEDED___pyx_doc_9_speedups_DOES_NOT_SUPPORT___pyx_k26___pyx_k27___pyx_k28___pyx_doc_9_speedups_adapt___pyx_argnames.0___pyx_doc_9_speedups_Protocol__call_____pyx_argnames.1___pyx_f_9_speedups_buildClassicMRO___pyx_f___pyx_filename___pyx_lineno__pyx_f_9_speedups_buildClassicMRO:f(0,1)=*(0,2)=(0,3)=xs_object:PyObject:t(0,2)_object:T(0,3)=s8ob_refcnt:(0,4)=r(0,4);-2147483648;2147483647;,0,32;ob_type:(0,5)=*(0,6)=xs_typeobject:,32,32;;int:t(0,4)_typeobject:T(0,6)=s192ob_refcnt:(0,4),0,32;ob_type:(0,5),32,32;ob_size:(0,4),64,32;tp_name:(0,7)=*(0,8)=r(0,8);0;127;,96,32;tp_basicsize:(0,4),128,32;tp_itemsize:(0,4),160,32;tp_dealloc:(0,9)=(0,10)=*(0,11)=f(0,12)=(0,12),192,32;tp_print:(0,13)=(0,14)=*(0,15)=f(0,4),224,32;tp_getattr:(0,16)=(0,17)=*(0,18)=f(0,1),256,32;tp_setattr:(0,19)=(0,20)=*(0,21)=f(0,4),288,32;tp_compare:(0,22)=(0,23)=*(0,24)=f(0,4),320,32;tp_repr:(0,25)=(0,26)=*(0,27)=f(0,1),352,32;tp_as_number:(0,28)=*(0,29)=(0,30)=s152nb_add:(0,31)=(0,32)=*(0,33)=f(0,1),0,32;nb_subtract:(0,31),32,32;nb_multiply:(0,31),64,32;nb_divide:(0,31),96,32;nb_remainder:(0,31),128,32;nb_divmod:(0,31),160,32;nb_power:(0,34)=(0,35)=*(0,36)=f(0,1),192,32;nb_negative:(0,37)=(0,26),224,32;nb_positive:(0,37),256,32;nb_absolute:(0,37),288,32;nb_nonzero:(0,38)=(0,39)=*(0,40)=f(0,4),320,32;nb_invert:(0,37),352,32;nb_lshift:(0,31),384,32;nb_rshift:(0,31),416,32;nb_and:(0,31),448,32;nb_xor:(0,31),480,32;nb_or:(0,31),512,32;nb_coerce:(0,41)=(0,42)=*(0,43)=f(0,4),544,32;nb_int:(0,37),576,32;nb_long:(0,37),608,32;nb_float:(0,37),640,32;nb_oct:(0,37),672,32;nb_hex:(0,37),704,32;nb_inplace_add:(0,31),736,32;nb_inplace_subtract:(0,31),768,32;nb_inplace_multiply:(0,31),800,32;nb_inplace_divide:(0,31),832,32;nb_inplace_remainder:(0,31),864,32;nb_inplace_power:(0,34),896,32;nb_inplace_lshift:(0,31),928,32;nb_inplace_rshift:(0,31),960,32;nb_inplace_and:(0,31),992,32;nb_inplace_xor:(0,31),1024,32;nb_inplace_or:(0,31),1056,32;nb_floor_divide:(0,31),1088,32;nb_true_divide:(0,31),1120,32;nb_inplace_floor_divide:(0,31),1152,32;nb_inplace_true_divide:(0,31),1184,32;;,384,32;tp_as_sequence:(0,44)=*(0,45)=(0,46)=s40sq_length:(0,38),0,32;sq_concat:(0,31),32,32;sq_repeat:(0,47)=(0,48)=*(0,49)=f(0,1),64,32;sq_item:(0,47),96,32;sq_slice:(0,50)=(0,51)=*(0,52)=f(0,1),128,32;sq_ass_item:(0,53)=(0,54)=*(0,55)=f(0,4),160,32;sq_ass_slice:(0,56)=(0,57)=*(0,58)=f(0,4),192,32;sq_contains:(0,59)=(0,23),224,32;sq_inplace_concat:(0,31),256,32;sq_inplace_repeat:(0,47),288,32;;,416,32;tp_as_mapping:(0,60)=*(0,61)=(0,62)=s12mp_length:(0,38),0,32;mp_subscript:(0,31),32,32;mp_ass_subscript:(0,63)=(0,64)=*(0,65)=f(0,4),64,32;;,448,32;tp_hash:(0,66)=(0,67)=*(0,68)=f(0,69)=r(0,69);-2147483648;2147483647;,480,32;tp_call:(0,34),512,32;tp_str:(0,25),544,32;tp_getattro:(0,70)=(0,32),576,32;tp_setattro:(0,71)=(0,64),608,32;tp_as_buffer:(0,72)=*(0,73)=(0,74)=s16bf_getreadbuffer:(0,75)=(0,76)=*(0,77)=f(0,4),0,32;bf_getwritebuffer:(0,78)=(0,76),32,32;bf_getsegcount:(0,79)=(0,80)=*(0,81)=f(0,4),64,32;bf_getcharbuffer:(0,82)=(0,83)=*(0,84)=f(0,4),96,32;;,640,32;tp_flags:(0,69),672,32;tp_doc:(0,7),704,32;tp_traverse:(0,85)=(0,86)=*(0,87)=f(0,4),736,32;tp_clear:(0,38),768,32;tp_richcompare:(0,88)=(0,89)=*(0,90)=f(0,1),800,32;tp_weaklistoffset:(0,69),832,32;tp_iter:(0,91)=(0,26),864,32;tp_iternext:(0,92)=(0,26),896,32;tp_methods:(0,93)=*(0,94)=xsPyMethodDef:,928,32;tp_members:(0,95)=*(0,96)=xsPyMemberDef:,960,32;tp_getset:(0,97)=*(0,98)=xsPyGetSetDef:,992,32;tp_base:(0,5),1024,32;tp_dict:(0,1),1056,32;tp_descr_get:(0,99)=(0,35),1088,32;tp_descr_set:(0,100)=(0,64),1120,32;tp_dictoffset:(0,69),1152,32;tp_init:(0,101)=(0,64),1184,32;tp_alloc:(0,102)=(0,103)=*(0,104)=f(0,1),1216,32;tp_new:(0,105)=(0,106)=*(0,107)=f(0,1),1248,32;tp_free:(0,108)=(0,109)=*(0,110)=f(0,12),1280,32;tp_is_gc:(0,38),1312,32;tp_bases:(0,1),1344,32;tp_mro:(0,1),1376,32;tp_cache:(0,1),1408,32;tp_subclasses:(0,1),1440,32;tp_weaklist:(0,1),1472,32;tp_del:(0,9),1504,32;;char:t(0,8)destructor:t(0,9)void:t(0,12)printfunc:t(0,13)getattrfunc:t(0,16)setattrfunc:t(0,19)cmpfunc:t(0,22)reprfunc:t(0,25)PyNumberMethods:t(0,29)binaryfunc:t(0,31)ternaryfunc:t(0,34)unaryfunc:t(0,37)inquiry:t(0,38)coercion:t(0,41)PySequenceMethods:t(0,45)intargfunc:t(0,47)intintargfunc:t(0,50)intobjargproc:t(0,53)intintobjargproc:t(0,56)objobjproc:t(0,59)PyMappingMethods:t(0,61)objobjargproc:t(0,63)hashfunc:t(0,66)long int:t(0,69)getattrofunc:t(0,70)setattrofunc:t(0,71)PyBufferProcs:t(0,73)getreadbufferproc:t(0,75)getwritebufferproc:t(0,78)getsegcountproc:t(0,79)getcharbufferproc:t(0,82)traverseproc:t(0,85)richcmpfunc:t(0,88)getiterfunc:t(0,91)iternextfunc:t(0,92)PyMethodDef:T(0,94)=s16ml_name:(0,7),0,32;ml_meth:(0,111)=(0,32),32,32;ml_flags:(0,4),64,32;ml_doc:(0,7),96,32;;PyMemberDef:T(0,96)=s20name:(0,7),0,32;type:(0,4),32,32;offset:(0,4),64,32;flags:(0,4),96,32;doc:(0,7),128,32;;PyGetSetDef:T(0,98)=s20name:(0,7),0,32;get:(0,112)=(0,113)=*(0,114)=f(0,1),32,32;set:(0,115)=(0,116)=*(0,117)=f(0,4),64,32;doc:(0,7),96,32;closure:(0,118)=*(0,12),128,32;;descrgetfunc:t(0,99)descrsetfunc:t(0,100)initproc:t(0,101)allocfunc:t(0,102)newfunc:t(0,105)freefunc:t(0,108)PyCFunction:t(0,111)getter:t(0,112)setter:t(0,115)__pyx_v_cls:P(0,119)=*(0,120)=(0,121)=s32ob_refcnt:(0,4),0,32;ob_type:(0,5),32,32;cl_bases:(0,1),64,32;cl_dict:(0,1),96,32;cl_name:(0,1),128,32;cl_getattr:(0,1),160,32;cl_setattr:(0,1),192,32;cl_delattr:(0,1),224,32;;__pyx_v_list:P(0,122)=*(0,123)=(0,124)=s16ob_refcnt:(0,4),0,32;ob_type:(0,5),32,32;ob_size:(0,4),64,32;ob_item:(0,125)=*(0,1),96,32;;PyClassObject:t(0,120)PyListObject:t(0,123)__pyx_v_bases:r(0,126)=*(0,127)=(0,128)=s16ob_refcnt:(0,4),0,32;ob_type:(0,5),32,32;ob_size:(0,4),64,32;ob_item:(0,129)=ar(0,130)=r(0,130);0000000000000;0037777777777;;0;0;(0,1),96,32;;PyTupleObject:t(0,127)long unsigned int:t(0,131)=r(0,131);0000000000000;0037777777777;__pyx_v_i:r(0,4)__pyx_v_tmp:r(0,1)__pyx_r:r(0,1)__pyx_1:r(0,1)__pyx_2:r(0,4)___pyx_k29___pyx_argnames.2___pyx_f_9_speedups_buildECMRO___pyx_n___bases____pyx_f_9_speedups_buildECMRO:f(0,1)__pyx_v_cls:P(0,1)__pyx_v_list:P(0,122)__pyx_v_i:r(0,1)__pyx_r:r(0,1)__pyx_2:r(0,1)__pyx_3:r(0,1)___pyx_argnames.3___pyx_argnames.4___pyx_argnames.5___pyx_intern_tab___pyx_n_AdaptationFailure___pyx_n_AttributeError___pyx_n_DOES_NOT_SUPPORT___pyx_n_ExtensionClass___pyx_n_False___pyx_n_ImportError___pyx_n_NO_ADAPTER_NEEDED___pyx_n_Protocol__adapt_____pyx_n_Protocol__call_____pyx_n_TypeError___pyx_n__Protocol__adapters___pyx_n___all_____pyx_n___class___pyx_n___mro_____pyx_n_adapt___pyx_n_classicMRO___pyx_n_exc_info___pyx_n_extClassMRO___pyx_n_get___pyx_n_getMRO___pyx_n_metamethod___pyx_n_object___pyx_n_sys___pyx_n_tb_next___pyx_string_tab___pyx_k11p___pyx_k26p___pyx_k27p___pyx_k28p___pyx_k29p___pyx_methods_9_speedups_metamethod___pyx_tp_as_number_metamethod___pyx_tp_as_sequence_metamethod___pyx_tp_as_mapping_metamethod___pyx_tp_as_buffer_metamethod___pyx_type_9_speedups_metamethod___pyx_tp_dealloc_9_speedups_metamethod___pyx_tp_traverse_9_speedups_metamethod___pyx_tp_clear_9_speedups_metamethod___pyx_tp_descr_get_9_speedups_metamethod___pyx_tp_descr_set_9_speedups_metamethod___pyx_f_9_speedups_10metamethod___init_____pyx_tp_new_9_speedups_metamethod___pyx_methods___pyx_f_9_speedups_NO_ADAPTER_NEEDED___pyx_f_9_speedups_DOES_NOT_SUPPORT___pyx_f_9_speedups_adapt___pyx_f_9_speedups_Protocol__call_____pyx_f_9_speedups_classicMRO___pyx_f_9_speedups_extClassMRO___pyx_f_9_speedups_getMRO___pyx_f_9_speedups_Protocol__adapt_____pyx_m___pyx_b___pyx_v_9_speedups__marker___pyx_v_9_speedups___conform___pyx_v_9_speedups___adapt___pyx_v_9_speedups___ECType___pyx_v_9_speedups___mro___pyx_k19___pyx_k20___pyx_k21___pyx_k22___pyx_k23___pyx_k24___pyx_k25init_speedups:F(0,12)__pyx_1:r(0,1)__pyx_2:r(0,1)__pyx_3:r(0,4)__pyx_4:r(0,1)___pyx_filenames___Pyx_Import__Pyx_Import:f(0,1)name:P(0,1)from_list:P(0,1)__import__:r(0,1)empty_list:r(0,1)module:r(0,1)global_dict:r(0,1)empty_dict:r(0,1)list:r(0,1)___Pyx_GetName__Pyx_GetName:f(0,1)dict:P(0,1)name:P(0,1)result:r(0,1)___Pyx_GetExcValue__Pyx_GetExcValue:f(0,1)type:(0,1)value:(0,1)tb:(0,1)result:r(0,1)tstate:r(0,132)=*(0,133)=(0,134)=xs_ts:PyThreadState:t(0,133)_ts:T(0,134)=s84next:(0,135)=*(0,134),0,32;interp:(0,136)=*(0,137)=(0,138)=xs_is:,32,32;frame:(0,139)=*(0,140)=xs_frame:,64,32;recursion_depth:(0,4),96,32;tracing:(0,4),128,32;use_tracing:(0,4),160,32;c_profilefunc:(0,141)=(0,142)=*(0,143)=f(0,4),192,32;c_tracefunc:(0,141),224,32;c_profileobj:(0,1),256,32;c_traceobj:(0,1),288,32;curexc_type:(0,1),320,32;curexc_value:(0,1),352,32;curexc_traceback:(0,1),384,32;exc_type:(0,1),416,32;exc_value:(0,1),448,32;exc_traceback:(0,1),480,32;dict:(0,1),512,32;tick_counter:(0,4),544,32;gilstate_counter:(0,4),576,32;async_exc:(0,1),608,32;thread_id:(0,69),640,32;;PyInterpreterState:t(0,137)_is:T(0,138)=s36next:(0,144)=*(0,138),0,32;tstate_head:(0,135),32,32;modules:(0,1),64,32;sysdict:(0,1),96,32;builtins:(0,1),128,32;codec_search_path:(0,1),160,32;codec_search_cache:(0,1),192,32;codec_error_registry:(0,1),224,32;dlopenflags:(0,4),256,32;;Py_tracefunc:t(0,141)___Pyx_Raise__Pyx_Raise:f(0,12)type:P(0,1)value:P(0,1)tb:P(0,1)tmp:r(0,1)___Pyx_ReRaise__Pyx_ReRaise:f(0,12)tstate:r(0,132)type:r(0,1)value:r(0,1)tb:r(0,1)___Pyx_InternStrings__Pyx_InternStrings:f(0,4)t:P(0,145)=*(0,146)=(0,147)=s8p:(0,125),0,32;s:(0,7),32,32;;__Pyx_InternTabEntry:t(0,146)___Pyx_InitStrings__Pyx_InitStrings:f(0,4)t:P(0,148)=*(0,149)=(0,150)=s12p:(0,125),0,32;s:(0,7),32,32;n:(0,69),64,32;;__Pyx_StringTabEntry:t(0,149)___Pyx_AddTraceback__Pyx_AddTraceback:f(0,12)funcname:P(0,7)py_srcfile:r(0,1)py_funcname:r(0,1)py_globals:r(0,1)empty_tuple:r(0,1)empty_string:r(0,1)py_code:r(0,151)=*(0,152)=(0,153)=s64ob_refcnt:(0,4),0,32;ob_type:(0,5),32,32;co_argcount:(0,4),64,32;co_nlocals:(0,4),96,32;co_stacksize:(0,4),128,32;co_flags:(0,4),160,32;co_code:(0,1),192,32;co_consts:(0,1),224,32;co_names:(0,1),256,32;co_varnames:(0,1),288,32;co_freevars:(0,1),320,32;co_cellvars:(0,1),352,32;co_filename:(0,1),384,32;co_name:(0,1),416,32;co_firstlineno:(0,4),448,32;co_lnotab:(0,1),480,32;;PyCodeObject:t(0,152)py_frame:r(0,154)=*(0,155)=(0,140)PyFrameObject:t(0,155)___pyx_argnames.6___pyx_argnames.7___pyx_argnames.8__pyx_f_9_speedups_NO_ADAPTER_NEEDED:f(0,1)__pyx_self:P(0,1)__pyx_args:P(0,1)__pyx_kwds:P(0,1)__pyx_v_obj:(0,1)__pyx_v_protocol:(0,1)__pyx_r:r(0,1)__pyx_argnames:V(0,156)=ar(0,130);0;2;(0,7)__pyx_f_9_speedups_DOES_NOT_SUPPORT:f(0,1)__pyx_self:P(0,1)__pyx_args:P(0,1)__pyx_kwds:P(0,1)__pyx_v_obj:(0,1)__pyx_v_protocol:(0,1)__pyx_argnames:V(0,157)=ar(0,130);0;2;(0,7)__pyx_f_9_speedups_10metamethod___init__:f(0,4)__pyx_v_self:P(0,1)__pyx_args:P(0,1)__pyx_kwds:P(0,1)__pyx_v_func:(0,1)__pyx_argnames:V(0,158)=ar(0,130);0;1;(0,7)___pyx_f_9_speedups__adapt__pyx_f_9_speedups_adapt:f(0,1)__pyx_self:P(0,1)__pyx_args:P(0,1)__pyx_kwds:P(0,1)__pyx_v_obj:(0,1)__pyx_v_protocol:(0,1)__pyx_v_default:(0,1)__pyx_r:r(0,1)__pyx_1:r(0,1)__pyx_argnames:V(0,159)=ar(0,130);0;3;(0,7)__pyx_f_9_speedups_Protocol__call__:f(0,1)__pyx_self:P(0,1)__pyx_args:P(0,1)__pyx_kwds:P(0,1)__pyx_v_self:(0,1)__pyx_v_ob:(0,1)__pyx_v_default:(0,1)__pyx_r:r(0,1)__pyx_1:r(0,1)__pyx_argnames:V(0,160)=ar(0,130);0;3;(0,7)__pyx_f_9_speedups_classicMRO:f(0,1)__pyx_self:P(0,1)__pyx_args:P(0,1)__pyx_kwds:P(0,1)__pyx_v_ob:(0,1)__pyx_v_extendedClassic:(0,1)__pyx_v_mro:r(0,1)__pyx_r:r(0,1)__pyx_2:r(0,1)__pyx_3:r(0,1)__pyx_4:r(0,1)__pyx_argnames:V(0,161)=ar(0,130);0;2;(0,7)__pyx_f_9_speedups_extClassMRO:f(0,1)__pyx_self:P(0,1)__pyx_args:P(0,1)__pyx_kwds:P(0,1)__pyx_v_ob:(0,1)__pyx_v_extendedClassic:(0,1)__pyx_v_mro:r(0,1)__pyx_r:r(0,1)__pyx_1:r(0,1)__pyx_argnames:V(0,162)=ar(0,130);0;2;(0,7)__pyx_f_9_speedups_getMRO:f(0,1)__pyx_self:P(0,1)__pyx_args:P(0,1)__pyx_kwds:P(0,1)__pyx_v_ob:(0,1)__pyx_v_extendedClassic:(0,1)__pyx_r:r(0,1)__pyx_1:r(0,4)__pyx_2:r(0,1)__pyx_3:r(0,1)__pyx_4:r(0,1)__pyx_argnames:V(0,163)=ar(0,130);0;2;(0,7)__pyx_f_9_speedups_Protocol__adapt__:f(0,1)__pyx_self:P(0,1)__pyx_args:P(0,1)__pyx_kwds:P(0,1)__pyx_v_self:(0,1)__pyx_v_obj:(0,1)__pyx_v_tmp:r(0,118)__pyx_v_i:r(0,4)__pyx_v_cls:r(0,1)__pyx_v_err:r(0,1)__pyx_v_mro:r(0,1)__pyx_v_get:r(0,1)__pyx_v_factory:r(0,1)__pyx_r:r(0,1)__pyx_1:r(0,4)__pyx_2:r(0,1)__pyx_3:r(0,1)__pyx_4:r(0,1)__pyx_6:r(0,1)__pyx_argnames:V(0,164)=ar(0,130);0;2;(0,7)__pyx_tp_new_9_speedups_metamethod:f(0,1)t:P(0,165)=*(0,166)=(0,6)a:P(0,1)k:P(0,1)PyTypeObject:t(0,166)__pyx_obj_9_speedups_metamethod:T(0,167)=s12ob_refcnt:(0,4),0,32;ob_type:(0,5),32,32;func:(0,1),64,32;;__pyx_tp_dealloc_9_speedups_metamethod:f(0,12)o:P(0,1)__pyx_tp_traverse_9_speedups_metamethod:f(0,4)o:P(0,1)v:P(0,168)=(0,169)=*(0,170)=f(0,4)a:P(0,118)visitproc:t(0,168)e:r(0,4)__pyx_tp_clear_9_speedups_metamethod:f(0,4)o:P(0,1)___pyx_f_9_speedups_10metamethod___get____pyx_tp_descr_get_9_speedups_metamethod:f(0,1)o:P(0,1)i:P(0,1)c:P(0,1)___pyx_f_9_speedups_10metamethod___set_____pyx_f_9_speedups_10metamethod___delete____pyx_tp_descr_set_9_speedups_metamethod:f(0,4)o:P(0,1)i:P(0,1)v:P(0,1)__pyx_f_9_speedups__adapt:f(0,1)__pyx_v_obj:P(0,1)__pyx_v_protocol:P(0,1)__pyx_v_default:P(0,1)__pyx_v_tmp:r(0,118)__pyx_v_meth:r(0,1)__pyx_v_result:r(0,1)__pyx_v_err:r(0,1)__pyx_r:r(0,1)__pyx_1:r(0,4)__pyx_2:r(0,1)__pyx_3:r(0,1)__pyx_4:r(0,1)__pyx_f_9_speedups_10metamethod___get__:f(0,1)__pyx_v_self:P(0,1)__pyx_v_ob:P(0,1)__pyx_v_typ:P(0,1)__pyx_r:r(0,1)__pyx_2:r(0,1)__pyx_f_9_speedups_10metamethod___set__:f(0,4)__pyx_v_self:P(0,1)__pyx_v_ob:P(0,1)__pyx_v_value:P(0,1)__pyx_1:r(0,1)__pyx_2:r(0,1)__pyx_3:r(0,1)__pyx_f_9_speedups_10metamethod___delete__:f(0,4)__pyx_v_self:P(0,1)__pyx_v_ob:P(0,1)__pyx_1:r(0,1)__pyx_2:r(0,1)__pyx_3:r(0,1)__pyx_m:S(0,1)__pyx_b:S(0,1)__pyx_lineno:S(0,4)__pyx_filename:S(0,7)__pyx_f:S(0,171)=*(0,7)__pyx_mdoc:S(0,172)=ar(0,130);0;39;(0,8)__pyx_type_9_speedups_metamethod:S(0,166)__pyx_ptype_9_speedups_metamethod:S(0,165)__pyx_v_9_speedups__marker:S(0,1)__pyx_v_9_speedups___conform:S(0,1)__pyx_v_9_speedups___adapt:S(0,1)__pyx_v_9_speedups___mro:S(0,1)__pyx_v_9_speedups___ECType:S(0,1)__pyx_k19:S(0,1)__pyx_k20:S(0,1)__pyx_k21:S(0,1)__pyx_k22:S(0,1)__pyx_k23:S(0,1)__pyx_k24:S(0,1)__pyx_k25:S(0,1)__pyx_k11:S(0,173)=ar(0,130);0;18;(0,8)__pyx_k15:S(0,174)=ar(0,130);0;11;(0,8)__pyx_k16:S(0,175)=ar(0,130);0;9;(0,8)__pyx_k17:S(0,176)=ar(0,130);0;9;(0,8)__pyx_k18:S(0,177)=ar(0,130);0;7;(0,8)__pyx_n___all__:S(0,1)__pyx_n_exc_info:S(0,1)__pyx_n_AdaptationFailure:S(0,1)__pyx_n_ExtensionClass:S(0,1)__pyx_n___class:S(0,1)__pyx_n_NO_ADAPTER_NEEDED:S(0,1)__pyx_n_DOES_NOT_SUPPORT:S(0,1)__pyx_n_adapt:S(0,1)__pyx_n_Protocol__call__:S(0,1)__pyx_n_classicMRO:S(0,1)__pyx_n_extClassMRO:S(0,1)__pyx_n_getMRO:S(0,1)__pyx_n_Protocol__adapt__:S(0,1)__pyx_n_metamethod:S(0,1)__pyx_n_sys:S(0,1)__pyx_n_ImportError:S(0,1)__pyx_n_object:S(0,1)__pyx_n_False:S(0,1)__pyx_k11p:S(0,1)__pyx_doc_9_speedups_NO_ADAPTER_NEEDED:S(0,178)=ar(0,130);0;43;(0,8)__pyx_doc_9_speedups_DOES_NOT_SUPPORT:S(0,179)=ar(0,130);0;40;(0,8)__pyx_n_AttributeError:S(0,1)__pyx_k26p:S(0,1)__pyx_k26:S(0,180)=ar(0,130);0;19;(0,8)__pyx_k27p:S(0,1)__pyx_k27:S(0,181)=ar(0,130);0;19;(0,8)__pyx_n_TypeError:S(0,1)__pyx_n_tb_next:S(0,1)__pyx_k28p:S(0,1)__pyx_k28:S(0,182)=ar(0,130);0;11;(0,8)__pyx_doc_9_speedups_adapt:S(0,183)=ar(0,130);0;155;(0,8)__pyx_doc_9_speedups_Protocol__call__:S(0,184)=ar(0,130);0;22;(0,8)__pyx_k29p:S(0,1)__pyx_k29:S(0,185)=ar(0,130);0;19;(0,8)__pyx_n___bases__:S(0,1)__pyx_n___mro__:S(0,1)__pyx_n__Protocol__adapters:S(0,1)__pyx_n_get:S(0,1)__pyx_intern_tab:S(0,186)=ar(0,130);0;25;(0,146)__pyx_string_tab:S(0,187)=ar(0,130);0;5;(0,149)__pyx_methods_9_speedups_metamethod:S(0,188)=ar(0,130);0;0;(0,94)__pyx_tp_as_number_metamethod:S(0,29)__pyx_tp_as_sequence_metamethod:S(0,45)__pyx_tp_as_mapping_metamethod:S(0,61)__pyx_tp_as_buffer_metamethod:S(0,73)__pyx_methods:S(0,189)=ar(0,130);0;8;(0,94)__pyx_filenames:S(0,190)=ar(0,130);0;0;(0,7)PK\2-\OOprotocols/adapters.py"""Basic Adapters and Adapter Operations""" __all__ = [ 'NO_ADAPTER_NEEDED','DOES_NOT_SUPPORT', 'Adapter', 'minimumAdapter', 'composeAdapters', 'updateWithSimplestAdapter', 'StickyAdapter', 'AdaptationFailure', 'bindAdapter', ] from types import FunctionType,ClassType,MethodType try: PendingDeprecationWarning except NameError: class PendingDeprecationWarning(Warning): 'Base class for warnings about features which will be deprecated in the future.' class AdaptationFailure(NotImplementedError,TypeError): """A suitable implementation/adapter could not be found""" # Fundamental Adapters def NO_ADAPTER_NEEDED(obj, protocol=None): """Assume 'obj' implements 'protocol' directly""" return obj def DOES_NOT_SUPPORT(obj, protocol=None): """Prevent 'obj' from supporting 'protocol'""" return None try: from _speedups import NO_ADAPTER_NEEDED, DOES_NOT_SUPPORT except ImportError: pass class Adapter(object): """Convenient base class for adapters""" def __init__(self, ob): self.subject = ob class StickyAdapter(object): """Adapter that attaches itself to its subject for repeated use""" attachForProtocols = () def __init__(self, ob): self.subject = ob # Declare this instance as a per-instance adaptation for the # given protocols provides = list(self.attachForProtocols) from protocols.api import declareAdapter declareAdapter(lambda s: self, provides, forObjects=[ob]) # Adapter "arithmetic" def minimumAdapter(a1,a2,d1=0,d2=0): """Shortest route to implementation, 'a1' @ depth 'd1', or 'a2' @ 'd2'? Assuming both a1 and a2 are interchangeable adapters (i.e. have the same source and destination protocols), return the one which is preferable; that is, the one with the shortest implication depth, or, if the depths are equal, then the adapter that is composed of the fewest chained adapters. If both are the same, then prefer 'NO_ADAPTER_NEEDED', followed by anything but 'DOES_NOT_SUPPORT', with 'DOES_NOT_SUPPORT' being least preferable. If there is no unambiguous choice, and 'not a1 is a2', TypeError is raised. """ if d1=maxargs: newAdapter = lambda ob: adapter(ob,proto) newAdapter.__adapterCount__ = getattr( adapter,'__adapterCount__',1 ) newAdapter.__unbound_adapter__ = adapter from warnings import warn warn("Adapter %r to protocol %r needs multiple arguments" % (adapter,proto), PendingDeprecationWarning, 6) return newAdapter return adapter def updateWithSimplestAdapter(mapping, key, adapter, depth): """Replace 'mapping[key]' w/'adapter' @ 'depth', return true if changed""" new = adapter old = mapping.get(key) if old is not None: old, oldDepth = old new = minimumAdapter(old,adapter,oldDepth,depth) if old is new and depth>=oldDepth: return False mapping[key] = new, depth return True PKqO4S> > protocols/adapters.pyc; Bc @s,dZddddddddd g Zd klZlZlZyeWn)ej od efd YZnXde e fd YZ e dZ e dZydkl Z lZWnej onXdefdYZdefdYZdddZdZdZdZdS(s%Basic Adapters and Adapter OperationssNO_ADAPTER_NEEDEDsDOES_NOT_SUPPORTsAdaptersminimumAdapterscomposeAdapterssupdateWithSimplestAdapters StickyAdaptersAdaptationFailures bindAdapter(s FunctionTypes ClassTypes MethodTypesPendingDeprecationWarningcBstZdZRS(sNBase class for warnings about features which will be deprecated in the future.(s__name__s __module__s__doc__(((sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pysPendingDeprecationWarnings cBstZdZRS(s4A suitable implementation/adapter could not be found(s__name__s __module__s__doc__(((sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pysAdaptationFailures cCs|SdS(s+Assume 'obj' implements 'protocol' directlyN(sobj(sobjsprotocol((sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pysNO_ADAPTER_NEEDEDscCstSdS(s(Prevent 'obj' from supporting 'protocol'N(sNone(sobjsprotocol((sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pysDOES_NOT_SUPPORTs(sNO_ADAPTER_NEEDEDsDOES_NOT_SUPPORTcBstZdZdZRS(s"Convenient base class for adapterscCs ||_dS(N(sobsselfssubject(sselfsob((sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pys__init__.s(s__name__s __module__s__doc__s__init__(((sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pysAdapter*s cBstZdZfZdZRS(s<Adapter that attaches itself to its subject for repeated usecsE|_ti}dkl}|d|d|gdS(N(sdeclareAdaptercsS(N(sself(ss(sself(sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pysBss forObjects(sobsselfssubjectslistsattachForProtocolssprovidess protocols.apisdeclareAdapter(sselfsobsdeclareAdaptersprovides((sselfsBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pys__init__8s  (s__name__s __module__s__doc__sattachForProtocolss__init__(((sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pys StickyAdapter2s icCs||jo|Sn||jo|Snt|d|t|d|jo|Snt|dd}t|dd}||jo|Sn||jo|Sn|tjp |tjo|Sn|tjp |tjo|Snt d||||dS(spShortest route to implementation, 'a1' @ depth 'd1', or 'a2' @ 'd2'? Assuming both a1 and a2 are interchangeable adapters (i.e. have the same source and destination protocols), return the one which is preferable; that is, the one with the shortest implication depth, or, if the depths are equal, then the adapter that is composed of the fewest chained adapters. If both are the same, then prefer 'NO_ADAPTER_NEEDED', followed by anything but 'DOES_NOT_SUPPORT', with 'DOES_NOT_SUPPORT' being least preferable. If there is no unambiguous choice, and 'not a1 is a2', TypeError is raised. s__unbound_adapter__s__adapterCount__isAmbiguous adapter choiceN( sd1sd2sa1sa2sgetattrsa1ctsa2ctsNO_ADAPTER_NEEDEDsDOES_NOT_SUPPORTs TypeError(sa1sa2sd1sd2sa2ctsa1ct((sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pysminimumAdapterUs$   %  cstjp tjotSntjoSntjoSnd}tddtdd|_|SdS(s:Return the composition of 'baseAdapter'+'extendingAdapter'cs+|}|tj o|SndS(N(s baseAdaptersobsNonesextendingAdapter(sob(sextendingAdapters baseAdapter(sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pys newAdapters  s__adapterCount__iN(s baseAdaptersDOES_NOT_SUPPORTsextendingAdaptersNO_ADAPTER_NEEDEDs newAdaptersgetattrs__adapterCount__(s baseAdapters baseProtocolsextendingAdapters newAdapter((s baseAdaptersextendingAdaptersBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pyscomposeAdapters|s  %c s~d} }d}xt|t o|ot|to&| |itj 7} |i }d}qt|t t fo!| d7} |i }|d8}q|i }|d8}qWt|todkl}||\}} }}|o|t| }nt|| jo\d} tdd| _| _dkl}|dftd | SqvnSd S( sEBackward compatibility: wrap 'adapter' to support old 2-arg signatureii i(s getargspeccs |S(N(sadaptersobsproto(sob(sadaptersproto(sBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pysss__adapterCount__(swarns2Adapter %r to protocol %r needs multiple argumentsiN(smaxargssadaptersfstriess isinstances FunctionTypes MethodTypesim_selfsNonesim_funcs ClassTypestypes__init__s__call__sinspects getargspecsargssvarargssvarkwsdefaultsslens newAdaptersgetattrs__adapterCount__s__unbound_adapter__swarningsswarnsprotosPendingDeprecationWarning( sadaptersprotos getargspecsdefaultssargssfswarnstriessvarkws newAdaptersvarargssmaxargs((sadaptersprotosBbuild/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/adapters.pys bindAdapters8          cCs|}|i|}|tj oG|\}}t||||}||jo ||jot Sqin||f||1: # We could auto-combine, but for now we won't... raise TypeError("Incompatible metatypes",bases) # Just one, return it return candidates[0] def minimalBases(classes): """Reduce a list of base classes to its ordered minimum equivalent""" classes = [c for c in classes if c is not ClassType] candidates = [] for m in classes: for n in classes: if issubclass(n,m) and m is not n: break else: # m has no subclasses in 'classes' if m in candidates: candidates.remove(m) # ensure that we're later in the list candidates.append(m) return candidates from weakref import ref class StrongRef(object): """Like a weakref, but for non-weakrefable objects""" __slots__ = 'referent' def __init__(self,referent): self.referent = referent def __call__(self): return self.referent def __hash__(self): return hash(self.referent) def __eq__(self,other): return self.referent==other def __repr__(self): return 'StrongRef(%r)' % self.referent def mkRef(ob,*args): """Return either a weakref or a StrongRef for 'ob' Note that extra args are forwarded to weakref.ref() if applicable.""" try: return ref(ob,*args) except TypeError: return StrongRef(ob) PKqO4>ڛ88protocols/advice.pyc; Bc @sqdklZdklZdklZlZlZdkZdddddd d d d d ddg Z dZ ydk l Z Wne j o eZ nXee fZ edZedZydkl Z lZlZWne j onXdZdZdedZdZdedZedZdZdklZdefdYZdZdS( (s generators(sinstancemethod(s ClassTypes FunctionTypes InstanceTypeNsaddClassAdvisorsisClassAdvisors metamethods supermetas minimalBasessdetermineMetaclasss getFrameInfosgetMROs classicMROsmkRefs StrongRefsadd_assignment_advisorcstdSdS(sEWrapper for metaclass method that might be confused w/instance methodcsi||iS(N(sfuncs__get__sobs __class__(sob(sfunc(s@build/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/advice.pyssN(sproperty(sfunc((sfuncs@build/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/advice.pys metamethod s(sExtensionClassccsg}|i}|i}|d|xF|o>|}|Vt|}x|iD]}|||qRWq(W|o t Vt VndS(Ni( sstacksinsertspushspopsobsclsslensps __bases__sbsextendedClassics InstanceTypesobject(sobsextendedClassicsbspopspspushsstackscls((s@build/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/advice.pys classicMRO*s      cCsGt|tot||Snt|to |iSn|fSdS(N(s isinstancesobs ClassicTypess classicMROsextendedClassicstypes__mro__(sobsextendedClassic((s@build/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/advice.pysgetMRO9s  (s metamethodsgetMROs classicMROcst}|ijo}|intx\D]B}|jo/gi}D]}||i qi~PqHqHWt d|tdt fdY}|SdS(NsNot sub/supertypes:stheSupercstZdZRS(Ncstx]D]U}||joB||}y |i}Wntj o |Sq\X|SqqWti ||SdS(N( smrosdsnamesdescrs__get__sAttributeErrorsobstypsobjects__getattribute__sself(sselfsnamesdescrsd(stypsobsmro(s@build/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/advice.pys__getattribute__is    (s__name__s __module__s__getattribute__((sobsmrostyp(s@build/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/advice.pystheSupergs(stypesobs starttypes__mro__smrostypsitersclssappends_[1]s__dict__s TypeErrorsobjectstheSuper(stypsobstheSupers_[1]smros starttypescls((stypsobsmros@build/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/advice.pys supermetaUs      *  c Cs!|i}|i}||j}d|j}d|j}|o|}|o|d|dj}|otii |dpt }|o |i |j}| o#d} |o| o d} q nK|o| o d} n2|o| o d} n| o d} nd} | |||fSdS( sReturn (kind,module,locals,globals) for a frame 'kind' is one of "exec", "module", "class", "function call", or "unknown". s __module__s__name__sexecsclasssmodules function callsunknownN(sframesf_localss f_globalss sameNamespaces hasModuleshasNamessameNamessyssmodulessgetsNonesmodules__dict__snamespaceIsModuleskind( sframes sameNamespacesnamespaceIsModules f_globalssmodulessameNames hasModulesf_localsshasNameskind((s@build/bdist.darwin-8.4.0-Power_Macintosh/egg/protocols/advice.pys getFrameInfo|s,      $   ic s|p ti|}t|\}}}}|djot dn|i d|i dt d} | _ | _| |d