§
    Ìtºf‰s  ã                   ó¼  — d dl Z d dlZd dlZd dlmZmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZ d dlmZ er0er.d dlmZ d d	lmZmZ d d
lmZ d dlmZmZ d dlmZ d dlmZ d dlmZ de j        v o ee j        d         ¦  «        d k    Zej         j!        dk    Z" ee j         #                    dd¦  «         d¦  «         ee d¦  «         eeoe d¦  «         G d„ de¦  «        ¦   «         ¦   «         ¦   «         Z$ ee j         #                    dd¦  «         d¦  «         ee d¦  «         eeoe d¦  «         G d„ de¦  «        ¦   «         ¦   «         ¦   «         Z%dS )é    N)Úa2b_hexÚb2a_hex)ÚskipIf)ÚinlineCallbacks)ÚTestCase)ÚHAS_CRYPTOSIGN)ÚHAS_XBR)ÚCryptosignKey)Úmake_w3ÚEthereumKey)ÚSecurityModuleMemory)Ú"create_eip712_delegate_certificateÚ#create_eip712_authority_certificate)ÚEIP712DelegateCertificate)ÚEIP712AuthorityCertificate)Úparse_certificate_chainÚWEB3_INFURA_PROJECT_IDé
   ÚUSE_TWISTEDFzonly for Twistedz*env var WEB3_INFURA_PROJECT_ID not definedz.package autobahn[encryption,xbr] not installedc                   ó@   — e Zd Zd„ Zed„ ¦   «         Zed„ ¦   «         ZdS )ÚTestEip712Certificatec                 óÚ   — dt           j                             dd¦  «        ddœ| _        t	          | j        ¦  «        | _        d| _        t          j        | j        dd¬¦  «        | _	        d S )	NÚinfurar   Ú Úmainnet©ÚtypeÚkeyÚnetworkúMavocado style uncover thrive same grace crunch want essay reduce current edgeé   ©Únum_eth_keysÚnum_cs_keys)
