ó
    Ï›‘hdu ã                   ó
  • S r SSKrSSKJr  SSKJr  SSKJr  SSKJr  \" 5       r " S S\R                  5      r
 " S	 S
\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S\\\5      r " S S\5      r " S S\5      r " S S\5      r " S S\\\\R                  5      r " S S\\R                  5      r " S S\R                  5      r " S S\R                  5      r " S S \R                  5      r " S! S"\5      r " S# S$\5      r " S% S&\R                  5      r " S' S(\R                  5      r " S) S*5      rS+ rS, r " S- S.5      r " S/ S0\R                  5      rg)1zTest Interface implementation
é    N)ÚCleanUp)ÚMissingSomeAttrs)ÚOptimizationTestMixin)ÚSubclassableMixinc                   ó    • \ rS rSrS rS rSrg)ÚTest_invarianté+   c                 ó€   ^^• SSK Jn  SSK Jm  S m " UU4S jS5      nU R                  [	        X!S 5      ST/05        g )Nr   ©ÚTAGGED_DATA©Ú	invariantc                  ó   • [        5       e©N©ÚNotImplementedError©ÚargsÚkws     ÚgC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\zope/interface/tests/test_interface.pyÚ_checkÚ,Test_invariant.test_w_single.<locals>._check1   ó   € Ü%Ó'Ð'ó    c                   ó*   >• \ rS rSr Y"  Y 5        Srg)Ú)Test_invariant.test_w_single.<locals>.Fooé4   © N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__static_attributes__)r   r   s   €€r   ÚFoor   4   s   ø† Ú‘f×r   r%   Ú
invariants©Úzope.interface.interfacer   r   ÚassertEqualÚgetattr)Úselfr   r%   r   r   s      @@r   Útest_w_singleÚTest_invariant.test_w_single-   s;   ù€ Ý8Ý6ò	(÷	õ 	ð 	×Ñœ °4Ó8Ø&¨¨Ð1õ	3r   c                 óŒ   ^^^• SSK Jn  SSK Jm  S mS m " UUU4S jS5      nU R                  [	        X!S 5      STT/05        g )	Nr   r   r   c                  ó   • [        5       er   r   r   s     r   r   Ú.Test_invariant.test_w_multiple.<locals>._check>   r   r   c                  ó   • [        5       er   r   r   s     r   Ú_another_checkÚ6Test_invariant.test_w_multiple.<locals>._another_checkA   r   r   c                   ó>   >• \ rS rSr Y"  Y5         Y"  Y 5        Srg)Ú+Test_invariant.test_w_multiple.<locals>.FooéD   r   Nr   )r2   r   r   s   €€€r   r%   r5   D   s   ø† Ú‘fÔÚ‘n×%r   r%   r&   r'   )r+   r   r%   r2   r   r   s      @@@r   Útest_w_multipleÚTest_invariant.test_w_multiple:   sD   ú€ Ý8Ý6ò	(ò	(÷	&ö 	&ð 	×Ñœ °4Ó8Ø&¨°Ð(@ÐAõ	Cr   r   N)r    r!   r"   r#   r,   r7   r$   r   r   r   r   r   +   s   † ò3õCr   r   c                   ó&   • \ rS rSrS rS rS rSrg)ÚTest_taggedValueéL   c                 óv   ^• SSK Jn  SSK Jm   " U4S jS5      nU R                  [	        X!S 5      SS/05        g )Nr   r   ©ÚtaggedValuec                   ó,   >• \ rS rSr Y " SS/5        Srg)Ú+Test_taggedValue.test_w_single.<locals>.FooéR   ÚbarÚbazr   Nr   r=   s   €r   r%   r@   R   s   ø† Ú˜ ˜w×'r   r%   rB   rC   ©r(   r   r>   r)   r*   ©r+   r   r%   r>   s      @r   r,   ÚTest_taggedValue.test_w_singleN   s6   ø€ Ý8Ý8÷	(ô 	(ð 	×Ñœ °4Ó8Ø % Ð)õ	+r   c                 óx   ^• SSK Jn  SSK Jm   " U4S jS5      nU R                  [	        X!S 5      S/SS.5        g )	Nr   r   r=   c                   ó@   >• \ rS rSr Y " SS/5         Y " SS5        Srg)Ú-Test_taggedValue.test_w_multiple.<locals>.Fooé\   rB   rC   ÚquxÚspamr   Nr   r=   s   €r   r%   rI   \   s   ø† Ú˜ ˜wÔ'Ú˜˜v×&r   r%   rC   rL   ©rB   rK   rD   rE   s      @r   r7   Ú Test_taggedValue.test_w_multipleX   s6   ø€ Ý8Ý8÷	'ô 	'ð 	×Ñœ °4Ó8Ø"' °Ñ8õ	:r   c                 óv   ^• SSK Jn  SSK Jm   " U4S jS5      nU R                  [	        X!S 5      SSS.5        g )	Nr   r   r=   c                   óT   >• \ rS rSr Y " SS/5         Y " SS5         Y " SS5        Srg)	Ú9Test_taggedValue.test_w_multiple_overwriting.<locals>.Fooég   rB   rC   rK   rL   Úfrobr   Nr   r=   s   €r   r%   rQ   g   s#   ø† Ú˜ ˜wÔ'Ú˜˜vÔ&Ú˜˜v×&r   r%   rS   rL   rM   rD   rE   s      @r   Útest_w_multiple_overwritingÚ,Test_taggedValue.test_w_multiple_overwritingc   s4   ø€ Ý8Ý8÷	'ô 	'ð
 	×Ñœ °4Ó8Ø!'°Ñ7õ	9r   r   N)r    r!   r"   r#   r,   r7   rT   r$   r   r   r   r:   r:   L   s   † ò+ò	:õ
9r   r:   c                   ój   • \ rS rSrSrS rSS jrS rS rS r	S	 r
S
 rS rS rS rS rS rS rSrg)ÚElementTestsép   Ú	AnElementc                 ó   • SSK Jn  U$ )Nr   )ÚElement)r(   r[   )r+   r[   s     r   Ú_getTargetClassÚElementTests._getTargetClasst   s
   € Ý4Øˆr   Nc                 óL   • Uc  U R                   nU R                  5       " U5      $ r   )ÚDEFAULT_NAMEr\   )r+   Únames     r   Ú_makeOneÚElementTests._makeOnex   s&   € Ø‰<Ø×$Ñ$ˆDØ×#Ñ#Ô% dÓ+Ð+r   c                 óŽ  • U R                  5       nU R                  UR                  U R                  5        U R                  UR	                  5       U R                  5        U R                  UR
                  S5        U R                  UR                  5       S5        U R                  [        UR                  5       5      / 5        g )NÚ )	ra   r)   r    r_   ÚgetNameÚ__doc__ÚgetDocÚlistÚgetTaggedValueTags©r+   Úelements     r   Útest_ctor_defaultsÚElementTests.test_ctor_defaults}   s�   € Ø—-‘-“/ˆØ×Ñ˜×)Ñ)¨4×+<Ñ+<Ô=Ø×Ñ˜Ÿ™Ó*¨D×,=Ñ,=Ô>Ø×Ñ˜Ÿ™¨"Ô-Ø×Ñ˜Ÿ™Ó)¨2Ô.Ø×Ñœ˜g×8Ñ8Ó:Ó;¸RÕ@r   c                 ó–   • U R                  S5      nU R                  UR                  S 5        U R                  UR                  S5        g )Nz
An Element)ra   r)   r    rf   rj   s     r   Útest_ctor_no_doc_space_in_nameÚ+ElementTests.test_ctor_no_doc_space_in_name…   s:   € Ø—-‘- Ó-ˆØ×Ñ˜×)Ñ)¨4Ô0Ø×Ñ˜Ÿ™¨,Õ7r   c                 óf   • U R                  5       nU R                  [        UR                  S5        g ©NÚnonesuch)ra   ÚassertRaisesÚKeyErrorÚgetTaggedValuerj   s     r   Útest_getTaggedValue_missÚ%ElementTests.test_getTaggedValue_missŠ   s%   € Ø—-‘-“/ˆØ×Ñœ( G×$:Ñ$:¸JÕGr   c                 óî   • U R                  5       nU R                  / [        UR                  5       5      5        UR	                  SS5        U R                  S/[        UR                  5       5      5        g ©NÚfoorB   )ra   r)   rh   ÚgetDirectTaggedValueTagsÚsetTaggedValuerj   s     r   Útest_getDirectTaggedValueTagsÚ*ElementTests.test_getDirectTaggedValueTagsŽ   s[   € Ø—-‘-“/ˆØ×Ñ˜œT '×"BÑ"BÓ"DÓEÔFà×Ñ˜u eÔ,Ø×Ñ˜%˜¤$ w×'GÑ'GÓ'IÓ"JÕKr   c                 óf   • U R                  5       nU R                  UR                  S5      S 5        g rr   ©ra   r)   ÚqueryTaggedValuerj   s     r   Útest_queryTaggedValue_missÚ'ElementTests.test_queryTaggedValue_miss•   s(   € Ø—-‘-“/ˆØ×Ñ˜×1Ñ1°*Ó=¸tÕDr   c                 óh   • U R                  5       nU R                  UR                  SS5      S5        g ©Nrs   rB   r�   rj   s     r   Ú$test_queryTaggedValue_miss_w_defaultÚ1ElementTests.test_queryTaggedValue_miss_w_default™   s*   € Ø—-‘-“/ˆØ×Ñ˜×1Ñ1°*¸eÓDÀeÕLr   c                 óf   • U R                  5       nU R                  [        UR                  S5        g rr   )ra   rt   ru   ÚgetDirectTaggedValuerj   s     r   Útest_getDirectTaggedValue_missÚ+ElementTests.test_getDirectTaggedValue_miss�   s%   € Ø—-‘-“/ˆØ×Ñœ( G×$@Ñ$@À*ÕMr   c                 óf   • U R                  5       nU R                  UR                  S5      S 5        g rr   ©ra   r)   ÚqueryDirectTaggedValuerj   s     r   Ú test_queryDirectTaggedValue_missÚ-ElementTests.test_queryDirectTaggedValue_miss¡   s(   € Ø—-‘-“/ˆØ×Ñ˜×7Ñ7¸
ÓCÀTÕJr   c                 óh   • U R                  5       nU R                  UR                  SS5      S5        g r†   rŽ   rj   s     r   Ú*test_queryDirectTaggedValue_miss_w_defaultÚ7ElementTests.test_queryDirectTaggedValue_miss_w_default¥   s-   € Ø—-‘-“/ˆØ×ÑØ×*Ñ*¨:°uÓ=¸uõ	
r   c                 ó   • U R                  5       nUR                  SS5        U R                  [        UR	                  5       5      S/5        U R                  UR                  S5      S5        U R                  UR                  S5      S5        g rz   )ra   r}   r)   rh   ri   rv   r‚   rj   s     r   Útest_setTaggedValueÚ ElementTests.test_setTaggedValue«   ss   € Ø—-‘-“/ˆØ×Ñ˜u eÔ,Ø×Ñœ˜g×8Ñ8Ó:Ó;¸e¸WÔEØ×Ñ˜×/Ñ/°Ó6¸Ô>Ø×Ñ˜×1Ñ1°%Ó8¸%Õ@r   c                 óL   • SSK Jn  SSKJn  U R	                  5       nU" X5        g )Nr   )ÚIElement©ÚverifyObject)Úzope.interface.interfacesr™   Úzope.interface.verifyr›   ra   )r+   r™   r›   rk   s       r   Útest_verifiesÚElementTests.test_verifies²   s   € Ý6Ý6à—-‘-“/ˆÙ�XÕ'r   r   r   )r    r!   r"   r#   r_   r\   ra   rl   ro   rw   r~   rƒ   r‡   r‹   r�   r“   r–   rž   r$   r   r   r   rW   rW   p   sP   † à€Lòô,ò
Aò8ò
HòLòEòMòNòKò
òAõ(r   rW   c                   ó0   • \ rS rSrS r\rS rS rS rSr	g)ÚGenericSpecificationBaseTestséº   c                 ó   • SSK Jn  U$ )Nr   )ÚSpecificationBasePy)r(   r¤   )r+   r¤   s     r   Ú_getFallbackClassÚ/GenericSpecificationBaseTests._getFallbackClass¼   s   € Ý@Ø"Ð"r   c                 ó,   • U R                  5       " 5       $ r   ©r\   ©r+   s    r   ra   Ú&GenericSpecificationBaseTests._makeOneÂ   s   € Ø×#Ñ#Ô%Ó'Ð'r   c                 óà   ^• SSK Jn  SSKJm  U R	                  5       nU4S jn[        XS9   U R                  UR                  [        5       5      5        S S S 5        g ! , (       d  f       g = f)Nr   ©Ú	interface©Ú_emptyc                 ó   >• T$ r   r   ©Úobjr¯   s    €r   Ú_providedByÚGGenericSpecificationBaseTests.test_providedBy_miss.<locals>._providedByÊ   ó   ø€ ØˆMr   ©Ú
providedBy)	Úzope.interfacer­   Úzope.interface.declarationsr¯   ra   Ú_MonkeyÚassertFalser·   Úobject)r+   r­   Úsbr³   r¯   s       @r   Útest_providedBy_missÚ2GenericSpecificationBaseTests.test_providedBy_missÅ   sH   ø€ Ý,Ý6Ø�]‰]‹_ˆõ	ô �YÓ7Ø×Ñ˜RŸ]™]¬6«8Ó4Ô5÷ 8×7Ö7úó   ­)AÁ
A-c                 óà   ^• SSK Jn  SSKJm  U R	                  5       nU4S jn[        XS9   U R                  UR                  [        5       5      5        S S S 5        g ! , (       d  f       g = f)Nr   r¬   r®   c                 ó   >• T$ r   r   r±   s    €r   Ú_implementedByÚMGenericSpecificationBaseTests.test_implementedBy_miss.<locals>._implementedByÕ   rµ   r   ©ÚimplementedBy)	r¸   r­   r¹   r¯   ra   rº   r»   rÆ   r¼   )r+   r­   r½   rÃ   r¯   s       @r   Útest_implementedBy_missÚ5GenericSpecificationBaseTests.test_implementedBy_missÐ   sJ   ø€ Ý,Ý6Ø�]‰]‹_ˆõ	ô �YÓ=Ø×Ñ˜R×-Ñ-¬f«hÓ7Ô8÷ >×=Ö=úrÀ   r   N)
r    r!   r"   r#   r¥   r\   ra   r¾   rÇ   r$   r   r   r   r¡   r¡   º   s   † ò#ð (€Oò(ò	6õ	9r   r¡   c                   ó   • \ rS rSrS rSrg)ÚSpecificationBaseTestséÜ   c                 ó   • SSK Jn  U$ )Nr   )ÚSpecificationBase)r(   rÍ   )r+   rÍ   s     r   r\   Ú&SpecificationBaseTests._getTargetClassã   s   € Ý>Ø Ð r   r   N©r    r!   r"   r#   r\   r$   r   r   r   rÊ   rÊ   Ü   s   † õ!r   rÊ   c                   ó8   • \ rS rSrS rS rS rS rS rS r	Sr
g	)
ÚSpecificationBasePyTestséè   c                 ó‚   • U R                  5       n0 Ul        U R                  UR                  [	        5       5      5        g r   ©ra   Ú_impliedr»   ÚisOrExtendsr¼   ©r+   r½   s     r   Útest___call___missÚ+SpecificationBasePyTests.test___call___missë   ó-   € Ø�]‰]‹_ˆØˆŒØ×Ñ˜Ÿ™¬«Ó1Õ2r   c                 óx   • U R                  5       n[        5       nU0 0Ul        U R                  U" U5      5        g r   ©ra   r¼   rÕ   Ú
assertTrue©r+   r½   Útestings      r   Útest___call___hitÚ*SpecificationBasePyTests.test___call___hitð   ó/   € Ø�]‰]‹_ˆÜ“(ˆØ �mˆŒØ�‰™˜7›Õ$r   c                 ó‚   • U R                  5       n0 Ul        U R                  UR                  [	        5       5      5        g r   rÔ   r×   s     r   Útest_isOrExtends_missÚ.SpecificationBasePyTests.test_isOrExtends_missö   rÚ   r   c                 óx   • U R                  5       n[        5       nU0 0Ul        U R                  U" U5      5        g r   rÜ   rÞ   s      r   Útest_isOrExtends_hitÚ-SpecificationBasePyTests.test_isOrExtends_hitû   râ   r   c                 óð   ^^• SSK Jn  U R                  5       m " U4S jS5      mU4S jn[        XS9   U R	                  TR                  [        5       5      5        S S S 5        g ! , (       d  f       g = f)Nr   r¬   c                   ó    >• \ rS rSr Y 0 0rSrg)Ú>SpecificationBasePyTests.test_implementedBy_hit.<locals>._Decli  r   N©r    r!   r"   r#   rÕ   r$   ©r½   s   €r   Ú_Declrë     ó   ø† Ù˜B�x‹Hr   rî   c                 ó   >• T" 5       $ r   r   ©r²   rî   s    €r   rÃ   ÚGSpecificationBasePyTests.test_implementedBy_hit.<locals>._implementedBy  ó
   ø€ Ù“7ˆNr   rÅ   )r¸   r­   ra   rº   rÝ   rÆ   r¼   )r+   r­   rÃ   rî   r½   s      @@r   Útest_implementedBy_hitÚ/SpecificationBasePyTests.test_implementedBy_hit  sO   ù€ Ý,Ø�]‰]‹_ˆ÷	 ô 	 õ	ô �YÓ=Ø�O‰O˜B×,Ñ,¬V«XÓ6Ô7÷ >×=Ö=úó   µ)A'Á'
A5c                 óð   ^^• SSK Jn  U R                  5       m " U4S jS5      mU4S jn[        XS9   U R	                  TR                  [        5       5      5        S S S 5        g ! , (       d  f       g = f)Nr   r¬   c                   ó    >• \ rS rSr Y 0 0rSrg)Ú;SpecificationBasePyTests.test_providedBy_hit.<locals>._Decli  r   Nrì   rí   s   €r   rî   rù     rï   r   rî   c                 ó   >• T" 5       $ r   r   rñ   s    €r   r³   ÚASpecificationBasePyTests.test_providedBy_hit.<locals>._providedBy  ró   r   r¶   )r¸   r­   ra   rº   rÝ   r·   r¼   )r+   r­   r³   rî   r½   s      @@r   Útest_providedBy_hitÚ,SpecificationBasePyTests.test_providedBy_hit  sM   ù€ Ý,Ø�]‰]‹_ˆ÷	 ô 	 õ	ô �YÓ7Ø�O‰O˜BŸM™M¬&«(Ó3Ô4÷ 8×7Ö7úrö   r   N)r    r!   r"   r#   rØ   rà   rä   rç   rô   rü   r$   r   r   r   rÑ   rÑ   è   s    † ò3ò
%ò3ò
%ò8õ5r   rÑ   c                   ó8   • \ rS rSrS rS rS rS rS rS r	Sr
g	)
Ú!NameAndModuleComparisonTestsMixini  c                 ó&   • U R                  SS5      $ )NÚaÚb)ra   r©   s    r   Ú_makeOneToCompareÚ3NameAndModuleComparisonTestsMixin._makeOneToCompare  s   € Ø�}‰}˜S #Ó&Ð&r   c                 óö  ^• SS K nU R                  5       n[        X!5      n[        USU-  5      n " U4S jS5      m " S ST5      n " S ST5      nU R                  U" 5       R                  S	5        U R                  U" 5       R
                  S	5        U R                  [        5         [        U" 5       S
5        S S S 5        U R                  [        5         [        U" 5       S5        S S S 5        Xg4 H$  nU R                  U" U" 5       5      [        5        M&      " S ST5      n	U R                  U" X9" 5       5      5        U R                  U" U	" 5       5      [        5         " S S5      n
U R                  U" U
" 5       5      [        5        U R                  [        5         U" X:" 5       5        S S S 5         " S S[        5      nUTl        U R                  U5         [        U" 5       S
5        S S S 5        U R                  U5         [        U" 5       S5        S S S 5        Xg4 HQ  nU R                  U5         U" X8" 5       5        S S S 5        U R                  U5         U" U" 5       5        S S S 5        MS     g ! , (       d  f       GNÌ= f! , (       d  f       GN¯= f! , (       d  f       N÷= f! , (       d  f       NÇ= f! , (       d  f       N­= f! , (       d  f       N‘= f! , (       d  f       MÍ  = f)Nr   z__%s__c                   ó&   >• \ rS rSr\rU 4S jrSrg)ÚaNameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.RaisesErrorOnMissingi-  c                 ót   >•  [         R                  X5      $ ! [         a    TR                  nU" U5      ef = fr   )r¼   Ú__getattribute__ÚAttributeErrorÚExc)r+   r`   ÚexcÚRaisesErrorOnMissings      €r   r	  ÚrNameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.RaisesErrorOnMissing.__getattribute__0  s<   ø€ ð$Ü!×2Ñ2°4Ó>Ð>øÜ%ó $Ø.×2Ñ2�CÙ˜d›)�Oð$ús   ƒ ˜7r   N)r    r!   r"   r#   r
  r  r	  r$   )r  s   €r   r  r  -  s   ø† Ø ˆC÷$ð $r   r  c                   ó*   • \ rS rSrS r\S 5       rSrg)Ú`NameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.RaisesErrorOnModulei7  c                 ó   • SU l         g ©Nr{   ©r    r©   s    r   Ú__init__ÚiNameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.RaisesErrorOnModule.__init__8  s	   € Ø %�•r   c                 ó   • [         er   )r
  r©   s    r   r!   ÚkNameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.RaisesErrorOnModule.__module__;  s   € ä$Ð$r   r  N)r    r!   r"   r#   r  Úpropertyr$   r   r   r   ÚRaisesErrorOnModuler  7  s   † ò&ð ñ%ó ó%r   r  c                   ó   • \ rS rSrS rSrg)Ú^NameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.RaisesErrorOnNamei?  c                 ó   • SU l         g r  ©r!   r©   s    r   r  ÚgNameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.RaisesErrorOnName.__init__@  s	   € Ø"'�•r   r  N©r    r!   r"   r#   r  r$   r   r   r   ÚRaisesErrorOnNamer  ?  s   † õ(r   r   r{   r!   r    c                   ó.   • \ rS rSrS r\r\r\r\r\r	Sr
g)Ú`NameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.AllowsAnyComparisoniP  c                 ó   • g©NTr   )r+   Úothers     r   Ú__eq__ÚgNameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.AllowsAnyComparison.__eq__Q  ó   € Ør   r   N©r    r!   r"   r#   r&  Ú__lt__Ú__le__Ú__gt__Ú__ge__Ú__ne__r$   r   r   r   ÚAllowsAnyComparisonr"  P  s    † òàˆFØˆFØˆFØˆFØ‹Fr   r/  c                   ó,   • \ rS rSrSr\r\r\r\r\r	Sr
g)Ú_NameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.AllowsNoComparisoni]  Nr   r)  r   r   r   ÚAllowsNoComparisonr1  ]  s    † ØˆFØˆFØˆFØˆFØˆFØ‹Fr   r2  c                   ó   • \ rS rSrSrg)ÚXNameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison.<locals>.MyExceptionij  r   Nr   r   r   r   ÚMyExceptionr4  j  ó   † Úr   r5  )Úoperatorr  r*   r)   r    r!   rt   r
  ÚassertIsÚNotImplementedrÝ   Ú	TypeErrorÚ	Exceptionr  )r+   r`   r7  ÚibÚopÚmethr  r   Úclsr/  r2  r5  r  s               @r   Ú!__check_NotImplemented_comparisonÚCNameAndModuleComparisonTestsMixin.__check_NotImplemented_comparison!  sO  ø€ ó 	Ø×#Ñ#Ó%ˆÜ�XÓ$ˆÜ�r˜8 d™?Ó+ˆ÷
	$ô 	$ô	%Ð"6ô 	%ô	(Ð 4ô 	(ð 	×ÑÑ,Ó.×7Ñ7¸Ô?Ø×ÑÑ*Ó,×7Ñ7¸Ô?Ø×Ñœ~Õ.ÜÑ'Ó)¨<Ô8÷ /à×Ñœ~Õ.ÜÑ%Ó'¨Ô4÷ /ð 'Ó9ˆCØ�M‰M™$™s›u›+¤~Ö6ñ :ô	Ð"6ô 	ð 	�‰™˜2Ð2Ó4Ó5Ô6Ø�‰‘dÑ.Ó0Ó1´>ÔB÷	ñ 	ð 	�‰‘dÑ-Ó/Ó0´.ÔAØ×ÑœyÕ)ÙˆrÐ%Ó'Ô(÷ *ô	œ)ô 	ð $/ÐÔ à×Ñ˜{Õ+ÜÑ'Ó)¨<Ô8÷ ,à×Ñ˜{Õ+ÜÑ%Ó'¨Ô4÷ ,ð 'Ó9ˆCØ×"Ñ" ;Õ/Ù�2�s“u”÷ 0à×"Ñ" ;Õ/Ù‘S“U”÷ 0Ñ/ò :÷_ /Ö.úç.Ö.ú÷> *Õ)ú÷ ,Õ+úç+Õ+ú÷ 0Õ/úç/Ö/úsT   Â*JÃJÆ&J%Ç#J6ÈKÈ?KÉ&K)Ê
JÊ
J"Ê%
J3Ê6
KË
KË
K&	Ë)
K8	c                 ó&   • U R                  S5        g )NÚlt©ÚC_NameAndModuleComparisonTestsMixin__check_NotImplemented_comparisonr©   s    r   Útest__lt__NotImplementedÚ:NameAndModuleComparisonTestsMixin.test__lt__NotImplementedz  ó   € Ø×.Ñ.¨tÕ4r   c                 ó&   • U R                  S5        g )NÚlerD  r©   s    r   Útest__le__NotImplementedÚ:NameAndModuleComparisonTestsMixin.test__le__NotImplemented}  rH  r   c                 ó&   • U R                  S5        g )NÚgtrD  r©   s    r   Útest__gt__NotImplementedÚ:NameAndModuleComparisonTestsMixin.test__gt__NotImplemented€  rH  r   c                 ó&   • U R                  S5        g )NÚgerD  r©   s    r   Útest__ge__NotImplementedÚ:NameAndModuleComparisonTestsMixin.test__ge__NotImplementedƒ  rH  r   r   N)r    r!   r"   r#   r  rE  rF  rK  rO  rS  r$   r   r   r   rÿ   rÿ     s"   † ò'òWòr5ò5ò5õ5r   rÿ   c                   óB   • \ rS rSrS rS rSS jrS rS rS r	S	 r
S
rg)ÚInterfaceBaseTestsMixini‡  c                 ó   • [         er   r   r©   s    r   r\   Ú'InterfaceBaseTestsMixin._getTargetClassŠ  s   € Ü!Ð!r   c                 ó   • SSK Jn  U$ )Nr   )ÚInterfaceBasePy)r(   rZ  )r+   rZ  s     r   r¥   Ú)InterfaceBaseTestsMixin._getFallbackClass�  s   € å<ØÐr   Nc                 óL   ^•  " U4S jSU R                  5       5      nU" X#5      $ )Nc                   ó(   >• \ rS rSrS rU 4S jrSrg)Ú,InterfaceBaseTestsMixin._makeOne.<locals>.IBi”  c                 ó   • U" U 5      $ r   r   )r+   Úconforms     r   Ú_call_conformÚ:InterfaceBaseTestsMixin._makeOne.<locals>.IB._call_conform•  s   € Ù˜t“}Ð$r   c                 ó   >• T$ r   r   )r+   r²   Úobject_should_provides     €r   r·   Ú7InterfaceBaseTestsMixin._makeOne.<locals>.IB.providedBy˜  s	   ø€ Ø,Ð,r   r   N)r    r!   r"   r#   ra  r·   r$   )rd  s   €r   ÚIBr^  ”  s   ø† ò%÷-ð -r   rf  r¨   )r+   rd  r`   Úmodulerf  s    `   r   ra   Ú InterfaceBaseTestsMixin._makeOne’  s%   ø€ ÷	-�×%Ñ%Ó'ô 	-ñ �$ÓÐr   c                 ó�   ^• U R                  S5      n[        5       m " U4S jS5      nU R                  U" U" 5       5      T5        g )NFc                   ó"   >• \ rS rSrU 4S jrSrg)ÚUInterfaceBaseTestsMixin.test___call___w___conform___returning_value.<locals>._Adaptedi¡  c                 ó   >• T$ r   r   )r+   ÚifaceÚ	conformeds     €r   Ú__conform__ÚaInterfaceBaseTestsMixin.test___call___w___conform___returning_value.<locals>._Adapted.__conform__¢  s	   ø€ Ø Ð r   r   N©r    r!   r"   r#   ro  r$   )rn  s   €r   Ú_Adaptedrk  ¡  s   ø† ÷!ð !r   rr  )ra   r¼   r8  )r+   r<  rr  rn  s      @r   Ú+test___call___w___conform___returning_valueÚCInterfaceBaseTestsMixin.test___call___w___conform___returning_value�  s8   ø€ Ø�]‰]˜5Ó!ˆÜ“Hˆ	÷	!ô 	!ð 	�‰‘b™›“n iÕ0r   c                 ó    • U R                  S5      nXR                  5       4n[        5       n[        5       nU R                  U" X45      U5        g )NF)ra   r\   r¼   r8  )r+   r<  Ú__traceback_info__ÚadaptedÚ	alternates        r   Ú7test___call___wo___conform___ob_no_provides_w_alternateÚOInterfaceBaseTestsMixin.test___call___wo___conform___ob_no_provides_w_alternate§  sC   € Ø�]‰]˜5Ó!ˆØ×!5Ñ!5Ó!7Ð7ÐÜ“(ˆÜ“Hˆ	Ø�‰‘b˜Ó,¨iÕ8r   c                 óî   • U R                  S5      nU R                  [        5       nU" [        5       5        S S S 5        U R	                  S[        WR                  5      5        g ! , (       d  f       N4= f)NFzCould not adapt)ra   rt   r:  r¼   ÚassertInÚstrÚ	exception)r+   r<  r  s      r   Ú7test___call___w___conform___ob_no_provides_wo_alternateÚOInterfaceBaseTestsMixin.test___call___w___conform___ob_no_provides_wo_alternate®  sQ   € Ø�]‰]˜5Ó!ˆØ×ÑœyÔ)¨SÙŒv‹xŒL÷ *ð 	�‰Ð'¬¨S¯]©]Ó);Õ<÷ *Õ)ús   §A&Á&
A4c                 óJ   • [         R                  " X R                  5       SS9  g )Nro  )Úexpected_missing)r   Útest_raisesra   r©   s    r   Ú6test___call___w_no_conform_catches_only_AttributeErrorÚNInterfaceBaseTestsMixin.test___call___w_no_conform_catches_only_AttributeErrorµ  s   € Ü×$Ò$Ø—-‘-“/°Mó	
r   r   )FNN)r    r!   r"   r#   r\   r¥   ra   rs  ry  r  r„  r$   r   r   r   rV  rV  ‡  s%   † ò"òô
	 ò1ò9ò=õ
r   rV  c                   ó   • \ rS rSrS rSrg)ÚInterfaceBaseTestsi»  c                 ó   • SSK Jn  U$ )Nr   )ÚInterfaceBase)r(   r‰  )r+   r‰  s     r   r\   Ú"InterfaceBaseTests._getTargetClassÂ  ó   € Ý:ØÐr   r   NrÏ   r   r   r   r‡  r‡  »  s   † õr   r‡  c                   ó>   • \ rS rSr\R
                  rS rS rS r	Sr
