
    Lfz                         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y)   )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               \/var/www/cs2snipe.com/venv/lib/python3.12/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DF K    eth_privkeyc                 ^    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/      sE     +&&&&w0A5(T\^g',hYPVXDT""r,   	signaturec                 ^    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      sE     	"""&w0A5(T\^g',hYPVXD4##r,   N)_eip712_baser   r   r   r   r   r   r	   r
   r(   bytesdictr+   r/   r2    r,   r*   <module>r7      sY  6! ! !a a as a^a a*/a<AaJOa[`a-2a?DaNQaVZaH#% ## #RW #`c #'*#6;#HM#V[#gl#*/#<A#KN#SX#$$ $ $s $^a $*/$<A$JO$[`$-2$?D$NQ$^c$hm$r,   