
    afz                         d dl mZmZmZmZmZmZmZmZ de	de
de	de	de
de
de
d	e
d
e
de
de	defdZde
de	de
de	de	de
de
de
d	e
d
e
de
de	de
fdZde	de
de	de	de
de
de
d	e
d
e
de
de	de
de
fdZdS )   )signrecover
is_addressis_signatureis_eth_privkey
is_bytes16is_block_numberis_chain_idchainIdverifyingContractctypeopenedAtmarketId	channelIdactordelegatemarketmaker	recipientamountreturnc                 :   t          |           sJ t          |          sJ t          |          t          k    sJ t	          |          sJ t          |          sJ t          |          sJ t          |          sJ t          |          sJ t          |          sJ t          |	          sJ t          |
          t          k    sJ ddddddg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d}|S )z

    :param chainId:
    :param verifyingContract:
    :param ctype:
    :param openedAt:
    :param marketId:
    :param channelId:
    :param actor:
    :param delegate:
    :param marketmaker:
    :param recipient:
    :param amount:
    :return:
    namestring)r   typeversionr   uint256r   addressr   uint8r   r   bytes16r   r   r   r   r   r   )EIP712DomainEIP712ChannelOpenr!   XBR1)r   r   )r   r   r   r   r   r   r   r   r   r   r   )typesprimaryTypedomainmessage)r
   r   r   intr	   r   )r   r   r   r   r   r   r   r   r   r   r   datas               S/var/www/html/env/lib/python3.11/site-packages/autobahn/xbr/_eip712_channel_open.py_create_eip712_channel_openr+      s?   $ w'(((((;;#8$$$$$hi     ehk"""""i     <<3 #$ 
 &$ 	 "!# # ,!     #!  #!  $!   !  #!  &!  $!  !! =!"-
 -
\ +
 

 !2  " &"
 
iA ADF K    eth_privkeyc                 v    t          |           sJ t          |||||||||	|
|          }t          | |          S )z

    :param eth_privkey: Ethereum address of buyer (a raw 20 bytes Ethereum address).
    :type eth_privkey: bytes

    :return: The signature according to EIP712 (32+32+1 raw bytes).
    :rtype: bytes
    )r   r+   r   )r-   r   r   r   r   r   r   r   r   r   r   r   r)   s                r*   sign_eip712_channel_openr/      sT     +&&&&&&w0A5(T\^g',hYPVX XDT"""r,   	signaturec                 v    t          |          sJ t          | |||||||||	|
          }t          ||          S )z
    Recover the signer address the given EIP712 signature was signed with.

    :return: The (computed) signer address the signature was signed with.
    :rtype: bytes
    )r   r+   r   )r   r   r   r   r   r   r   r   r   r   r   r0   r)   s                r*   recover_eip712_channel_openr2      sT     	"""""&w0A5(T\^g',hYPVX XD4###r,   N)_eip712_baser   r   r   r   r   r   r	   r
   r(   bytesdictr+   r/   r2    r,   r*   <module>r7      s  6! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !a a as a^a a*/a<AaJOa[`a-2a?DaNQaVZa a a aH#% ## #RW #`c #'*#6;#HM#V[#gl#*/#<A#KN#SX# # # #$$ $ $s $^a $*/$<A$JO$[`$-2$?D$NQ$^c$hm$ $ $ $ $ $r,   