3
l�_� � @ s8 d dl mZmZmZ d dlZd dlmZmZ dd� ZdS )� )�absolute_import�division�print_functionN)�quote� urlencodec C s� d| j fdtj| j�fd| jjj� fg}|d k r>|jd|f� |j|� ||rbdt |�t |�f nt |�t
|�d�}djf |�S )NZdigitsZsecret� algorithm�issuerz%s:%s)�typeZlabel�
parametersz%otpauth://{type}/{label}?{parameters})Z_length�base64Z b32encodeZ_keyZ
_algorithm�name�upper�append�extendr r �format)ZhotpZ type_nameZaccount_namer Zextra_parametersr
Zuriparts� r �/usr/lib64/python3.6/utils.py�
_generate_uri s
r ) Z
__future__r r r r Zsix.moves.urllib.parser r r r r r r �