
b-Qc           @   s  d  Z  d d k Z d Z d Z d   Z d   Z d   Z d   Z d	   Z d
   Z	 d   Z
 d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z d e f d     YZ d e f d     YZ e d j o d Z e   i   d j p t  e e  i   d j p t  e e d  i   d j p t  e e  Z e i e  e i   d j p t  n d S(    s4   
This code was Ported from CPython's sha512module.c
iNi   i@   c           C   s<   h d g d d 6d d 6d d 6d g t  d 6d d 6d d 6S(	   Ni    i   t   digestt   count_lot   count_hit   datat   localt
   digestsize(   t   SHA_BLOCKSIZE(    (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   new_shaobject   s    c         C   s$   |  d  @| d @?|  d | d @>Bd  @S(   l    i?   i@   (    (   t   xt   y(    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   <lambda>   s    c         C   s   | |  | | A@AS(    (    (   R   R	   t   z(    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyR
      s    c         C   s   |  | B| @|  | @BS(    (    (   R   R	   R   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyR
      s    c         C   s   t  |  |  S(    (   t   ROR64(   R   t   n(    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyR
      s    c         C   s   |  d  @| ?S(   l    (    (   R   R   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyR
      s    c         C   s'   t  |  d   t  |  d  At  |  d  AS(   i   i"   i'   (   t   S(   R   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyR
      s    c         C   s'   t  |  d   t  |  d  At  |  d  AS(   i   i   i)   (   R   (   R   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyR
      s    c         C   s'   t  |  d   t  |  d  At |  d  AS(   i   i   i   (   R   t   R(   R   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyR
      s    c         C   s'   t  |  d   t  |  d  At |  d  AS(   i   i=   i   (   R   R   (   R   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyR
      s    c            s&  g    |  d } x t  d d  D] }   i | d | d >| d | d d >| d | d d	 >| d | d
 d >| d | d d >| d | d d >| d | d d >| d | d  q  Wx` t  d d  D]O }   i t   | d    | d t   | d    | d d @ q W|  d }   f d   } | | d | d | d | d
 | d | d | d | d d d 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d d d 
 \ | d <| d <| | d | d | d | d | d | d
 | d | d d d 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d d
 d 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 d d 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d d d 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d d d 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d d d 
 \ | d <| d <| | d | d | d | d
 | d | d | d | d d d 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d d d  
 \ | d <| d <| | d | d | d | d | d | d
 | d | d d! d" 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d d# d$ 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 d% d& 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d d' d( 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d d) d* 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d d d+ 
 \ | d <| d <| | d | d | d | d
 | d | d | d | d d d, 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d d- d. 
 \ | d <| d <| | d | d | d | d | d | d
 | d | d d/ d0 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d d1 d2 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 d3 d4 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d d5 d6 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d d7 d8 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d d9 d: 
 \ | d <| d <| | d | d | d | d
 | d | d | d | d d d; 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d d< d= 
 \ | d <| d <| | d | d | d | d | d | d
 | d | d d> d? 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d d@ dA 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 dB dC 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d dD dE 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d dF dG 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d dH dI 
 \ | d <| d <| | d | d | d | d
 | d | d | d | d d dJ 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d dK dL 
 \ | d <| d <| | d | d | d | d | d | d
 | d | d dM dN 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d dO dP 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 dQ dR 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d dS dT 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d dU dV 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d dW dX 
 \ | d <| d <| | d | d | d | d
 | d | d | d | d d	 dY 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d dZ d[ 
 \ | d <| d <| | d | d | d | d | d | d
 | d | d d\ d] 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d d^ d_ 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 d` da 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d db dc 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d dd de 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d df dg 
 \ | d <| d <| | d | d | d | d
 | d | d | d | d d dh 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d di dj 
 \ | d <| d <| | d | d | d | d | d | d
 | d | d dk dl 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d dm dn 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 do dp 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d dq dr 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d ds dt 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d du dv 
 \ | d <| d <| | d | d | d | d
 | d | d | d | d d dw 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d dx dy 
 \ | d <| d <| | d | d | d | d | d | d
 | d | d dz d{ 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d d| d} 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 d~ d 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d d d 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d d d 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d d d 
 \ | d <| d <| | d | d | d | d
 | d | d | d | d d d 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d d d 
 \ | d <| d <| | d | d | d | d | d | d
 | d | d d d 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d d d 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 d d 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d d d 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d d d 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d d d 
 \ | d <| d <| | d | d | d | d
 | d | d | d | d d d 
 \ | d
 <| d <| | d | d | d | d | d
 | d | d | d d d 
 \ | d <| d <| | d | d | d | d | d | d
 | d | d d d 
 \ | d <| d <| | d | d | d | d | d | d | d
 | d d d 
 \ | d <| d <| | d | d | d | d | d | d | d | d
 d d 
 \ | d <| d
 <| | d
 | d | d | d | d | d | d | d d d 
 \ | d <| d <| | d | d
 | d | d | d | d | d | d d d 
 \ | d <| d <| | d | d | d
 | d | d | d | d | d d d 
 \ | d <| d <g  } x7 t |  d  D]% \ } } | i | | | d @ qW| |  d <d  S(   NR   i    i   i   i8   i   i0   i   i(   i   i    i   i   i   i   i   iP   i   l    R    c
            s~   | t  |  t | | |  |	   | d @}
 t |   t |  | |  d @} | |
 d @} |
 | d @} | d @| d @f S(   Nl    (   t   Sigma1t   Cht   Sigma0t   Maj(   t   at   bt   ct   dt   et   ft   gt   ht   it   kit   t0t   t1(   t   W(    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   RND+   s
    0 I"(ט/BIe#D7ql   /;X?o. l   [nM I8H[V9IYl   O2^
	 l   4W{X
 l   BFb*=@ i	   IopE[i
   IN1$i   I}Ui   Io{t]ri   l   -vG i   l   5K^	 l   &E l   J='$ i   l   %p} i   IՌƝi   Iew̡$i   Iu+Yo,-i   IntJi   IAܩ\i   ISڈvl   _\KEA	 i   l   2h[A
 i   l   ?!1"  i   l   }z i   l   Q{/ 7 i   l   %'&E<- i   IoQci   Ipn
g))I/F
'i!   I&&\8!.i"   I*Zm,Mi#   I߳8Si$   IcTs
ei%   Iw<
jvi&   l   .$ i'   l   ;5)2	 l   d"
 i)   l   0x.@
 i*   l   !-\ i+   l   0>Fb; i,   l   R-g  i-   l   )*4 i.   l   * .Vq  i/   Iѻ2pjIҸi1   ISAQl7i2   ILwH'i3   IHᵼ4i4   IcZų9i5   IˊAJNi6   IscwOʜ[i7   Io.hI]ti9   I`/Cocxi:   l   r+CR`C& i;   l   94 8f i<   l   (F	 i=   l   ==3"
 i>   l   yew i?   l   +SFc3 i@   l   aLT;{9Q iA   l   BCc5 iB   l   k[wV iC   l   xQ\=+ iD   IorgiE   IȢ}c
iF   I?iG   IG5qiH   I}#w(iI   I$@{2iJ   I
<iK   ILgCiL   IB>˾LiM   I*~e)YiN   I:o_iO   IXGJDl(   t   xranget   appendt   Gamma1t   Gamma0t	   enumerate(   t   sha_infoR   R   t   ssR!   t   digR   (    (   R    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   sha_transform   s    
  MUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU c          C   sW   t    }  d d d d d d d d g |  d	 <d
 |  d <d
 |  d <d
 |  d <d |  d <|  S(   NIɼg	jl   ;'	:=[ I+rn<l   6:>T*
 IтRQl   l|V0"+X	 IkAكIy!~[R    i    R   R   R   i@   R   (   R   (   R'   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   sha_init   s    	"



c          C   sW   t    }  d d d d d d d d g |  d	 <d
 |  d <d
 |  d <d
 |  d <d |  d <|  S(   Nl   wu] I|6*)bl   ]`h
	 I9Y/I1g&3gl   P*u l   I58aX IOHGR    i    R   R   R   i0   R   (   R   (   R'   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   sha384_init   s    	"



c         C   s>   t  |  t  o |  St  |  t  o t |   St |   Sd  S(   N(   t
   isinstancet   strt   unicodet   buffer(   t   s(    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   getbuf   s
    c         C   s  t  |  } d } |  d | d >d @} | |  d j  o |  d c d 7<n | |  d <|  d c | d ?7<|  d o t |  d } | | j o
 | } n xM t | | | | ! D]4 } t i d	 | d  d |  d
 |  d | d <q W| | 8} | | 7} |  d c | 7<|  d t j o t |   d |  d <q@d  Sn xp | t j ob g  } | | | t !D] } | t i d	 |  d qf~ |  d
 <| t 8} | t 7} t |   qCW|  d }	 g  }
 | | | | !D] } |
 t i d	 |  d q~
 |  d
 |	 |	 | +| |  d <d  S(   Ni    R   i   I    R   i   i   R   t   BR   (   t   lenR   R&   t   structt   unpackR*   (   R'   R0   t   countt
   buffer_idxt   cloR   R   t   _[1]R   t   post   _[2](    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt
   sha_update   s<    

 2


 @


Kc         C   s  |  d } |  d } | d ?d @} d |  d | <| d 7} | t  d j o@ |  d |  d	 g t  | |  d <t |   d	 g t  |  d <n" |  d |  d	 g t  | |  d <d	 |  d d
 <d	 |  d d <d	 |  d d <d	 |  d d <d	 |  d d <d	 |  d d <d	 |  d d <d	 |  d d <| d ?d @|  d d <| d ?d @|  d d <| d ?d @|  d d <| d	 ?d @|  d d <| d ?d @|  d d <| d ?d @|  d d <| d ?d @|  d d <| d	 ?d @|  d d <t |   g  } xs |  d D]g } | i | d ?d @| d ?d @| d ?d @| d  ?d @| d ?d @| d ?d @| d ?d @| d @g  qWd! i g  } | D] } | t |  qc~  S("   NR   R   i   i   i   R   i   i   i    ip   iq   ir   is   it   iu   iv   iw   i   i   ix   iy   i   iz   i{   i|   i}   i~   R    i8   i0   i(   i    t    (   R   R*   t   extendt   joint   chr(   R'   t   lo_bit_countt   hi_bit_countR7   R)   R   R:   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt	   sha_final   s@    


!
!
 et   sha512c           B   sH   e  Z e Z Z e Z d d   Z d   Z	 d   Z
 d   Z d   Z RS(   c         C   s1   t    |  _ | o t |  i t |   n d  S(   N(   R+   t   _shaR=   R2   (   t   selfR1   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   __init__   s    c         C   s   t  |  i t |   d  S(   N(   R=   RF   R2   (   RG   R1   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   update   s    c         C   s   t  |  i i    |  i d  S(   NR   (   RD   RF   t   copy(   RG   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyR       s    c         C   s8   d i  g  } |  i   D] } | d t |  q ~  S(   NR>   s   %.2x(   R@   R    t   ord(   RG   R:   R   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt	   hexdigest  s    c         C   s%   t  i t   } |  i i   | _ | S(   N(   RE   t   __new__RF   RJ   (   RG   t   new(    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyRJ     s    N(   t   __name__t
   __module__t   SHA_DIGESTSIZEt   digest_sizeR   R   t
   block_sizet   NoneRH   RI   R    RL   RJ   (    (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyRE      s   
			t   sha384c           B   s'   e  Z d  Z Z d d  Z d   Z RS(   i0   c         C   s1   t    |  _ | o t |  i t |   n d  S(   N(   R,   RF   R=   R2   (   RG   R1   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyRH     s    c         C   s%   t  i t   } |  i i   | _ | S(   N(   RU   RM   RF   RJ   (   RG   RN   (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyRJ     s    N(   RO   RP   RR   R   RT   RH   RJ   (    (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyRU   
  s   
t   __main__s   just a test stringt   cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3et   68be4c6664af867dd1d01c8d77e963d87d77b702400c8fabae355a41b8927a5a5533a7f1c28509bbd65c5f3ac716f33be271fbda0ca018b71a84708c9fae8a53i   t   3233acdbfcfff9bff9fc72401d31dbffa62bd24e9ec846f0578d647da73258d9f0879f7fde01fe2cc6516af3f343807fdef79e23d696c923d79931db46bf1819t   341aeb668730bbb48127d5531115f3c39d12cb9586a6ca770898398aff2411087cfe0b570689adf328cddeb1f00803acce6737a19f310b53bbdb0320828f75bb(   t   __doc__R5   R   RQ   R   R   R   R   R   R   R   R   R%   R$   R*   R+   R,   R2   R=   RD   t   objectRE   RU   RO   t   a_strRL   t   AssertionErrorR1   RI   (    (    (    s`   /var/www/html/kasc-wg8/erics/lib/python2.6/site-packages/setuptools/_backport/hashlib/_sha512.pyt   <module>   s:   	
										i						)	( $