File: //usr/local/CyberCP/lib64/python3.10/site-packages/pyotp/__pycache__/__init__.cpython-310.pyc
o
�h� � @ s� d dl Z d dlmZ d dlmZmZmZ d dlmZm Z m
Z
ddlmZ ddl
mZ ddlmZ dd lmZ dd
lmZ ded�fd
edee defdd�Zded�fd
edee defdd�Zdedefdd�ZdS )� N)�split)�Any�Dict�Sequence)� parse_qsl�unquote�urlparse� )�contrib)�random)�HOTP)�OTP)�TOTP� � ABCDEFGHIJKLMNOPQRSTUVWXYZ234567�length�chars�returnc s, | dk rt d��d�� fdd�t| �D ��S )Nr �#Secrets should be at least 160 bits� c 3 s � | ]}t �� �V qd S )N)r �choice)�.0�_�r � �A/usr/local/CyberCP/lib/python3.10/site-packages/pyotp/__init__.py� <genexpr> s � z random_base32.<locals>.<genexpr>)�
ValueError�join�range�r r r r r �
random_base32
s r! �( �ABCDEF0123456789c C s | dk rt d��t| |d�S )Nr"