g)ÚInterfaceBasePyTestsiÇ  c                 óx   • U R                  S5      n " S S5      nU" 5       nU R                  U" U5      U5        g )NTc                   ó   • \ rS rSrS rSrg)ÚSInterfaceBasePyTests.test___call___w___conform___miss_ob_provides.<locals>._AdaptediÏ  c                 ó   • g r   r   ©r+   rm  s     r   ro  Ú_InterfaceBasePyTests.test___call___w___conform___miss_ob_provides.<locals>._Adapted.__conform__Ð  r(  r   r   Nrq  r   r   r   rr  r�  Ï  ó   † õr   rr  )ra   r8  )r+   r<  rr  rw  s       r   Ú,test___call___w___conform___miss_ob_providesÚAInterfaceBasePyTests.test___call___w___conform___miss_ob_providesÌ  s5   € Ø�]‰]˜4Ó ˆ÷	ñ 	ñ “*ˆØ�‰‘b˜“k 7Õ+r   c                 ó|   • U R                  S5      n[        5       nU R                  UR                  U5      U5        g r$  )ra   r¼   r8  Ú	__adapt__)r+   r<  rw  s      r   Útest___adapt___ob_providesÚ/InterfaceBasePyTests.test___adapt___ob_providesÖ  s.   € Ø�]‰]˜4Ó ˆÜ“(ˆØ�‰�b—l‘l 7Ó+¨WÕ5r   c                 ó  ^• SSK Jn  U R                  S5      n[        5       n/ mU4S jnS n[	        XU/S9   U R                  UR                  U5      U5        U R                  TX#4/5        S S S 5        g ! , (       d  f       g = f)Nr   r¬   Fc                 ó*   >• TR                  X45        g r   ©Úappend)rm  r²   Ú_misseds     €r   Ú
_hook_missÚQInterfaceBasePyTests.test___adapt___ob_no_provides_uses_hooks.<locals>._hook_missá  s   ø€ Ø�N‰N˜E˜<Õ(r   c                 ó   • U$ r   r   ©rm  r²   s     r   Ú	_hook_hitÚPInterfaceBasePyTests.test___adapt___ob_no_provides_uses_hooks.<locals>._hook_hitä  s   € ØˆJr   ©Úadapter_hooks)r¸   r­   ra   r¼   rº   r8  r˜  r)   )r+   r­   r<  rw  r   r¤  rŸ  s         @r   Ú(test___adapt___ob_no_provides_uses_hooksÚ=InterfaceBasePyTests.test___adapt___ob_no_provides_uses_hooksÛ  sq   ø€ Ý,Ø�]‰]˜5Ó!ˆÜ“(ˆØˆõ	)ò	ô �Y¸9Ð.EÓFØ�M‰M˜"Ÿ,™, wÓ/°Ô9Ø×Ñ˜W¨ } oÔ6÷ G×FÖFús   ¹6A8Á8
Br   N)r    r!   r"   r#   rV  r¥   r\   r•  r™  r¨  r$   r   r   r   r�  r�  Ç  s   † ð .×?Ñ?€Oò,ò6õ
7r   r�  c                   óz   • \ rS rSrS r\4S jrS rS rS r	S r
S rS	 rS
 rS rS rS rS rS rS rS rSrg)ÚSpecificationTestsiì  c                 ó   • SSK Jn  U$ )Nr   )ÚSpecification)r(   r­  )r+   r­  s     r   r\   Ú"SpecificationTests._getTargetClassî  r‹  r   c                 ój   • U[         L a  U R                  5       " 5       $ U R                  5       " U5      $ r   )Ú_markerr\   )r+   Úbasess     r   ra   ÚSpecificationTests._makeOneò  s0   € Ø”GÒØ×'Ñ'Ô)Ó+Ð+Ø×#Ñ#Ô% eÓ,Ð,r   c                 óh  • SSK Jn  U R                  5       nU R                  UR                  S5        U R                  [        UR                  5      S5        U R                  X"R                  5        U R                  XR                  5        U R                  [        UR                  5      S5        g )Nr   ©Ú	Interfacer   é   )	r(   rµ  ra   r)   Ú	__bases__ÚlenrÕ   r|  Ú
dependents)r+   rµ  Úspecs      r   Ú	test_ctorÚSpecificationTests.test_ctor÷  sv   € Ý6Ø�}‰}‹ˆØ×Ñ˜Ÿ™¨Ô,Ø×Ñœ˜TŸ]™]Ó+¨QÔ/Ø�‰�dŸM™MÔ*Ø�‰�i§¡Ô/Ø×Ñœ˜TŸ_™_Ó-¨qÕ1r   c                 óâ   • U R                  5       n[        5       nUR                  U5        U R                  [	        UR
                  5      S5        U R                  UR
                  U   S5        g ©Né   )ra   ÚDummyDependentÚ	subscriber)   r¸  r¹  ©r+   rº  Údeps      r   Útest_subscribe_first_timeÚ,SpecificationTests.test_subscribe_first_time   sS   € Ø�}‰}‹ˆÜÓˆØ�‰�sÔØ×Ñœ˜TŸ_™_Ó-¨qÔ1Ø×Ñ˜Ÿ™¨Ñ-¨qÕ1r   c                 óº   • U R                  5       n[        5       nUR                  U5        UR                  U5        U R                  UR                  U   S5        g )Nr¶  )ra   rÀ  rÁ  r)   r¹  rÂ  s      r   Útest_subscribe_againÚ'SpecificationTests.test_subscribe_again  sF   € Ø�}‰}‹ˆÜÓˆØ�‰�sÔØ�‰�sÔØ×Ñ˜Ÿ™¨Ñ-¨qÕ1r   c                 óz   • U R                  5       n[        5       nU R                  [        UR                  U5        g r   )ra   rÀ  rt   ru   ÚunsubscriberÂ  s      r   Útest_unsubscribe_missÚ(SpecificationTests.test_unsubscribe_miss  s-   € Ø�}‰}‹ˆÜÓˆØ×Ñœ( D×$4Ñ$4°cÕ:r   c                 ó4  • U R                  5       n[        5       nUR                  U5        UR                  U5        UR                  U5        U R	                  UR
                  U   S5        UR                  U5        U R                  X!R
                  5        g r¾  )ra   rÀ  rÁ  rÊ  r)   r¹  ÚassertNotInrÂ  s      r   Útest_unsubscribeÚ#SpecificationTests.test_unsubscribe  st   € Ø�}‰}‹ˆÜÓˆØ�‰�sÔØ�‰�sÔØ×Ñ˜ÔØ×Ñ˜Ÿ™¨Ñ-¨qÔ1Ø×Ñ˜ÔØ×Ñ˜Ÿo™oÕ.r   c                 ó¾  • SSK Jn  U R                  5       n[        5       nUR	                  U5         " S SU5      n " S SU5      nU4Ul        U R                  UR                  U/5        U R                  UR                  U   S5        U4Ul        U R                  UR                  R                  U5      S 5        U R                  UR                  U   S5        g )Nr   r´  c                   ó   • \ rS rSrSrg)ÚYSpecificationTests.test___setBases_subscribes_bases_and_notifies_dependents.<locals>.IFooi#  r   Nr   r   r   r   ÚIFoorÓ  #  r6  r   rÔ  c                   ó   • \ rS rSrSrg)ÚYSpecificationTests.test___setBases_subscribes_bases_and_notifies_dependents.<locals>.IBari&  r   Nr   r   r   r   ÚIBarrÖ  &  r6  r   r×  r¿  )
r(   rµ  ra   rÀ  rÁ  r·  r)   Ú_changedr¹  Úget)r+   rµ  rº  rÃ  rÔ  r×  s         r   Ú8test___setBases_subscribes_bases_and_notifies_dependentsÚKSpecificationTests.test___setBases_subscribes_bases_and_notifies_dependents  s·   € Ý6Ø�}‰}‹ˆÜÓˆØ�‰�sÔô	�9ô 	ô	�9ô 	ð ˜ˆŒØ×Ñ˜Ÿ™¨ vÔ.Ø×Ñ˜Ÿ™¨Ñ.°Ô2Ø˜ˆŒØ×Ñ˜Ÿ™×,Ñ,¨TÓ2°DÔ9Ø×Ñ˜Ÿ™¨Ñ.°Õ2r   c                 ó   • SSK Jn   " S SU5      nU R                  5       nSUl        SUR                  U'   UR                  U5        U R                  UR                  5        U R                  X#R                  5        g )Nr   r´  c                   ó   • \ rS rSrSrg)ÚJSpecificationTests.test_changed_clears_volatiles_and_implied.<locals>.IFooi3  r   Nr   r   r   r   rÔ  rÞ  3  r6  r   rÔ  r%   r   )r(   rµ  ra   Ú_v_attrsrÕ   ÚchangedÚassertIsNonerÎ  ©r+   rµ  rÔ  rº  s       r   Ú)test_changed_clears_volatiles_and_impliedÚ<SpecificationTests.test_changed_clears_volatiles_and_implied0  sc   € Ý6ô	�9ô 	ð �}‰}‹ˆØˆŒØ ˆ�‰�dÑØ�‰�TÔØ×Ñ˜$Ÿ-™-Ô(Ø×Ñ˜Ÿ}™}Õ-r   c                 óž   • SSK Jn   " S SU5      nU R                  X"/5      nU R                  [	        UR                  5       5      U/5        g )Nr   r´  c                   ó   • \ rS rSrSrg)ÚCSpecificationTests.test_interfaces_skips_already_seen.<locals>.IFooi@  r   Nr   r   r   r   rÔ  rç  @  r6  r   rÔ  )r(   rµ  ra   r)   rh   Ú
interfacesrâ  s       r   Ú"test_interfaces_skips_already_seenÚ5SpecificationTests.test_interfaces_skips_already_seen=  sA   € Ý6ô	�9ô 	ð �}‰}˜d˜\Ó*ˆØ×Ñœ˜dŸo™oÓ/Ó0°4°&Õ9r   c                 ó†   • SSK Jn   " S SU5      nU R                  U5      nU R                  UR	                  USS95        g )Nr   r´  c                   ó   • \ rS rSrSrg)Ú<SpecificationTests.test_extends_strict_wo_self.<locals>.IFooiI  r   Nr   r   r   r   rÔ  rí  I  r6  r   rÔ  T©Ústrict)r(   rµ  ra   r»   Úextendsrâ  s       r   Útest_extends_strict_wo_selfÚ.SpecificationTests.test_extends_strict_wo_selfF  s<   € Ý6ô	�9ô 	ð �}‰}˜TÓ"ˆØ×Ñ˜Ÿ™ d°4˜Ð8Õ9r   c                 ób   • U R                  5       nU R                  UR                  USS95        g )NTrî  )ra   r»   rð  ©r+   rº  s     r   Útest_extends_strict_w_selfÚ-SpecificationTests.test_extends_strict_w_selfO  s(   € Ø�}‰}‹ˆØ×Ñ˜Ÿ™ d°4˜Ð8Õ9r   c                 ób   • U R                  5       nU R                  UR                  USS95        g )NFrî  )ra   rÝ   rð  rô  s     r   Útest_extends_non_strict_w_selfÚ1SpecificationTests.test_extends_non_strict_w_selfS  s&   € Ø�}‰}‹ˆØ�‰˜Ÿ™ T°%˜Ð8Õ9r   c                 óŒ   • U R                  5       n[        5       nSU0Ul        U R                  UR	                  S5      U5        g r  )ra   r¼   rß  r8  rÙ  )r+   rº  r{   s      r   Útest_get_hit_w__v_attrsÚ*SpecificationTests.test_get_hit_w__v_attrsW  s5   € Ø�}‰}‹ˆÜ‹hˆØ ˜ˆŒØ�‰�d—h‘h˜u“o sÕ+r   c                 ó:  ^• SSK Jm  SSK Jn   " U4S jSU5      n " U4S jSU5      nU R                  X#/5      nU R	                  UR                  S5      UR                  S5      5        U R	                  UR                  S	5      UR                  S	5      5        g )
Nr   ©Ú	Attributer´  c                   ó(   >• \ rS rSr Y " S5      rSrg)ÚCSpecificationTests.test_get_hit_from_base_wo__v_attrs.<locals>.IFooia  r{   r   N)r    r!   r"   r#   r{   r$   rþ  s   €r   rÔ  r  a  ó   ø† Ú˜EÓ"‹Cr   rÔ  c                   ó(   >• \ rS rSr Y " S5      rSrg)ÚCSpecificationTests.test_get_hit_from_base_wo__v_attrs.<locals>.IBarid  rB   r   N©r    r!   r"   r#   rB   r$   rþ  s   €r   r×  r  d  r  r   r×  r{   rB   )r(   rÿ  rµ  ra   r8  rÙ  )r+   rµ  rÔ  r×  rº  rÿ  s        @r   Ú"test_get_hit_from_base_wo__v_attrsÚ5SpecificationTests.test_get_hit_from_base_wo__v_attrs]  so   ø€ Ý6Ý6÷	#�9ô 	#÷	#�9ô 	#ð �}‰}˜d˜\Ó*ˆØ�‰�d—h‘h˜u“o t§x¡x°£Ô7Ø�‰�d—h‘h˜u“o t§x¡x°£Õ7r   c           
      óF  • SSK Jn  SSK Jn  SSKJn   " S SU5      n " S S5      n " S	 S
U5      n " S SU5      nU" U5       " S S5      5       n " S SX…5      n	U R                  U" U	5      R                  U" U	5      U" U5      UU" U5      U" [        5      U45        g )Nr   rÅ   ©Úimplementerr´  c                   ó   • \ rS rSrSrg)ÚTSpecificationTests.test_multiple_inheritance_no_interfaces.<locals>.IDefaultViewNameiu  r   Nr   r   r   r   ÚIDefaultViewNamer  u  r6  r   r  c                   ó   • \ rS rSrSrg)ÚKSpecificationTests.test_multiple_inheritance_no_interfaces.<locals>.Contextix  r   Nr   r   r   r   ÚContextr  x  r6  r   r  c                   ó   • \ rS rSrSrg)ÚLSpecificationTests.test_multiple_inheritance_no_interfaces.<locals>.RDBModeli{  r   Nr   r   r   r   ÚRDBModelr  {  r6  r   r  c                   ó   • \ rS rSrSrg)ÚJSpecificationTests.test_multiple_inheritance_no_interfaces.<locals>.IOtheri~  r   Nr   r   r   r   ÚIOtherr  ~  r6  r   r  c                   ó   • \ rS rSrSrg)ÚMSpecificationTests.test_multiple_inheritance_no_interfaces.<locals>.OtherBasei�  r   Nr   r   r   r   Ú	OtherBaser  �  ó   † âr   r  c                   ó   • \ rS rSrSrg)ÚISpecificationTests.test_multiple_inheritance_no_interfaces.<locals>.Modeli…  r   Nr   r   r   r   ÚModelr  …  r6  r   r  )r¹   rÆ   r
  r(   rµ  r)   Ú__sro__r¼   )
r+   rÆ   r
  rµ  r  r  r  r  r  r  s
             r   Ú'test_multiple_inheritance_no_interfacesÚ:SpecificationTests.test_multiple_inheritance_no_interfacesk  s®   € õ 	>Ý;Ý6ô	˜yô 	÷	ñ 	ô	�wô 	ô	�Yô 	ñ 
�VÓ	÷	ð 	ó 
ð	ô	�Iô 	ð 	×ÑÙ˜%Ó ×(Ñ(á˜eÓ$Ù˜iÓ(ØÙ˜gÓ&ÙœfÓ%Øðõ
	
r   r   N)r    r!   r"   r#   r\   r°  ra   r»  rÄ  rÇ  rË  rÏ  rÚ  rã  ré  rñ  rõ  rø  rû  r  r  r$   r   r   r   r«  r«  ì  sW   † òð %ô -ò
2ò2ò2ò;ò
/ò3ò&.ò:ò:ò:ò:ò,ò8õ'
r   r«  c                   óB  • \ rS rSrS r  S5S jrS rS rS rS	 r	S
 r
S rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS  r S! r!S" r"S# r#S$ r$S% r%S& r&S' r'S( r(S) r)S* r*S+ r+S, r,S- r-S. r.S/ r/S0 r0S1 r1S2 r2S3 r3S4 r4Sr5g)6ÚInterfaceClassTestsi•  c                 ó   • SSK Jn  U$ )Nr   ©ÚInterfaceClass)r(   r%  )r+   r%  s     r   r\   Ú#InterfaceClassTests._getTargetClass—  s   € Ý;ØÐr   r   Nc                 ó2   • U R                  5       " XX4U5      $ r   r¨   )r+   r`   r±  Úattrsrf   r!   s         r   ra   ÚInterfaceClassTests._makeOne›  s   € à×#Ñ#Ô% d°5À:ÓNÐNr   c                 ó  • U R                  5       nU" S5      nU R                  UR                  S5        U R                  UR                  S5        U R                  UR                  S5        U R                  UR                  5       S5        g )NÚITestingrd   r   )r\   r)   r    rf   r·  ÚgetBases)r+   ÚklassÚinsts      r   rl   Ú&InterfaceClassTests.test_ctor_defaultsŸ  sl   € Ø×$Ñ$Ó&ˆÙ�ZÓ ˆØ×Ñ˜Ÿ™¨
Ô3Ø×Ñ˜Ÿ™ rÔ*Ø×Ñ˜Ÿ™¨Ô,Ø×Ñ˜Ÿ™›¨"Õ-r   c                 óf   • U R                  5       nU R                  [        US[        5       45        g )Nr+  )r\   rt   r:  r¼   )r+   r-  s     r   Útest_ctor_bad_basesÚ'InterfaceClassTests.test_ctor_bad_bases§  s(   € Ø×$Ñ$Ó&ˆØ×Ñœ) U¨J¼»¸ÕDr   c                 óx  • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nU R                  5       nU" SUS	9nU R	                  UR
                  S5        U R	                  UR                  S5        U R	                  UR                  S
5        U R	                  UR                  5       UR                  5       5        g )Nr   rþ  ©ÚfromFunctionc                  ó   • g©Ú	DOCSTRINGNr   r   r   r   Ú_barÚBInterfaceClassTests.test_ctor_w_attrs_attrib_methods.<locals>._bar¯  ó   � r   r%   rd   ©r{   rB   r+  ©r(  r   )
r(   rÿ  r5  r\   r)   r    rf   r·  ÚnamesÚkeys)r+   rÿ  r5  r9  ÚATTRSr-  r.  s          r   Ú test_ctor_w_attrs_attrib_methodsÚ4InterfaceClassTests.test_ctor_w_attrs_attrib_methods«  sœ   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆð ×$Ñ$Ó&ˆÙ�Z uÑ-ˆØ×Ñ˜Ÿ™¨
Ô3Ø×Ñ˜Ÿ™ rÔ*Ø×Ñ˜Ÿ™¨Ô,Ø×Ñ˜Ÿ™› u§z¡z£|Õ4r   c                 ó4  • S0 0nU R                  5       nU" SUS9nU R                  UR                  S5        U R                  UR                  S5        U R                  UR                  S5        U R                  [        UR                  5       5      / 5        g )NÚ
__locals__r+  r=  rd   r   ©r\   r)   r    rf   r·  rh   r>  ©r+   r@  r-  r.  s       r   Útest_ctor_attrs_w___locals__Ú0InterfaceClassTests.test_ctor_attrs_w___locals__½  s}   € Ø˜rÐ"ˆØ×$Ñ$Ó&ˆÙ�Z uÑ-ˆØ×Ñ˜Ÿ™¨
Ô3Ø×Ñ˜Ÿ™ rÔ*Ø×Ñ˜Ÿ™¨Ô,Ø×Ñœ˜dŸj™j›lÓ+¨RÕ0r   c                 ó4  • S0 0nU R                  5       nU" SUS9nU R                  UR                  S5        U R                  UR                  S5        U R                  UR                  S5        U R                  [        UR                  5       5      / 5        g )NÚ__annotations__r+  r=  rd   r   rE  rF  s       r   Ú!test_ctor_attrs_w___annotations__Ú5InterfaceClassTests.test_ctor_attrs_w___annotations__Æ  s}   € Ø" BÐ'ˆØ×$Ñ$Ó&ˆÙ�Z uÑ-ˆØ×Ñ˜Ÿ™¨
Ô3Ø×Ñ˜Ÿ™ rÔ*Ø×Ñ˜Ÿ™¨Ô,Ø×Ñœ˜dŸj™j›lÓ+¨RÕ0r   c                 ó@  • SSK Jn  SU0nU R                  5       nU" SUS9nU R                  UR                  S5        U R                  UR
                  S5        U R                  UR                  S5        U R                  [        UR                  5       5      / 5        g )Nr   )Ú_decorator_non_returnÚdropmer+  r=  rd   r   )	r(   rN  r\   r)   r    rf   r·  rh   r>  )r+   rN  r@  r-  r.  s        r   Ú'test_ctor_attrs_w__decorator_non_returnÚ;InterfaceClassTests.test_ctor_attrs_w__decorator_non_returnÏ  s�   € ÝBØÐ0Ð1ˆØ×$Ñ$Ó&ˆÙ�Z uÑ-ˆØ×Ñ˜Ÿ™¨
