�
H�gX � � � d dl Z d dlZddlmZmZmZmZmZ ej Z
i fd�Z G d� de� � Z ed� � Z
ed� � Z ed � � Z ed
� � Z ed� � Z ed� � Z ed
� � Z ed� � Z ed� � Z ed� � Z ed� � Z d dlZej � e� � dS # e$ r Y dS w xY w)� N� )� int_types�mpf_hash�bitcount�from_man_exp�HASH_MODULUSc �� � | |f}||v r|| S | |}}|r |||z }}|� |dk r
| |z } ||z }t t � � }| |f|_ |dk rt |d � � dk r|||<