add-determinism 0.7.3

RPM buildroot helper to strip nondeterministic bits in files
Documentation
�

��Vcl(cs.�dZddlmZmZgd�ZGd�de���ZGd�de��Ze�e��Gd	�d
e��Z	e	�e
��Gd�de	��ZGd
�de��Ze�e
��dS)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�Integralcs�eZdZdZdZdZdS)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__�__doc__�	__slots__Z__hash__r�� /usr/lib64/python3.11/numbers.pyrrs&��������
�I��H�H�Hrr)Z	metaclasscs��eZdZdZdZed���Zd�Zeed�����Z	eed�����Z
ed���Zed���Zed	���Z
ed
���Zd�Zd�Zed
���Zed���Zed���Zed���Zed���Zed���Zed���Zed���Zed���ZdS)rafComplex 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.
    rc��dS)z<Return a builtin complex instance. Called for complex(self).Nr��self� r�__complex__zComplex.__complex__-s���rcs�|dkS)z)True if self != 0. Called for bool(self).rrrrr�__bool__zComplex.__bool__1s���q�y�rc��t�)zXRetrieve the real component of this number.

        This should subclass Real.
        �ZNotImplementedErrorrrr�realzComplex.real5�
��"�!rcr)z]Retrieve the imaginary component of this number.

        This should subclass Real.
        rrrr�imagzComplex.imag>rrcr)zself + otherr�rZother�  r�__add__zComplex.__add__G�
��"�!rcr)zother + selfrrrr�__radd__zComplex.__radd__Lrrcr)z-selfrrrr�__neg__zComplex.__neg__Qrrcr)z+selfrrrr�__pos__zComplex.__pos__Vrrcs�||zS)zself - otherrrrr�__sub__zComplex.__sub__[s���u�f�}�rcs�||zS)zother - selfrrrr�__rsub__zComplex.__rsub___s���u�u�}�rcr)zself * otherrrrr�__mul__zComplex.__mul__crrcr)zother * selfrrrr�__rmul__zComplex.__rmul__hrrcr)z5self / other: Should promote to float when necessary.rrrr�__truediv__zComplex.__truediv__mrrcr)zother / selfrrrr�__rtruediv__zComplex.__rtruediv__rrrcr)zBself**exponent; should promote to float or complex when necessary.r)r�exponentrr�__pow__zComplex.__pow__wrrcr)zbase ** selfr)rZbaserr�__rpow__zComplex.__rpow__|rrcr)z7Returns the Real distance from 0. Called for abs(self).rrrr�__abs__zComplex.__abs__�rrcr)z$(x+y*i).conjugate() returns (x-y*i).rrrr�	conjugatezComplex.conjugate�rrcr)z
self == otherrrrr�__eq__zComplex.__eq__�rrN)r	r
rrr
rrr�propertyrrrrr r!r"r#r$r%r&r'r)r*r+r,r-rrrrr s���������I��K�K��^�K������"�"��^��X�"���"�"��^��X�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��������"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"�"�"rrcsN�eZdZdZdZed���Zed���Zed���Zed���Z	edd���Z
d	�Zd
�Zed���Z
ed���Zed
���Zed���Zed���Zed���Zd�Zed���Zed���Zd�ZdS)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.
    rcr)zTAny Real can be converted to a native float object.

        Called for float(self).rrrr�	__float__zReal.__float__��
��
"�!rcr)aGtrunc(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".
        rrrr�	__trunc__zReal.__trunc__�s
��"�!rcr)z$Finds the greatest Integral <= self.rrrr�	__floor__zReal.__floor__�rrcr)z!Finds the least Integral >= self.rrrr�__ceil__z
Real.__ceil__�rrNcr)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)rZndigitsrr�	__round__zReal.__round__�rrcs�||z||zfS)z�divmod(self, other): The pair (self // other, self % other).

        Sometimes this can be computed faster than the pair of
        operations.
        rrrr�
__divmod__zReal.__divmod__�s����
�t�e�|�,�,rcs�||z||zfS)z�divmod(other, self): The pair (self // other, self % other).

        Sometimes this can be computed faster than the pair of
        operations.
        rrrr�__rdivmod__zReal.__rdivmod__�s����
�u�t�|�,�,rcr)z)self // other: The floor() of self/other.rrrr�__floordiv__zReal.__floordiv__�rrcr)z)other // self: The floor() of other/self.rrrr�
__rfloordiv__zReal.__rfloordiv__�rrcr)zself % otherrrrr�__mod__zReal.__mod__�rrcr)zother % selfrrrr�__rmod__z
Real.__rmod__�rrcr)zRself < other

        < on Reals defines a total ordering, except perhaps for NaN.rrrr�__lt__zReal.__lt__�r0rcr)z