Ô3Ø×Ñ˜Ÿ™ rÔ*Ø×Ñ˜Ÿ™¨Ô,Ø×Ñœ˜dŸj™j›lÓ+¨RÕ0r   c                 ój   • SSK Jn  S[        5       0nU R                  5       nU R	                  XSUS9  g )Nr   )ÚInvalidInterfaceÚinvalidr+  r=  )Úzope.interface.exceptionsrS  r¼   r\   rt   )r+   rS  r@  r-  s       r   Ú#test_ctor_attrs_w_invalid_attr_typeÚ7InterfaceClassTests.test_ctor_attrs_w_invalid_attr_typeÙ  s5   € Ý>ØœF›HÐ%ˆØ×$Ñ$Ó&ˆØ×ÑÐ*°:ÀUÐÒKr   c                 ót   • SS0nU R                  5       nU" SUSS9nU R                  UR                  S5        g )Nrf   ÚATTRr+  ÚEXPLICIT)r(  rf   )r\   r)   rf   rF  s       r   Útest_ctor_w_explicit___doc__Ú0InterfaceClassTests.test_ctor_w_explicit___doc__ß  s<   € Ø˜FÐ#ˆØ×$Ñ$Ó&ˆÙ�Z u°jÑAˆØ×Ñ˜Ÿ™ zÕ2r   c                 óx   • U R                  5       nU R                  [        UR                  5       5      U/5        g r   )ra   r)   rh   rè  r’  s     r   Útest_interfacesÚ#InterfaceClassTests.test_interfaceså  s-   € Ø—‘“ˆØ×Ñœ˜e×.Ñ.Ó0Ó1°E°7Õ;r   c                 óˆ   • U R                  5       nU R                  SU4S9nU R                  UR                  5       U45        g ©NÚISub)r±  )ra   r)   r,  ©r+   rm  Úsubs      r   Útest_getBasesÚ!InterfaceClassTests.test_getBasesé  s9   € Ø—‘“ˆØ�m‰m˜F¨5¨(ˆmÐ3ˆØ×Ñ˜Ÿ™›¨%¨Õ2r   c                 ód   • U R                  5       nU R                  UR                  U5      5        g r   )ra   rÝ   ÚisEqualOrExtendedByr’  s     r   Ú!test_isEqualOrExtendedBy_identityÚ5InterfaceClassTests.test_isEqualOrExtendedBy_identityî  s$   € Ø—‘“ˆØ�‰˜×1Ñ1°%Ó8Õ9r   c                 óÆ   • U R                  5       nU R                  SU4S9nU R                  UR                  U5      5        U R                  UR                  U5      5        g ra  )ra   rÝ   rh  r»   rc  s      r   Ú!test_isEqualOrExtendedBy_subifaceÚ5InterfaceClassTests.test_isEqualOrExtendedBy_subifaceò  sQ   € Ø—‘“ˆØ�m‰m˜F¨5¨(ˆmÐ3ˆØ�‰˜×1Ñ1°#Ó6Ô7Ø×Ñ˜×0Ñ0°Ó7Õ8r   c                 óÈ   • U R                  S5      nU R                  S5      nU R                  UR                  U5      5        U R                  UR                  U5      5        g )NÚOneÚAnother)ra   r»   rh  )r+   ÚoneÚanothers      r   Ú"test_isEqualOrExtendedBy_unrelatedÚ6InterfaceClassTests.test_isEqualOrExtendedBy_unrelatedø  sP   € Ø�m‰m˜EÓ"ˆØ—-‘- 	Ó*ˆØ×Ñ˜×0Ñ0°Ó9Ô:Ø×Ñ˜×4Ñ4°SÓ9Õ:r   c                 óò   • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nSU" S	S5      0nU R                  S
US9nU R                  SU4US9nU R	                  [        UR                  SS95      S/5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  ÚFInterfaceClassTests.test_names_w_all_False_ignores_bases.<locals>._bar  r;  r   r%   rd   r<  rC   ÚBazÚIBaser=  ÚIDerived©r±  r(  F©Úall©r(   rÿ  r5  ra   r)   Úsortedr>  ©r+   rÿ  r5  r9  Ú
BASE_ATTRSÚDERIVED_ATTRSÚbaseÚderiveds           r   Ú$test_names_w_all_False_ignores_basesÚ8InterfaceClassTests.test_names_w_all_False_ignores_basesþ  s‰   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆ
ð
 ‘9˜U BÓ'ð
ˆð �}‰}˜W¨Jˆ}Ð7ˆØ—-‘- 
°4°'À�-ÐOˆØ×Ñœ §¡°% Ð 8Ó9¸E¸7ÕCr   c                 ó¸   • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nU R                  US9nU R	                  [        UR                  S	S
95      SS/5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  Ú@InterfaceClassTests.test_names_w_all_True_no_bases.<locals>._bar  r;  r   r%   rd   r<  r=  Tr|  rB   r{   r~  ©r+   rÿ  r5  r9  r@  rq  s         r   Útest_names_w_all_True_no_basesÚ2InterfaceClassTests.test_names_w_all_True_no_bases  s^   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆð �m‰m %ˆmÐ(ˆØ×Ñœ §	¡	¨d 	Ð 3Ó4°u¸e°nÕEr   c                 óô   • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nSU" S	S5      0nU R                  S
US9nU R                  SU4US9nU R	                  [        UR                  SS95      / SQ5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  ÚFInterfaceClassTests.test_names_w_all_True_w_bases_simple.<locals>._bar"  r;  r   r%   rd   r<  rC   rx  ry  r=  rz  r{  Tr|  ©rB   rC   r{   r~  r€  s           r   Ú$test_names_w_all_True_w_bases_simpleÚ8InterfaceClassTests.test_names_w_all_True_w_bases_simple  s‹   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆ
ð
 ‘9˜U BÓ'ð
ˆð �}‰}˜W¨Jˆ}Ð7ˆØ—-‘- 
°4°'À�-ÐOˆØ×ÑÜ�7—=‘= T�=Ð*Ó+Ò-Bõ	
r   c                 ó  • SSK Jn  SSK Jn  S nS nU" SS5      U" U5      S.nU" U5      U" S	S5      S
.nU R                  SUS9nU R                  SU4US9nU R	                  [        UR                  SS95      / SQ5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  ÚJInterfaceClassTests.test_names_w_all_True_bases_w_same_names.<locals>._bar6  r;  r   c                  ó   • gr7  r   r   r   r   Ú_fooÚJInterfaceClassTests.test_names_w_all_True_bases_w_same_names.<locals>._foo9  r;  r   r%   rd   r<  rx  ©r{   rC   ry  r=  rz  r{  Tr|  r�  r~  ©	r+   rÿ  r5  r9  r—  r�  r‚  rƒ  r„  s	            r   Ú(test_names_w_all_True_bases_w_same_namesÚ<InterfaceClassTests.test_names_w_all_True_bases_w_same_names2  s˜   € Ý6Ý9ò	ò	ñ ˜U BÓ'Ù Ó%ñ
ˆ
ñ
   Ó%Ù˜U BÓ'ñ
ˆð �}‰}˜W¨Jˆ}Ð7ˆØ—-‘- 
°4°'À�-ÐOˆØ×ÑœØ�M‰M˜dˆMÐ#ó%Ú&;õ	
r   c                 óî   • SSK Jn  SSK Jn  S nS nU" SS5      U" U5      S.nU" U5      U" S	S5      S
.nU R                  SUS9nU R                  SU4US9nU R	                  [        U5      / SQ5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  Ú/InterfaceClassTests.test___iter__.<locals>._barN  r;  r   c                  ó   • gr7  r   r   r   r   r—  Ú/InterfaceClassTests.test___iter__.<locals>._fooQ  r;  r   r%   rd   r<  rx  r™  ry  r=  rz  r{  r�  )r(   rÿ  r5  ra   r)   r  rš  s	            r   Útest___iter__Ú!InterfaceClassTests.test___iter__J  s‡   € Ý6Ý9ò	ò	ñ ˜U BÓ'Ù Ó%ñ
ˆ
ñ
   Ó%Ù˜U BÓ'ñ
ˆð �}‰}˜W¨Jˆ}Ð7ˆØ—-‘- 
°4°'À�-ÐOˆØ×Ñœ ›Ò*?Õ@r   c                 óü   • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nSU" S	S5      0nU R                  S
US9nU R                  SU4US9nU R	                  [        UR                  SS95      SUS   4/5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  ÚUInterfaceClassTests.test_namesAndDescriptions_w_all_False_ignores_bases.<locals>._bard  r;  r   r%   rd   r<  rC   rx  ry  r=  rz  r{  Fr|  ©r(   rÿ  r5  ra   r)   r  ÚnamesAndDescriptionsr€  s           r   Ú3test_namesAndDescriptions_w_all_False_ignores_basesÚGInterfaceClassTests.test_namesAndDescriptions_w_all_False_ignores_bases`  s�   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆ
ð
 ‘9˜U BÓ'ð
ˆð �}‰}˜W¨Jˆ}Ð7ˆØ—-‘- 
°4°'À�-ÐOˆØ×ÑÜ�7×/Ñ/°EÐ/Ð:Ó;Ø˜ eÑ,Ð-ð>õ	
r   c                 óÌ   • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nU R                  US9nU R	                  [        UR                  S	S
95      SUS   4SUS   4/5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  ÚOInterfaceClassTests.test_namesAndDescriptions_w_all_True_no_bases.<locals>._barz  r;  r   r%   rd   r<  r=  Fr|  rB   r{   r§  rŠ  s         r   Ú-test_namesAndDescriptions_w_all_True_no_basesÚAInterfaceClassTests.test_namesAndDescriptions_w_all_True_no_basesv  s{   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆð �m‰m %ˆmÐ(ˆØ×ÑÜ�3×+Ñ+°Ð+Ð6Ó7Ø˜˜e™Ð%Ø˜˜e™Ð%ð:õ	
r   c                 ó  • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nSU" S	S5      0nU R                  S
US9nU R                  SU4US9nU R	                  [        UR                  SS95      SUS   4SUS   4SUS   4/5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  ÚMInterfaceClassTests.test_namesAndDescriptions_w_all_True_simple.<locals>._bar�  r;  r   r%   rd   r<  rC   rx  ry  r=  rz  r{  Tr|  rB   r{   r§  r€  s           r   Ú+test_namesAndDescriptions_w_all_True_simpleÚ?InterfaceClassTests.test_namesAndDescriptions_w_all_True_simple‰  s·   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆ
ð
 ‘9˜U BÓ'ð
ˆð �}‰}˜W¨Jˆ}Ð7ˆØ—-‘- 
°4°'À�-ÐOˆØ×ÑÜ�7×/Ñ/°DÐ/Ð9Ó:Ø˜
 5Ñ)Ð*Ø˜ eÑ,Ð-Ø˜
 5Ñ)Ð*ð=õ	
r   c                 ó(  • SSK Jn  SSK Jn  S nS nU" SS5      U" U5      S.nU" U5      U" S	S5      S
.nU R                  SUS9nU R                  SU4US9nU R	                  [        UR                  SS95      SUS   4SUS   4SUS   4/5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  ÚYInterfaceClassTests.test_namesAndDescriptions_w_all_True_bases_w_same_names.<locals>._bar¥  r;  r   c                  ó   • gr7  r   r   r   r   r—  ÚYInterfaceClassTests.test_namesAndDescriptions_w_all_True_bases_w_same_names.<locals>._foo¨  r;  r   r%   rd   r<  rx  r™  ry  r=  rz  r{  Tr|  rB   rC   r{   r§  rš  s	            r   Ú7test_namesAndDescriptions_w_all_True_bases_w_same_namesÚKInterfaceClassTests.test_namesAndDescriptions_w_all_True_bases_w_same_names¡  sÂ   € Ý6Ý9ò	ò	ñ ˜U BÓ'Ù Ó%ñ
ˆ
ñ
   Ó%Ù˜U BÓ'ñ
ˆð �}‰}˜W¨Jˆ}Ð7ˆØ—-‘- 
°4°'À�-ÐOˆØ×ÑÜ�7×/Ñ/°DÐ/Ð9Ó:Ø˜
 5Ñ)Ð*Ø˜ eÑ,Ð-Ø˜ eÑ,Ð-ð=õ	
r   c                 óf   • U R                  5       nU R                  [        UR                  S5        g rr   )ra   rt   ru   ÚgetDescriptionFor©r+   rq  s     r   Útest_getDescriptionFor_missÚ/InterfaceClassTests.test_getDescriptionFor_miss½  s%   € Ø�m‰m‹oˆØ×Ñœ( C×$9Ñ$9¸:ÕFr   c                 óô   • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nU R                  US9nU R	                  UR                  S	5      US	   5        U R	                  UR                  S
5      US
   5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  Ú<InterfaceClassTests.test_getDescriptionFor_hit.<locals>._barÅ  r;  r   r%   rd   r<  r=  r{   rB   )r(   rÿ  r5  ra   r)   r½  rŠ  s         r   Útest_getDescriptionFor_hitÚ.InterfaceClassTests.test_getDescriptionFor_hitÁ  sx   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆð �m‰m %ˆmÐ(ˆØ×Ñ˜×.Ñ.¨uÓ5°u¸U±|ÔDØ×Ñ˜×.Ñ.¨uÓ5°u¸U±|ÕDr   c                 ó^   ^• U R                  5       mU4S jnU R                  [        U5        g )Nc                  ó   >• T S   $ rr   r   )rq  s   €r   Ú_testÚ8InterfaceClassTests.test___getitem___miss.<locals>._testÓ  s   ø€ Ø�z‘?Ð"r   )ra   rt   ru   )r+   rÈ  rq  s     @r   Útest___getitem___missÚ)InterfaceClassTests.test___getitem___missÐ  s%   ø€ Ø�m‰m‹oˆõ	#ð 	×Ñœ( EÕ*r   c                 óÄ   • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nU R                  US9nU R	                  US	   US	   5        U R	                  US
   US
   5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  Ú6InterfaceClassTests.test___getitem___hit.<locals>._barÜ  r;  r   r%   rd   r<  r=  r{   rB   )r(   rÿ  r5  ra   r)   rŠ  s         r   Útest___getitem___hitÚ(InterfaceClassTests.test___getitem___hitØ  sj   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆð �m‰m %ˆmÐ(ˆØ×Ñ˜˜U™ U¨5¡\Ô2Ø×Ñ˜˜U™ U¨5¡\Õ2r   c                 óH   • U R                  5       nU R                  SU5        g rr   )ra   rÎ  r¾  s     r   Útest___contains___missÚ*InterfaceClassTests.test___contains___missç  s   € Ø�m‰m‹oˆØ×Ñ˜ SÕ)r   c                 ó¬   • SSK Jn  SSK Jn  S nU" SS5      U" U5      S.nU R                  US9nU R	                  S	U5        U R	                  S
U5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  Ú7InterfaceClassTests.test___contains___hit.<locals>._barï  r;  r   r%   rd   r<  r=  r{   rB   )r(   rÿ  r5  ra   r|  rŠ  s         r   Útest___contains___hitÚ)InterfaceClassTests.test___contains___hitë  sV   € Ý6Ý9ò	ñ ˜U BÓ'Ù Ó%ñ
ˆð �m‰m %ˆmÐ(ˆØ�‰�e˜SÔ!Ø�‰�e˜SÕ!r   c                 óf   • U R                  5       nU R                  UR                  S5      S 5        g rr   )ra   r)   Údirectr¾  s     r   Útest_direct_missÚ$InterfaceClassTests.test_direct_missú  s&   € Ø�m‰m‹oˆØ×Ñ˜Ÿ™ JÓ/°Õ6r   c                 ó†  • SSK Jn  SSK Jn  S nS nU" SS5      U" U5      S.nU" U5      U" S	S5      S
.nU R                  SUS9nU R                  SU4US9nU R	                  UR                  S5      US   5        U R	                  UR                  S5      US   5        U R	                  UR                  S5      S 5        g )Nr   rþ  r4  c                  ó   • gr7  r   r   r   r   r9  ÚBInterfaceClassTests.test_direct_hit_local_miss_bases.<locals>._bar  r;  r   c                  ó   • gr7  r   r   r   r   r—  ÚBInterfaceClassTests.test_direct_hit_local_miss_bases.<locals>._foo  r;  r   r%   rd   r<  rx  r™  ry  r=  rz  r{  r{   rC   rB   )r(   rÿ  r5  ra   r)   rÚ  rš  s	            r   Ú test_direct_hit_local_miss_basesÚ4InterfaceClassTests.test_direct_hit_local_miss_basesþ  sÇ   € Ý6Ý9ò	ò	ñ ˜U BÓ'Ù Ó%ñ
ˆ
ñ
   Ó%Ù˜U BÓ'ñ
ˆð �}‰}˜W¨Jˆ}Ð7ˆØ—-‘- 
°4°'À�-ÐOˆØ×Ñ˜Ÿ™¨Ó.°¸eÑ0DÔEØ×Ñ˜Ÿ™¨Ó.°¸eÑ0DÔEØ×Ñ˜Ÿ™¨Ó.°Õ5r   c                 óf   • U R                  5       nU R                  UR                  S5      S 5        g rr   )ra   r)   ÚqueryDescriptionForr’  s     r   Útest_queryDescriptionFor_missÚ1InterfaceClassTests.test_queryDescriptionFor_miss  s(   € Ø—‘“ˆØ×Ñ˜×2Ñ2°:Ó>ÀÕEr   c                 óŒ   • SSK Jn  SU" SS5      0nU R                  US9nU R                  UR	                  S5      US   5        g )Nr   rþ  ÚattrÚTitleÚDescriptionr=  )r¸   rÿ  ra   r)   rå  )r+   rÿ  r@  rm  s       r   Útest_queryDescriptionFor_hitÚ0InterfaceClassTests.test_queryDescriptionFor_hit  sE   € Ý,Ø™ 7¨MÓ:Ð;ˆØ—‘ E�Ð*ˆØ×Ñ˜×2Ñ2°6Ó:¸EÀ&¹MÕJr   c                 óÞ   ^• / mU4S jnU R                  5       n[        5       nUR                  SU/5        U R                  UR	                  U5      S 5        U R                  TU40 4/5        g )Nc                  ó*   >• TR                  X45        gr$  r�  )r   r   Ú_called_withs     €r   Ú	_passableÚCInterfaceClassTests.test_validateInvariants_pass.<locals>._passable#  s   ø€ Ø×Ñ  
Ô+Ør   r&   )ra   r¼   r}   r)   ÚvalidateInvariants)r+   rñ  rm  r²   rð  s       @r   Útest_validateInvariants_passÚ0InterfaceClassTests.test_validateInvariants_pass   sf   ø€ Øˆõ	ð —‘“ˆÜ‹hˆØ×Ñ˜\¨I¨;Ô7Ø×Ñ˜×1Ñ1°#Ó6¸Ô=Ø×Ñ˜¨#¨°¨ ~Õ6r   c                 ó$  ^^^• SSK Jm  / mU4S jn/ mUU4S jnU R                  5       n[        5       nUR	                  SX/5        U R                  TUR                  U5        U R                  TU40 4/5        U R                  TU40 4/5        g )Nr   ©ÚInvalidc                  ó*   >• TR                  X45        gr$  r�  ©r   r   Ú_passable_called_withs     €r   rñ  ÚTInterfaceClassTests.test_validateInvariants_fail_wo_errors_passed.<locals>._passable1  ó   ø€ Ø!×(Ñ(¨$¨Ô4Ør   c                  ó,   >• TR                  X45        Ter   r�  ©r   r   rø  Ú_fail_called_withs     €€r   Ú_failÚPInterfaceClassTests.test_validateInvariants_fail_wo_errors_passed.<locals>._fail7  ó   ø€ Ø×$Ñ$ d ZÔ0ØˆMr   r&   ©rU  rø  ra   r¼   r}   rt   ró  r)   )r+   rñ  r  rm  r²   rø  r   rû  s        @@@r   Ú-test_validateInvariants_fail_wo_errors_passedÚAInterfaceClassTests.test_validateInvariants_fail_wo_errors_passed-  s�   ú€ Ý5Ø "Ðõ	ð Ðö	ð —‘“ˆÜ‹hˆØ×Ñ˜\¨IÐ+=Ô>Ø×Ñ˜' 5×#;Ñ#;¸SÔAØ×ÑÐ.°3°&¸"°°Ô?Ø×ÑÐ*¨s¨f°b¨\¨NÕ;r   c                 óJ  ^^• SSK Jm  / n/ mUU4S jnU R                  5       n[        5       nUR	                  SU/5        U R                  TUR                  XA5        U R                  TU40 4/5        U R                  [        U5      S5        U R                  US   T5        g )Nr   r÷  c                  ó,   >• TR                  X45        Ter   r�  rÿ  s     €€r   r  ÚOInterfaceClassTests.test_validateInvariants_fail_w_errors_passed.<locals>._failG  r  r   r&   r¿  ©
rU  rø  ra   r¼   r}   rt   ró  r)   r¸  ÚassertIsInstance)r+   Ú_errorsr  rm  r²   rø  r   s        @@r   Ú,test_validateInvariants_fail_w_errors_passedÚ@InterfaceClassTests.test_validateInvariants_fail_w_errors_passedB  s•   ù€ Ý5ØˆØÐö	ð —‘“ˆÜ‹hˆØ×Ñ˜\¨E¨7Ô3Ø×Ñ˜' 5×#;Ñ#;¸SÔJØ×ÑÐ*¨s¨f°b¨\¨NÔ;Ø×Ñœ˜W› qÔ)Ø×Ñ˜g a™j¨'Õ2r   c                 ór  ^^^• SSK Jm  / mU4S jn/ mUU4S jnU R                  S5      nU R                  SU45      n[        5       nUR	                  SU/5        UR	                  SU/5        U R                  TUR                  U5        U R                  TU40 4/5        U R                  TU40 4/5        g )Nr   r÷  c                  ó*   >• TR                  X45        gr$  r�  rú  s     €r   rñ  Ú\InterfaceClassTests.test_validateInvariants_fail_in_base_wo_errors_passed.<locals>._passableW  rý  r   c                  ó,   >• TR                  X45        Ter   r�  rÿ  s     €€r   r  ÚXInterfaceClassTests.test_validateInvariants_fail_in_base_wo_errors_passed.<locals>._fail]  r  r   ry  rz  r&   r  )	r+   rñ  r  rƒ  r„  r²   rø  r   rû  s	         @@@r   Ú5test_validateInvariants_fail_in_base_wo_errors_passedÚIInterfaceClassTests.test_validateInvariants_fail_in_base_wo_errors_passedS  sµ   ú€ Ý5Ø "Ðõ	ð Ðö	ð �}‰}˜WÓ%ˆØ—-‘- 
¨T¨GÓ4ˆÜ‹hˆØ×Ñ˜L¨5¨'Ô2Ø×Ñ˜|¨i¨[Ô9Ø×Ñ˜' 7×#=Ñ#=¸sÔCØ×ÑÐ.°3°&¸"°°Ô?Ø×ÑÐ*¨s¨f°b¨\¨NÕ;r   c                 óÖ  ^^^	• SSK Jm  / n/ m	U	4S jn/ mUU4S jnU R                  S5      nU R                  SU45      n[        5       nUR	                  SU/5        UR	                  SU/5        U R                  TUR                  Xa5        U R                  T	U40 4/5        U R                  TU40 4/5        U R                  [        U5      S5        U R                  US   T5        g )	Nr   r÷  c                  ó*   >• TR                  X45        gr$  r�  rú  s     €r   rñ  Ú[InterfaceClassTests.test_validateInvariants_fail_in_base_w_errors_passed.<locals>._passableo  rý  r   c                  ó,   >• TR                  X45        Ter   r�  rÿ  s     €€r   r  ÚWInterfaceClassTests.test_validateInvariants_fail_in_base_w_errors_passed.<locals>._failu  r  r   ry  rz  r&   r¿  r
  )
r+   r  rñ  r  rƒ  r„  r²   rø  r   rû  s
          @@@r   Ú4test_validateInvariants_fail_in_base_w_errors_passedÚHInterfaceClassTests.test_validateInvariants_fail_in_base_w_errors_passedj  sâ   ú€ Ý5ØˆØ "Ðõ	ð Ðö	ð �}‰}˜WÓ%ˆØ—-‘- 
¨T¨GÓ4ˆÜ‹hˆØ×Ñ˜L¨5¨'Ô2Ø×Ñ˜|¨i¨[Ô9Ø×Ñ˜' 7×#=Ñ#=¸sÔLØ×ÑÐ.°3°&¸"°°Ô?Ø×ÑÐ*¨s¨f°b¨\¨NÔ;Ø×Ñœ˜W› qÔ)Ø×Ñ˜g a™j¨'Õ2r   c                 óð   ^• / mU4S jn[        5       nU R                  S5      nUR                  SU/5        U R                  SU45      nUR                  U5        U R	                  S[        T5      5        g )Nc                  ó*   >• TR                  X45        gr$  r�  rú  s     €r   rñ  ÚbInterfaceClassTests.test_validateInvariants_inherited_not_called_multiple_times.<locals>._passable‡  rý  r   ry  r&   rz  r¿  )r¼   ra   r}   ró  r)   r¸  )r+   rñ  r²   rƒ  r„  rû  s        @r   Ú;test_validateInvariants_inherited_not_called_multiple_timesÚOInterfaceClassTests.test_validateInvariants_inherited_not_called_multiple_times„  sm   ø€ Ø "Ðõ	ô ‹hˆØ�}‰}˜WÓ%ˆØ×Ñ˜L¨9¨+Ô6Ø—-‘- 
¨T¨GÓ4ˆØ×"Ñ" 3Ô'Ø×Ñ˜œCÐ 5Ó6Õ7r   c                 óf   • U R                  S5      nU R                  UR                  5       S5        g )NÚPickleMe)ra   r)   Ú
__reduce__r’  s     r   Útest___reduce__Ú#InterfaceClassTests.test___reduce__’  s)   € Ø—‘˜jÓ)ˆØ×Ñ˜×)Ñ)Ó+¨ZÕ8r   c                 ón   • U R                  S5      nU R                  [        U5      [        S5      5        g )NÚHashMe)r(  z#zope.interface.tests.test_interface)ra   r)   Úhashr’  s     r   Útest___hash___normalÚ(InterfaceClassTests.test___hash___normal–  s.   € Ø—‘˜hÓ'ˆØ×ÑÜ�‹KÜÐBÓCõ	
r   c                 ó¸   •  " S SU R                  5       5      nU" 5       nU R                  [        5         [        U5        S S S 5        g ! , (       d  f       g = f)Nc                   ó   • \ rS rSrS rSrg)ÚIInterfaceClassTests.test___hash___missing_required_attrs.<locals>.DerivediŸ  c                 ó   • g r   r   r©   s    r   r  ÚRInterfaceClassTests.test___hash___missing_required_attrs.<locals>.Derived.__init__   s   € Ør   r   Nr  r   r   r   ÚDerivedr.  Ÿ  s   † õr   r1  )r\   rt   r
  r)  )r+   r1  r„  s      r   Ú$test___hash___missing_required_attrsÚ8InterfaceClassTests.test___hash___missing_required_attrs�  sA   € ô	�d×*Ñ*Ó,ô 	ñ “)ˆØ×Ñœ~Õ.Ü�ŒM÷ /×.Ö.ús   ¶AÁ
Ac                 óä  • U R                  5       nU R                  US 5        U R                  US 5        U R                  US 5        U R                  US 5        U R	                  US :¬  5        U R	                  US :„  5        U R	                  S U:  5        U R	                  S U:*  5        U R                  S U5        U R                  S U5        U R                  S U5        U R                  S U5        g r   )ra   Ú
assertLessÚassertLessEqualÚassertNotEqualr»   ÚassertGreaterEqualÚassertGreaterr’  s     r   Útest_comparison_with_NoneÚ-InterfaceClassTests.test_comparison_with_None§  sÓ   € à—‘“ˆØ�‰˜˜tÔ$Ø×Ñ˜U DÔ)Ø×Ñ˜E 4Ô(Ø×Ñ˜E 4Ô(Ø×Ñ˜ $™Ô'Ø×Ñ˜ ™Ô&à×Ñ˜ ™Ô&Ø×Ñ˜ ™Ô'Ø×Ñ˜D %Ô(Ø×Ñ˜D %Ô(Ø×Ñ  eÔ,Ø×Ñ˜4 Õ'r   c                 óø   • U R                  5       nU R                  X:  5        U R                  X5        U R                  X5        U R                  X5        U R	                  X5        U R                  X:„  5        g r   )ra   r»   r6  r)   r8  r’  s     r   Ú"test_comparison_with_same_instanceÚ6InterfaceClassTests.test_comparison_with_same_instance¸  se   € à—‘“ˆà×Ñ˜™Ô'Ø×Ñ˜UÔ*Ø×Ñ˜Ô&Ø×Ñ˜Ô&Ø×Ñ Ô-Ø×Ñ˜™Õ'r   c                 óì  • U R                  SSS9nU R                  SSS9nU R                  X5        U R                  X!:  5        U R                  X5        U R                  X!:*  5        U R	                  X5        U R	                  X!5        U R	                  X5        U R	                  X!5        U R                  X:¬  5        U R                  X!5        U R                  X:„  5        U R                  X!5        g )NÚINamezzope.interface.tests.oner  zzope.interface.tests.other)ra   r5  r»   r6  r7  r8  r9  )r+   rq  r%  s      r   Ú8test_comparison_with_same_named_instance_in_other_moduleÚLInterfaceClassTests.test_comparison_with_same_named_instance_in_other_moduleÃ  sÖ   € à�m‰m˜GÐ0JˆmÐKˆØ—‘˜gÐ2N�ÐOˆà�‰˜Ô#Ø×Ñ˜™Ô%Ø×Ñ˜SÔ(Ø×Ñ˜™Ô&Ø×Ñ˜CÔ'Ø×Ñ˜EÔ'Ø×Ñ˜CÔ'Ø×Ñ˜EÔ'Ø×Ñ˜™Ô&Ø×Ñ Ô+Ø×Ñ˜™Ô%Ø×Ñ˜5Õ&r   c                 óF  ^•  " S S[         5      m " U4S jSU R                  5       5      nU R                  S5      nU R                  X R                  5       5        U R	                  [        U5      U R                  5       5        U R                  [        5         U" S5        S S S 5        Xl        U R                  X!5        U R	                  [        U5      U5        U R                  T5         U" S5        S S S 5        g ! , (       d  f       Nc= f! , (       d  f       g = f)Nc                   ó   • \ rS rSrSrg)ÚDInterfaceClassTests.test_assignment_to__class__.<locals>.MyExceptioni×  r   Nr   r   r   r   r5  rE  ×  r6  r   r5  c                   ó"   >• \ rS rSrU 4S jrSrg)ÚIInterfaceClassTests.test_assignment_to__class__.<locals>.MyInterfaceClassiÚ  c                 ó   >• T" U5      er   r   )r+   Útargetr5  s     €r   Ú__call__ÚRInterfaceClassTests.test_assignment_to__class__.<locals>.MyInterfaceClass.__call__Û  s   ø€ Ù! &Ó)Ð)r   r   N©r    r!   r"   r#   rJ  r$   )r5  s   €r   ÚMyInterfaceClassrG  Ú  s   ø† ÷*ð *r   rM  r@  r¿  )	r;  r\   ra   r  r8  Útypert   r:  Ú	__class__)r+   rM  rÔ  r5  s      @r   Útest_assignment_to__class__Ú/InterfaceClassTests.test_assignment_to__class__Õ  s×   ø€ ô	œ)ô 	÷	*˜t×3Ñ3Ó5ô 	*ð �}‰}˜WÓ%ˆØ×Ñ˜d×$8Ñ$8Ó$:Ô;Ø�‰”d˜4“j $×"6Ñ"6Ó"8Ô9à×ÑœyÕ)Ù�ŒG÷ *ð *ŒØ×Ñ˜dÔ5Ø�‰”d˜4“jÐ"2Ô3à×Ñ˜{Õ+Ù�ŒG÷ ,Ð+÷ *Õ)ú÷ ,Õ+ús   Â	DÃ/	DÄ
DÄ
D c                 óŠ  • SSK Jn   " S SU R                  5       5      nU" SU45      nU R                  U" S5      S5         " S S	U5      nU R                  U" S5      S5         " S
 SU5      nU R	                  [
        5         U" 5         S S S 5        X%l        U R                  U" S5      S5        g ! , (       d  f       N-= f)Nr   r´  c                   ó   • \ rS rSrS rSrg)ÚJInterfaceClassTests.test_assignment_to__class__2.<locals>.MyInterfaceClassiò  c                 ó   • U$ r   r   )r+   r   s     r   rJ  ÚSInterfaceClassTests.test_assignment_to__class__2.<locals>.MyInterfaceClass.__call__ó  s   € Ø�r   r   NrL  r   r   r   rM  rT  ò  r”  r   rM  rÔ  r¿  )r¿  c                   ó   • \ rS rSrSrg)Ú>InterfaceClassTests.test_assignment_to__class__2.<locals>.IBariù  r   Nr   r   r   r   r×  rX  ù  r6  r   r×  c                   ó   • \ rS rSrSrg)Ú?InterfaceClassTests.test_assignment_to__class__2.<locals>.ISpamiþ  r   Nr   r   r   r   ÚISpamrZ  þ  r6  r   r[  )r¸   rµ  r\   r)   rt   r:  rO  )r+   rµ  rM  rÔ  r×  r[  s         r   Útest_assignment_to__class__2Ú0InterfaceClassTests.test_assignment_to__class__2ì  s¬   € õ 	-ô	˜t×3Ñ3Ó5ô 	ñ   ¨¨Ó5ˆØ×Ñ™˜a› $Ô'ô	�4ô 	ð 	×Ñ™˜a› $Ô'ô	�Iô 	ð ×ÑœyÕ)ÙŒG÷ *ð +ŒØ×Ñ™˜q› 4Õ(÷	 *Õ)ús   ÂB4Â4
Cc                 ó�   • U R                  5       nU R                  [        5         SUl        S S S 5        g ! , (       d  f       g = f)Nzdifferent.module)ra   rt   r
  r!   )r+   r.  s     r   Útest__module__is_readonlyÚ-InterfaceClassTests.test__module__is_readonly  s.   € Ø�}‰}‹ˆØ×Ñœ~Õ.Ø0ˆDŒO÷ /×.Ö.ús	   ¦7·
A)ÚITestr   NNN)6r    r!   r"   r#   r\   ra   rl   r1  rA  rG  rK  rP  rV  r[  r^  re  ri  rl  rs  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*  r2  r:  r=  rA  rP  r\  r_  r$   r   r   r   r"  r"  •  s  † òð DHØ ôOò.òEò5ò$1ò1ò1òLò3ò<ò3ò
:ò9ò;òDò$Fò
ò(
ò0Aò,
ò,
ò&
ò0
ò8GòEò+ò3ò*ò"ò7ò6ò0FòKò7ò<ò*3ò"<ò.3ò48ò9ò
òò(ò"	(ò'ò$ò.)õ61r   r"  c                   óL  • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS rS r S r!S  r"S! r#S" r$S# r%S$ r&S% r'S& r(S' r)S( r*S) r+S* r,S+ r-S, r.S- r/S. r0S/ r1S0 r2S1 r3S2 r4S3 r5S4 r6S5 r7S6r8g7)8ÚInterfaceTestsi  c                 óx   ^• SSK Jm  SSK Jn   " U4S jSU5      nU R                  US   R                  U5        g )Nr   rþ  r´  c                   ó(   >• \ rS rSr Y " S5      rSrg)Ú<InterfaceTests.test_attributes_link_to_interface.<locals>.I1i  úMy attrr   N)r    r!   r"   r#   ré  r$   rþ  s   €r   ÚI1rf    s   ø† Ú˜YÓ'‹Dr   rh  ré  )r¸   rÿ  rµ  r8  r­   )r+   rµ  rh  rÿ  s      @r   Ú!test_attributes_link_to_interfaceÚ0InterfaceTests.test_attributes_link_to_interface  s/   ø€ Ý,Ý,÷	(�ô 	(ð 	�‰�b˜‘j×*Ñ*¨BÕ/r   c                 ód   • SSK Jn   " S SU5      nU R                  US   R                  U5        g )Nr   r´  c                   ó   • \ rS rSrS rSrg)Ú9InterfaceTests.test_methods_link_to_interface.<locals>.I1i  c                 ó   • g©zA methodNr   )r{   rB   Úbingos      r   ÚmethodÚ@InterfaceTests.test_methods_link_to_interface.<locals>.I1.method  r;  r   r   N©r    r!   r"   r#   rq  r$   r   r   r   rh  rm    s   † õr   rh  rq  )r¸   rµ  r8  r­   )r+   rµ  rh  s      r   Útest_methods_link_to_interfaceÚ-InterfaceTests.test_methods_link_to_interface  s+   € Ý,ô	�ô 	ð 	�‰�b˜‘l×,Ñ,¨bÕ1r   c                 óÞ  ^• SSK Jn  SSK Jn  SSK Jn   " S SU5      m " S SU5      n " U4S	 jS
5      nU" 5       nU R	                  TR                  U5      5        U R                  UR                  U5      5        U R                  TT5        U R                  TU" U5      5        U R                  XB" U5      5        U R                  TU" U5      5        U R                  XC" U5      5        g )Nr   r´  rÅ   r¶   c                   ó    • \ rS rSrS rS rSrg)Ú<InterfaceTests.test_classImplements_simple.<locals>.ICurrenti&  c                 ó   • g©Ú	docstringNr   ©r  r  s     r   Úmethod1ÚDInterfaceTests.test_classImplements_simple.<locals>.ICurrent.method1'  r;  r   c                 ó   • grz  r   r|  s     r   Úmethod2ÚDInterfaceTests.test_classImplements_simple.<locals>.ICurrent.method2*  r;  r   r   N)r    r!   r"   r#   r}  r€  r$   r   r   r   ÚICurrentrx  &  s   † ò õ r   r‚  c                   ó   • \ rS rSrSrg)Ú:InterfaceTests.test_classImplements_simple.<locals>.IOtheri-  r   Nr   r   r   r   r  r„  -  r6  r   r  c                   ó(   >• \ rS rSr Y rS rS rSrg)Ú;InterfaceTests.test_classImplements_simple.<locals>.Currenti0  c                 ó   • [        5       er   r   ©r+   r  r  s      r   r}  ÚCInterfaceTests.test_classImplements_simple.<locals>.Current.method13  ó   € Ü)Ó+Ð+r   c                 ó   • [        5       er   r   rˆ  s      r   r€  ÚCInterfaceTests.test_classImplements_simple.<locals>.Current.method26  rŠ  r   r   N)r    r!   r"   r#   Ú__implemented__r}  r€  r$   )r‚  s   €r   ÚCurrentr†  0  s   ø† Ù&ˆOò,õ,r   rŽ  )	r¸   rµ  rÆ   r·   rÝ   r»   r)   r|  rÎ  )r+   rµ  rÆ   r·   r  rŽ  Úcurrentr‚  s          @r   Útest_classImplements_simpleÚ*InterfaceTests.test_classImplements_simple!  sÇ   ø€ Ý,Ý0Ý-ô	 �yô 	 ô	�Yô 	÷	,ô 	,ñ “)ˆà�‰˜×.Ñ.¨wÓ7Ô8Ø×Ñ˜×-Ñ-¨gÓ6Ô7Ø×Ñ˜ 8Ô,Ø�‰�h¡¨gÓ 6Ô7Ø×Ñ˜ ¨wÓ!7Ô8Ø�‰�h¡
¨7Ó 3Ô4Ø×Ñ˜ ¨GÓ!4Õ5r   c                 óº  ^• SSK Jn  SSK Jn  SSK Jn   " S SU5      m " S ST5      n " U4S	 jS
5      nU" 5       nU R	                  TR                  U5      5        U R                  UR                  U5      5        U R                  TU" U5      5        U R                  XB" U5      5        U R                  TU" U5      5        U R                  XC" U5      5        g )Nr   r´  rÅ   r¶   c                   ó   • \ rS rSrS rSrg)ÚCInterfaceTests.test_classImplements_base_not_derived.<locals>.IBaseiH  c                  ó   • grz  r   r   r   r   rq  ÚJInterfaceTests.test_classImplements_base_not_derived.<locals>.IBase.methodI  r;  r   r   Nrs  r   r   r   ry  r”  H  ó   † õ r   ry  c                   ó   • \ rS rSrSrg)ÚFInterfaceTests.test_classImplements_base_not_derived.<locals>.IDerivediL  r   Nr   r   r   r   rz  r™  L  r6  r   rz  c                   ó"   >• \ rS rSr Y rS rSrg)ÚEInterfaceTests.test_classImplements_base_not_derived.<locals>.CurrentiO  c                 ó   • [        5       er   r   r©   s    r   rq  ÚLInterfaceTests.test_classImplements_base_not_derived.<locals>.Current.methodR  rŠ  r   r   N©r    r!   r"   r#   r�  rq  r$   )ry  s   €r   rŽ  r›  O  ó   ø† Ù#ˆOõ,r   rŽ  ©r¸   rµ  rÆ   r·   rÝ   r»   r|  rÎ  )r+   rµ  rÆ   r·   rz  rŽ  r�  ry  s          @r   Ú%test_classImplements_base_not_derivedÚ4InterfaceTests.test_classImplements_base_not_derivedC  s·   ø€ Ý,Ý0Ý-ô	 �Iô 	 ô	�uô 	÷	,ô 	,ñ “)ˆà�‰˜×+Ñ+¨GÓ4Ô5Ø×Ñ˜×/Ñ/°Ó8Ô9Ø�‰�e™]¨7Ó3Ô4Ø×Ñ˜ =°Ó#9Ô:Ø�‰�e™Z¨Ó0Ô1Ø×Ñ˜ :¨gÓ#6Õ7r   c                 óN  ^• SSK Jn  SSK Jn  SSK Jn   " S SU5      n " S SU5      m " U4S	 jS
5      nU" 5       nU R	                  UR                  U5      5        U R	                  TR                  U5      5        U R                  XB" U5      5        U R                  XB" U5      R                  5       5        U R                  TU" U5      5        U R                  XC" U5      5        U R                  XC" U5      R                  5       5        U R                  TU" U5      5        g )Nr   r´  rÅ   r¶   c                   ó   • \ rS rSrS rSrg)ÚCInterfaceTests.test_classImplements_base_and_derived.<locals>.IBaseic  c                  ó   • grz  r   r   r   r   rq  ÚJInterfaceTests.test_classImplements_base_and_derived.<locals>.IBase.methodd  r;  r   r   Nrs  r   r   r   ry  r¥  c  r—  r   ry  c                   ó   • \ rS rSrSrg)ÚFInterfaceTests.test_classImplements_base_and_derived.<locals>.IDerivedig  r   Nr   r   r   r   rz  r©  g  r6  r   rz  c                   ó"   >• \ rS rSr Y rS rSrg)ÚEInterfaceTests.test_classImplements_base_and_derived.<locals>.Currentij  c                 ó   • [        5       er   r   r©   s    r   rq  ÚLInterfaceTests.test_classImplements_base_and_derived.<locals>.Current.methodm  rŠ  r   r   Nrž  )rz  s   €r   rŽ  r«  j  s   ø† Ù&ˆOõ,r   rŽ  )r¸   rµ  rÆ   r·   rÝ   rÎ  r|  Ú	flattened)r+   rµ  rÆ   r·   ry  rŽ  r�  rz  s          @r   Ú%test_classImplements_base_and_derivedÚ4InterfaceTests.test_classImplements_base_and_derived^  sí   ø€ Ý,Ý0Ý-ô	 �Iô 	 ô	�uô 	÷	,ô 	,ñ “)ˆà�‰˜×+Ñ+¨GÓ4Ô5Ø�‰˜×.Ñ.¨wÓ7Ô8Ø×Ñ˜ ¨gÓ 6Ô7Ø�‰�e˜]¨7Ó3×=Ñ=Ó?Ô@Ø�‰�h¡¨gÓ 6Ô7Ø×Ñ˜ 
¨7Ó 3Ô4Ø�‰�e˜Z¨Ó0×:Ñ:Ó<Ô=Ø�‰�h¡
¨7Ó 3Õ4r   c                 óð  ^^	• SSK Jn  SSK Jn  SSK Jn   " S SU5      m " S ST5      m	 " U4S	 jS
5      n " U	4S jS5      n " S SXE5      nU" 5       nU R	                  TR                  U5      5        U R	                  T	R                  U5      5        U R                  TU" U5      5        U R                  T	U" U5      5        U R                  TU" U5      5        U R                  T	U" U5      5        g )Nr   r´  rÅ   r¶   c                   ó   • \ rS rSrS rSrg)Ú;InterfaceTests.test_classImplements_multiple.<locals>.ILefti€  c                  ó   • grz  r   r   r   r   rq  ÚBInterfaceTests.test_classImplements_multiple.<locals>.ILeft.method�  r;  r   r   Nrs  r   r   r   ÚILeftr³  €  r—  r   r¶  c                   ó   • \ rS rSrSrg)Ú<InterfaceTests.test_classImplements_multiple.<locals>.IRighti„  r   Nr   r   r   r   ÚIRightr¸  „  r6  r   r¹  c                   ó"   >• \ rS rSr Y rS rSrg)Ú:InterfaceTests.test_classImplements_multiple.<locals>.Lefti‡  c                 ó   • [        5       er   r   r©   s    r   rq  ÚAInterfaceTests.test_classImplements_multiple.<locals>.Left.methodŠ  rŠ  r   r   Nrž  ©r¶  s   €r   ÚLeftr»  ‡  rŸ  r   r¿  c                   ó   >• \ rS rSr Y rSrg)Ú;InterfaceTests.test_classImplements_multiple.<locals>.Righti�  r   N©r    r!   r"   r#   r�  r$   ©r¹  s   €r   ÚRightrÁ  �  ó   ø† Ù$‹Or   rÄ  c                   ó   • \ rS rSrSrg)Ú:InterfaceTests.test_classImplements_multiple.<locals>.Ambii�  r   Nr   r   r   r   ÚAmbirÇ  �  r6  r   rÈ  )r¸   rµ  rÆ   r·   rÝ   r|  )
r+   rµ  rÆ   r·   r¿  rÄ  rÈ  Úambir¶  r¹  s
           @@r   Útest_classImplements_multipleÚ,InterfaceTests.test_classImplements_multiple{  sÇ   ù€ Ý,Ý0Ý-ô	 �Iô 	 ô	�Uô 	÷	,ô 	,÷	%ô 	%ô	�4ô 	ñ ‹vˆà�‰˜×+Ñ+¨DÓ1Ô2Ø�‰˜×,Ñ,¨TÓ2Ô3Ø�‰�e™]¨4Ó0Ô1Ø�‰�f™m¨DÓ1Ô2Ø�‰�e™Z¨Ó-Ô.Ø�‰�f™j¨Ó.Õ/r   c                 óÐ  ^^^	^
^• SSK Jn  SSK Jn  SSK Jn   " S SU5      m " S ST5      m	 " S	 S
U5      m " U4S jS5      m
 " U	4S jS5      n " U4S jS5      m " U
U4S jST
U5      nU" 5       nU R	                  TR                  U5      5        U R                  T	R                  U5      5        U R	                  TR                  U5      5        U R                  TU" U5      5        U R                  T	U" U5      5        U R                  TU" U5      5        U R                  TU" U5      5        U R                  T	U" U5      5        U R                  TU" U5      5        g )Nr   r´  rÅ   r¶   c                   ó   • \ rS rSrS rSrg)ÚPInterfaceTests.test_classImplements_multiple_w_explict_implements.<locals>.ILefti¡  c                  ó   • grz  r   r   r   r   rq  ÚWInterfaceTests.test_classImplements_multiple_w_explict_implements.<locals>.ILeft.method£  r;  r   r   Nrs  r   r   r   r¶  rÎ  ¡  s   † õ r   r¶  c                   ó   • \ rS rSrSrg)ÚQInterfaceTests.test_classImplements_multiple_w_explict_implements.<locals>.IRighti¦  r   Nr   r   r   r   r¹  rÒ  ¦  r6  r   r¹  c                   ó   • \ rS rSrSrg)ÚQInterfaceTests.test_classImplements_multiple_w_explict_implements.<locals>.IOtheri©  r   Nr   r   r   r   r  rÔ  ©  r6  r   r  c                   ó"   >• \ rS rSr Y rS rSrg)ÚOInterfaceTests.test_classImplements_multiple_w_explict_implements.<locals>.Lefti¬  c                 ó   • [        5       er   r   r©   s    r   rq  ÚVInterfaceTests.test_classImplements_multiple_w_explict_implements.<locals>.Left.method¯  rŠ  r   r   Nrž  r¾  s   €r   r¿  rÖ  ¬  rŸ  r   r¿  c                   ó   >• \ rS rSr Y rSrg)ÚPInterfaceTests.test_classImplements_multiple_w_explict_implements.<locals>.Righti²  r   NrÂ  rÃ  s   €r   rÄ  rÚ  ²  rÅ  r   rÄ  c                   ó   >• \ rS rSr Y rSrg)ÚPInterfaceTests.test_classImplements_multiple_w_explict_implements.<locals>.Otheriµ  r   NrÂ  )r  s   €r   ÚOtherrÜ  µ  rÅ  r   rÝ  c                   óJ   >• \ rS rSr Y R                   YR                  4rSrg)ÚPInterfaceTests.test_classImplements_multiple_w_explict_implements.<locals>.Mixedi¸  r   NrÂ  )r¿  rÝ  s   €€r   ÚMixedrß  ¸  s   ø† Ù"×2Ñ2±E×4IÑ4IÐI‹Or   rà  r   )r+   rµ  rÆ   r·   rÄ  rà  Úmixedr¶  r  r¹  r¿  rÝ  s          @@@@@r   Ú2test_classImplements_multiple_w_explict_implementsÚAInterfaceTests.test_classImplements_multiple_w_explict_implementsœ  s*  ü€ Ý,Ý0Ý-ô	 �Iô 	 ô
	�Uô 	ô	�Yô 	÷	,ô 	,÷	%ô 	%÷	%ô 	%÷	Jð 	J�D˜%ô 	Jñ “ˆà�‰˜×+Ñ+¨EÓ2Ô3Ø×Ñ˜×-Ñ-¨eÓ4Ô5Ø�‰˜×,Ñ,¨UÓ3Ô4Ø�‰�e™]¨5Ó1Ô2Ø×Ñ˜¡¨uÓ!5Ô6Ø�‰�f™m¨EÓ2Ô3Ø�‰�e™Z¨Ó.Ô/Ø×Ñ˜¡¨EÓ!2Ô3Ø�‰�f™j¨Ó/Õ0r   c                 ó0  • SSK Jn  UR                  nU" S5      nU" SU45      nU" S5      nU" SXT45      nU R                  UR	                  U5      5        U R                  UR	                  U5      5        U R                  UR	                  U5      5        U R                  UR	                  U5      5        U R                  UR	                  U5      5        U R                  UR	                  U5      5        U R                  UR	                  U5      5        g )Nr   r´  ÚFunInterfaceÚBarInterfaceÚBobInterfaceÚBazInterface)r¸   rµ  rO  rÝ   rð  r»   )r+   rµ  Únewrå  ræ  rç  rè  s          r   ÚtestInterfaceExtendsInterfaceÚ,InterfaceTests.testInterfaceExtendsInterfaceÇ  sè   € Ý,à×!Ñ!ˆÙ˜>Ó*ˆÙ˜>¨L¨?Ó;ˆÙ˜>Ó*ˆÙ˜>¨LÐ+HÓIˆà�‰˜×,Ñ,¨\Ó:Ô;Ø�‰˜×,Ñ,¨\Ó:Ô;Ø�‰˜×,Ñ,¨\Ó:Ô;Ø×Ñ˜×-Ñ-¨lÓ;Ô<Ø×Ñ˜×-Ñ-¨lÓ;Ô<Ø�‰˜×,Ñ,¨\Ó:Ô;Ø×Ñ˜×-Ñ-¨lÓ;Õ<r   c                 ó’   ^^• SSK Jm  SSK Jn  SSKJn   " U4S jSU5      m " U4S jS5      nU R                  U" TU5      5        g )	Nr   rþ  r´  )ÚverifyClassc                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú1InterfaceTests.test_verifyClass.<locals>.ICheckMeiÝ  rg  c                  ó   • gro  r   r   r   r   rq  Ú8InterfaceTests.test_verifyClass.<locals>.ICheckMe.methodà  r;  r   r   N©r    r!   r"   r#   ré  rq  r$   rþ  s   €r   ÚICheckMerï  Ý  ó   ø† Ú˜YÓ'ˆDõr   ró  c                   ó&   >• \ rS rSr Y rSrS rSrg)Ú0InterfaceTests.test_verifyClass.<locals>.CheckMeiã  Úvaluec                 ó   • [        5       er   r   r©   s    r   rq  Ú7InterfaceTests.test_verifyClass.<locals>.CheckMe.methodç  rŠ  r   r   N©r    r!   r"   r#   r�  ré  rq  r$   ©ró  s   €r   ÚCheckMerö  ã  ó   ø† Ù&ˆOØˆDõ,r   rü  )r¸   rÿ  rµ  r�   rí  rÝ   )r+   rµ  rí  rü  rÿ  ró  s       @@r   Útest_verifyClassÚInterfaceTests.test_verifyClassØ  s7   ù€ Ý,Ý,Ý5÷	�yô 	÷	,ô 	,ð 	�‰™ H¨gÓ6Õ7r   c                 ó    ^^• SSK Jm  SSK Jn  SSKJn   " U4S jSU5      m " U4S jS5      nU" 5       nU R                  U" TU5      5        g )	Nr   rþ  r´  rš   c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú2InterfaceTests.test_verifyObject.<locals>.ICheckMeiñ  rg  c                  ó   • gro  r   r   r   r   rq  Ú9InterfaceTests.test_verifyObject.<locals>.ICheckMe.methodô  r;  r   r   Nrò  rþ  s   €r   ró  r  ñ  rô  r   ró  c                   ó&   >• \ rS rSr Y rSrS rSrg)Ú1InterfaceTests.test_verifyObject.<locals>.CheckMei÷  r÷  c                 ó   • [        5       er   r   r©   s    r   rq  Ú8InterfaceTests.test_verifyObject.<locals>.CheckMe.methodû  rŠ  r   r   Nrú  rû  s   €r   rü  r  ÷  rý  r   rü  )r¸   rÿ  rµ  r�   r›   rÝ   )r+   rµ  r›   rü  Úcheck_merÿ  ró  s        @@r   Útest_verifyObjectÚ InterfaceTests.test_verifyObjectì  s>   ù€ Ý,Ý,Ý6÷	�yô 	÷	,ô 	,ñ “9ˆà�‰™ X¨xÓ8Õ9r   c                 óf   • SSK Jn   " S SU5      nU R                  UR                  U5      5        g )Nr   r´  c                   ó   • \ rS rSrSrg)ÚLInterfaceTests.test_interface_object_provides_Interface.<locals>.AnInterfacei  r   Nr   r   r   r   ÚAnInterfacer    r6  r   r  )r¸   rµ  rÝ   r·   )r+   rµ  r  s      r   Ú(test_interface_object_provides_InterfaceÚ7InterfaceTests.test_interface_object_provides_Interface  s*   € Ý,ô	˜)ô 	ð 	�‰˜	×,Ñ,¨[Ó9Õ:r   c                 ó�   ^• SSK Jm  SSK Jn   " U4S jSU5      nU R                  [	        UR                  5       5      SS/5        g )Nr   rþ  r´  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú1InterfaceTests.test_names_simple.<locals>.ISimplei  rg  c                  ó   • grz  r   r   r   r   rq  Ú8InterfaceTests.test_names_simple.<locals>.ISimple.method  r;  r   r   Nrò  rþ  s   €r   ÚISimpler    ó   ø† Ú˜YÓ'ˆDõ r   r  ré  rq  ©r¸   rÿ  rµ  r)   r  r>  ©r+   rµ  r  rÿ  s      @r   Útest_names_simpleÚ InterfaceTests.test_names_simple
  s7   ø€ Ý,Ý,÷	 �iô 	 ð 	×Ñœ §¡£Ó0°6¸8Ð2DÕEr   c                 ó   ^• SSK Jm  SSK Jn   " U4S jSU5      n " U4S jSU5      nU R                  [	        UR                  5       5      / SQ5        U R                  [	        UR                  S	S
95      / SQ5        g )Nr   rþ  r´  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú0InterfaceTests.test_names_derived.<locals>.IBasei  rg  c                  ó   • grz  r   r   r   r   rq  Ú7InterfaceTests.test_names_derived.<locals>.IBase.method  r;  r   r   Nrò  rþ  s   €r   ry  r    r  r   ry  c                   ó4   >• \ rS rSr Y " S5      rS rS rSrg)Ú3InterfaceTests.test_names_derived.<locals>.IDerivedi   úMy attr2c                  ó   • grz  r   r   r   r   rq  Ú:InterfaceTests.test_names_derived.<locals>.IDerived.method#  r;  r   c                  ó   • grz  r   r   r   r   r€  Ú;InterfaceTests.test_names_derived.<locals>.IDerived.method2&  r;  r   r   N©r    r!   r"   r#   Úattr2rq  r€  r$   rþ  s   €r   rz  r#     s   ø† Ú˜jÓ)ˆEò õ r   rz  )r*  rq  r€  Tr|  ©ré  r*  rq  r€  r  ©r+   rµ  ry  rz  rÿ  s       @r   Útest_names_derivedÚ!InterfaceTests.test_names_derived  sf   ø€ Ý,Ý,÷	 �Iô 	 ÷	 �uô 	 ð 	×Ñœ §¡Ó 0Ó1Ú7ô	9à×Ñœ §¡°4 Ð 8Ó9Ú?õ	Ar   c                 ó~  ^• SSK Jm  SSK Jn  SSKJn   " U4S jSU5      n[        UR                  5       5      nU R                  [        U5      S5        U R                  US   S   S5        U R                  US   S	   T5        U R                  US   S	   R                  S5        U R                  US   S	   R                  S
5        U R                  US	   S   S5        U R                  US	   S	   U5        U R                  US	   S	   R                  S5        U R                  US	   S	   R                  S5        g )Nr   rþ  r´  ©ÚMethodc                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú@InterfaceTests.test_namesAndDescriptions_simple.<locals>.ISimplei3  rg  c                  ó   • g©ú	My methodNr   r   r   r   rq  ÚGInterfaceTests.test_namesAndDescriptions_simple.<locals>.ISimple.method6  r;  r   r   Nrò  rþ  s   €r   r  r3  3  ó   ø† Ú˜YÓ'ˆDõr   r  r¶  ré  r¿  rg  rq  r6  ©r¸   rÿ  rµ  r(   r1  r  r¨  r)   r¸  r  r    rf   )r+   rµ  r1  r  Úname_valuesrÿ  s        @r   Ú test_namesAndDescriptions_simpleÚ/InterfaceTests.test_namesAndDescriptions_simple.  s"  ø€ Ý,Ý,Ý3÷	�iô 	ô ˜W×9Ñ9Ó;Ó<ˆà×Ñœ˜[Ó)¨1Ô-Ø×Ñ˜ Q™¨Ñ*¨FÔ3Ø×Ñ˜k¨!™n¨QÑ/°Ô;Ø×Ñ˜ Q™¨Ñ*×3Ñ3°VÔ<Ø×Ñ˜ Q™¨Ñ*×2Ñ2°IÔ>Ø×Ñ˜ Q™¨Ñ*¨HÔ5Ø×Ñ˜k¨!™n¨QÑ/°Ô8Ø×Ñ˜ Q™¨Ñ*×3Ñ3°XÔ>Ø×Ñ˜ Q™¨Ñ*×2Ñ2°KÕ@r   c                 óˆ  ^• SSK Jm  SSK Jn  SSKJn   " U4S jSU5      n " U4S jSU5      n[        UR                  5       5      nU R                  [        U5      S	5        U R                  US   S   S
5        U R                  US   S   T5        U R                  US   S   R                  S
5        U R                  US   S   R                  S5        U R                  US   S   S5        U R                  US   S   U5        U R                  US   S   R                  S5        U R                  US   S   R                  S5        U R                  US   S   S5        U R                  US   S   U5        U R                  US   S   R                  S5        U R                  US   S   R                  S5        [        UR                  SS95      nU R                  [        U5      S5        U R                  US   S   S5        U R                  US   S   T5        U R                  US   S   R                  S5        U R                  US   S   R                  S5        U R                  US   S   S
5        U R                  US   S   T5        U R                  US   S   R                  S
5        U R                  US   S   R                  S5        U R                  US   S   S5        U R                  US   S   U5        U R                  US   S   R                  S5        U R                  US   S   R                  S5        U R                  US	   S   S5        U R                  US	   S   U5        U R                  US	   S   R                  S5        U R                  US	   S   R                  S5        g )Nr   rþ  r´  r0  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú?InterfaceTests.test_namesAndDescriptions_derived.<locals>.IBaseiJ  rg  c                  ó   • gr5  r   r   r   r   rq  ÚFInterfaceTests.test_namesAndDescriptions_derived.<locals>.IBase.methodM  r;  r   r   Nrò  rþ  s   €r   ry  r?  J  r8  r   ry  c                   ó4   >• \ rS rSr Y " S5      rS rS rSrg)ÚBInterfaceTests.test_namesAndDescriptions_derived.<locals>.IDerivediP  r$  c                  ó   • g©úMy method, overriddenNr   r   r   r   rq  ÚIInterfaceTests.test_namesAndDescriptions_derived.<locals>.IDerived.methodS  r;  r   c                  ó   • g©ú
My method2Nr   r   r   r   r€  ÚJInterfaceTests.test_namesAndDescriptions_derived.<locals>.IDerived.method2V  r;  r   r   Nr)  rþ  s   €r   rz  rC  P  ó   ø† Ú˜jÓ)ˆEò(õr   rz  é   r*  r¿  r$  rq  rF  r¶  r€  rJ  Tr|  é   ré  rg  r9  )r+   rµ  r1  ry  rz  r:  rÿ  s         @r   Ú!test_namesAndDescriptions_derivedÚ0InterfaceTests.test_namesAndDescriptions_derivedE  s�  ø€ Ý,Ý,Ý3÷	�Iô 	÷	�uô 	ô ˜X×:Ñ:Ó<Ó=ˆà×Ñœ˜[Ó)¨1Ô-Ø×Ñ˜ Q™¨Ñ*¨GÔ4Ø×Ñ˜k¨!™n¨QÑ/°Ô;Ø×Ñ˜ Q™¨Ñ*×3Ñ3°WÔ=Ø×Ñ˜ Q™¨Ñ*×2Ñ2°JÔ?Ø×Ñ˜ Q™¨Ñ*¨HÔ5Ø×Ñ˜k¨!™n¨QÑ/°Ô8Ø×Ñ˜ Q™¨Ñ*×3Ñ3°XÔ>Ø×Ñ˜ Q™¨Ñ*×2Ñ2Ð4KÔLØ×Ñ˜ Q™¨Ñ*¨IÔ6Ø×Ñ˜k¨!™n¨QÑ/°Ô8Ø×Ñ˜ Q™¨Ñ*×3Ñ3°YÔ?Ø×Ñ˜ Q™¨Ñ*×2Ñ2°LÔAä˜X×:Ñ:¸tÐ:ÐDÓEˆà×Ñœ˜[Ó)¨1Ô-Ø×Ñ˜ Q™¨Ñ*¨FÔ3Ø×Ñ˜k¨!™n¨QÑ/°Ô;Ø×Ñ˜ Q™¨Ñ*×3Ñ3°VÔ<Ø×Ñ˜ Q™¨Ñ*×2Ñ2°IÔ>Ø×Ñ˜ Q™¨Ñ*¨GÔ4Ø×Ñ˜k¨!™n¨QÑ/°Ô;Ø×Ñ˜ Q™¨Ñ*×3Ñ3°WÔ=Ø×Ñ˜ Q™¨Ñ*×2Ñ2°JÔ?Ø×Ñ˜ Q™¨Ñ*¨HÔ5Ø×Ñ˜k¨!™n¨QÑ/°Ô8Ø×Ñ˜ Q™¨Ñ*×3Ñ3°XÔ>Ø×Ñ˜ Q™¨Ñ*×2Ñ2Ð4KÔLØ×Ñ˜ Q™¨Ñ*¨IÔ6Ø×Ñ˜k¨!™n¨QÑ/°Ô8Ø×Ñ˜ Q™¨Ñ*×3Ñ3°YÔ?Ø×Ñ˜ Q™¨Ñ*×2Ñ2°LÕAr   c                 óh   • SSK Jn   " S SU5      nU R                  [        UR                  S5        g )Nr   r´  c                   ó   • \ rS rSrSrg)ÚIInterfaceTests.test_getDescriptionFor_nonesuch_no_default.<locals>.IEmptyi€  r   Nr   r   r   r   ÚIEmptyrS  €  r6  r   rT  rs   )r¸   rµ  rt   ru   r½  ©r+   rµ  rT  s      r   Ú*test_getDescriptionFor_nonesuch_no_defaultÚ9InterfaceTests.test_getDescriptionFor_nonesuch_no_default}  s+   € Ý,ô	�Yô 	ð 	×Ñœ( F×$<Ñ$<¸jÕIr   c                 ó°  ^• SSK Jm  SSK Jn  SSKJn   " U4S jSU5      nUR                  S5      nU R                  UT5        U R                  UR                  S5        U R                  UR                  S5        UR                  S	5      nU R                  XR5        U R                  UR                  S	5        U R                  UR                  S
5        g )Nr   rþ  r´  r0  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú=InterfaceTests.test_getDescriptionFor_simple.<locals>.ISimpleiŠ  rg  c                  ó   • gr5  r   r   r   r   rq  ÚDInterfaceTests.test_getDescriptionFor_simple.<locals>.ISimple.method�  r;  r   r   Nrò  rþ  s   €r   r  rZ  Š  r8  r   r  ré  rg  rq  r6  ©
r¸   rÿ  rµ  r(   r1  r½  r  r)   r    rf   ©r+   rµ  r1  r  Úa_descÚm_descrÿ  s         @r   Útest_getDescriptionFor_simpleÚ,InterfaceTests.test_getDescriptionFor_simple…  s¨   ø€ Ý,Ý,Ý3÷	�iô 	ð ×*Ñ*¨6Ó2ˆØ×Ñ˜f iÔ0Ø×Ñ˜Ÿ™¨&Ô1Ø×Ñ˜Ÿ™¨Ô3à×*Ñ*¨8Ó4ˆØ×Ñ˜fÔ-Ø×Ñ˜Ÿ™¨(Ô3Ø×Ñ˜Ÿ™¨Õ5r   c                 ó6  ^	• SSK Jm	  SSK Jn  SSKJn   " U	4S jSU5      n " U	4S jSU5      nUR                  S	5      nU R                  UT	5        U R                  UR                  S	5        U R                  UR                  S
5        UR                  S5      nU R                  Xb5        U R                  UR                  S5        U R                  UR                  S5        UR                  S5      nU R                  UT	5        U R                  UR                  S5        U R                  UR                  S5        UR                  S5      nU R                  X‚5        U R                  UR                  S5        U R                  UR                  S5        g )Nr   rþ  r´  r0  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú<InterfaceTests.test_getDescriptionFor_derived.<locals>.IBaseiŸ  rg  c                  ó   • gr5  r   r   r   r   rq  ÚCInterfaceTests.test_getDescriptionFor_derived.<locals>.IBase.method¢  r;  r   r   Nrò  rþ  s   €r   ry  re  Ÿ  r8  r   ry  c                   ó4   >• \ rS rSr Y " S5      rS rS rSrg)Ú?InterfaceTests.test_getDescriptionFor_derived.<locals>.IDerivedi¥  r$  c                  ó   • grE  r   r   r   r   rq  ÚFInterfaceTests.test_getDescriptionFor_derived.<locals>.IDerived.method¨  r;  r   c                  ó   • grI  r   r   r   r   r€  ÚGInterfaceTests.test_getDescriptionFor_derived.<locals>.IDerived.method2«  r;  r   r   Nr)  rþ  s   €r   rz  ri  ¥  rL  r   rz  ré  rg  rq  rF  r*  r$  r€  rJ  r]  ©
r+   rµ  r1  ry  rz  r_  r`  Úa2_descÚm2_descrÿ  s
            @r   Útest_getDescriptionFor_derivedÚ-InterfaceTests.test_getDescriptionFor_derivedš  sG  ø€ Ý,Ý,Ý3÷	�Iô 	÷	�uô 	ð ×+Ñ+¨FÓ3ˆØ×Ñ˜f iÔ0Ø×Ñ˜Ÿ™¨&Ô1Ø×Ñ˜Ÿ™¨Ô3à×+Ñ+¨HÓ5ˆØ×Ñ˜fÔ-Ø×Ñ˜Ÿ™¨(Ô3Ø×Ñ˜Ÿ™Ð)@ÔAà×,Ñ,¨WÓ5ˆØ×Ñ˜g yÔ1Ø×Ñ˜×)Ñ)¨7Ô3Ø×Ñ˜Ÿ™¨*Ô5à×,Ñ,¨YÓ7ˆØ×Ñ˜gÔ.Ø×Ñ˜×)Ñ)¨9Ô5Ø×Ñ˜Ÿ™¨,Õ7r   c                 óh   • SSK Jn   " S SU5      nU R                  [        UR                  S5        g )Nr   r´  c                   ó   • \ rS rSrSrg)Ú7InterfaceTests.test___getitem__nonesuch.<locals>.IEmptyiÅ  r   Nr   r   r   r   rT  ru  Å  r6  r   rT  rs   )r¸   rµ  rt   ru   Ú__getitem__rU  s      r   Útest___getitem__nonesuchÚ'InterfaceTests.test___getitem__nonesuchÂ  s+   € Ý,ô	�Yô 	ð 	×Ñœ( F×$6Ñ$6¸
