Mini Kabibi Habibi

Current Path : C:/Users/ITO/AppData/Local/Programs/Python/Python314/Lib/__pycache__/
Upload File :
Current File : C:/Users/ITO/AppData/Local/Programs/Python/Python314/Lib/__pycache__/numbers.cpython-314.pyc

+
��hm.���Rt^RIHtHt.ROt!RR]R7t!R	R]4t]P]4!R
R]4t	]	P]
4!RR]	4t!RR]4t]P]
4R
#)z~Abstract Base Classes (ABCs) for numbers, according to PEP 3141.

TODO: Fill out more detailed documentation on the operators.)�ABCMeta�abstractmethod�Number�Complex�Real�Rational�Integralc�"�]tRt^%tRtRtRtRtR#)rz�All numbers inherit from this class.

If you just want to check if an argument x is a number, without
caring what kind, use isinstance(x, Number).
N�)�__name__�
__module__�__qualname__�__firstlineno__�__doc__�	__slots__�__hash__�__static_attributes__r
��CC:\Users\ITO\AppData\Local\Programs\Python\Python314\Lib\numbers.pyrr%s���
�I��Hr)�	metaclassc�Na�]tRt^9toRtRt]R4tRt]	]R44t
]	]R44t]R4t]R4t
]R4t]R	4tR
tRt]R4t]R
4t]R4t]R4t]R4t]R4t]R4t]R4t]R4tRtVtR#)raNComplex defines the operations that work on the builtin complex type.

In short, those are: a conversion to complex, .real, .imag, +, -,
*, /, **, abs(), .conjugate, ==, and !=.

If it is given heterogeneous arguments, and doesn't have special
knowledge about them, it should fall back to the builtin complex
type as described below.
c��R#)z<Return a builtin complex instance. Called for complex(self).Nr
��selfs&r�__complex__�Complex.__complex__Fs�rc��V^8g#)z)True if self != 0. Called for bool(self).r
rs&r�__bool__�Complex.__bool__Js���q�y�rc��\h)zHRetrieve the real component of this number.

This should subclass Real.
��NotImplementedErrorrs&r�real�Complex.realN�
��"�!rc��\h)zMRetrieve the imaginary component of this number.

This should subclass Real.
r rs&r�imag�Complex.imagWr$rc��\h)zself + otherr �r�others&&r�__add__�Complex.__add__`�
��"�!rc��\h)zother + selfr r)s&&r�__radd__�Complex.__radd__er-rc��\h)z-selfr rs&r�__neg__�Complex.__neg__jr-rc��\h)z+selfr rs&r�__pos__�Complex.__pos__or-rc��W),#)zself - otherr
r)s&&r�__sub__�Complex.__sub__ts���f�}�rc��V)V,#)zother - selfr
r)s&&r�__rsub__�Complex.__rsub__xs���u�u�}�rc��\h)zself * otherr r)s&&r�__mul__�Complex.__mul__|r-rc��\h)zother * selfr r)s&&r�__rmul__�Complex.__rmul__�r-rc��\h)z5self / other: Should promote to float when necessary.r r)s&&r�__truediv__�Complex.__truediv__�r-rc��\h)zother / selfr r)s&&r�__rtruediv__�Complex.__rtruediv__�r-rc��\h)zDself ** exponent; should promote to float or complex when necessary.r )r�exponents&&r�__pow__�Complex.__pow__�r-rc��\h)zbase ** selfr )r�bases&&r�__rpow__�Complex.__rpow__�r-rc��\h)z7Returns the Real distance from 0. Called for abs(self).r rs&r�__abs__�Complex.__abs__�r-rc��\h)z$(x+y*i).conjugate() returns (x-y*i).r rs&r�	conjugate�Complex.conjugate�r-rc��\h)z
self == otherr r)s&&r�__eq__�Complex.__eq__�r-rr
N)rrr
rrrrrr�propertyr"r&r+r/r2r5r8r;r>rArDrGrKrOrRrUrXr�__classdictcell__��
__classdict__s@rrr9sp������I��K��K����"���"���"���"��"��"��"��"��"��"��"��"����"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"rc�a�]tRt^�toRtRt]R4t]R4t]R4t	]R4t
]RRl4tRtR	t
]R
4t]R4t]R4t]R
4t]R4t]R4tRt]R4t]R4tRtRtVtR#)rz�To Complex, Real adds the operations that work on real numbers.

In short, those are: a conversion to float, trunc(), divmod,
%, <, <=, >, and >=.

Real also provides defaults for the derived operations.
c��\h)zLAny Real can be converted to a native float object.

Called for float(self).r rs&r�	__float__�Real.__float__��
��
"�!rc��\h)atrunc(self): Truncates self to an Integral.

Returns an Integral i such that:
  * i > 0 iff self > 0;
  * abs(i) <= abs(self);
  * for any Integral j satisfying the first two conditions,
    abs(i) >= abs(j) [i.e. i has "maximal" abs among those].
i.e. "truncate towards 0".
r rs&r�	__trunc__�Real.__trunc__�s
��"�!rc��\h)z$Finds the greatest Integral <= self.r rs&r�	__floor__�Real.__floor__�r-rc��\h)z!Finds the least Integral >= self.r rs&r�__ceil__�
Real.__ceil__�r-rNc��\h)z�Rounds self to ndigits decimal places, defaulting to 0.

If ndigits is omitted or None, returns an Integral, otherwise
returns a Real. Rounds half toward even.
r )r�ndigitss&&r�	__round__�Real.__round__�r$rc�"�W,W,3#)z�divmod(self, other): The pair (self // other, self % other).

Sometimes this can be computed faster than the pair of
operations.
r
r)s&&r�
__divmod__�Real.__divmod__�s���
�t�|�,�,rc�"�W,W,3#)z�divmod(other, self): The pair (other // self, other % self).

Sometimes this can be computed faster than the pair of
operations.
r
r)s&&r�__rdivmod__�Real.__rdivmod__�s���
�u�|�,�,rc��\h)z)self // other: The floor() of self/other.r r)s&&r�__floordiv__�Real.__floordiv__�r-rc��\h)z)other // self: The floor() of other/self.r r)s&&r�
__rfloordiv__�Real.__rfloordiv__�r-rc��\h)zself % otherr r)s&&r�__mod__�Real.__mod__�r-rc��\h)zother % selfr r)s&&r�__rmod__�
Real.__rmod__�r-rc��\h)zJself < other

< on Reals defines a total ordering, except perhaps for NaN.r r)s&&r�__lt__�Real.__lt__rbrc��\h)z
self <= otherr r)s&&r�__le__�Real.__le__	r-rc�*�\\V44#)z(complex(self) == complex(float(self), 0))�complex�floatrs&rr�Real.__complex__s���u�T�{�#�#rc��V5#)z&Real numbers are their real component.r
rs&rr"�	Real.real����u�rc��^#)z)Real numbers have no imaginary component.r
rs&rr&�	Real.imag���rc��V5#)zConjugate is a no-op for Reals.r
rs&rrU�Real.conjugates	���u�rr
�N)rrr
rrrrr`rdrgrjrnrqrtrwrzr}r�r�r�rrZr"r&rUrr[r\s@rrr�s,������I��"��"��
"��
"��"��"��"��"��"��"�-�-��"��"��"��"��"��"��"��"��"��"��"��"�
$����������rc�ba�]tRtRtoRtRt]]R44t]]R44t	Rt
RtVtR#)ri$z6.numerator and .denominator should be in lowest terms.c��\hr�r rs&r�	numerator�Rational.numerator)r-rc��\hr�r rs&r�denominator�Rational.denominator.r-rc�`�\VP4\VP4,#)z�float(self) = self.numerator / self.denominator