ÚosÚenvironÚgetÚ
_gw_configr   Ú_w3Ú_seedphraser   Úfrom_seedphraseÚ_sm©Úselfs    ú`/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/autobahn/xbr/test/test_xbr_eip712.pyÚsetUpzTestEip712Certificate.setUp<   sp   € àÝ”:—>’>Ð":¸BÑ?Ô?Ø ð
ð 
ˆŒõ
 ˜4œ?Ñ+Ô+ˆŒàjˆÔÝ)=Ô)MÈdÔN^ÐmnØZ[ð*]ñ *]ô *]ˆŒˆˆó    c           	   #   óÊ  K  — | j                              ¦   «         V — | j         d         }| j         d         }d}t          ddd …         ¦  «        }d}|                     d¬¦  «        }|                     d¬¦  «        }d}d	}	t          |||||||	¬
¦  «        }
|                     |
d¬¦  «        V —}|                      |d¦  «         | j                              ¦   «         V — d S )Né   é   Ú*0xf766Dc789CF04CD18aE75af2c5fAf2DA6650Ff57é   é Ææ T©Úbinaryl   6u„lB8 Ú.Qme7ss3ARVgxv6rXqVPiikMJ8u2NLgmgszg13pYrDKEoiu©ÚchainIdÚverifyingContractÚ	validFromÚdelegateÚcsPubKeyÚbootedAtÚmetaFÚ‚2bd697b2bdb9bc2c2494e53e9440ddb3e8a596eedaad717f8ecdb732d091a7de48d72d9a26d7e092ec55c074979ab039f8e003acf80224819ff396c9529eb1d11b)	r,   Úopenr   ÚaddressÚ
public_keyr   Úsign_typed_dataÚassertEqualÚclose)r.   Údelegate_eth_keyÚdelegate_cs_keyr<   r=   r>   r?   r@   rA   rB   Ú	cert_dataÚcert_sigs               r/   Ú test_eip712_delegate_certificatez6TestEip712Certificate.test_eip712_delegate_certificateH   s  è è € àŒh�mŠm‰oŒoÐÐÐà(,¬°¬ÐØ)-¬°!¬ˆàˆÝ#Ð$PÐQRÐQSÐQSÔ$TÑUÔUÐØˆ	Ø#×+Ò+°4Ð+Ñ8Ô8ˆØ"×-Ò-°TÐ-Ñ:Ô:ˆØ&ˆØ?ˆå6¸wÐZkØAJÐU]ÐhpØ@HÈtðUñ Uô Uˆ	ð *×9Ò9¸)ÈEÐ9ÑRÔRÐRÐRˆà×Ò˜ð ^ñ	_ô 	_ð 	_ð Œh�nŠnÑÔÐÐÐÐÐr1   c           
   #   óú  K  — | j                              ¦   «         V — | j         d         }| j         d         }d}t          ddd …         ¦  «        }d}|                     d¬¦  «        }|                     d¬¦  «        }t          ddd …         ¦  «        }d	}	d
}
t	          |||||||	|
¬¦  «        }|                     |d¬¦  «        V —}|                      |d¦  «         | j                              ¦   «         V — d S )Nr   r3   r5   r6   r7   Tr8   Ú*0xA6e693CC4A2b4F1400391a728D26369D9b82ef96é   r:   ©r<   r=   r>   ÚissuerÚsubjectÚrealmÚcapabilitiesrB   FÚ‚83590d4304cc5f6024d6a85ed2c511a60e804d609e4f498c8af777d5102c6d22657673e7b68876795e3c72f857b68e13cf616ee4c2ea559bceb344021bf977b61c)r,   rD   r   rE   r   rG   rH   rI   )r.   Útrustroot_eth_keyrJ   r<   r=   r>   rS   rT   rU   rV   rB   rL   rM   s                r/   Ú!test_eip712_authority_certificatez7TestEip712Certificate.test_eip712_authority_certificated   s7  è è € àŒh�mŠm‰oŒoÐÐÐà)-¬°!¬ÐØ(,¬°¬ÐàˆÝ#Ð$PÐQRÐQSÐQSÔ$TÑUÔUÐØˆ	Ø"×*Ò*°$Ð*Ñ7Ô7ˆØ"×*Ò*°$Ð*Ñ7Ô7ˆÝÐDÀQÀRÀRÔHÑIÔIˆØˆØ?ˆå7ÀÐ[lØBKÐTZÐdkØ>CÐR^Ðeiðkñ kô kˆ	ð +×:Ò:¸9ÈUÐ:ÑSÔSÐSÐSˆà×Ò˜ð ^ñ	_ô 	_ð 	_ð Œh�nŠnÑÔÐÐÐÐÐr1   N)Ú__name__Ú
__module__Ú__qualname__r0   r   rN   rY   © r1   r/   r   r   7   s\   € € € € € ð

]ð 
]ð 
]ð ðð ñ „_ðð6 ðð ñ „_ðð ð r1   r   c                   ó�   — e Zd Zd„ Z edd¦  «        ed„ ¦   «         ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Z	dS )	ÚTestEip712CertificateChainc                 ó^  — dt           j                             dd¦  «        ddœ| _        t	          | j        ¦  «        | _        d| _        t          j        | j        dd¬¦  «        | _	        d d	d
dœddddddddœddddœdddœdddœdddœdddœdddœd d!dœgd"d!dœd#d!dœgd$œd%œd&fd d	d
dœd'ddd(d)dddd*œd+dddœdddœdddœd,ddœd-ddœd.ddœd/ddœd d!dœgd"d!dœd#d!dœgd0œd%œd1fd d	d
dœd2ddd(d)dddd*œd+dddœdddœdddœd,ddœd-ddœd.ddœd/ddœd d!dœgd"d!dœd#d!dœgd0œd%œd3fg| _
        d S )4Nr   r   r   r   r   r    r!   r"   ÚWMPÚ1)ÚnameÚversionì   ‡])EÇ8 r3   Ú@12ae0184b180e9a9c5e45be4a1afbce3c6491320063701cd9c4011a777d04089Ú*0xf5173a6111B2A6B3C20fceD53B2A8405EC142bF6r:   é’ç r5   )rA   r<   r@   r?   rB   r>   r=   r   r<   Úuint256)rc   r   r=   rE   r>   r?   r@   Úbytes32rA   Úuint64rB   Ústringrc   rd   )r   ÚEIP712Domain)ÚdomainÚmessageÚprimaryTypeÚtypesÚ‚70726dda677cac8f21366f8023d17203b2f4f9099e954f9bebb2134086e2ac291d80ce038a1342a7748d4b0750f06b8de491561d581c90c99f1c09c91cfa7e191cé   Ú.QmNbMM6TMLAgqBKzY69mJKk5VKvpcTtAtwAaLC2FV4zC3GrP   )rV   r<   rS   rB   rU   rT   r>   r=   r   rS   rT   rU   rV   )r   rm   Ú‚f031b2625ae7e32e7eec3a8fa09f4db3a43217f282b7695e5b09dd2e13c25dc679c1f3ce27b94a3074786f7f12183a2a275a00aea5a66b83c431281f1069bd841cé?   Ú‚c3bcd7a3c3c45ae45a24cd7745db3b39c4113e6b71a4220f943f0969282246b4083ef61277bd7ba9e92c9a07b79869ce63bc6206986480f9c5daddb27b91bebe1b)r%   r&   r'   r(   r   r)   r*   r   r+   r,   Ú_certs_expected1r-   s    r/   r0   z TestEip712CertificateChain.setUp‡   sÅ  € àÝ”:—>’>Ð":¸BÑ?Ô?Ø ð
ð 
ˆŒõ
 ˜4œ?Ñ+Ô+ˆŒàjˆÔÝ)=Ô)MÈdÔN^ÐmnØZ[ð*]ñ *]ô *]ˆŒð
 #'Ø6;ÈÐ-LÐ-LØ;NØ:;Ø;}Ø;gØ7gØ<DØDpð/rð /rð 3NØT]ØT]ðL_ð L_àTgØT]ðL_ð L_àT_ØT]ðL_ð L_àT^ØT]ðL_ð L_àT^ØT]ðL_ð L_àT^ØT\ðL^ð L^àTZÐdlÐKmÐKmðKoð HNÐW_Ð>`Ð>`ØGPÐZbÐ>cÐ>cð>eð-fð -fð#gð #gð0 #gð3"hð4 #'Ø6;ÈÐ-LÐ-LØ?AØ:;Ø9eØ7gØ8dØ:fØ<DØDpð/rð /rð 3OØU^ØU^ðM`ð M`àUhØU^ðM`ð M`àU`ØU^ðM`ð M`àU]ØU^ðM`ð M`àU^ØU^ðM`ð M`àU\ØU^ðM`ð M`àUcØU]ðM_ð M_àU[ÐemÐLnÐLnðLpð HNÐW_Ð>`Ð>`ØGPÐZbÐ>cÐ>cð>eð-fð -fð#gð #gð6 #gð9"hð: #'Ø6;ÈÐ-LÐ-LØ?AØ:;Ø9eØ7gØ8dØ:fØ<DØDpð/rð /rð 3OØU^ØU^ðM`ð M`àUhØU^ðM`ð M`àU`ØU^ðM`ð M`àU]ØU^ðM`ð M`àU^ØU^ðM`ð M`àU\ØU^ðM`ð M`àUcØU]ðM_ð M_àU[ÐemÐLnÐLnðLpð HNÐW_Ð>`Ð>`ØGPÐZbÐ>cÐ>cð>eð-fð -fð#gð #gð6 #gð9"hðoS!iˆÔÐÐr1   Tz]FIXME: builtins.TypeError: to_checksum_address() takes 1 positional argument but 2 were givenc           
   #   ót  K  — | j                              ¦   «         V — | j         d         }| j         d         }| j         d         }d}t          ddd …         ¦  «        }d}|                     d¬¦  «        }|                     d¬¦  «        }d	}	d
}
|                     d¬¦  «        }|}t          ddd …         ¦  «        }t
          j        t
          j        z  }d}|                     d¬¦  «        }|}t          ddd …         ¦  «        }t
          j        t
          j	        z  t
          j        z  t
          j        z  t
          j
        z  t
          j        z  }d}t          ||||||	|