ÕCr   c                 ó€  ^• SSK Jm  SSK Jn  SSKJn   " U4S jSU5      nUS   nU R                  UT5        U R                  UR                  S5        U R                  UR                  S5        US	   nU R                  XR5        U R                  UR                  S	5        U R                  UR                  S
5        g )Nr   rþ  r´  r0  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú6InterfaceTests.test___getitem__simple.<locals>.ISimpleiÏ  rg  c                  ó   • gr5  r   r   r   r   rq  Ú=InterfaceTests.test___getitem__simple.<locals>.ISimple.methodÒ  r;  r   r   Nrò  rþ  s   €r   r  r{  Ï  r8  r   r  ré  rg  rq  r6  ©	r¸   rÿ  rµ  r(   r1  r  r)   r    rf   r^  s         @r   Útest___getitem__simpleÚ%InterfaceTests.test___getitem__simpleÊ  s›   ø€ Ý,Ý,Ý3÷	�iô 	ð ˜‘ˆØ×Ñ˜f iÔ0Ø×Ñ˜Ÿ™¨&Ô1Ø×Ñ˜Ÿ™¨Ô3à˜Ñ"ˆØ×Ñ˜fÔ-Ø×Ñ˜Ÿ™¨(Ô3Ø×Ñ˜Ÿ™¨Õ5r   c                 óÖ  ^	• SSK Jm	  SSK Jn  SSKJn   " U	4S jSU5      n " U	4S jSU5      nUS	   nU R                  UT	5        U R                  UR                  S	5        U R                  UR                  S
5        US   nU R                  Xb5        U R                  UR                  S5        U R                  UR                  S5        US   nU R                  UT	5        U R                  UR                  S5        U R                  UR                  S5        US   nU R                  X‚5        U R                  UR                  S5        U R                  UR                  S5        g )Nr   rþ  r´  r0  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú6InterfaceTests.test___getitem___derived.<locals>.IBaseiä  rg  c                  ó   • gr5  r   r   r   r   rq  Ú=InterfaceTests.test___getitem___derived.<locals>.IBase.methodç  r;  r   r   Nrò  rþ  s   €r   ry  rƒ  ä  r8  r   ry  c                   ó4   >• \ rS rSr Y " S5      rS rS rSrg)Ú9InterfaceTests.test___getitem___derived.<locals>.IDerivediê  r$  c                  ó   • grE  r   r   r   r   rq  Ú@InterfaceTests.test___getitem___derived.<locals>.IDerived.methodí  r;  r   c                  ó   • grI  r   r   r   r   r€  ÚAInterfaceTests.test___getitem___derived.<locals>.IDerived.method2ð  r;  r   r   Nr)  rþ  s   €r   rz  r‡  ê  rL  r   rz  ré  rg  rq  rF  r*  r$  r€  rJ  r~  rn  s
            @r   Útest___getitem___derivedÚ'InterfaceTests.test___getitem___derivedß  s/  ø€ Ý,Ý,Ý3÷	�Iô 	÷	�uô 	ð ˜&Ñ!ˆØ×Ñ˜f iÔ0Ø×Ñ˜Ÿ™¨&Ô1Ø×Ñ˜Ÿ™¨Ô3à˜(Ñ#ˆØ×Ñ˜fÔ-Ø×Ñ˜Ÿ™¨(Ô3Ø×Ñ˜Ÿ™Ð)@ÔAà˜7Ñ#ˆØ×Ñ˜g yÔ1Ø×Ñ˜×)Ñ)¨7Ô3Ø×Ñ˜Ÿ™¨*Ô5à˜9Ñ%ˆØ×Ñ˜gÔ.Ø×Ñ˜×)Ñ)¨9Ô5Ø×Ñ˜Ÿ™¨,Õ7r   c                 óJ   • SSK Jn   " S SU5      nU R                  SU5        g )Nr   r´  c                   ó   • \ rS rSrSrg)Ú8InterfaceTests.test___contains__nonesuch.<locals>.IEmptyi
  r   Nr   r   r   r   rT  r�  
  r6  r   rT  rs   )r¸   rµ  rÎ  rU  s      r   Útest___contains__nonesuchÚ(InterfaceTests.test___contains__nonesuch  s#   € Ý,ô	�Yô 	ð 	×Ñ˜ VÕ,r   c                 ó‚   ^• SSK Jm  SSK Jn   " U4S jSU5      nU R                  SU5        U R                  SU5        g )Nr   rþ  r´  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú7InterfaceTests.test___contains__simple.<locals>.ISimplei  rg  c                  ó   • gr5  r   r   r   r   rq  Ú>InterfaceTests.test___contains__simple.<locals>.ISimple.method  r;  r   r   Nrò  rþ  s   €r   r  r•    r8  r   r  ré  rq  ©r¸   rÿ  rµ  r|  r  s      @r   Útest___contains__simpleÚ&InterfaceTests.test___contains__simple  s3   ø€ Ý,Ý,÷	�iô 	ð 	�‰�f˜gÔ&Ø�‰�h Õ(r   c                 óæ   ^• SSK Jm  SSK Jn   " U4S jSU5      n " U4S jSU5      nU R                  SU5        U R                  S	U5        U R                  S
U5        U R                  SU5        g )Nr   rþ  r´  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú6InterfaceTests.test___contains__derived.<locals>.IBasei   rg  c                  ó   • gr5  r   r   r   r   rq  Ú=InterfaceTests.test___contains__derived.<locals>.IBase.method#  r;  r   r   Nrò  rþ  s   €r   ry  r�     r8  r   ry  c                   ó4   >• \ rS rSr Y " S5      rS rS rSrg)Ú9InterfaceTests.test___contains__derived.<locals>.IDerivedi&  r$  c                  ó   • grE  r   r   r   r   rq  Ú@InterfaceTests.test___contains__derived.<locals>.IDerived.method)  r;  r   c                  ó   • grI  r   r   r   r   r€  ÚAInterfaceTests.test___contains__derived.<locals>.IDerived.method2,  r;  r   r   Nr)  rþ  s   €r   rz  r¡  &  rL  r   rz  ré  rq  r*  r€  r˜  r,  s       @r   Útest___contains__derivedÚ'InterfaceTests.test___contains__derived  s[   ø€ Ý,Ý,÷	�Iô 	÷	�uô 	ð 	�‰�f˜hÔ'Ø�‰�h Ô)Ø�‰�g˜xÔ(Ø�‰�i Õ*r   c                 ó\   • SSK Jn   " S SU5      nU R                  [        U5      / 5        g )Nr   r´  c                   ó   • \ rS rSrSrg)Ú1InterfaceTests.test___iter__empty.<locals>.IEmptyi7  r   Nr   r   r   r   rT  rª  7  r6  r   rT  )r¸   rµ  r)   rh   rU  s      r   Útest___iter__emptyÚ!InterfaceTests.test___iter__empty4  s'   € Ý,ô	�Yô 	ð 	×Ñœ˜f› rÕ*r   c                 ó†   ^• SSK Jm  SSK Jn   " U4S jSU5      nU R                  [	        [        U5      5      SS/5        g )Nr   rþ  r´  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú3InterfaceTests.test___iter__simple.<locals>.ISimplei@  rg  c                  ó   • gr5  r   r   r   r   rq  Ú:InterfaceTests.test___iter__simple.<locals>.ISimple.methodC  r;  r   r   Nrò  rþ  s   €r   r  r¯  @  r8  r   r  ré  rq  ©r¸   rÿ  rµ  r)   r  rh   r  s      @r   Útest___iter__simpleÚ"InterfaceTests.test___iter__simple<  s5   ø€ Ý,Ý,÷	�iô 	ð 	×Ñœ¤ W£Ó.°¸Ð0BÕCr   c                 ó¢   ^• SSK Jm  SSK Jn   " U4S jSU5      n " U4S jSU5      nU R                  [	        [        U5      5      / SQ5        g )	Nr   rþ  r´  c                   ó.   >• \ rS rSr Y " S5      rS rSrg)Ú2InterfaceTests.test___iter__derived.<locals>.IBaseiL  rg  c                  ó   • gr5  r   r   r   r   rq  Ú9InterfaceTests.test___iter__derived.<locals>.IBase.methodO  r;  r   r   Nrò  rþ  s   €r   ry  r·  L  r8  r   ry  c                   ó4   >• \ rS rSr Y " S5      rS rS rSrg)Ú5InterfaceTests.test___iter__derived.<locals>.IDerivediR  r$  c                  ó   • grE  r   r   r   r   rq  Ú<InterfaceTests.test___iter__derived.<locals>.IDerived.methodU  r;  r   c                  ó   • grI  r   r   r   r   r€  Ú=InterfaceTests.test___iter__derived.<locals>.IDerived.method2X  r;  r   r   Nr)  rþ  s   €r   rz  r»  R  rL  r   rz  r+  r²  r,  s       @r   Útest___iter__derivedÚ#InterfaceTests.test___iter__derivedH  s@   ø€ Ý,Ý,÷	�Iô 	÷	�uô 	ð 	×Ñœ¤ X£Ó/Ú?õ	Ar   c                 ór   • SSK Jn   " S SU5      nUS   nU R                  UR                  S5      S5        g )Nr   r´  c                   ó(   • \ rS rSrS rS\l        Srg)ÚLInterfaceTests.test_function_attributes_become_tagged_values.<locals>.ITagMeia  c                  ó   • grz  r   r   r   r   rq  ÚSInterfaceTests.test_function_attributes_become_tagged_values.<locals>.ITagMe.methodb  r;  r   r¿  r   N)r    r!   r"   r#   rq  Úoptionalr$   r   r   r   ÚITagMerÄ  a  s   † ò àˆF�Or   rÈ  rq  rÇ  r¿  )r¸   rµ  r)   rv   )r+   rµ  rÈ  rq  s       r   Ú-test_function_attributes_become_tagged_valuesÚ<InterfaceTests.test_function_attributes_become_tagged_values^  s8   € Ý,ô	 �Yô 	 ð
 ˜Ñ!ˆØ×Ñ˜×.Ñ.¨zÓ:¸AÕ>r   c                 ó”   • SSK Jn   " S SU5      nU R                  UR                  S5        U R                  [	        U5      / 5        g )Nr   r´  c                   ó   • \ rS rSrSrSrg)Ú@InterfaceTests.test___doc___non_element.<locals>.IHaveADocStringil  Úxxxr   N©r    r!   r"   r#   rf   r$   r   r   r   ÚIHaveADocStringrÍ  l  ó   † Ür   rÐ  rÎ  )r¸   rµ  r)   rf   rh   )r+   rµ  rÐ  s      r   Útest___doc___non_elementÚ'InterfaceTests.test___doc___non_elementi  s>   € Ý,ô	˜iô 	ð 	×Ñ˜×0Ñ0°%Ô8Ø×Ñœ˜oÓ.°Õ3r   c                 óª   ^• SSK Jm  SSK Jn   " U4S jSU5      nU R                  UR                  S5        U R                  [        U5      S/5        g )Nr   rþ  r´  c                   ó,   >• \ rS rSrSr Y " S5      rSrg)Ú?InterfaceTests.test___doc___as_element.<locals>.IHaveADocStringiv  rÎ  úthe docr   NrÏ  rþ  s   €r   rÐ  rÖ  v  s   ø† ÙÚ 	Ó*‹Gr   rÐ  rd   rf   ©r¸   rÿ  rµ  r)   rf   rh   )r+   rµ  rÐ  rÿ  s      @r   Útest___doc___as_elementÚ&InterfaceTests.test___doc___as_elementr  sD   ø€ Ý,Ý,÷	+˜iô 	+ð 	×Ñ˜×0Ñ0°"Ô5Ø×Ñœ˜oÓ.°°Õ<r   c                 óä  • SSK Jn  U R                  XTR                  U5        / n UR                  X5        U R	                  S5        U R                  [        U5      U5        U Vs/ s H  owR                  S   PM     nnUR                  5         U H#  n	U R                  X“R                  S5      5        M%     g ! U a)  nU R                  UR                  S   U5         S nAN�S nAff = fs  snf )Nr   r÷  z&validateInvariants should always raise)
