o
    *Î®cO  ã                   @   sø   d Z ddlZddlmZmZmZ ejZejZ	ej
ZddlmZ ddlmZmZmZ ddlmZmZmZ edkrRdd	lmZmZm Z!m"Z#m$Z%m&Z'm(Z)m*Z+ e%Z,e'Z&e)Z(n$G d
d„ dƒZ-G dd„ dƒZ.e-Ze.ZdZ!dZ#dZ%dZ'dZ)dZ+eZ,eZ&eZ(g d¢Z/dS )z8Ground types for various mathematical domains in SymPy. é    N)ÚHAS_GMPYÚ	factorialÚsqrté   )ÚPythonRational)ÚigcdexÚigcd2Úilcm)ÚFloatÚIntegerÚRationalé   )ÚmpzÚmpqÚnumerÚdenomÚgcdextÚgcdÚlcmÚqdivc                   @   ó   e Zd Zdd„ ZdS )Ú_GMPYIntegerc                 C   ó   d S ©N© ©ÚselfÚobjr   r   úF/tmp/pip-target-vg8gfxp4/lib/python/sympy/polys/domains/groundtypes.pyÚ__init__%   ó   z_GMPYInteger.__init__N©Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   $   ó    r   c                   @   r   )Ú_GMPYRationalc                 C   r   r   r   r   r   r   r   r   )   r    z_GMPYRational.__init__Nr!   r   r   r   r   r&   (   r%   r&   )ÚPythonIntegerÚ
PythonRealÚPythonComplexr   Úpython_gcdexÚ
python_gcdÚ
python_lcmÚ	SymPyRealÚSymPyIntegerÚSymPyRationalÚGMPYIntegerÚGMPYRationalÚ
gmpy_numerÚ
gmpy_denomÚ
gmpy_gcdexÚgmpy_gcdÚgmpy_lcmÚ	gmpy_qdivr   r   r0   r1   )0Ú__doc__ÚbuiltinsÚsympy.external.gmpyr   r   r   Úintr'   Úfloatr(   Úcomplexr)   Úpythonrationalr   Úsympy.core.numbersr   r*   r   r+   r	   r,   r
   r-   r   r.   r   r/   Úgmpy2r   r0   r   r1   r   r2   r   r3   r   r4   r   r5   r   r6   r   r7   Úgcdexr   r&   Ú__all__r   r   r   r   Ú<module>   s8    (
