
    z%i,                         	 d dl mZmZ g dZ G d de      Z G d de      Zej                  e        G d d	e      Zej                  e	        G d
 de      Z
 G d de
      Zej                  e       y)    )ABCMetaabstractmethod)NumberComplexRealRationalIntegralc                       e Zd Z	 dZdZy)r    N)__name__
__module____qualname__	__slots____hash__r       ;/home/uftp/.pyenv/versions/3.12.0/lib/python3.12/numbers.pyr   r   %   s    
 I Hr   r   )	metaclassc                   8   e Zd Z	 dZed        Zd Zeed               Zeed               Z	ed        Z
ed        Zed        Zed	        Zd
 Zd Zed        Zed        Zed        Zed        Zed        Zed        Zed        Zed        Zed        Zy)r   r   c                      y Nr   selfs    r   __complex__zComplex.__complex__F   s    Jr   c                     	 | dk7  S Nr   r   r   s    r   __bool__zComplex.__bool__J   s    7qyr   c                     	 t         r   NotImplementedErrorr   s    r   realzComplex.realN       	 "!r   c                     	 t         r   r   r   s    r   imagzComplex.imagW   r!   r   c                     	 t         r   r   r   others     r   __add__zComplex.__add__`       !!r   c                     	 t         r   r   r%   s     r   __radd__zComplex.__radd__e   r(   r   c                     	 t         r   r   r   s    r   __neg__zComplex.__neg__j       !!r   c                     	 t         r   r   r   s    r   __pos__zComplex.__pos__o   r-   r   c                     	 | | z   S r   r   r%   s     r   __sub__zComplex.__sub__t   s    uf}r   c                     	 |  |z   S r   r   r%   s     r   __rsub__zComplex.__rsub__x   s    uu}r   c                     	 t         r   r   r%   s     r   __mul__zComplex.__mul__|   r(   r   c                     	 t         r   r   r%   s     r   __rmul__zComplex.__rmul__   r(   r   c                     	 t         r   r   r%   s     r   __truediv__zComplex.__truediv__   s    C!!r   c                     	 t         r   r   r%   s     r   __rtruediv__zComplex.__rtruediv__   r(   r   c                     	 t         r   r   )r   exponents     r   __pow__zComplex.__pow__   s    R!!r   c                     	 t         r   r   )r   bases     r   __rpow__zComplex.__rpow__   r(   r   c                     	 t         r   r   r   s    r   __abs__zComplex.__abs__   s    E!!r   c                     	 t         r   r   r   s    r   	conjugatezComplex.conjugate       2!!r   c                     	 t         r   r   r%   s     r   __eq__zComplex.__eq__       !!r   N)r   r   r   r   r   r   r   propertyr    r#   r'   r*   r,   r/   r1   r3   r5   r7   r9   r;   r>   rA   rC   rE   rH   r   r   r   r   r   9   sm    IK K "  " "  " " " " " " " " " " " " " " " " " " " " " " " " " " "r   r   c                       e Zd Z	 dZed        Zed        Zed        Zed        Zedd       Z	d Z
d	 Zed
        Zed        Zed        Zed        Zed        Zed        Zd Zed        Zed        Zd Zy)r   r   c                     	 t         r   r   r   s    r   	__float__zReal.__float__   s    	# "!r   c                     	 t         r   r   r   s    r   	__trunc__zReal.__trunc__   s    	 "!r   c                     	 t         r   r   r   s    r   	__floor__zReal.__floor__   rF   r   c                     	 t         r   r   r   s    r   __ceil__zReal.__ceil__   s    /!!r   Nc                     	 t         r   r   )r   ndigitss     r   	__round__zReal.__round__   s    	
 "!r   c                     	 | |z  | |z  fS r   r   r%   s     r   