rU  rø  rt   ró  Úfailr)   r   r¸  ÚsortÚpop)
r+   Úhas_invariantÚ	error_lenÚ
error_msgsrm  rø  ÚeÚerrorÚmsgsÚmsgs
             r   Ú_errorsEqualÚInterfaceTests._errorsEqual}  sË   € Ý5Ø×Ñ˜'×#;Ñ#;¸]ÔKØˆð	/Ø×$Ñ$ ]Ô6Ø�I‰IÐ>Ô?ð 	×Ñœ˜Q› Ô+Ù+,Ó-ª1 %—
‘
˜1”©1ˆÐ-Ø�	‰	ŒÛˆCØ×Ñ˜S§.¡.°Ó"3Ö4ò øð ó 	/Ø×Ñ˜UŸZ™Z¨™]¨A×.Ñ.ûð	/üò .s   ¦"B; Á'C-Â;C*ÃC%Ã%C*c                 óä  ^^• SSK Jm  SSK Jn  SSK Jn  SSK Jm   " UU4S jSU5      n " S S	5      nU" 5       nU" XS5        U R                  UR                  S
5      [        /5        U R                  UR                  U5      S 5        SUl	        U R                  UR                  U5      S 5        SUl
        U R                  UR                  U5      S 5        U?	U R                  USS/U5        g )Nr   rþ  r´  ©ÚdirectlyProvidesr   c                   óL   >• \ rS rSr Y " S5      r Y " S5      r Y" \5        Srg)Ú8InterfaceTests.test_invariant_simple.<locals>.IInvarianti“  r{   ú*bar; must eval to Boolean True if foo doesr   N©r    r!   r"   r#   r{   rB   Ú_ifFooThenBarr$   ©rÿ  r   s   €€r   Ú
