�
*bQ � �� � d Z ddlZddlZddlmZ ddlmZmZmZ ddl Z
ddlmZ ddl
mZmZ ddlmZmZmZ ddlmZmZ dd lmZ dd
lmZmZmZ ej e� � Z G d� dej � � Z! G d
� de!e� � Z" G d� de"� � Z# G d� d� � Z$ G d� de$e"� � Z% G d� de$e"� � Z& G d� de"� � Z'e"�( e#dej) � � � � Z*e"�( e#dej+ � � � � Z,e"�( e#dej- � � � � Z.e"�( e%dej) � � � � Z/e"�( e%dej+ � � � � Z0e"�( e%dej- � � � � Z1e"�( e&dej) � � � � Z2e"�( e&d ej+ � � � � Z3e"�( e&d!ej- � � � � Z4e"�( e'd"ej) � � � � Z5e"�( e'd#ej+ � � � � Z6e"�( e'd$ej- � � � � Z7dS )%zZJSON Web Algorithms.
https://tools.ietf.org/html/draft-ietf-jose-json-web-algorithms-40
� N)�Hashable)�Any�Callable�Dict)�default_backend)�hashes�hmac)�ec�padding�rsa)�decode_dss_signature�encode_dss_signature)�
HashAlgorithm)�errors�
interfaces�jwkc � � e Zd ZdZdS )�JWAzJSON Web Algorithm.N)�__name__�
__module__�__qualname__�__doc__� � �,/usr/lib/python3/dist-packages/josepy/jwa.pyr r s � � � � � � ���r r c � � e Zd ZU dZi Zeed f ed< |