self <= otherrrrr�__le__zReal.__le__�rrc�:�tt|����S)z(complex(self) == complex(float(self), 0))�complex�floatrrrrzReal.__complex__�s���u�T�{�{�#�#�#rc��|
S)z&Real numbers are their real component.rrrrrz	Real.real�����u�rcr)z)Real numbers have no imaginary component.rrrrrrz	Real.imag��	���qrcr@)zConjugate is a no-op for Reals.rrrrr,zReal.conjugates	���u�r�N)r	r
rrr
rr/r1r2r3r4r5r6r7r8r9r:r;r<rr.rrr,rrrrr�s����������I��"�"��^�"��
"�
"��^�
"��"�"��^�"��"�"��^�"��"�"�"��^�"�-�-�-�-�-�-��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"�
$�$�$�����X������X������rrcsh�eZdZdZdZeed�����Zeed�����Zd�Z	dS)rz6.numerator and .denominator should be in lowest terms.rcrrCrrrr�	numeratorzRational.numeratorrrcrrCrrrr�denominatorzRational.denominatorrrcsT�t|j��t|j��zS)afloat(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.

        )�intrDrErrrr/zRational.__float__s$���4�>�"�"�S��)9�%:�%:�:�:rN)
r	r
rrr
r.rrDrEr/rrrrrsv������@�@��I�
��"�"��^��X�"���"�"��^��X�"�;�;�;�;�;rrcsn�eZdZdZdZed���Zd�Zedd���Zed���Z	ed���Z
ed	���Zed
���Zed���Z
ed���Zed
���Zed���Zed���Zed���Zed���Zd�Zed���Zed���ZdS)rz�Integral adds methods that work on integral numbers.

    In short, these are conversion to int, pow with modulus, and the
    bit-string operations.
    rcr)z	int(self)rrrr�__int__zIntegral.__int__/rrcs �t|��S)z6Called whenever an index is needed, such as in slicing)rFrrr�	__index__zIntegral.__index__4s���4�y�y�rNcr)a4self ** 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)rr(Zmoduluss   rr)zIntegral.__pow__8s
��"�!rcr)z
self << otherrrrr�
__lshift__zIntegral.__lshift__Crrcr)z
other << selfrrrr�__rlshift__zIntegral.__rlshift__Hrrcr)z
self >> otherrrrr�
__rshift__zIntegral.__rshift__Mrrcr)z
other >> selfrrrr�__rrshift__zIntegral.__rrshift__Rrrcr)zself & otherrrrr�__and__zIntegral.__and__Wrrcr)zother & selfrrrr�__rand__zIntegral.__rand__\rrcr)zself ^ otherrrrr�__xor__zIntegral.__xor__arrcr)zother ^ selfrrrr�__rxor__zIntegral.__rxor__frrcr)zself | otherrrrr�__or__zIntegral.__or__krrcr)zother | selfrrrr�__ror__zIntegral.__ror__prrcr)z~selfrrrr�
__invert__zIntegral.__invert__urrcr=)zfloat(self) == float(int(self)))r?rFrrrr/zIntegral.__float__{s���S��Y�Y���rcr@)z"Integers are their own numerators.rrrrrDzIntegral.numeratorrArcr)z!Integers have a denominator of 1.irrrrrEzIntegral.denominator�rBrrC)r	r
rrr
rrGrHr)rIrJrKrLrMrNrOrPrQrRrSr/r.rDrErrrrr&s����������I��"�"��^�"�����"�"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"��"�"��^�"�
 � � �����X������X���rrN)rZabcrrZ__all__rrZregisterr>rr?rrrFrrr�<module>rTsn��@�@�(�'�'�'�'�'�'�'�
?�
?�
?��	�	�	�	�	�w�	�	�	�	�(n"�n"�n"�n"�n"�f�n"�n"�n"�`�������s�s�s�s�s�7�s�s�s�j�
�
�e����;�;�;�;�;�t�;�;�;�6a�a�a�a�a�x�a�a�a�F	���#�����r