__divmod__zReal.__divmod__   s    	
 te|,,r   c                     	 || z  || z  fS r   r   r%   s     r   __rdivmod__zReal.__rdivmod__   s    	
 ut|,,r   c                     	 t         r   r   r%   s     r   __floordiv__zReal.__floordiv__       7!!r   c                     	 t         r   r   r%   s     r   __rfloordiv__zReal.__rfloordiv__   r]   r   c                     	 t         r   r   r%   s     r   __mod__zReal.__mod__   r(   r   c                     	 t         r   r   r%   s     r   __rmod__zReal.__rmod__   r(   r   c                     	 t         r   r   r%   s     r   __lt__zReal.__lt__  s    	H "!r   c                     	 t         r   r   r%   s     r   __le__zReal.__le__	  rI   r   c                 ,    	 t        t        |             S r   )complexfloatr   s    r   r   zReal.__complex__  s    6uT{##r   c                 
    	 | S r   r   r   s    r   r    z	Real.real  s    4ur   c                      	 yr   r   r   s    r   r#   z	Real.imag  s    7r   c                 
    	 | S r   r   r   s    r   rE   zReal.conjugate  s    -ur   r   )r   r   r   r   r   rM   rO   rQ   rS   rV   rX   rZ   r\   r_   ra   rc   re   rg   r   rJ   r    r#   rE   r   r   r   r   r      s$    I" " 
" 
" " " " " " "-- " " " " " " " " " " " "
$    r   r   c                   L    e Zd Z	 dZeed               Zeed               Zd Zy)r   r   c                     t         r   r   r   s    r   	numeratorzRational.numerator)  
     "!r   c                     t         r   r   r   s    r   denominatorzRational.denominator.  rq   r   c                 Z    	 t        | j                        t        | j                        z  S r   )intrp   rs   r   s    r   rM   zRational.__float__4  s(    	 4>>"S)9)9%:::r   N)	r   r   r   r   rJ   r   rp   rs   rM   r   r   r   r   r   $  sE    @I"  " "  ";r   r   c                      e Zd Z	 dZed        Zd Zedd       Zed        Zed        Z	ed        Z
ed	        Zed
        Zed        Zed        Zed        Zed        Zed        Zed        Zd Zed        Zed        Zy)r	   r   c                     	 t         r   r   r   s    r   __int__zIntegral.__int__H  s    !!r   c                     	 t        |       S r   )ru   r   s    r   	__index__zIntegral.__index__M  s    D4yr   Nc                     	 t         r   r   )r   r=   moduluss      r   r>   zIntegral.__pow__Q  s    	 "!r   c                     	 t         r   r   r%   s     r   
__lshift__zIntegral.__lshift__\  rI   r   c                     	 t         r   r   r%   s     r   __rlshift__zIntegral.__rlshift__a  rI   r   c                     	 t         r   r   r%   s     r   
__rshift__zIntegral.__rshift__f  rI   r   c                     	 t         r   r   r%   s     r   __rrshift__zIntegral.__rrshift__k  rI   r   c                     	 t         r   r   r%   s     r   __and__zIntegral.__and__p  r(   r   c                     	 t         r   r   r%   s     r   __rand__zIntegral.__rand__u  r(   r   c                     	 t         r   r   r%   s     r   __xor__zIntegral.__xor__z  r(   r   c                     	 t         r   r   r%   s     r   __rxor__zIntegral.__rxor__  r(   r   c                     	 t         r   r   r%   s     r   __or__zIntegral.__or__  r(   r   c                     	 t         r   r   r%   s     r   __ror__zIntegral.__ror__  r(   r   c                     	 t         r   r   r   s    r   
__invert__zIntegral.__invert__  r-   r   c                 ,    	 t        t        |             S r   )rj   ru   r   s    r   rM   zIntegral.__float__  s    -SYr   c                 
    	 | S r   r   r   s    r   rp   zIntegral.numerator  s    0ur   c                      	 y)N   r   r   s    r   rs   zIntegral.denominator  s    /r   r   )r   r   r   r   r   rx   rz   r>   r~   r   r   r   r   r   r   r   r   r   r   rM   rJ   rp   rs   r   r   r   r	   r	   ?  sB    I" " " " " " " " " " " " " " " " " " " " " " " " " "
     r   r	   N)abcr   r   __all__r   r   registerri   r   rj   r   r	   ru   r   r   r   <module>r      s   @: (
?	w 	(n"f n"`    s7 sj e ;t ;6ax aF 	  # r   