a
    ù!f^  ã                   @   s$   d dl mZ d dlmZ dd„ ZdS )é   )Ú	cSHAKE256)Ú	TupleHashc                  K   s¢   |   dd¡}|   dd¡}d||fvr,tdƒ‚d||fkr<d}|durV|dk rvtdƒ‚n |dk sf|d rntd	ƒ‚|d }|   d
d¡}| r–tdt| ƒ ƒ‚t|t|ƒS )aî  Create a new TupleHash256 object.

    Args:
       digest_bytes (integer):
        Optional. The size of the digest, in bytes.
        Default is 64. Minimum is 8.
       digest_bits (integer):
        Optional and alternative to ``digest_bytes``.
        The size of the digest, in bits (and in steps of 8).
        Default is 512. Minimum is 64.
       custom (bytes):
        Optional.
        A customization bytestring (``S`` in SP 800-185).

    :Return: A :class:`TupleHash` object
    Údigest_bytesNÚdigest_bitsz*Only one digest parameter must be provided)NNé@   é   z!'digest_bytes' must be at least 8z0'digest_bytes' must be at least 64 in steps of 8Úcustomó    zUnknown parameters: )ÚpopÚ	TypeErrorÚ
ValueErrorÚstrr   r   )Úkwargsr   r   r   © r   ú]/var/www/html/python-backend/venv/lib/python3.9/site-packages/Cryptodome/Hash/TupleHash256.pyÚnew#   s     
r   N)Ú r   ZTupleHash128r   r   r   r   r   r   Ú<module>   s   