File: //lib64/python3.6/__pycache__/secrets.cpython-36.opt-2.pyc
3
\ö ã @ s„ d dddddddgZ dd lZdd lZdd lZdd
lmZ ddlmZ eƒ Zej Z
ejZdd„ Zd
Z
ddd„Zddd„Zddd„Zd S )ÚchoiceÚ randbelowÚrandbitsÚSystemRandomÚtoken_bytesÚ token_hexÚ
token_urlsafeÚcompare_digesté N)r )r c C s | dkrt dƒ‚tj| ƒS )Nr zUpper bound must be positive.)Ú
ValueErrorÚ_sysrandZ
_randbelow)Zexclusive_upper_bound© r ú/usr/lib64/python3.6/secrets.pyr s é c C s | d krt } tj| ƒS )N)ÚDEFAULT_ENTROPYÚosÚurandom)Únbytesr r r
r # s
c C s t jt| ƒƒjdƒS )NÚascii)ÚbinasciiZhexlifyr Údecode)r r r r
r 1 s c C s t | ƒ}tj|ƒjdƒjdƒS )Nó =r )r Úbase64Zurlsafe_b64encodeÚrstripr )r Útokr r r
r >