Ë
c‡½j• ã óÆ — d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZdgZej j Zej j Z
ej d¬« d„ « Z ej dej" ej$ z « Zdd„Zd „ Z ej d
ej, ej" z « j. Z G d„ dej2 « Zy)
é ©ÚDecimalNÚFractioni @ )Úmaxsizec ó¶ — t |dt « }t t t | « « |z « }| dk\ r|n| }|dk( rdS |S # t $ r t
}Y Œ$w xY w)Néÿÿÿÿr éþÿÿÿ)ÚpowÚ_PyHASH_MODULUSÚhashÚabsÚ
ValueErrorÚ_PyHASH_INF)Ú numeratorÚdenominatorÚdinvÚhash_Úresults ú"/usr/lib64/python3.12/fractions.pyÚ_hash_algorithmr se € ð2Ü�; ¤OÓ4ˆô( ”Tœ#˜i›.Ó)¨DÑ0Ó1ˆØ 1’n‰U¨5¨&€Fؘ2’ˆ2Ð) 6Ð)øô+ ò äŠðús ‚A ÁAÁAa¶
\A\s* # optional whitespace at the start,
(?P[-+]?) # an optional sign, then
(?=\d|\.\d) # lookahead for digit or .digit
(?P\d*|\d+(_\d+)*) # numerator (possibly empty)
(?: # followed by
(?:\s*/\s*(?P\d+(_\d+)*))? # an optional denominator
| # or
(?:\.(?P\d*|\d+(_\d+)*))? # an optional fractional part
(?:E(?P[-+]?\d+(_\d+)*))? # and optional exponent
)
\s*\Z # and optional whitespace to finish
c ó² — |dk\ r |d|z z }n | d| z z } t | |dz z |« \ }}|dk( r
|dz dk( r|dz }|r|dk n| dk }|t |« fS )Nr é
é r )Údivmodr
)ÚnÚdÚexponentÚno_neg_zeroÚqÚrÚsigns r Ú_round_to_exponentr" J s� € ðð �1‚}Ø ˆR�‰\Ñ‰à ˆR�(�‰]шô �!�q˜A‘v‘, Ó"�D€A€q؈A‚v�!�a‘%˜1’*Ø ˆR‰ˆáˆ1ˆqŠ5 Q¨¡U€DØ”�Q“ˆ<Ðó c ó — | dk( rddd|z
fS t t | « « t |« }}t |« t |« z
||k z }||z
}t | ||« \ }}t t |« « |dz k( r
|dz }|dz
}|||fS )Nr Fr r )Ústrr
Úlenr" ) r r ÚfiguresÚstr_nÚstr_dÚmr r! Úsignificands r Ú_round_to_figuresr, g s© € ðð ˆA‚vØ�a˜˜W™Ð$Ð$ô ”s˜1“v“;¤ A£ˆ5€E܈E‹
”S˜“ZÑ 5¨E¡>Ñ2€Að �7‰{€HÜ*¨1¨a°Ó:Ñ€Dˆ+ô Œ3ˆ{ÓÓ ¨!¡Ò+ؘшØ�A‰
ˆà�˜hÐ&Ð&r# a›
(?:
(?P.)?
(?P[<>=^])
)?
(?P[-+ ]?)
(?Pz)?
(?P\#)?
# A '0' that's *not* followed by another digit is parsed as a minimum width
# rather than a zeropad flag.
(?P0(?=[0-9]))?
(?P0|[1-9][0-9]*)?
(?P[,_])?
(?:\.(?P0|[1-9][0-9]*))?
(?P[eEfFgG%])
c óˆ ‡ — e Zd Z dZd+ˆ fd„ Zed„ « Zed„ « Zeˆ fd„« Zd„ Z d„ Z
d,d„Zed „ « Z
ed
„ « Zd„ Zd„ Zd
„ Zd„ Zd„ Z eeej* « \ ZZd„ Z eeej2 « \ ZZd„ Z eeej: « \ ZZd„ Z ee ejB « \ Z"Z#d„ Z$ ee$ejJ « \ Z&Z'd„ Z( ee(e)« \ Z*Z+d„ Z, ee,ejZ « \ Z.Z/d„ Z0d„ Z1d„ Z2d„ Z3d„ Z4ejj fd„Z6d„ Z7d„ Z8d„ Z9d-d„Z:d „ Z;d!„ Z