It's important that this conversion use the integer's "true"
division rather than casting one side to float before dividing
so that ratios of huge integers convert without overflowing.

)�intr�r�rs&rr`�Rational.__float__4s#���4�>�>�"�S��)9�)9�%:�:�:rr
N)
rrr
rrrrZrr�r�r`rr[r\s@rrr$sM����@��I�
��"���"���"���"�;�;rc�(a�]tRtRtoRtRt]R4tRt]RRl4t	]R4t
]R4t]R	4t]R
4t
]R4t]R4t]R
4t]R4t]R4t]R4t]R4tRt]R4t]R4tRtVtR#)ri?z�Integral adds methods that work on integral numbers.

In short, these are conversion to int, pow with modulus, and the
bit-string operations.
c��\h)z	int(self)r rs&r�__int__�Integral.__int__Hr-rc��\V4#)z6Called whenever an index is needed, such as in slicing)r�rs&r�	__index__�Integral.__index__Ms���4�y�rNc��\h)aself ** exponent % modulus, but maybe faster.

Accept the modulus argument if you want to support the
3-argument version of pow(). Raise a TypeError if exponent < 0
or any argument isn't Integral. Otherwise, just implement the
2-argument version described in Complex.
r )rrJ�moduluss&&&rrK�Integral.__pow__Qs
��"�!rc��\h)z
self << otherr r)s&&r�
__lshift__�Integral.__lshift__\r-rc��\h)z
other << selfr r)s&&r�__rlshift__�Integral.__rlshift__ar-rc��\h)z
self >> otherr r)s&&r�
__rshift__�Integral.__rshift__fr-rc��\h)z
other >> selfr r)s&&r�__rrshift__�Integral.__rrshift__kr-rc��\h)zself & otherr r)s&&r�__and__�Integral.__and__pr-rc��\h)zother & selfr r)s&&r�__rand__�Integral.__rand__ur-rc��\h)zself ^ otherr r)s&&r�__xor__�Integral.__xor__zr-rc��\h)zother ^ selfr r)s&&r�__rxor__�Integral.__rxor__r-rc��\h)zself | otherr r)s&&r�__or__�Integral.__or__�r-rc��\h)zother | selfr r)s&&r�__ror__�Integral.__ror__�r-rc��\h)z~selfr rs&r�
__invert__�Integral.__invert__�r-rc�*�\\V44#)zfloat(self) == float(int(self)))r�r�rs&rr`�Integral.__float__�s���S��Y��rc��V5#)z"Integers are their own numerators.r
rs&rr��Integral.numerator�r�rc��^#)z!Integers have a denominator of 1.r
rs&rr��Integral.denominator�r�rr
r�)rrr
rrrrr�r�rKr�r�r�r�r�r�r�r�r�r�r�r`rZr�r�rr[r\s@rrr?sE������I��"��"���"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"��"�
 ��������rN)rrrrr)r�abcrr�__all__rr�registerr�rr�rrr�r
rr�<module>r�s���@�:(�
?��	�w�	�(n"�f�n"�`�����s�7�s�j�
�
�e��;�t�;�6a�x�a�F	���#�r