ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     3
2a                 @   sh   d dl Zd dlmZ d dlZedd edD Z	edd edD Z
dZG dd dZdd	d
ZdS )    N)_compare_digestc             c   s   | ]}|d A V  qdS )\   N ).0xr   r   )/opt/alt/python36/lib64/python3.6/hmac.py	<genexpr>
   s    r      c             c   s   | ]}|d A V  qdS )6   Nr   )r   r   r   r   r   r      s    c               @   sN   e Zd ZdZdddZedd Zdd Zd	d
 Zdd Z	dd Z
dd ZdS )HMAC@   Nc                sV  t |ttfs tdt|j  d kr<tjdtd t	j
 t rL | _n,t  trhd fdd	| _nd fdd	| _| j | _| j | _| jj| _t| jdr| jj}|d	k rtjd
|| jf td | j}ntjd| j td | j}|| _t||kr| j|j }|j|d}| jj|jt | jj|jt |d k	rR| j| d S )Nz,key: expected bytes or bytearray, but got %rz<HMAC() without an explicit digestmod argument is deprecated.       c                s   t j | S )N)_hashlibnew)d)	digestmodr   r   <lambda>4   s    zHMAC.__init__.<locals>.<lambda>c                s
    j | S )N)r   )r   )r   r   r   r   6   s    
block_size   z:block_size of %d seems too small; using our default of %d.z<No block_size attribute on given digest object; Assuming %d.    )r   )r   )
isinstancebytes	bytearray	TypeErrortype__name__	_warningswarnPendingDeprecationWarningr   Zmd5callabledigest_consstrouterinnerdigest_sizehasattrr   	blocksizeRuntimeWarninglendigestljustupdate	translatetrans_5Ctrans_36)selfkeymsgr   r'   r   )r   r   __init__   sB    





zHMAC.__init__c             C   s   d| j j S )Nzhmac-)r$   name)r0   r   r   r   r4   V   s    z	HMAC.namec             C   s   | j j| d S )N)r$   r,   )r0   r2   r   r   r   r,   Z   s    zHMAC.updatec             C   s:   | j j| j }| j|_| j|_| jj |_| jj |_|S )N)	__class____new__r!   r%   r$   copyr#   )r0   otherr   r   r   r7   _   s    z	HMAC.copyc             C   s   | j j }|j| jj  |S )N)r#   r7   r,   r$   r*   )r0   hr   r   r   _currentl   s    
zHMAC._currentc             C   s   | j  }|j S )N)r:   r*   )r0   r9   r   r   r   r*   u   s    zHMAC.digestc             C   s   | j  }|j S )N)r:   	hexdigest)r0   r9   r   r   r   r;      s    zHMAC.hexdigest)NN)r   
__module____qualname__r'   r3   propertyr4   r,   r7   r:   r*   r;   r   r   r   r   r      s   
<	
r   c             C   s   t | ||S )N)r   )r1   r2   r   r   r   r   r      s    r   )NN)warningsr   	_operatorr   Zcompare_digestZhashlibr   r   ranger.   r/   r%   r   r   r   r   r   r   <module>   s   r