3 �k�Z� � @ s� d dl Z d dlZd dlmZ d dlmZmZ d dlmZmZ ddl m Z ddlmZm Z ddlmZ dd lmZmZmZmZmZmZmZ dd lmZ G dd� de �Ze� ZejZejZejZejZej Z dS ) � N)�timegm)�Iterable�Mapping)�datetime� timedelta� )�PyJWS)� Algorithm�get_default_algorithms)�string_types)�DecodeError�ExpiredSignatureError�ImmatureSignatureError�InvalidAudienceError�InvalidIssuedAtError�InvalidIssuerError�MissingRequiredClaimError)� merge_dictc sv e Zd ZdZedd� �Zd� fdd� Zd� fd d� Zdd d�Zdd� Z dd� Z dd� Zdd� Zdd� Z dd� Z� ZS )�PyJWTZJWTc C s dddddddddd� S )NTF) �verify_signature� verify_exp� verify_nbf� verify_iat� verify_aud� verify_iss�require_exp�require_iat�require_nbf� r r r �/usr/lib/python3.6/api_jwt.py�_get_default_options s zPyJWT._get_default_options�HS256Nc sr t |t�std��x0d D ](}t |j|�t�rt|| j� �||<