IInvariantrì  “  ó    ø† Ú˜EÓ"ˆCÚÐHÓIˆCÚ�m×$r   rñ  c                   ó   • \ rS rSrSrg)Ú:InterfaceTests.test_invariant_simple.<locals>.HasInvarianti˜  r   Nr   r   r   r   ÚHasInvariantrô  ˜  r6  r   rõ  r&   é   é*   r¿  úIf Foo, then Bar!)r¸   rÿ  rµ  rê  r   r)   rv   rï  ró  rB   r{   ræ  )r+   rµ  rê  rñ  rõ  rß  rÿ  r   s         @@r   Útest_invariant_simpleÚ$InterfaceTests.test_invariant_simple�  sß   ù€ Ý,Ý,Ý3Ý,÷	%ð 	%˜ô 	%÷
	ñ 	ñ %›ˆÙ˜Ô3ð 	×Ñ˜×2Ñ2°<Ó@Ü'˜ô	*à×Ñ˜×6Ñ6°}ÓEÀtÔLØˆÔØ×Ñ˜×6Ñ6°}ÓEÀtÔLØˆÔØ×Ñ˜×6Ñ6°}ÓEÀtÔLØÐØ×Ñ˜-¨Ð-@Ð,AØ$õ	&r   c                 ó  ^^• SSK Jm  SSK Jn  SSK Jn  SSK Jm   " UU4S jSU5      n " U4S jS	U5      n " S
 S5      nU R                  UR                  S5      [        /5        U" 5       nU" Xd5        SUl        U R                  USS/U5        SUl        SUl
        U R                  USS/U5        SUl        SUl
        U R                  USSS/U5        SUl        SUl
        U R                  UR                  U5      S 5        g )Nr   rþ  r´  ré  r   c                   óL   >• \ rS rSr Y " S5      r Y " S5      r Y" \5        Srg)Ú8InterfaceTests.test_invariant_nested.<locals>.IInvarianti±  r{   rí  r   Nrî  rð  s   €€r   rñ  rý  ±  rò  r   rñ  c                   ó(   >• \ rS rSr Y " \5        Srg)Ú;InterfaceTests.test_invariant_nested.<locals>.ISubInvarianti¶  r   N)r    r!   r"   r#   Ú_barGreaterThanFoor$   r   s   €r   ÚISubInvariantrÿ  ¶  s   ø† ÚÐ(×)r   r  c                   ó   • \ rS rSrSrg)Ú:InterfaceTests.test_invariant_nested.<locals>.HasInvarianti¹  r   Nr   r   r   r   rõ  r  ¹  r6  r   rõ  r&   r÷  r¿  rø  r¶  ú%Please, Boo MUST be greater than Foo!)r¸   rÿ  rµ  rê  r   r)   rv   r   r{   ræ  rB   ró  )	r+   rµ  rê  rñ  r  rõ  rß  rÿ  r   s	          @@r   Útest_invariant_nestedÚ$InterfaceTests.test_invariant_nested«  s  ù€ Ý,Ý,Ý3Ý,÷	%ð 	%˜ô 	%÷
	*˜Jô 	*÷	ñ 	ð 	×Ñ˜×5Ñ5°lÓCÜ,Ð-ô	/á$›ˆÙ˜Ô6ØˆÔð 	×Ñ˜-¨Ð-@Ð,AØ'ô	)ð ˆÔØˆÔØ×Ñ˜-¨ØBÐCØ'ô	)ð
 ˆÔØˆÔØ×Ñ˜-¨Ø.ØBðDà'ô	)ð
 ˆÔØˆÔØ×Ñ˜×6Ñ6°}ÓEÀtÕLr   c                 óJ  ^^	• SSK Jm  SSK Jn  SSK Jn  SSK Jm	   " UU	4S jSU5      n " S S	5      nU" 5       nU" XS5        S
Ul        UR                  S5      nUS S  nUR                  [        5        UR                  SU5        U R                  USS/U5        SUl        SUl        U R                  USS/U5        SUl        SUl        U R                  USSS/U5        SUl        SUl        U R                  UR                  U5      S 5        UR                  SU5        g )Nr   rþ  r´  ré  r   c                   óL   >• \ rS rSr Y " S5      r Y " S5      r Y" \5        Srg)Ú:InterfaceTests.test_invariant_mutandis.<locals>.IInvariantià  r{   rí  r   Nrî  rð  s   €€r   rñ  r	  à  rò  r   rñ  c                   ó   • \ rS rSrSrg)Ú<InterfaceTests.test_invariant_mutandis.<locals>.HasInvariantiå  r   Nr   r   r   r   rõ  r  å  r6  r   rõ  r÷  r&   r¿  rø  r¶  r  )r¸   rÿ  rµ  rê  r   r{   rv   rž  r   r}   ræ  rB   r)   ró  )
r+   rµ  rê  rñ  rõ  rß  Úold_invariantsr&   rÿ  r   s
           @@r   Útest_invariant_mutandisÚ&InterfaceTests.test_invariant_mutandisÚ  s:  ù€ Ý,Ý,Ý3Ý,÷	%ð 	%˜ô 	%÷
	ñ 	ñ %›ˆÙ˜Ô3ØˆÔð $×2Ñ2°<Ó@ˆØ#¡AÐ&ˆ
Ø×ÑÔ,Ô-Ø×!Ñ! ,°
Ô;ð 	×Ñ˜-¨Ð-@Ð,AØ$ô	&ð ˆÔØˆÔØ×ÑØØØ4Ð5Øô		
ð ˆÔØˆÔØ×Ñ˜-¨Ø.ØBðDà$ô	&ð
 ˆÔØˆÔØ×Ñ˜×6Ñ6°}ÓEÀtÔLà×!Ñ! ,°Õ?r   c                 ó.  ^• SSK Jm  SSK Jn   " S SU5      nU R                  UR                  S5        U R                  [        U5      / 5         " U4S jSU5      nU R                  UR                  S	5        U R                  [        U5      S
/5        g )Nr   rþ  r´  c                   ó   • \ rS rSrSrSrg)Ú7InterfaceTests.test___doc___element.<locals>.IDocstringi  rÎ  r   NrÏ  r   r   r   Ú
IDocstringr    rÑ  r   r  rÎ  c                   ó,   >• \ rS rSrSr Y " S5      rSrg)ÚCInterfaceTests.test___doc___element.<locals>.IDocstringAndAttributei  rÎ  r×  r   NrÏ  rþ  s   €r   ÚIDocstringAndAttributer    s   ø† Ùâ 	Ó*‹Gr   r  rd   rf   rØ  )r+   rµ  r  r  rÿ  s       @r   Útest___doc___elementÚ#InterfaceTests.test___doc___element  s   ø€ Ý,Ý,ô	˜ô 	ð 	×Ñ˜×+Ñ+¨UÔ3Ø×Ñœ˜jÓ)¨2Ô.÷	+ Yô 	+ð
 	×ÑÐ/×7Ñ7¸Ô<Ø×ÑœÐ4Ó5¸	°{ÕCr   c                 ó~  ^^^• SSK Jm  SSK Jn  SSK Jn  SSK Jm  SSKJm   " UUU4S jSU5      nU" U5       " S	 S
5      5       nUR                  U" SS5      5        UR                  U" SS5      5         UR                  U" SS5      5        g ! T a%  nU R                  [        U5      S5         S nAg S nAff = f)Nr   rþ  r´  r	  r   r÷  c                   óR   >• \ rS rSr Y " S5      r Y " S5      r YU4S j5       rSrg)Ú:InterfaceTests.test_invariant_as_decorator.<locals>.IRangei,  zLower boundzUpper boundc                 óJ   >• U R                   U R                  :  a  T" S5      eg )Nú	max < min©ÚmaxÚmin)Úobrø  s    €r   Úrange_invariantÚJInterfaceTests.test_invariant_as_decorator.<locals>.IRange.range_invariant0  s"   ø€ à—6‘6˜BŸF™F“?Ù! +Ó.Ð.ð #r   r   N)r    r!   r"   r#   r  r  r!  r$   )rÿ  rø  r   s   €€€r   ÚIRanger  ,  s)   ø† Ú˜MÓ*ˆCÚ˜MÓ*ˆCáô/ó ó/r   r#  c                   ó   • \ rS rSrS rSrg)Ú9InterfaceTests.test_invariant_as_decorator.<locals>.Rangei5  c                 ó    • XsU l         U l        g r   )r  r  )r+   r  r  s      r   r  ÚBInterfaceTests.test_invariant_as_decorator.<locals>.Range.__init__8  s   € Ø%(Ð"�”˜$�(r   r  Nr  r   r   r   ÚRanger%  5  s   † õ.r   r(  r¿  r¶  r  )
r¸   rÿ  rµ  r
  r   rU  rø  ró  r)   r}  )	r+   rµ  r
  r#  r(  râ  rÿ  rø  r   s	         @@@r   Útest_invariant_as_decoratorÚ*InterfaceTests.test_invariant_as_decorator%  s«   ú€ Ý,Ý,Ý.Ý,Ý5÷	/ñ 	/�Yô 	/ñ 
�VÓ	÷	.ð 	.ó 
ð	.ð
 	×!Ñ!¡%¨¨1£+Ô.Ø×!Ñ!¡%¨¨1£+Ô.ð	2Ø×%Ñ%¡e¨A¨q£kÕ2øØó 	2Ø×ÑœS ›V [×1Ñ1ûð	2ús   Á8B ÂB<ÂB7Â7B<c                 ó.  ^^• SSK Jm  SSK Jn  SSK Jm   " UU4S jSU5      n " U4S jSU5      n " S	 S
U5      nU R	                  UR                  S5      S5        U R                  [        UR
                  S5        U R	                  [        UR                  5       5      S/5        U R	                  UR                  S5      S5        U R	                  UR                  S5      S5        U R	                  [        UR                  5       5      SS15        g )Nr   rþ  r´  r=   c                   óN   >• \ rS rSr Y " S5      r Y " S5      r Y" SS5        Srg)Ú0InterfaceTests.test_taggedValue.<locals>.ITaggediG  r{   rí  rK   ÚSpamr   N)r    r!   r"   r#   r{   rB   r$   ©rÿ  r>   s   €€r   ÚITaggedr-  G  s"   ø† Ú˜EÓ"ˆCÚÐHÓIˆCÚ˜˜v×&r   r0  c                   ó>   >• \ rS rSr Y " SS5         Y " SS5        Srg)Ú1InterfaceTests.test_taggedValue.<locals>.IDerivediL  rK   ú	Spam Spamr{   rB   r   Nr   r=   s   €r   rz  r2  L  s   ø† Ú˜˜{Ô+Ú˜˜u×%r   rz  c                   ó   • \ rS rSrSrg)Ú2InterfaceTests.test_taggedValue.<locals>.IDerived2iP  r   Nr   r   r   r   Ú	IDerived2r5  P  r6  r   r6  rK   r.  r{   r3  rB   )r¸   rÿ  rµ  r>   r)   rv   rt   ru   rh   ri   Úset)r+   rµ  r0  rz  r6  rÿ  r>   s        @@r   Útest_taggedValueÚInterfaceTests.test_taggedValueB  sâ   ù€ Ý,Ý,Ý.÷	'ð 	'�iô 	'÷
	&�wô 	&ô	˜ô 	ð 	×Ñ˜×/Ñ/°Ó6¸Ô?Ø×Ñœ( G×$:Ñ$:¸EÔBØ×Ñœ˜g×8Ñ8Ó:Ó;¸e¸WÔEà×Ñ˜×1Ñ1°%Ó8¸+ÔFØ×Ñ˜×1Ñ1°%Ó8¸%Ô@Ø×Ñœ˜Y×9Ñ9Ó;Ó<¸uÀe¸nÕMr   c                 óÆ   ^^	• SSK Jm  SSK Jm	   " UU	4S jSU5      n " UU	4S jSU5      n " UU	4S jS	U5      n " UU	4S
 jSXB5      n " S SXC5      n " S SXe5      nU$ )Nr   rþ  r=   c                   ó<   >• \ rS rSr Y" SS5         Y " S5      rSrg)Ú0InterfaceTests._make_taggedValue_tree.<locals>.Fi_  ÚtagÚFr   N©r    r!   r"   r#   r=  r$   r/  s   €€r   r>  r<  _  ó   ø† Ú˜˜sÔ#Ú˜C“.‹Cr   r>  c                   ó<   >• \ rS rSr Y" SS5         Y " S5      rSrg)Ú0InterfaceTests._make_taggedValue_tree.<locals>.Eic  r=  ÚEr   Nr?  r/  s   €€r   rC  rB  c  r@  r   rC  c                   ó<   >• \ rS rSr Y" SS5         Y " S5      rSrg)Ú0InterfaceTests._make_taggedValue_tree.<locals>.Dig  r=  ÚDr   Nr?  r/  s   €€r   rF  rE  g  r@  r   rF  c                   ó<   >• \ rS rSr Y" SS5         Y " S5      rSrg)Ú0InterfaceTests._make_taggedValue_tree.<locals>.Cik  r=  ÚCr   Nr?  r/  s   €€r   rI  rH  k  r@  r   rI  c                   ó   • \ rS rSrSrg)Ú0InterfaceTests._make_taggedValue_tree.<locals>.Bio  r   Nr   r   r   r   ÚBrK  o  r6  r   rL  c                   ó   • \ rS rSrSrg)Ú0InterfaceTests._make_taggedValue_tree.<locals>.Air  r   Nr   r   r   r   ÚArN  r  r6  r   rO  )r¸   rÿ  r>   )
r+   rƒ  r>  rC  rF  rI  rL  rO  rÿ  r>   s
           @@r   Ú_make_taggedValue_treeÚ%InterfaceTests._make_taggedValue_tree[  sl   ù€ Ý,Ý.÷	!ð 	!�ô 	!÷	!ð 	!�ô 	!÷	!ð 	!�ô 	!÷	!ð 	!�ô 	!ô	�ô 	ô	�ô 	ð ˆr   c                 ó(  • SSK Jn  U R                  [        5      nU R	                  UR
                  R                  S5        U R                  U5      nU R	                  US   R                  S5        U R	                  UR                  S5      S5        U R	                  UR                  S5      S5        UR                  S   R                  S:X  d   eUR                  S   R                  SS5        U R	                  UR                  S5      S5        g )Nr   r´  rI  r=  rL  )r¸   rµ  rP  r¼   r)   r=  r    rv   r‚   r·  r}   )r+   rµ  Úclass_AÚiface_As       r   Ú"test_getTaggedValue_follows__iro__Ú1InterfaceTests.test_getTaggedValue_follows__iro__w  sê   € õ 	-ð ×-Ñ-¬fÓ5ˆØ×Ñ˜Ÿ™×-Ñ-¨sÔ3ð ×-Ñ-¨iÓ8ˆØ×Ñ˜ ™×0Ñ0°#Ô6à×Ñ˜×/Ñ/°Ó6¸Ô<Ø×Ñ˜×1Ñ1°%Ó8¸#Ô>à× Ñ  Ñ#×,Ñ,°Ó3Ð3Ð3Ø×Ñ˜!Ñ×+Ñ+¨E°3Ô7Ø×Ñ˜×/Ñ/°Ó6¸Õ<r   c                 óv  • SSK Jn  U R                  U5      nU R                  UR	                  S5      5        U R                  / [        UR                  5       5      5        U R                  [        5         UR                  S5        S S S 5        UR                  SS5        U R                  UR	                  S5      S5        U R                  UR                  S5      S5        U R                  S/[        UR                  5       5      5        UR                  S   R                  S:X  d   eUR                  S   nU R                  UR	                  S5      S5        U R                  UR                  S5      S5        U R                  S/[        UR                  5       5      5        g ! , (       d  f       GN(= f)Nr   r´  r=  rO  r¿  rI  )r¸   rµ  rP  rá  r�   r)   rh   r|   rt   ru   rŠ   r}   r·  r    )r+   rµ  rO  rI  s       r   Ú(test_getDirectTaggedValue_ignores__iro__Ú7InterfaceTests.test_getDirectTaggedValue_ignores__iro__Œ  s]  € å,à×'Ñ'¨	Ó2ˆØ×Ñ˜!×2Ñ2°5Ó9Ô:Ø×Ñ˜œT !×"<Ñ"<Ó">Ó?Ô@à×ÑœxÕ(Ø×"Ñ" 5Ô)÷ )ð 	
