grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026+ �iÿûk`ãóø€Rt^RIHtHt.ROt!RR]R7t!R R]4t]P]4!R R]4t ] P] 4!R R] 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 óÚ./opt/alt/python314/lib64/python3.14/numbers.pyrr%s†ñð €Ið„Hr)Ú metaclasscóNa€]tRt^9toRtRt]R4tRt] ]R44t ] ]R44t ]R4t ]R4t ]R4t]R 4tR tR t]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#)zrArDrGrKrOrRrUrXrÚ__classdictcell__©Ú __classdict__s@rrr9spø‡€ñð€IàñKóðKòðØñ"óóð"ðØñ"óóð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"òòðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óö"rcóa€]tRt^¬toRtRt]R4t]R4t]R4t ]R4t ]RRl4t Rt R t ]R 4t]R 4t]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)r r r rrrrr`rdrgrjrnrqrtrwrzr}r€rƒr†rrZr"r&rUrr[r\s@rrr¬s,ø‡€ñð€Iàñ"óð"ð ñ "óð "ðñ"óð"ðñ"óð"ðó"óð"ò-ò-ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ð ñ"óð"ò $ðñóððñóð÷ðrcóba€]tRtRtoRtRt]]R44t]]R44t Rt Rt Vt R#)ri$z›To Real, Rational adds numerator and denominator properties. The numerator and denominator values should be in lowest terms, with a positive denominator. c ó€\h)z3The numerator of a rational number in lowest terms.r rs&rÚ numeratorÚRational.numerator-s €ô"Ð!rc ó€\h)z\The denominator of a rational number in lowest terms. This denominator should be positive. r rs&rÚ denominatorÚRational.denominator3r$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__=s#€ô�4—>‘>Ó"¤S¨×)9Ñ)9Ó%:Õ:Ð:rr N) r r r rrrrZrr—ršr`rr[r\s@rrr$sQø‡€ñð €Ià Øñ"óóð"ðØñ"óóð"÷;ð;rcó(a€]tRtRtoRtRt]R4tRt]RRl4t ]R4t ]R4t ]R 4t ]R 4t ]R 4t]R 4t]R 4t]R4t]R4t]R4t]R4tRt]R4t]R4tRtVtR#)riHzŽ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__Qr-rc ó€\V4#)z6Called whenever an index is needed, such as in slicing)r�rs&rÚ __index__ÚIntegral.__index__Vs €ä�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__Zs €ô"Ð!rc ó€\h)z self << otherr r)s&&rÚ __lshift__ÚIntegral.__lshift__er-rc ó€\h)z other << selfr r)s&&rÚ __rlshift__ÚIntegral.__rlshift__jr-rc ó€\h)z self >> otherr r)s&&rÚ __rshift__ÚIntegral.__rshift__or-rc ó€\h)z other >> selfr r)s&&rÚ __rrshift__ÚIntegral.__rrshift__tr-rc ó€\h)z self & otherr r)s&&rÚ__and__ÚIntegral.__and__yr-rc ó€\h)z other & selfr r)s&&rÚ__rand__ÚIntegral.__rand__~r-rc ó€\h)z self ^ otherr r)s&&rÚ__xor__ÚIntegral.__xor__ƒr-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”)r r r rrrrr¡r¤rKrªr­r°r³r¶r¹r¼r¿rÂrÅrÈr`rZr—ršrr[r\s@rrrHsEø‡€ñð €Iàñ"óð"òðó"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ðñ"óð"ò  ðñóððñóörN)rrrrr)rÚabcrrÚ__all__rrÚregisterr‰rrŠrrr�r rrÚrÓs‰ðñ@÷:(â ?€ô �wõ ô(n"ˆfôn"ð`×Ñ�Ôôsˆ7ôsðj‡ � ˆeÔô!;ˆtô!;ôHaˆxôaðF ×Ñ�#Ör