o
    _6÷dK  ć                   @   s2   d Z ddlZg d¢Zdd Zedkre  dS dS )zFpasslib.utils.scrypt._gen_files - meta script that generates _salsa.pyé    N) )é   r   é   é   )é   r   r   é	   )r   r   r   é   )r   r   r   é   )r   é   é   r   )r   r   r	   r   )r
   r   r   r   )r	   r
   r   r   )é   é
   é   r   )é   r   r   r   )r   r   r   r   )r   r   r   r   )é   é   é   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r
   r   r   r   )r   r
   r   r   )r   r   r
   r   )r   r   r   r   )r   r	   r   r   )r   r   r	   r   )r   r   r   r   )r	   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   )r   r   r   r   c                  C   s  t j t j t”d”} t| d}|j}dd tdD }d}d}d}d	 d
d tdD ”}d	 |”}t||d}	|d|	  t	t
D ](\}
\} }}}|dt|
||| || || ||  dd| > d |d| d
  qC|d tdD ]}
||d|
|
|
f   qt|d|	  d S )Nz	_salsa.pyŚwc                 S   s   g | ]}d | qS )zv%d© ©Ś.0Śir   r   śwC:\Users\jesus\OneDrive\Desktop\erpjis_fastapi\backend\jisbackend\Lib\site-packages\passlib/crypto/scrypt/_gen_files.pyŚ
<listcomp>S   s    zmain.<locals>.<listcomp>é   z    z        z            z, c                 s   s    | ]}d | V  qdS )zb%dNr   r   r   r   r   Ś	<genexpr>X   s    zmain.<locals>.<genexpr>)ŚVLISTŚTLISTa  """passlib.utils.scrypt._salsa - salsa 20/8 core, autogenerated by _gen_salsa.py"""
#=================================================================
# salsa function
#=================================================================

def salsa20(input):
    """apply the salsa20/8 core to the provided input

    :args input: input list containing 16 32-bit integers
    :returns: result list containing 16 32-bit integers
    """

    %(TLIST)s = input
    %(VLIST)s = \
        %(TLIST)s

    i = 0
    while i < 4:
zĄ        # salsa op %(idx)d: [%(it)d] ^= ([%(is1)d]+[%(is2)d])<<<%(rot1)d
        t = (%(src1)s + %(src2)s) & 0xffffffff
        %(dst)s ^= ((t & 0x%(rmask)08x) << %(rot1)d) | (t >> %(rot2)d)

r
   é    )
ŚidxZis1Zis2ŚitZsrc1Zsrc2ŚdstZrmaskZrot1Zrot2z        i += 1

zb%d = (b%d + v%d) & 0xffffffff
z£
    return %(TLIST)s

#=================================================================
# eof
#=================================================================
)ŚosŚpathŚjoinŚdirnameŚ__file__ŚfileŚwriteŚrangeŚdictŚ	enumerateŚ
_SALSA_OPS)ŚtargetŚfhr'   ZVNAMESZPADZPAD2ZPAD3r   r   Śkwdsr   Zsource1Zsource2Śrotater   r   r   ŚmainN   sD   

žķłū
łr0   Ś__main__)Ś__doc__r!   r+   r0   Ś__name__r   r   r   r   Ś<module>   s    AG
’