×Ñ˜ Ô$Ø×Ñ˜×1Ñ1°%Ó8¸#Ô>Ø×Ñ˜×/Ñ/°Ó6¸Ô<Ø×Ñ˜%˜¤$ q×'AÑ'AÓ'CÓ"DÔEà�{‰{˜1‰~×&Ñ&¨#Ó-Ð-Ð-Ø�K‰K˜‰NˆØ×Ñ˜×1Ñ1°%Ó8¸#Ô>Ø×Ñ˜×/Ñ/°Ó6¸Ô<Ø×Ñ˜%˜¤$ q×'AÑ'AÓ'CÓ"DÕE÷ )Ö(ús   Á6F)Æ)
F8c                 ó  ^• SSK Jm  SSK Jn   " U4S jSU5      n " S SU5      n " S S	U5      nU R                  UR	                  S
5      UR	                  S
5      5        U4Ul        U R                  UR	                  S
5      5        g )Nr   rþ  r´  c                   ó(   >• \ rS rSr Y " S5      rSrg)Ú<InterfaceTests.test_description_cache_management.<locals>.I1i©  r  r   N)r    r!   r"   r#   r  r$   rþ  s   €r   rh  r\  ©  s   ø† Ú˜#“‹Ar   rh  c                   ó   • \ rS rSrSrg)Ú<InterfaceTests.test_description_cache_management.<locals>.I2i¬  r   Nr   r   r   r   ÚI2r^  ¬  r6  r   r_  c                   ó   • \ rS rSrSrg)Ú<InterfaceTests.test_description_cache_management.<locals>.I3i¯  r   Nr   r   r   r   ÚI3ra  ¯  r6  r   rb  r  )r¸   rÿ  rµ  r8  rÙ  r·  rá  )r+   rµ  rh  r_  rb  rÿ  s        @r   Ú!test_description_cache_managementÚ0InterfaceTests.test_description_cache_management¢  sn   ø€ õ 	-Ý,÷	�ô 	ô	�ô 	ô	�ô 	ð 	�‰�b—f‘f˜S“k 2§6¡6¨#£;Ô/à!�|ˆŒØ×Ñ˜"Ÿ&™& ›+Õ&r   c                 ó–   • SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU R                  U" U" 5       5      S5        g )Nr   r´  r	  c                   ó   • \ rS rSrSrg)ÚAInterfaceTests.test___call___defers_to___conform___.<locals>.IFooi»  r   Nr   r   r   r   rÔ  rg  »  r6  r   rÔ  c                   ó   • \ rS rSrS rSrg)Ú>InterfaceTests.test___call___defers_to___conform___.<locals>.Ci¾  c                 ó   • g)Nr   r   )r+   Úprotos     r   ro  ÚJInterfaceTests.test___call___defers_to___conform___.<locals>.C.__conform__À  s   € Ør   r   Nrq  r   r   r   rI  ri  ¾  s   † õr   rI  )r¸   rµ  r
  r)   )r+   rµ  r
  rÔ  rI  s        r   Ú$test___call___defers_to___conform___Ú3InterfaceTests.test___call___defers_to___conform___·  sJ   € Ý,Ý.ô	�9ô 	ñ 
�TÓ	÷	ð 	ó 
ð	ð 	×Ñ™™a›c› AÕ&r   c                 óš   • SSK Jn  SSK Jn   " S SU5      nU" U5       " S S5      5       nU" 5       nU R                  U" U5      U5        g )Nr   r´  r	  c                   ó   • \ rS rSrSrg)Ú<InterfaceTests.test___call___object_implements.<locals>.IFooiÉ  r   Nr   r   r   r   rÔ  rq  É  r6  r   rÔ  c                   ó   • \ rS rSrSrg)Ú9InterfaceTests.test___call___object_implements.<locals>.CiÌ  r   Nr   r   r   r   rI  rs  Ì  r  r   rI  )r¸   rµ  r
  r8  )r+   rµ  r
  rÔ  rI  Úcs         r   Útest___call___object_implementsÚ.InterfaceTests.test___call___object_implementsÅ  sM   € Ý,Ý.ô	�9ô 	ñ 
�TÓ	÷	ð 	ó 
ð	ñ ‹CˆØ�‰‘d˜1“g˜qÕ!r   c                 ót   • SSK Jn   " S SU5      n " S S5      nU" 5       nU R                  [        X$5        g )Nr   r´  c                   ó   • \ rS rSrSrg)Ú<InterfaceTests.test___call___miss_wo_alternate.<locals>.IFooiÖ  r   Nr   r   r   r   rÔ  ry  Ö  r6  r   rÔ  c                   ó   • \ rS rSrSrg)Ú9InterfaceTests.test___call___miss_wo_alternate.<locals>.CiÙ  r   Nr   r   r   r   rI  r{  Ù  r6  r   rI  )r¸   rµ  rt   r:  ©r+   rµ  rÔ  rI  rt  s        r   Útest___call___miss_wo_alternateÚ.InterfaceTests.test___call___miss_wo_alternateÓ  s4   € Ý,ô	�9ô 	÷	ñ 	ñ ‹CˆØ×Ñœ) TÕ-r   c                 óx   • SSK Jn   " S SU5      n " S S5      nU" 5       nU R                  U" X@5      U 5        g )Nr   r´  c                   ó   • \ rS rSrSrg)Ú;InterfaceTests.test___call___miss_w_alternate.<locals>.IFooiâ  r   Nr   r   r   r   rÔ  r�  â  r6  r   rÔ  c                   ó   • \ rS rSrSrg)Ú8InterfaceTests.test___call___miss_w_alternate.<locals>.Ciå  r   Nr   r   r   r   rI  rƒ  å  r6  r   rI  )r¸   rµ  r8  r|  s        r   Útest___call___miss_w_alternateÚ-InterfaceTests.test___call___miss_w_alternateß  s6   € Ý,ô	�9ô 	÷	ñ 	ñ ‹CˆØ�‰‘d˜1“m TÕ*r   c                 óÊ   ^ • SSK Jn  SSKJn  S nU 4S jn " S SU5      n " S S	5      nU" 5       nUS S  nX4/US S &  T R	                  U" U5      T 5        X‚S S & g ! X‚S S & f = f)
Nr   r´  r¦  c                 ó   • g r   r   r£  s     r   Ú_missÚ:InterfaceTests.test___call___w_adapter_hook.<locals>._missï  s   € Ør   c                 ó   >• T$ r   r   )rm  r²   r+   s     €r   Ú_hitÚ9InterfaceTests.test___call___w_adapter_hook.<locals>._hitò  s   ø€ ØˆKr   c                   ó   • \ rS rSrSrg)Ú9InterfaceTests.test___call___w_adapter_hook.<locals>.IFooiõ  r   Nr   r   r   r   rÔ  rŽ  õ  r6  r   rÔ  c                   ó   • \ rS rSrSrg)Ú6InterfaceTests.test___call___w_adapter_hook.<locals>.Ciø  r   Nr   r   r   r   rI  r�  ø  r6  r   rI  )r¸   rµ  r(   r§  r8  )	r+   rµ  r§  rˆ  r‹  rÔ  rI  rt  Úold_adapter_hookss	   `        r   Útest___call___w_adapter_hookÚ+InterfaceTests.test___call___w_adapter_hookë  sr   ø€ Ý,Ý:ò	õ	ô	�9ô 	÷	ñ 	ñ ‹Cˆà)©!Ð,ÐØ!˜=ˆ‘aÐð	1Ø�M‰M™$˜q›' 4Ô(à0™!ÑøÐ0™!Ñús   ¿A ÁA"c                 óê   ^• SSK Jn  SSK Jn  SSK Jm   " U4S jSU5      nU" U5       " S S5      5       nU R	                  S	U" [        5       5      5        U R	                  S	U" U" 5       5      5        g )
Nr   r´  r	  ©Úinterfacemethodc                   ó(   >• \ rS rSr Y S 5       rSrg)Ú=InterfaceTests.test___call___w_overridden_adapt.<locals>.IFooi		  c                 ó   • g©Nr÷  r   ©r+   r²   s     r   r˜  ÚGInterfaceTests.test___call___w_overridden_adapt.<locals>.IFoo.__adapt__	  ó   € àr   r   N©r    r!   r"   r#   r˜  r$   r•  s   €r   rÔ  r˜  		  s   ø† áñó ór   rÔ  c                   ó   • \ rS rSrSrg)Ú<InterfaceTests.test___call___w_overridden_adapt.<locals>.Obji	  r   Nr   r   r   r   ÚObjr   	  r  r   r¡  r÷  )r¸   rµ  r
  r–  r)   r¼   )r+   rµ  r
  rÔ  r¡  r–  s        @r   Ú test___call___w_overridden_adaptÚ/InterfaceTests.test___call___w_overridden_adapt	  sf   ø€ Ý,Ý.Ý2÷	�9ô 	ñ 
�TÓ	÷	ð 	ó 
ð	ð 	×Ñ˜™T¤&£(›^Ô,ð 	×Ñ˜™T¡#£%›[Õ)r   c                 ó  ^• SSK Jn  SSK Jn  SSK Jm   " U4S jSU5      n " S SU5      nU" U5       " S	 S
5      5       nU" U5       " S S5      5       nU R	                  SU" [        5       5      5        U R	                  SU" U" 5       5      5        U R	                  SU" U" 5       5      5        U R                  [        5         U" U" 5       5        S S S 5        U R	                  SU" U" 5       5      5        g ! , (       d  f       N,= f)Nr   r´  r	  r•  c                   ó(   >• \ rS rSr Y S 5       rSrg)ÚKInterfaceTests.test___call___w_overridden_adapt_and_conform.<locals>.IAdapti	  c                 ó   • grš  r   r›  s     r   r˜  ÚUInterfaceTests.test___call___w_overridden_adapt_and_conform.<locals>.IAdapt.__adapt__ 	  r�  r   r   Nrž  r•  s   €r   ÚIAdaptr¦  	  ó   ø† Ùñó ór   r©  c                   ó   • \ rS rSrSrSrg)ÚLInterfaceTests.test___call___w_overridden_adapt_and_conform.<locals>.ISimplei$	  zNothing special.r   NrÏ  r   r   r   r  r¬  $	  s   † Ü"r   r  c                   ó   • \ rS rSrS rSrg)ÚNInterfaceTests.test___call___w_overridden_adapt_and_conform.<locals>.Conform24i'	  c                 ó   • g©Né   r   r’  s     r   ro  ÚZInterfaceTests.test___call___w_overridden_adapt_and_conform.<locals>.Conform24.__conform__)	  s   € Ør   r   Nrq  r   r   r   Ú	Conform24r®  '	  s   † õr   r³  c                   ó   • \ rS rSrS rSrg)ÚPInterfaceTests.test___call___w_overridden_adapt_and_conform.<locals>.ConformNonei,	  c                 ó   • g r   r   r’  s     r   ro  Ú\InterfaceTests.test___call___w_overridden_adapt_and_conform.<locals>.ConformNone.__conform__.	  r(  r   r   Nrq  r   r   r   ÚConformNonerµ  ,	  s   † õr   r¸  r÷  r±  )r¸   rµ  r
  r–  r)   r¼   rt   r:  )r+   rµ  r
  r©  r  r³  r¸  r–  s          @r   Ú,test___call___w_overridden_adapt_and_conformÚ;InterfaceTests.test___call___w_overridden_adapt_and_conform	  sè   ø€ õ 	-Ý.Ý2÷	�Yô 	ô
	#�iô 	#ñ 
�VÓ	÷	ð 	ó 
ð	ñ 
�VÓ	÷	ð 	ó 
ð	ð 	×Ñ˜™V¤F£HÓ-Ô.à×Ñ˜™W¡Y£[Ó1Ô2Ø×Ñ˜™V¡I£KÓ0Ô1à×ÑœyÕ)Ù‘K“MÔ"÷ *ð 	×Ñ˜™V¡K£MÓ2Õ3÷ *Õ)ús   ÃC:Ã:
Dc                 óô   ^• SS K nSSKJn  SSKJn  SSKJm   " U4S jSU5      nU" U5       " S S5      5       nU R                  S	U" [        5       5      5        U" 5       nU R                  Xd" U5      5        g )
Nr   r´  r	  r•  c                   ó6   >^ • \ rS rSr YU 4S j5       rSrU =r$ )ÚHInterfaceTests.test___call___w_overridden_adapt_call_super.<locals>.IFooiB	  c                 óP   >• U R                  U5      (       d  g[        TU ]	  U5      $ rš  )r·   Úsuperr˜  )r+   r²   rO  s     €r   r˜  ÚRInterfaceTests.test___call___w_overridden_adapt_call_super.<locals>.IFoo.__adapt__D	  s%   ø€ à—‘ s×+Ñ+ØÜ‘wÑ(¨Ó-Ð-r   r   )r    r!   r"   r#   r˜  r$   Ú__classcell__)rO  r–  s   @€r   rÔ  r½  B	  s   ù† áô.ó ö.r   rÔ  c                   ó   • \ rS rSrSrg)ÚGInterfaceTests.test___call___w_overridden_adapt_call_super.<locals>.ObjiJ	  r   Nr   r   r   r   r¡  rÃ  J	  r  r   r¡  r÷  )Úsysr¸   rµ  r
  r–  r)   r¼   r8  )r+   rÄ  rµ  r
  rÔ  r¡  r²   r–  s          @r   Ú+test___call___w_overridden_adapt_call_superÚ:InterfaceTests.test___call___w_overridden_adapt_call_super;	  sj   ø€ Ûå,Ý.Ý2÷	.�9ô 	.ñ 
�TÓ	÷	ð 	ó 
ð	ð 	×Ñ˜™T¤&£(›^Ô,Ù‹eˆØ�‰�c˜4 ›9Õ%r   c                 óÀ   ^• SSK Jn  SSK Jm   " U4S jSU5      nU R                  SU" [	        5       5      5        U R                  US   R                  5       S5        g )	Nr   r´  r•  c                   ó.   >• \ rS rSr Y S 5       rS rSrg)ÚHInterfaceTests.test___adapt___as_method_and_implementation.<locals>.IFooiV	  c                 ó   • grš  r   r›  s     r   r˜  ÚRInterfaceTests.test___adapt___as_method_and_implementation.<locals>.IFoo.__adapt__W	  r�  r   c                 ó   • g)zThis is a protocolNr   )Úto_adapts    r   r˜  rË  [	  r;  r   r   Nrž  r•  s   €r   rÔ  rÉ  V	  s   ø† Ùñó ðõ%r   rÔ  r÷  r˜  z
(to_adapt))r¸   rµ  r–  r)   r¼   ÚgetSignatureString©r+   rµ  rÔ  r–  s      @r   Ú+test___adapt___as_method_and_implementationÚ:InterfaceTests.test___adapt___as_method_and_implementationR	  sK   ø€ Ý,Ý2÷	%�9ô 	%ð 	×Ñ˜™T¤&£(›^Ô,Ø×Ñ˜˜kÑ*×=Ñ=Ó?ÀÕNr   c                 ó*  ^	• SSK Jn  SSK Jm	   " S SU5      n " U	4S jSU5      n " S S	U5      n " S
 SU5      n " S SXSU5      n " U	4S jSU5      nU R                  SU" [	        5       5      5        X#XEU4 H#  nU R                  [
        UR                  5        M%     X$U4 H'  nU R                  [        U5      [        U5      5        M)     U R                  [        U5      [        U5      5        U R                  [        U5      [        U5      5        U R                  U[        U5      5        U R                  SU" [	        5       5      5        U R                  [        U5      [        U5      5        U R                  U[        U5      5        g )Nr   r´  r•  c                   ó   • \ rS rSrSrSrg)Ú@InterfaceTests.test___adapt__inheritance_and_type.<locals>.IRootie	  ÚRootr   NrÏ  r   r   r   ÚIRootrÔ  e	  s   † Ür   rÖ  c                   ó(   >• \ rS rSr Y S 5       rSrg)ÚEInterfaceTests.test___adapt__inheritance_and_type.<locals>.IWithAdaptih	  c                 ó   • grš  r   r›  s     r   r˜  ÚOInterfaceTests.test___adapt__inheritance_and_type.<locals>.IWithAdapt.__adapt__i	  r�  r   r   Nrž  r•  s   €r   Ú
IWithAdaptrØ  h	  rª  r   rÛ  c                   ó   • \ rS rSrSrSrg)ÚAInterfaceTests.test___adapt__inheritance_and_type.<locals>.IOtherim	  zSecond branchr   NrÏ  r   r   r   r  rÝ  m	  s   † Ür   r  c                   ó   • \ rS rSrSrSrg)ÚEInterfaceTests.test___adapt__inheritance_and_type.<locals>.IUnrelatedip	  Ú	Unrelatedr   NrÏ  r   r   r   Ú
IUnrelatedrß  p	  s   † Ür   rá  c                   ó   • \ rS rSrSrSrg)ÚHInterfaceTests.test___adapt__inheritance_and_type.<locals>.IDerivedAdaptis	  zInherits an adaptr   NrÏ  r   r   r   ÚIDerivedAdaptrã  s	  s   † Ü#r   rä  c                   ó,   >• \ rS rSrSr Y S 5       rSrg)ÚIInterfaceTests.test___adapt__inheritance_and_type.<locals>.IDerived2Adaptiw	  z$Overrides an inherited custom adapt.c                 ó   • gr°  r   r›  s     r   r˜  ÚSInterfaceTests.test___adapt__inheritance_and_type.<locals>.IDerived2Adapt.__adapt__y	  r�  r   r   N)r    r!   r"   r#   rf   r˜  r$   r•  s   €r   ÚIDerived2Adaptræ  w	  s   ø† Ù6Ùñó ór   ré  r÷  r±  )
r¸   rµ  r–  r)   r¼   r    r!   rN  r7  r  )
r+   rµ  rÖ  rÛ  r  rá  rä  ré  rm  r–  s
            @r   Ú"test___adapt__inheritance_and_typeÚ1InterfaceTests.test___adapt__inheritance_and_typea	  sL  ø€ Ý,Ý2ô	�Iô 	÷	˜ô 	ô
	 �Uô 	 ô	˜ô 	ô	$˜J°Fô 	$÷	˜]ô 	ð 	×Ñ˜™]¬6«8Ó4Ô5Ø¨¸MÓIˆEØ×ÑœX u×'7Ñ'7Ö8ñ Jð  JÓ.ˆEØ×ÑœT %›[¬$¨y«/Ö:ñ /ð 	×ÑœD ›O¬T°*Ó-=Ô>Ø×Ñœ˜jÓ)¬4°Ó+>Ô?Ø×Ñ˜j¬$¨y«/Ô:à×Ñ˜™^¬F«HÓ5Ô6Ø×ÑœD Ó0´$°}Ó2EÔFØ×Ñ˜n¬d°=Ó.AÕBr   c                 óª   ^• SSK Jn  SSK Jm   " U4S jSU5      nU R                  U" U 5      S5        U R                  UR	                  5       S5        g )Nr   r´  r•  c                   ó:   >• \ rS rSr Y S 5       r Y S 5       rSrg)Ú<InterfaceTests.test_interfacemethod_is_general.<locals>.IFooi‘	  c                 ó   • g)zReplace an existing methodr÷  r   r›  s     r   rJ  ÚEInterfaceTests.test_interfacemethod_is_general.<locals>.IFoo.__call__“	  s   € ð r   c                 ó   • grš  r   r©   s    r   Úthis_is_newÚHInterfaceTests.test_interfacemethod_is_general.<locals>.IFoo.this_is_new˜	  r�  r   r   N)r    r!   r"   r#   rJ  rò  r$   r•  s   €r   rÔ  rî  ‘	  s)   ø† áñó ðñ ñó ór   rÔ  r÷  )r¸   rµ  r–  r)   rò  rÏ  s      @r   Útest_interfacemethod_is_generalÚ.InterfaceTests.test_interfacemethod_is_general�	  sD   ø€ Ý,Ý2÷		�9ô 		ð 	×Ñ™˜d› RÔ(Ø×Ñ˜×)Ñ)Ó+¨RÕ0r   r   N)9r    r!   r"   r#   ri  rt  r�  r¡  r¯  rÊ  râ  rê  rþ  r
  r  r  r-  r;  rO  rV  ra  rq  rw  r  rŒ  r‘  r™  r¦  r«  r³  rÀ  rÉ  rÒ  rÙ  ræ  rù  r  r  r  r)  r8  rP  rU  rX  rc  rm  ru  r}  r„  r’  r¢  r¹  rÅ  rÐ  rê  rô  r$   r   r   r   rc  rc    s  † ò0ò2ò 6òD8ò65ò:0òB)1òV=ò"8ò(:ò,;ò
FòAò0Aò.6BòpJò6ò*&8òPDò6ò*&8òP-ò)ò+ò0+ò
DòAò,	?ò4ò	=ò5ò &ò<-Mò^7@òrDò$2ò:Nò2ò8=ò*Fò,'ò*'ò"ò
.ò
+ò1ò2*ò(!4òF&ò.Oò*CõX1r   rc  c                   ó6   • \ rS rSrSrS rS rS rS rS r	Sr
g	)
ÚAttributeTestsi 	  ÚTestAttributec                 ó   • SSK Jn  U$ )Nr   rþ  )r(   rÿ  )r+   rÿ  s     r   r\   ÚAttributeTests._getTargetClass¤	  s   € Ý6ØÐr   c                 óò   • U R                  5       n[        U 5      Ul        [        U5      nU R	                  UR                  S5      U5        U R	                  UR                  S[        -   S-   5      U5        g )Nú-<zope.interface.interface.Attribute object atÚ z.AttributeTests.TestAttribute>)ra   rN  r­   ÚreprrÝ   Ú
startswithÚendswithr    ©r+   rq  Úrs      r   Útest__repr__w_interfaceÚ&AttributeTests.test__repr__w_interface¨	  sc   € Ø—‘“ˆÜ ›:ˆÔÜ�‹LˆØ�‰Ø�L‰LÐHÓIÈ1ô	
ð 	�‰Ø�J‰J�sœX‘~Ð(HÑHÓIÈ1õ	
r   c                 ó¾   • U R                  5       n[        U5      nU R                  UR                  S5      U5        U R                  UR	                  S5      U5        g )Nrü  z TestAttribute>)ra   rþ  rÝ   rÿ  r   r  s      r   Útest__repr__wo_interfaceÚ'AttributeTests.test__repr__wo_interface³	  sK   € Ø—‘“ˆÜ�‹LˆØ�‰Ø�L‰LÐHÓIÈ1ô	
ð 	�‰˜Ÿ
™
Ð#4Ó5°qÕ9r   c                 óŒ   • U R                  5       n[        U 5      Ul        [        U5      nU R	                  U[
        S-   5        g )Nz.AttributeTests.TestAttribute)ra   rN  r­   r}  r)   r    r  s      r   Útest__str__w_interfaceÚ%AttributeTests.test__str__w_interface»	  s8   € Ø—‘“ˆÜ ›:ˆÔÜ�‹KˆØ×Ñ˜œHÐ'FÑFÕGr   c                 ó^   • U R                  5       n[        U5      nU R                  US5        g )Nrø  )ra   r}  r)   r  s      r   Útest__str__wo_interfaceÚ&AttributeTests.test__str__wo_interfaceÁ	  s&   € Ø—‘“ˆÜ�‹KˆØ×Ñ˜˜OÕ,r   r   N)r    r!   r"   r#   r_   r\   r  r  r	  r  r$   r   r   r   r÷  r÷   	  s!   † à"€Lòò	
ò:òHõ-r   r÷  c                   óf   • \ rS rSrSrS rS rS rS rS r	S r
S	 rS
 rS rS rS rS rS rSrg)ÚMethodTestsiÇ	  Ú
TestMethodc                 ó   • SSK Jn  U$ )Nr   r0  )r(   r1  )r+   r1  s     r   r\   ÚMethodTests._getTargetClassË	  s
   € Ý3Øˆr   c                 óæ   • U R                  5       nU R                  UR                  0 5        SS0Ul        U R                  UR                  SS05        U?U R                  UR                  0 5        g rz   )ra   r)   rÇ  ©r+   rq  s     r   Útest_optional_as_propertyÚ%MethodTests.test_optional_as_propertyÏ	  s]   € Ø—‘“ˆØ×Ñ˜Ÿ™¨"Ô-Ø  %˜.ˆŒØ×Ñ˜Ÿ™¨5°%¨.Ô9ØˆOØ×Ñ˜Ÿ™¨"Õ-r   c                 ó  • SSK Jn  U R                  5       n U" 5         U R                  S5        g ! U aL  nU R	                  UR
                  S 5        U R	                  UR                  U R                  5         S nAg S nAff = f)Nr   )ÚBrokenImplementationz*__call__ should raise BrokenImplementation)rU  r  ra   rÜ  r)   r­   r`   r_   )r+   r  rq  râ  s       r   Ú)test___call___raises_BrokenImplementationÚ5MethodTests.test___call___raises_BrokenImplementation×	  sm   € ÝBØ—‘“ˆð	DÙŒHð
 �I‰IÐBÕCøð	 $ó 	8Ø×Ñ˜QŸ[™[¨$Ô/Ø×Ñ˜QŸV™V T×%6Ñ%6×7Ñ7ûð	8ús   ˜1 ±B·AA>Á>Bc                 ó:  • U R                  5       nUR                  5       nU R                  [        US   5      / 5        U R                  [        US   5      / 5        U R                  US   0 5        U R                  US   S 5        U R                  US   S 5        g )NÚ
positionalÚrequiredrÇ  ÚvarargsÚkwargs)ra   ÚgetSignatureInfor)   rh   )r+   rq  Úinfos      r   Útest_getSignatureInfo_bareÚ&MethodTests.test_getSignatureInfo_bareâ	  sŒ   € Ø—‘“ˆØ×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°2Ô6Ø×Ñœ˜d :Ñ.Ó/°Ô4Ø×Ñ˜˜jÑ)¨2Ô.Ø×Ñ˜˜i™¨$Ô/Ø×Ñ˜˜h™¨Õ.r   c                 ód   • U R                  5       nU R                  UR                  5       S5        g )Nz())ra   r)   rÎ  r  s     r   Útest_getSignatureString_bareÚ(MethodTests.test_getSignatureString_bareë	  s&   € Ø—‘“ˆØ×Ñ˜×2Ñ2Ó4°dÕ;r   c                 ó‚   • U R                  5       nS/=Ul        Ul        U R                  UR	                  5       S5        g )Nr{   z(foo))ra   r  r  r)   rÎ  r  s     r   Ú'test_getSignatureString_w_only_requiredÚ3MethodTests.test_getSignatureString_w_only_requiredï	  s7   € Ø—‘“ˆØ/4¨gÐ5ˆÔ˜FœOØ×Ñ˜×2Ñ2Ó4°gÕ>r   c                 ó”   • U R                  5       nS/=Ul        Ul        SS0Ul        U R	                  UR                  5       S5        g )Nr{   rB   z(foo='bar'))ra   r  r  rÇ  r)   rÎ  r  s     r   Ú"test_getSignatureString_w_optionalÚ.MethodTests.test_getSignatureString_w_optionalô	  sB   € Ø—‘“ˆØ/4¨gÐ5ˆÔ˜FœOØ  %˜.ˆŒØ×Ñ˜×2Ñ2Ó4°mÕDr   c                 ór   • U R                  5       nSUl        U R                  UR                  5       S5        g )Nr   z(*args))ra   r  r)   rÎ  r  s     r   Ú!test_getSignatureString_w_varargsÚ-MethodTests.test_getSignatureString_w_varargsú	  s-   € Ø—‘“ˆØˆŒØ×Ñ˜×2Ñ2Ó4°iÕ@r   c                 ór   • U R                  5       nSUl        U R                  UR                  5       S5        g )Nr   z(**kw))ra   r  r)   rÎ  r  s     r   Ú test_getSignatureString_w_kwargsÚ,MethodTests.test_getSignatureString_w_kwargsÿ	  s-   € Ø—‘“ˆØˆŒØ×Ñ˜×2Ñ2Ó4°hÕ?r   c                 ó   • U R                  5       nSUl        [        U 5      Ul        [	        U5      nU R                  UR                  S5      U5        U R                  UR                  S[        -   S-   5      U5        g )Nr   ú*<zope.interface.interface.Method object atrý  z.MethodTests.TestMethod(**kw)>)	ra   r  rN  r­   rþ  rÝ   rÿ  r   r    r  s      r   r  Ú#MethodTests.test__repr__w_interface
  sj   € Ø—‘“ˆØˆŒÜ ›:ˆÔÜ�‹LˆØ�‰Ø�L‰LÐEÓFÈô	
