
    &i                         d dl mZ d dlmZmZ  G d de      Z G d de      Z e       Zej                  Z	ej                  Z
y)    )
keccak_256)
BackendAPIPreImageAPIc                   @    e Zd ZdeddfdZdeddfdZdefdZddZy)	Pysha3PreimageprehashreturnNc                 $    t        |      | _        y N)_keccak_256_hashselfr   s     I/var/www/br/venv/lib/python3.12/site-packages/eth_hash/backends/pysha3.py__init__zPysha3Preimage.__init__   s     )
    c                 8    | j                   j                  |      S r   )r   updater   s     r   r   zPysha3Preimage.update   s    zz  ))r   c                 6    | j                   j                         S r   )r   digest)r   s    r   r   zPysha3Preimage.digest   s    zz  ""r   c                 Z    t        d      }| j                  j                         |_        |S )Nr   )r   r   copy)r   dups     r   r   zPysha3Preimage.copy   s#    S!JJOO%	
r   )r	   r   )__name__
__module____qualname__bytesr   r   r   r    r   r   r   r      s9    * *$ **e * *# #r   r   c                   8    e Zd Zdeez  defdZdeez  defdZy)PySha3Backendr   r	   c                 4    t        |      j                         S r   )r   r   r   s     r   	keccak256zPySha3Backend.keccak256   s    7#**,,r   c                     t        |      S r   )r   r   s     r   preimagezPySha3Backend.preimage   s    g&&r   N)r   r   r   	bytearrayr   r"   r   r$   r   r   r   r    r       s2    -U!2 -u -'	E 1 'k 'r   r    N)sha3r   r   eth_hash.abcr   r   r   r    backendr"   r$   r   r   r   <module>r)      sF   [  'J ' /	r   