¬¦  «        }|                     |d¬¦  «        V —}t          |d         d         ¦  «                             ¦   «         |d         d<   | j                             |d         d         ¦  «        |d         d<   | j                             |d         d         ¦  «        |d         d<   t%          ||||||||¬¦  «        }|                     |d¬¦  «        V —}| j                             |d         d         ¦  «        |d         d<   | j                             |d         d         ¦  «        |d         d<   | j                             |d         d         ¦  «        |d         d<   | j                             |d         d         ¦  «        |d         d<   t%          ||||||||¬¦  «        }|                     |d¬¦  «        V —}| j                             |d         d         ¦  «        |d         d<   | j                             |d         d         ¦  «        |d         d<   | j                             |d         d         ¦  «        |d         d<   | j                             |d         d         ¦  «        |d         d<   d ||fd ||fd ||fg}	 |                      || j        ¦  «         | j                              ¦   «         V — d S )Nr   r3   r4   r5   r6   rh   Tr8   re   r:   rP   rt   r;   Fro   r@   r?   r=   rR   rS   rT   rU   )r,   rD   r   rE   rF   r   ÚCAPABILITY_PUBLIC_RELAYÚCAPABILITY_PRIVATE_RELAYÚCAPABILITY_ROOT_CAÚCAPABILITY_INTERMEDIATE_CAÚCAPABILITY_PROVIDERÚCAPABILITY_CONSUMERr   rG   r   Údecoder)   ÚtoChecksumAddressr   ÚpprintÚprintrH   rx   rI   )r.   rX   rJ   rK   r<   r=   r>   r?   r@   rA   ÚdelegateMetaÚissuer_cert2Úsubject_cert2Úrealm_cert2Úcapabilities_cert2Ú
meta_cert2Úissuer_cert3Úsubject_cert3Úrealm_cert3Úcapabilities_cert3Ú
meta_cert3Ú
cert1_dataÚ	cert1_sigÚ
cert2_dataÚ	cert2_sigÚ
cert3_dataÚ	cert3_sigÚcertificatesr‚   s                                r/   Ú+test_eip712_create_certificate_chain_manualzFTestEip712CertificateChain.test_eip712_create_certificate_chain_manualê   sÍ  è è € ð Œh�mŠm‰oŒoÐÐÐð *.¬°!¬ÐØ(,¬°¬ÐØ)-¬°!¬ˆð ˆÝ#Ð$PÐQRÐQSÐQSÔ$TÑUÔUÐØˆ	Ø#×+Ò+°4Ð+Ñ8Ô8ˆØ"×-Ò-°TÐ-Ñ:Ô:ˆØ&ˆØGˆð )×0Ò0¸Ð0Ñ=Ô=ˆØ ˆÝÐJÈ1È2È2ÔNÑOÔOˆÝ7ÔOÕRlô  SFñ  FÐØEˆ
ð )×0Ò0¸Ð0Ñ=Ô=ˆØ$ˆÝÐJÈ1È2È2ÔNÑOÔOˆÝ7ÔJÕMgô  NCñ  Cõ  F`ô  Fxñ  xõ  {Uô  {nñ  nõ  qKô  q_ñ  _õ  b|ô  bPñ  PÐØEˆ
õ 8ÀÐ[lØBKÐV^ÐiqØAIÐP\ð^ñ ^ô ^ˆ
ð +×:Ò:¸:ÈeÐ:ÑTÔTÐTÐTˆ	å,3°J¸yÔ4IÈ*Ô4UÑ,VÔ,V×,]Ò,]Ñ,_Ô,_ˆ
�9Ô˜jÑ)Ø,0¬H×,FÒ,FÀzÐR[ÔG\Ð]gÔGhÑ,iÔ,iˆ
�9Ô˜jÑ)Ø59´X×5OÒ5OØ�yÔ!Ð"5Ô6ñ68ô 68ˆ
�9ÔÐ1Ñ2õ
 9ÀÐ\mØCLÐUaØANØ?JÐYkØ>Hð	Jñ Jô Jˆ
ð ,×;Ò;¸JÈuÐ;ÑUÔUÐUÐUˆ	à59´X×5OÒ5OØ�yÔ!Ð"5Ô6ñ68ô 68ˆ
�9ÔÐ1Ñ2à*.¬(×*DÒ*DÀZÐPYÔEZÐ[cÔEdÑ*eÔ*eˆ
�9Ô˜hÑ'Ø+/¬8×+EÒ+EÀjÐQZÔF[Ð\eÔFfÑ+gÔ+gˆ
�9Ô˜iÑ(Ø)-¬×)CÒ)CÀJÈyÔDYÐZaÔDbÑ)cÔ)cˆ
�9Ô˜gÑ&õ 9ÀÐ\mØCLÐUaØANØ?JÐYkØ>Hð	Jñ Jô Jˆ
ð ,×;Ò;¸JÈuÐ;ÑUÔUÐUÐUˆ	à59´X×5OÒ5OØ�yÔ!Ð"5Ô6ñ68ô 68ˆ
�9ÔÐ1Ñ2à*.¬(×*DÒ*DÀZÐPYÔEZÐ[cÔEdÑ*eÔ*eˆ
�9Ô˜hÑ'Ø+/¬8×+EÒ+EÀjÐQZÔF[Ð\eÔFfÑ+gÔ+gˆ
�9Ô˜iÑ(Ø)-¬×)CÒ)CÀJÈyÔDYÐZaÔDbÑ)cÔ)cˆ
�9Ô˜gÑ&ð ˜z¨9Ð5¸¸jÈ)Ð7TÐW[Ð]gÐirÐVsÐtˆð	ð 	×Ò˜ tÔ'<Ñ=Ô=Ð=àŒh�nŠnÑÔÐÐÐÐÐr1   c           
   #   ó’  K  — | j                              ¦   «         V — | j         d         }d}t          ddd …         ¦  «        }d}|                     d¬¦  «        }|}t          ddd …         ¦  «        }t          j        t          j        z  t          j        z  t          j        z  t          j	        z  t          j
        z  }d	}	t          ||||||||	¬
¦  «        }
|                     |
d¬¦  «        V —}t	          ||||||||	¬
¦  «        }|                     |¦  «        V —}t	          j        |                     ¦   «         ¦  «        }|                     |¦  «        V —}|                      ||¦  «         |                      ||¦  «         |                      |d¦  «         t#          j        ¦   «         5 }|                     |j        ¦  «         t	          j        |j        ¦  «        }|                     |¦  «        V —}|                      ||¦  «         d d d ¦  «         n# 1 swxY w Y   | j                              ¦   «         V — d S )Nr   r3   r5   r6   i*,
 Tr8   rP   r   rR   FÚ‚d9e679753e1120a8ba8edea4895d2e056ba98eaa1acbe11bf6210f3a48a56de830aa6a566cc4920c74a284ffcd9f7d1af5fe229268a44030522db19d5a75f4131c)r,   rD   r   rE   r   r|   r}   rz   r{   r~   r   r   rG   ÚsignÚparseÚmarshalrH   ÚtempfileÚNamedTemporaryFileÚsaverc   ÚloadrI   )r.   Úca_keyÚca_cert_chainIdÚca_cert_verifyingContractÚca_cert_validFromÚca_cert_issuerÚca_cert_subjectÚca_cert_realmÚca_cert_capabilitiesÚca_cert_metaÚca_cert_dataÚca_cert_sigÚca_certÚca_cert_sig2Úca_cert2Úca_cert_sig3ÚfdÚca_cert3Úca_cert_sig4s                      r/   Ú.test_eip712_create_certificate_chain_highlevelzITestEip712CertificateChain.test_eip712_create_certificate_chain_highlevelN  sç  è è € àŒh�mŠm‰oŒoÐÐÐð #œh qœkˆð ˆÝ$+Ð,XÐYZÐY[ÐY[Ô,\Ñ$]Ô$]Ð!Ø"ÐØŸš¨t˜Ñ4Ô4ˆØ(ˆÝÐ LÈQÈRÈRÔ PÑQÔQˆÝ9ÔLÕOiô  PEñ   Eõ  Hbô  Hzñ   zõ  }Wô  }pñ   põ  sMô  sañ   aõ  d~ô  dRñ   RÐØˆõ ;À?ØMfØEVÐ_mØCRÐZgØH\Ðcoð	qñ qô qˆð
 #×2Ò2°<ÈÐ2ÑNÔNÐNÐNˆõ -°_Ø?XØ7HØ4BØ5DØ3@Ø:NØ2>ð@ñ @ô @ˆð %Ÿ\š\¨&Ñ1Ô1Ð1Ð1ˆõ .Ô3°G·O²OÑ4EÔ4EÑFÔFˆØ%Ÿ]š]¨6Ñ2Ô2Ð2Ð2ˆð 	×Ò˜ lÑ3Ô3Ð3Ø×Ò˜ lÑ3Ô3Ð3ð 	×Ò˜ð '\ñ 	]ô 	]ð 	]õ Ô(Ñ*Ô*ð 		8¨bà�LŠL˜œÑ!Ô!Ð!õ 2Ô6°r´wÑ?Ô?ˆHð "*§¢¨vÑ!6Ô!6Ð6Ð6ˆLØ×Ò˜[¨,Ñ7Ô7Ð7ð		8ð 		8ð 		8ñ 		8ô 		8ð 		8ð 		8ð 		8ð 		8ð 		8ð 		8øøøð 		8ð 		8ð 		8ð 		8ð Œh�nŠnÑÔÐÐÐÐÐs   Æ4A!H!È!H%È(H%c              #   óþ
  K  — | j                              ¦   «         V — | j         d         }| j         d         }| j         d         }g }g }| j        D �]\  }}}|                      d|¦  «         |                      d|¦  «         |                      d|¦  «         |                      d|¦  «         |                      |d         |d         ¦  «         |                      |d         dd	g¦  «         |d         dk    rt	          j        |¦  «        }	n+|d         d	k    rt          j        |¦  «        }	n
J d¦   «         ‚|                     |	¦  «         |                     |¦  «         �Œ|                      t          |¦  «        d¦  «         |                      |d         j
        |                     d¬¦  «        ¦  «         |                      |d         j        |                     d¬¦  «        ¦  «         |                      |d         j        |                     d¬¦  «        ¦  «         |                      |d         j        |                     d¬¦  «        ¦  «         |                      |d         t          ¦  «         dt          |¦  «        dz
  fD ]#}
|                      ||
         t          ¦  «         Œ$|d         j        }|d         j        }|D ]8}	|                      |	j        |¦  «         |                      |	j        |¦  «         Œ9|d         j        }|dd …         D ]}	|                      |	j        |¦  «         Œ|                      |d         j        |d         j        ¦  «         |                      |d         j        |d         j        ¦  «         |                      |d         j        |d         j        ¦  «         |                      |d         j        |d         j        |d         j        z  k    ¦  «         |                      |d         j        |d         j
        ¦  «         |                      |d         j        |d         j        ¦  «         |d                              t3          |d         ¦  «        ¦  «        }|                      ||                     d¬¦  «        ¦  «         |d                              t3          |d         ¦  «        ¦  «        }|                      ||                     d¬¦  «        ¦  «         |d                              t3          |d         ¦  «        ¦  «        }|                      ||                     d¬¦  «        ¦  «         | j                              ¦   «         V — d S )Nr   r3   r4   rn   ro   rp   rq   r   r   Fzshould not arrive hererQ   Tr8   r6   )r,   rD   rx   ÚassertInr   rš   r   ÚappendrH   Úlenr?   rE   r@   rF   rS   ÚassertIsInstancer<   r=   rU   rT   ÚassertLessEqualr>   Ú
assertTruerV   Úrecoverr   rI   )r.   rX   rJ   rK   Ú
cert_chainÚ	cert_sigsÚ	cert_hashrL   rM   ÚcertÚir<   r=   rU   Ú_issuers                  r/   Ú+test_eip712_verify_certificate_chain_manualzFTestEip712CertificateChain.test_eip712_verify_certificate_chain_manualŒ  sG  è è € àŒh�mŠm‰oŒoÐÐÐð *.¬°!¬ÐØ(,¬°¬ÐØ)-¬°!¬ˆð ˆ
Øˆ	Ø.2Ô.Cð 	'ñ 	'Ñ*ˆI�y (Ø�MŠM˜( IÑ.Ô.Ð.Ø�MŠM˜) YÑ/Ô/Ð/Ø�MŠM˜-¨Ñ3Ô3Ð3Ø�MŠM˜' 9Ñ-Ô-Ð-Ø�MŠM˜) MÔ2°I¸gÔ4FÑGÔGÐGØ�MŠM˜) MÔ2Ð5PÐRnÐ4oÑpÔpÐpØ˜Ô'Ð+FÒFÐFÝ0Ô6°yÑAÔA��Ø˜=Ô)Ð-IÒIÐIÝ1Ô7¸	ÑBÔB��à6Ð6Ñ6Ô6Ð6Ø×Ò˜dÑ#Ô#Ð#Ø×Ò˜XÑ&Ô&Ð&Ñ&ð 	×Ò�˜Z™œ¨!Ñ,Ô,Ð,Ø×Ò˜ AœÔ/Ð1A×1IÒ1IÐQUÐ1IÑ1VÔ1VÑWÔWÐWØ×Ò˜ AœÔ/°×1KÒ1KÐSWÐ1KÑ1XÔ1XÑYÔYÐYØ×Ò˜ AœÔ-Ð/@×/HÒ/HÐPTÐ/HÑ/UÔ/UÑVÔVÐVØ×Ò˜ AœÔ-Ð/@×/HÒ/HÐPTÐ/HÑ/UÔ/UÑVÔVÐVð$ 	×Ò˜j¨œmÕ-FÑGÔGÐGØ•S˜‘_”_ qÑ(Ð)ð 	Mð 	MˆAØ×!Ò! *¨Q¤-Õ1KÑLÔLÐLÐLð ˜Q”-Ô'ˆØ& qœMÔ;ÐØð 	Hð 	HˆDØ×Ò˜Tœ\¨7Ñ3Ô3Ð3Ø×Ò˜TÔ3Ð5FÑGÔGÐGÐGð ˜1”Ô#ˆØ˜q˜r˜r”Nð 	0ð 	0ˆDØ×Ò˜TœZ¨Ñ/Ô/Ð/Ð/ð 	×Ò˜ AœÔ.°
¸1´Ô0DÑEÔEÐEð 	×Ò˜ AœÔ-¨z¸!¬}Ô/DÑEÔEÐEð 	×Ò˜Z¨œ]Ô4°jÀ´mÔ6MÑNÔNÐNð 	�Š˜
 1œÔ2°jÀ´mÔ6PÐS]Ð^_ÔS`ÔSmÑ6mÒmÑnÔnÐnð 	×Ò˜ AœÔ.°
