³ò
PÒcIc           @   sP   d  d k  l Z d  d k Z d  d k Z d   Z d   Z d   Z d   Z d S(   i˙˙˙˙(   t   divisionNc         C   sw   d g | } | d } xY | d j oK d | >} |  | @o d | | d | <n d | | d | <| d 8} q W| S(   Ni    i   i˙˙˙˙(    (   t   indext   nt   statet   kt   mask(    (    s=   /home/kerl/pub_http_internet/doc/mhcoin/code/mhcoin_states.pyt   index_to_state   s    
 
c         C   s[   d } t  |   } xB t d |  D]1 } |  | d j o | d | d | >O} q" q" W| S(   Ni    i˙˙˙˙i   (   t   lent   range(   R   R   R   R   (    (    s=   /home/kerl/pub_http_internet/doc/mhcoin/code/mhcoin_states.pyt   state_to_index(   s     c         C   s>   g  } x1 t  d d |   D] } | i t | |    q W| S(   Ni    i   (   R   t   appendR   (   R   t   statesR   (    (    s=   /home/kerl/pub_http_internet/doc/mhcoin/code/mhcoin_states.pyt
   all_states1   s
     c         C   s   t  t i d |   |   S(   Ni    (   R   t   randomt	   randrange(   R   (    (    s=   /home/kerl/pub_http_internet/doc/mhcoin/code/mhcoin_states.pyt   unif_rand_state8   s    (   t
   __future__R    t	   sackmat_mR   R   R	   R   R   (    (    (    s=   /home/kerl/pub_http_internet/doc/mhcoin/code/mhcoin_states.pys   <module>   s   				