ð 	�‰Ø�J‰J�sœX‘~Ð(HÑHÓIÈ1õ	
r   c                 óÌ   • U R                  5       nSUl        [        U5      nU R                  UR	                  S5      U5        U R                  UR                  S5      U5        g )Nr   r4  z TestMethod(**kw)>)ra   r  rþ  rÝ   rÿ  r   r  s      r   r  Ú$MethodTests.test__repr__wo_interface
  sR   € Ø—‘“ˆØˆŒÜ�‹LˆØ�‰Ø�L‰LÐEÓFÈô	
ð 	�‰˜Ÿ
™
Ð#7Ó8¸!Õ<r   c                 óš   • U R                  5       nSUl        [        U 5      Ul        [	        U5      nU R                  U[        S-   5        g )Nr   z.MethodTests.TestMethod(**kw))ra   r  rN  r­   r}  r)   r    r  s      r   r	  Ú"MethodTests.test__str__w_interface
  s?   € Ø—‘“ˆØˆŒÜ ›:ˆÔÜ�‹KˆØ×Ñ˜œHÐ'FÑFÕGr   c                 ól   • U R                  5       nSUl        [        U5      nU R                  US5        g )Nr   zTestMethod(**kw))ra   r  r}  r)   r  s      r   r  Ú#MethodTests.test__str__wo_interface 
  s.   € Ø—‘“ˆØˆŒÜ�‹KˆØ×Ñ˜Ð.Õ/r   r   N)r    r!   r"   r#   r_   r\   r  r  r"  r%  r(  r+  r.  r1  r  r  r	  r  r$   r   r   r   r  r  Ç	  sM   † à€Lòò.ò	Dò/ò<ò?ò
EòAò
@ò


ò=òHõ0r   r  c                   óP   • \ rS rSrS rS rS rS rS rS r	S r
S	 rS
 rS rSrg)ÚTest_fromFunctioni'
  c                 ó   • SSK Jn  U" U0 UD6$ )Nr   r4  )r(   r5  )r+   r   r   r5  s       r   Ú_callFUTÚTest_fromFunction._callFUT)
  s   € Ý9Ù˜TÐ( RÑ(Ð(r   c                 óL  • S nU R                  U5      nU R                  UR                  5       S5        U R                  UR                  5       S5        U R                  UR                  S 5        U R                  [        UR                  5       5      / 5        UR                  5       nU R                  [        US   5      / 5        U R                  [        US   5      / 5        U R                  US   0 5        U R                  US   S 5        U R                  US   S 5        g )	Nc                  ó   • gr7  r   r   r   r   Ú_funcÚ*Test_fromFunction.test_bare.<locals>._func/
  r;  r   rC  r8  r  r  rÇ  r  r  ©r?  r)   re   rg   r­   rh   ri   r   ©r+   rC  rq  r!  s       r   Ú	test_bareÚTest_fromFunction.test_bare-
  s÷   € ò	ð —‘˜uÓ%ˆØ×Ñ˜Ÿ™Ó)¨7Ô3Ø×Ñ˜Ÿ™›¨+Ô6Ø×Ñ˜×)Ñ)¨4Ô0Ø×Ñœ˜f×7Ñ7Ó9Ó:¸BÔ?Ø×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°2Ô6Ø×Ñœ˜d :Ñ.Ó/°Ô4Ø×Ñ˜˜jÑ)¨2Ô.Ø×Ñ˜˜i™¨$Ô/Ø×Ñ˜˜h™¨Õ.r   c                 ó‚   • SSK Jn   " S SU5      nS nU R                  X2S9nU R                  UR                  U5        g )Nr   r$  c                   ó   • \ rS rSrSrg)Ú0Test_fromFunction.test_w_interface.<locals>.IFooiA
  r   Nr   r   r   r   rÔ  rK  A
  r6  r   rÔ  c                  ó   • gr7  r   r   r   r   rC  Ú1Test_fromFunction.test_w_interface.<locals>._funcD
  r;  r   r¬   )r(   r%  r?  r)   r­   )r+   r%  rÔ  rC  rq  s        r   Útest_w_interfaceÚ"Test_fromFunction.test_w_interface>
  s>   € Ý;ô	�>ô 	ò	ð —‘˜u�Ð5ˆØ×Ñ˜×)Ñ)¨4Õ0r   c                 ój   • S nU R                  USS9nU R                  UR                  5       S5        g )Nc                  ó   • gr7  r   r   r   r   rC  Ú,Test_fromFunction.test_w_name.<locals>._funcL
  r;  r   ÚanotherName)r`   )r?  r)   re   )r+   rC  rq  s      r   Útest_w_nameÚTest_fromFunction.test_w_nameJ
  s2   € ò	ð —‘˜u¨=�Ð9ˆØ×Ñ˜Ÿ™Ó)¨=Õ9r   c                 óF  • S nU R                  U5      nUR                  5       nU R                  [        US   5      S/5        U R                  [        US   5      S/5        U R                  US   0 5        U R                  US   S 5        U R                  US   S 5        g )Nc                 ó   • gr7  r   ©r{   s    r   rC  Ú5Test_fromFunction.test_w_only_required.<locals>._funcT
  r;  r   r  r{   r  rÇ  r  r  ©r?  r   r)   rh   rF  s       r   Útest_w_only_requiredÚ&Test_fromFunction.test_w_only_requiredR
  sš   € ò	ð —‘˜uÓ%ˆØ×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°E°7Ô;Ø×Ñœ˜d :Ñ.Ó/°%°Ô9Ø×Ñ˜˜jÑ)¨2Ô.Ø×Ñ˜˜i™¨$Ô/Ø×Ñ˜˜h™¨Õ.r   c                 óL  • S	S jnU R                  U5      nUR                  5       nU R                  [        US   5      S/5        U R                  [        US   5      / 5        U R                  US   SS05        U R                  US   S 5        U R                  US   S 5        g )
NrB   c                 ó   • gr7  r   rX  s    r   rC  Ú0Test_fromFunction.test_w_optional.<locals>._funca
  r;  r   r  r{   r  rÇ  r  r  ©rB   rZ  rF  s       r   Útest_w_optionalÚ!Test_fromFunction.test_w_optional_
  sœ   € ô	ð —‘˜uÓ%ˆØ×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°E°7Ô;Ø×Ñœ˜d :Ñ.Ó/°Ô4Ø×Ñ˜˜jÑ)¨E°5¨>Ô:Ø×Ñ˜˜i™¨$Ô/Ø×Ñ˜˜h™¨Õ.r   c                 óD  • S	S jnU R                  USS9nUR                  5       nU R                  [        US   5      / 5        U R                  [        US   5      / 5        U R                  US   0 5        U R                  US   S 5        U R                  US   S 5        g )
Nc                 ó   • gr7  r   r©   s    r   rC  Ú5Test_fromFunction.test_w_optional_self.<locals>._funcu
  r;  r   r¿  )Úimlevelr  r  rÇ  r  r  r`  rZ  rF  s       r   Útest_w_optional_selfÚ&Test_fromFunction.test_w_optional_selfl
  sš   € ô	ð —‘˜u¨a�Ð0ˆØ×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°2Ô6Ø×Ñœ˜d :Ñ.Ó/°Ô4Ø×Ñ˜˜jÑ)¨2Ô.Ø×Ñ˜˜i™¨$Ô/Ø×Ñ˜˜h™¨Õ.r   c                 óB  • S nU R                  U5      nUR                  5       nU R                  [        US   5      / 5        U R                  [        US   5      / 5        U R                  US   0 5        U R                  US   S5        U R                  US   S 5        g )Nc                  ó   • gr7  r   )r   s    r   rC  Ú/Test_fromFunction.test_w_varargs.<locals>._func‚
  r;  r   r  r  rÇ  r  r   r  rZ  rF  s       r   Útest_w_varargsÚ Test_fromFunction.test_w_varargs€
  s–   € ò	ð —‘˜uÓ%ˆØ×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°2Ô6Ø×Ñœ˜d :Ñ.Ó/°Ô4Ø×Ñ˜˜jÑ)¨2Ô.Ø×Ñ˜˜i™¨&Ô1Ø×Ñ˜˜h™¨Õ.r   c                 óB  • S nU R                  U5      nUR                  5       nU R                  [        US   5      / 5        U R                  [        US   5      / 5        U R                  US   0 5        U R                  US   S 5        U R                  US   S5        g )Nc                  ó   • gr7  r   )r   s    r   rC  Ú.Test_fromFunction.test_w_kwargs.<locals>._func�
  r;  r   r  r  rÇ  r  r  r   rZ  rF  s       r   Útest_w_kwargsÚTest_fromFunction.test_w_kwargs�
  s–   € ò	ð —‘˜uÓ%ˆØ×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°2Ô6Ø×Ñœ˜d :Ñ.Ó/°Ô4Ø×Ñ˜˜jÑ)¨2Ô.Ø×Ñ˜˜i™¨$Ô/Ø×Ñ˜˜h™¨Õ.r   c                 óR  •  SS jnU R                  U5      nUR                  5       nU R                  [        US   5      SS/5        U R                  [        US   5      S/5        U R                  US   SS05        U R                  US   S	5        U R                  US
   S5        g )NrC   c                 ó   • gr7  r   )r{   rB   r   r   s       r   rC  Ú3Test_fromFunction.test_full_spectrum.<locals>._funcœ
  r;  r   r  r{   rB   r  rÇ  r  r   r  r   ©rC   rZ  rF  s       r   Útest_full_spectrumÚ$Test_fromFunction.test_full_spectrumš
  s¥   € ð ô	ð
 —‘˜uÓ%ˆØ×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°E¸5°>ÔBØ×Ñœ˜d :Ñ.Ó/°%°Ô9Ø×Ñ˜˜jÑ)¨E°5¨>Ô:Ø×Ñ˜˜i™¨&Ô1Ø×Ñ˜˜h™¨Õ.r   r   N)r    r!   r"   r#   r?  rG  rN  rT  r[  ra  rg  rl  rq  rw  r$   r   r   r   r=  r=  '
  s4   † ò)ò/ò"
1ò:ò/ò/ò/ò(/ò/õ/r   r=  c                   ó,   • \ rS rSrS rS rS rS rSrg)ÚTest_fromMethodiª
  c                 ó   • SSK Jn  U" U0 UD6$ )Nr   )Ú
fromMethod)r(   r|  )r+   r   r   r|  s       r   r?  ÚTest_fromMethod._callFUT¬
  s   € Ý7Ù˜4Ð& 2Ñ&Ð&r   c                 ón  •  " S S5      nU R                  UR                  5      nU R                  UR                  5       S5        U R                  UR	                  5       S5        U R                  UR
                  S 5        U R                  [        UR                  5       5      / 5        UR                  5       nU R                  [        US   5      / 5        U R                  [        US   5      / 5        U R                  US   0 5        U R                  US   S 5        U R                  US	   S 5        g )
Nc                   ó   • \ rS rSrS rSrg)Ú)Test_fromMethod.test_no_args.<locals>.Fooi²
  c                 ó   • gr7  r   r©   s    r   rB   Ú-Test_fromMethod.test_no_args.<locals>.Foo.bar³
  r;  r   r   Nr  r   r   r   r%   r€  ²
  r”  r   r%   rB   r8  r  r  rÇ  r  r  )	r?  rB   r)   re   rg   r­   rh   ri   r   ©r+   r%   rq  r!  s       r   Útest_no_argsÚTest_fromMethod.test_no_args°
  s   € ÷	ñ 	ð —‘˜sŸw™wÓ'ˆØ×Ñ˜Ÿ™Ó)¨5Ô1Ø×Ñ˜Ÿ™›¨+Ô6Ø×Ñ˜×)Ñ)¨4Ô0Ø×Ñœ˜f×7Ñ7Ó9Ó:¸BÔ?Ø×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°2Ô6Ø×Ñœ˜d :Ñ.Ó/°Ô4Ø×Ñ˜˜jÑ)¨2Ô.Ø×Ñ˜˜i™¨$Ô/Ø×Ñ˜˜h™¨Õ.r   c                 ón  •  " S S5      nU R                  UR                  5      nUR                  5       nU R                  [	        US   5      SS/5        U R                  [	        US   5      S/5        U R                  US   SS05        U R                  US	   S
5        U R                  US   S5        g )Nc                   ó    • \ rS rSr SS jrSrg)Ú/Test_fromMethod.test_full_spectrum.<locals>.FooiÄ
  c                 ó   • gr7  r   )r+   r{   rB   r   r   s        r   rB   Ú3Test_fromMethod.test_full_spectrum.<locals>.Foo.barÅ
  r;  r   r   Nrv  r  r   r   r   r%   rˆ  Ä
  s
   † à$÷r   r%   r  r{   rB   r  rÇ  rC   r  r   r  r   )r?  rB   r   r)   rh   rƒ  s       r   rw  Ú"Test_fromMethod.test_full_spectrumÂ
  s©   € ÷	ñ 	ð —‘˜sŸw™wÓ'ˆØ×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°E¸5°>ÔBØ×Ñœ˜d :Ñ.Ó/°%°Ô9Ø×Ñ˜˜jÑ)¨E°5¨>Ô:Ø×Ñ˜˜i™¨&Ô1Ø×Ñ˜˜h™¨Õ.r   c                 óL  • S nU R                  U5      nU R                  UR                  5       S5        U R                  UR                  5       S5        U R                  UR                  S 5        U R                  [        UR                  5       5      / 5        UR                  5       nU R                  [        US   5      / 5        U R                  [        US   5      / 5        U R                  US   0 5        U R                  US   S 5        U R                  US   S 5        g )	Nc                  ó   • gr7  r   r   r   r   r{   Ú.Test_fromMethod.test_w_non_method.<locals>.fooÔ
  r;  r   r{   r8  r  r  rÇ  r  r  rE  )r+   r{   rq  r!  s       r   Útest_w_non_methodÚ!Test_fromMethod.test_w_non_methodÒ
  s÷   € ò	ð —‘˜sÓ#ˆØ×Ñ˜Ÿ™Ó)¨5Ô1Ø×Ñ˜Ÿ™›¨+Ô6Ø×Ñ˜×)Ñ)¨4Ô0Ø×Ñœ˜f×7Ñ7Ó9Ó:¸BÔ?Ø×&Ñ&Ó(ˆØ×Ñœ˜d <Ñ0Ó1°2Ô6Ø×Ñœ˜d :Ñ.Ó/°Ô4Ø×Ñ˜˜jÑ)¨2Ô.Ø×Ñ˜˜i™¨$Ô/Ø×Ñ˜˜h™¨Õ.r   r   N)	r    r!   r"   r#   r?  r„  rw  r�  r$   r   r   r   rz  rz  ª
  s   † ò'ò/ò$/õ /r   rz  c                   ó    • \ rS rSrS rS rSrg)rÀ  iä
  c                 ó   • / U l         g r   ©rØ  r©   s    r   r  ÚDummyDependent.__init__æ
  s	   € Øˆ�r   c                 ó:   • U R                   R                  U5        g r   )rØ  rž  )r+   Úoriginally_changeds     r   rà  ÚDummyDependent.changedé
  s   € Ø�‰×ÑÐ/Õ0r   r“  N)r    r!   r"   r#   r  rà  r$   r   r   r   rÀ  rÀ  ä
  s   † òõ1r   rÀ  c                 óœ   • SSK Jn  [        U SS 5      n[        U SS 5      nUb)  [        U[	        U5      5      (       a  X2:”  d  U" S5      eg g g )Nr   r÷  r{   rB   r  )rU  rø  r*   Ú
isinstancerN  )r²   rø  r{   rB   s       r   r   r   í
  sU   € Ý1Ü
�#�u˜dÓ
#€CÜ
�#�u˜dÓ
#€CØ
�œ: c¬4°«9×5Ñ5ð
 ‹yÙÐAÓBÐBð ð 6€r   c                 ój   • SSK Jn  [        U SS 5      (       a  [        U SS 5      (       d  U" S5      eg g )Nr   r÷  r{   rB   rø  )rU  rø  r*   )r²   rø  s     r   rï  rï  ú
  s7   € Ý1Üˆs�E˜4× Ñ ¬°°e¸T×)BÑ)BÙÐ)Ó*Ð*ð *CÐ r   c                   ó&   • \ rS rSrS rS rS rSrg)rº   i   c                 ó¦   • Xl         U Vs0 s H  o3[        X5      _M     snU l        UR                  5        H  u  p4[	        XU5        M     g s  snf r   )rg  r*   Ú
to_restoreÚitemsÚsetattr)r+   rg  r   Úkeyr÷  s        r   r  Ú_Monkey.__init__  sG   € ØŒÙ@BÓCÂ¸¤¨Ó 4Ò4ÁÑCˆŒØŸ(™(ž*‰JˆCÜ�F Ö'ò %ùò Ds   ‹Ac                 ó   • U $ r   r   r©   s    r   Ú	__enter__Ú_Monkey.__enter__  s   € Øˆr   c                 óv   • U R                   R                  5        H  u  pE[        U R                  XE5        M     g r   )r�  rž  rŸ  rg  )r+   Úexc_typeÚexc_valÚexc_tbr   r÷  s         r   Ú__exit__Ú_Monkey.__exit__  s)   € ØŸ/™/×/Ñ/Ö1‰JˆCÜ�D—K‘K Ö,ò 2r   )rg  r�  N)r    r!   r"   r#   r  r£  r©  r$   r   r   r   rº   rº      s   † ò(òõ-r   rº   c                   ó$   • \ rS rSrSrS rS rSrg)ÚTestTypeAnnotationsi  z*Test using Interfaces in type annotations.c                 óÂ   ^^• SSK Jn  SSK Jn  SSKJn   " S SU5      m " S SU5      m " UU4S	 jS
5      nU R                  UR                  UT   UTT4   S.5        g )Nr   ©ÚOptional©ÚUnionr´  c                   ó   • \ rS rSrSrg)Ú+TestTypeAnnotations.test___or__.<locals>.I1i  r   Nr   r   r   r   rh  r³    r6  r   rh  c                   ó   • \ rS rSrSrg)Ú+TestTypeAnnotations.test___or__.<locals>.I2i  r   Nr   r   r   r   r_  rµ    r6  r   r_  c                   ó>   >• \ rS rSr%  Y S-  \S'    Y  Y-  \S'   Srg)Ú*TestTypeAnnotations.test___or__.<locals>.Bi  Nr  r  r   ©r    r!   r"   r#   rJ  r$   )rh  r_  s   €€r   rL  r·    s   ø‡ Ù�D‰y‹LÙ‘B‰wŽJr   rL  r|  ©Útypingr¯  r±  r¸   rµ  r)   rJ  )r+   r¯  r±  rµ  rL  rh  r_  s        @@r   Útest___or__ÚTestTypeAnnotations.test___or__  s[   ù€ Ý#Ý å,ô	�ô 	ô	�ô 	÷	õ 	ð 	×ÑØ×Ñ X¨b¡\¸¸bÀ"¸f¹ÑFõ	Hr   c                 óÀ   ^^• SSK Jn  SSK Jn  SSKJn   " S SU5      m " S S5      m " UU4S	 jS
5      nU R                  UR                  UT   UTT4   S.5        g )Nr   r®  r°  r´  c                   ó   • \ rS rSrSrg)Ú,TestTypeAnnotations.test___ror__.<locals>.I1i,  r   Nr   r   r   r   rh  r¿  ,  r6  r   rh  c                   ó   • \ rS rSrSrg)Ú+TestTypeAnnotations.test___ror__.<locals>.Ai/  r   Nr   r   r   r   rO  rÁ  /  r6  r   rO  c                   ó>   >• \ rS rSr% S Y-  \S'    Y  Y-  \S'   Srg)Ú+TestTypeAnnotations.test___ror__.<locals>.Bi2  Nr  r  r   r¸  )rO  rh  s   €€r   rL  rÃ  2  s   ø‡ Ø‘b‰y‹LÙ‘2‰vŽIr   rL  r|  r¹  )r+   r¯  r±  rµ  rL  rO  rh  s        @@r   Útest___ror__Ú TestTypeAnnotations.test___ror__&  sY   ù€ Ý#Ý å,ô	�ô 	÷	ñ 	÷	õ 	ð 	×ÑØ×Ñ X¨b¡\¸¸aÀ¸e¹ÑEõ	Gr   r   N)r    r!   r"   r#   rf   r»  rÄ  r$   r   r   r   r¬  r¬    s   † Ù4òHõ&Gr   r¬  ) rf   ÚunittestÚzope.interface.testsr   r   r   r   r¼   r°  ÚTestCaser   r:   rW   r¡   rÊ   rÑ   rÿ   rV  r‡  r�  r«  r"  rc  r÷  r  r=  rz  rÀ  r   rï  rº   r¬  r   r   r   Ú<module>rÉ     sš  ðñó$ å (Ý 1Ý 6Ý 2ñ ‹(€ôC�X×&Ñ&ô CôB!9�x×(Ñ(ô !9ôHG(�8×$Ñ$ô G(ôT9 H×$5Ñ$5ô 9ôD	!Ø!ØØô	!ô15Ð<ô 15ôhh5¨ô h5ôV1
Ð?ô 1
ôh	ØØØØ×Ñô		ô"7Ð2°H×4EÑ4Eô "7ôJf
˜×*Ñ*ô f
ôRu	1˜(×+Ñ+ô u	1ôpP1�X×&Ñ&ô P1ôf$$-�\ô $-ôN]0�.ô ]0ô@@/˜×)Ñ)ô @/ôF7/�h×'Ñ'ô 7/÷t1ñ 1ò
Cò+÷-ñ -ô 'G˜(×+Ñ+õ 'Gr   