¸1´Ô0FÑGÔGÐGð 	×Ò˜Z¨œ]Ô4°jÀ´mÔ6MÑNÔNÐNð ˜Q”-×'Ò'­°	¸!´Ñ(=Ô(=Ñ>Ô>ˆØ×Ò˜Ð"3×";Ò";À4Ð";Ñ"HÔ"HÑIÔIÐIð ˜Q”-×'Ò'­°	¸!´Ñ(=Ô(=Ñ>Ô>ˆØ×Ò˜Ð"3×";Ò";À4Ð";Ñ"HÔ"HÑIÔIÐIð ˜Q”-×'Ò'­°	¸!´Ñ(=Ô(=Ñ>Ô>ˆØ×Ò˜Ð"2×":Ò":À$Ð":Ñ"GÔ"GÑHÔHÐHàŒh�nŠnÑÔÐÐÐÐÐr1   c              #   ó*  K  — | j                              ¦   «         V — | j         d         }| j         d         }| j         d         }t          | j        ¦  «        }|                      |d         j        |                     d¬¦  «        ¦  «         |                      |d         j        |                     d¬¦  «        ¦  «         |                      |d         j        | 	                    d¬¦  «        ¦  «         | j          
                    ¦   «         V — d S )Nr   r3   r4   r6   Tr8   )r,   rD   r   rx   rH   rS   rE   r?   r@   rF   rI   )r.   rX   rJ   rK   r•   s        r/   Ú.test_eip712_verify_certificate_chain_highlevelzITestEip712CertificateChain.test_eip712_verify_certificate_chain_highlevelï  sþ   è è € àŒh�mŠm‰oŒoÐÐÐð *.¬°!¬ÐØ(,¬°¬ÐØ)-¬°!¬ˆå.¨tÔ/DÑEÔEˆà×Ò˜ aœÔ/Ð1B×1JÒ1JÐRVÐ1JÑ1WÔ1WÑXÔXÐXà×Ò˜ aœÔ1Ð3C×3KÒ3KÐSWÐ3KÑ3XÔ3XÑYÔYÐYØ×Ò˜ aœÔ1°?×3MÒ3MÐUYÐ3MÑ3ZÔ3ZÑ[Ô[Ð[àŒh�nŠnÑÔÐÐÐÐÐr1   N)
rZ   r[   r\   r0   r   r   r–   r²   rÁ   rÃ   r]   r1   r/   r_   r_   ‚   s¸   € € € € € ð
aið aið aiðF €VˆDÐqÑrÔrØð`ð `ñ „_ñ sÔrð`ðD ð;ð ;ñ „_ð;ðz ð`ð `ñ „_ð`ðD ðð ñ „_ðð ð r1   r_   )&r%   Úsysrœ   Úbinasciir   r   Úunittestr   Útwisted.internet.deferr   Útwisted.trial.unittestr   Úautobahn.wamp.cryptosignr   Úautobahn.xbrr	   r
   r   r   Úautobahn.xbr._secmodr   r   r   Ú)autobahn.xbr._eip712_delegate_certificater   Ú*autobahn.xbr._eip712_authority_certificater   Ú&autobahn.xbr._eip712_certificate_chainr   r&   r¶   Ú
HAS_INFURAÚversion_infoÚminorÚ
IS_CPY_310r'   r   r_   r]   r1   r/   ú<module>rÓ      s±  ðð6 
€	€	€	Ø 
€
€
€
Ø €€€Ø %Ð %Ð %Ð %Ð %Ð %Ð %Ð %Ø Ð Ð Ð Ð Ð à 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø +Ð +Ð +Ð +Ð +Ð +à 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø  Ð  Ð  Ð  Ð  Ð  à
ð Oˆ~ð OØ6Ð6Ð6Ð6Ð6Ð6Ø1Ð1Ð1Ð1Ð1Ð1Ð1Ð1Ø9Ð9Ð9Ð9Ð9Ð9ØdÐdÐdÐdÐdÐdÐdÐdØSÐSÐSÐSÐSÐSØUÐUÐUÐUÐUÐUØNÐNÐNÐNÐNÐNð &¨¬Ð3Ðe¸¸¸B¼JÐG_Ô<`Ñ8aÔ8aÐdeÒ8e€
ð ÔÔ# rÒ)€
ð €ˆBŒJ�NŠN˜=¨%Ñ0Ô0Ð0Ð2DÑEÔEØ€ˆJˆÐDÑEÔEØ€ˆWÐ'˜Ð(Ð*ZÑ[Ô[ðEð Eð Eð Eð E˜Hñ Eô Eñ \Ô[ñ FÔEñ FÔEðEðP €ˆBŒJ�NŠN˜=¨%Ñ0Ô0Ð0Ð2DÑEÔEØ€ˆJˆÐDÑEÔEØ€ˆWÐ'˜Ð(Ð*ZÑ[Ô[ðzð zð zð zð z ñ zô zñ \Ô[ñ FÔEñ FÔEðzð zð zr1   