+
     Bi                     <   ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RItR.t]P                  P                  t	]P                  P                  t] P                  ! RR7      R 4       t]P                  ! R]P                  ]P                   ,          4      tRR ltR t]P                  ! R]P(                  ]P                  ,          4      P*                  t]P                  ! R	]P(                  ]P                  ,          4      P*                  t ! R
 R]P0                  4      tR# )    NFraction)maxsizec                      \        VR\        4      p\        \        \        V 4      4      V,          4      pV ^ 8  d   TMV) pVR8X  d   R# T#   \         d
    \
        p L*i ; i)   )pow_PyHASH_MODULUShashabs
ValueError_PyHASH_INF)	numeratordenominatordinvhash_results   &&    /usr/lib/python3.14/fractions.py_hash_algorithmr      se    2;O4( T#i.)D011nU5&F22)6)+  s   A A"!A"a  
    \A\s*                                  # optional whitespace at the start,
    (?P<sign>[-+]?)                        # an optional sign, then
    (?=\d|\.\d)                            # lookahead for digit or .digit
    (?P<num>\d*|\d+(_\d+)*)                # numerator (possibly empty)
    (?:                                    # followed by
       (?:\s*/\s*(?P<denom>\d+(_\d+)*))?   # an optional denominator
    |                                      # or
       (?:\.(?P<decimal>\d*|\d+(_\d+)*))?  # an optional fractional part
       (?:E(?P<exp>[-+]?\d+(_\d+)*))?      # and optional exponent
    )
    \s*\z                                  # and optional whitespace to finish
c                    V^ 8  d   V^
V,          ,          pMV ^
V) ,          ,          p \        W^,	          ,           V4      w  rEV^ 8X  d   V^,          ^ 8X  d
   VR,          pV'       d   V^ 8  MV ^ 8  pV\        V4      3# )r   r   )divmodr   )ndexponentno_neg_zeroqrsigns   &&&&   r   _round_to_exponentr   I   sx     1}	R\	R(] !Av,"DAAv!a%1*	R1q5QUDQ<    c                 D   V ^ 8X  d   R^ ^V,
          3# \        \        V 4      4      \        V4      rC\        V4      \        V4      ,
          WC8*  ,           pWR,
          p\        WV4      w  rx\        \        V4      4      V^,           8X  d   V^
,          pV^,          pWxV3# )r   F)strr   lenr   )	r   r   figuresstr_nstr_dmr   r   significands	   &&&      r   _round_to_figuresr)   f   s    " 	AvaW$$ s1v;A5E
SZ5>2A {H*1:D 3{!+Ah&&r    ay  
    (?:
        (?P<fill>.)?
        (?P<align>[<>=^])
    )?
    (?P<sign>[-+ ]?)
    # Alt flag forces a slash and denominator in the output, even for
    # integer-valued Fraction objects.
    (?P<alt>\#)?
    # We don't implement the zeropad flag since there's no single obvious way
    # to interpret it.
    (?P<minimumwidth>0|[1-9][0-9]*)?
    (?P<thousands_sep>[,_])?
a  
    (?:
        (?P<fill>.)?
        (?P<align>[<>=^])
    )?
    (?P<sign>[-+ ]?)
    (?P<no_neg_zero>z)?
    (?P<alt>\#)?
    # A '0' that's *not* followed by another digit is parsed as a minimum width
    # rather than a zeropad flag.
    (?P<zeropad>0(?=[0-9]))?
    (?P<minimumwidth>[0-9]+)?
    (?P<thousands_sep>[,_])?
    (?:\.
        (?=[,_0-9])  # lookahead for digit or separator
        (?P<precision>[0-9]+)?
        (?P<frac_separators>[,_])?
    )?
    (?P<presentation_type>[eEfFgG%])
c                     a a ] tR t^t oR/tR0V 3R llt]R 4       t]R 4       t]R 4       t	]V 3R l4       t
R tR tR1R lt]R	 4       t]R
 4       tR tR tR tR tR tR2R ltR t]! ]]P2                  4      w  ttR t]! ]]P:                  4      w  ttR t ]! ] ]PB                  4      w  t"t#R t$]! ]$]PJ                  4      w  t&t'R t(]! ](]PR                  R4      w  t*t+R t,]! ],]-R4      w  t.t/R t0]! ]0]Pb                  R4      w  t2t3R3R lt4R3R lt5R t6R t7R t8]Pr                  3R lt:R t;R  t<R! t=R3R" lt>R# t?R$ t@R% tAR& tBR' tCR( tDR) tER* tFR+ tGR, tHR- tIR.tJVtKV ;tL# )4r   c                x  < \         \        V `  V 4      pVEf    \        V4      \        J d   Wn        ^Vn        V# \        V\        P                  4      '       d%   VP                  Vn        VP                  Vn        V# \        V\        4      '       g)   \        V\        4      '       g2   \        VR4      '       d    VP                  4       w  Vn        Vn        V# \        V\        4      '       Ed;   \         P#                  V4      pVf   \%        RV,          4      h\	        VP'                  R4      ;'       g    R4      pVP'                  R4      pV'       d   \	        V4      pM^pVP'                  R4      pV'       dE   VP)                  RR4      p^
\+        V4      ,          pW,          \	        V4      ,           pW',          pVP'                  R	4      pV'       d5   \	        V4      pV^ 8  d   V^
V,          ,          pMV^
V) ,          ,          pVP'                  R
4      R8X  d   V) pM\-        R4      h\        V4      \        u;J d   \        V4      J d   M MM\        V\        P                  4      '       d[   \        V\        P                  4      '       d;   VP                  VP                  ,          VP                  VP                  ,          r!M\-        R4      hV^ 8X  d   \/        RV,          4      h\0        P2                  ! W4      p	V^ 8  d   V	) p	W,          pW),          pWn        W#n        V# )Nas_integer_ratioz Invalid literal for Fraction: %rnum0denomdecimal_ expr   -zXargument should be a string or a Rational instance or have the as_integer_ratio() methodz+both arguments should be Rational instancesFraction(%s, 0))superr   __new__typeint
_numerator_denominator
isinstancenumbersRationalr   r   floathasattrr,   r"   _RATIONAL_FORMATmatchr   groupreplacer#   	TypeErrorZeroDivisionErrormathgcd)clsr   r   selfr'   r/   r0   scaler3   g	__class__s   &&&       r   r7   Fraction.__new__   s   > Xs+C0I#%"+$%!Iw'7'788"+"5"5$-$9$9!Y..!)T229&8995>5O5O5Q2!2Is++$**959$%G%.&/ 0 0 5 5#6	("%e*K"#Kggi0G")//#r": "CL 0$-$5G$D	#,''%.C!#h!8%S0I'2t83K776?c)!*
I   !Q R R )_8tK'88G$4$455{G$4$455##k&=&==%%	(=(== #
  1 2 2 !#$5	$ABBHHY,?A	#'r    c                   \        V4      \        J d   V P                  V^4      # \        V\        P
                  4      '       d'   V P                  VP                  VP                  4      # \        V\        4      '       g)   \        V\         4      '       g1   \        VR4      '       d   V P                  ! VP                  4       !  # \        R4      h)r   r,   zLargument should be a Rational instance or have the as_integer_ratio() method)r8   r9   _from_coprime_intsr<   r=   r>   r   r   r?   r@   r,   rE   )rI   numbers   &&r   from_numberFraction.from_number9  s     <3))&!44 0 011))&*:*:F<N<NOO''fd++v122))6+B+B+DEE  A B Br    c           	     "   \        V\        P                  4      '       d	   V ! V4      # \        V\        4      '       g5   \	        V P
                  : R V: R\        V4      P
                  : R24      hV P                  ! VP                  4       !  # )z%.from_float() only takes floats, not  ())	r<   r=   Integralr?   rE   __name__r8   rP   r,   )rI   fs   &&r   
from_floatFraction.from_floatO  sq     a))**q6MAu%% \\1d1g.>.>@ A A%%q'9'9';<<r    c           	     8   ^ RI Hp \        V\        P                  4      '       d   V! \        V4      4      pME\        W4      '       g5   \        V P                  : RV: R\        V4      P                  : R24      hV P                  ! VP                  4       !  # )r   )Decimalz).from_decimal() only takes Decimals, not rU   rV   )r0   r]   r<   r=   rW   r9   rE   rX   r8   rP   r,   )rI   decr]   s   && r   from_decimalFraction.from_decimal]  sv     	$c7++,,#c(#CC))sDI$6$689 9 %%s';';'=>>r    c               F   < \         \        V `  V 4      pWn        W#n        V# N)r6   r   r7   r:   r;   )rI   r   r   objrM   s   """ r   rP   Fraction._from_coprime_intsi  s&     Hc*3/"&
r    c                     V P                   ^8H  # r   r;   rJ   s   &r   
is_integerFraction.is_integeru  s      A%%r    c                2    V P                   V P                  3# rb   r:   r;   rh   s   &r   r,   Fraction.as_integer_ratioy  s    
 !2!233r    c                    V^8  d   \        R4      hV P                  V8:  d   \        V 4      # Rw  r#rEV P                  V P                  rv Wg,          pW8V,          ,           p	W8  d   M&WEW(V,          ,           V	3w  r#rEYvW,          ,
          rvKE  W,
          V,          p
^V,          W:V,          ,           ,          V P                  8:  d   \        P	                  WE4      # \        P	                  W*V,          ,           W:V,          ,           4      # )r   z$max_denominator should be at least 1)r   r   r   r   )r   r;   r   r:   rP   )rJ   max_denominatorp0q0p1q1r   r   aq2ks   &&         r   limit_denominatorFraction.limit_denominator  s    @ QCDD/D>!# 1 11AbDB#R"Wb0NBBeq"$ Q3R4=D---..r66..rB$wR4@@r    c                    V P                   # rb   )r:   rt   s   &r   r   Fraction.numerator  s    ||r    c                    V P                   # rb   rg   rz   s   &r   r   Fraction.denominator  s    ~~r    c                n    V P                   P                  : R V P                  : RV P                  : R2# )(z, rV   )rM   rX   r:   r;   rh   s   &r   __repr__Fraction.__repr__  s*    #~~66#0A0AC 	Cr    c                    V P                   ^8X  d   \        V P                  4      # V P                  : RV P                   : 2# )r   /)r;   r"   r:   rh   s   &r   __str__Fraction.__str__  s4    !t''"oot/@/@AAr    c                   VR ,          ;'       g    RpVR,          ;'       g    RpVR,          R8X  d   RMVR,          p\        VR,          4      p\        VR,          ;'       g    R	4      pVR
,          ;'       g    RpV P                  V P                  rV	^8  g	   V'       d   \	        V4      V  RW  2p
M\	        V4      V  p
V^ 8  d   RMTpW&\        V4      ,
          \        V
4      ,
          ,          pVR8X  d   W,           V
,           # VR8X  d   W,           V,           # VR8X  d/   \        V4      ^,          pVRV V,           V
,           WR ,           # W,           V
,           # )fill align>r   r4   r2   altminimumwidthr.   thousands_sepr   <^N)boolr9   r:   r;   r   r#   )rJ   rB   r   r   pos_signalternate_formr   r   r   r   bodyr   paddinghalfs   &&            r   _format_generalFraction._format_general  sM    V}##g%%#v#-25=eEl+5077C8o.44"  1 11q5N!fm_-Qq.ABD!fm_-D!es T2SY>?C<>D((c\;((c\w<1$D5D>D(4/'%.@@>D((r    c           
       aa a! VR ,          ;'       g    RpVR,          ;'       g    RpVR,          R8X  d   RMVR,          p\        VR,          4      p\        VR,          4      p\        VR	,          4      p\        VR
,          ;'       g    R4      pVR,          o!\        VR,          ;'       g    R4      p	VR,          ;'       g    Rp
VR,          pVR9   ;'       d    V'       * pV'       * pVR9   d   RMRpVR8X  d
   VR8X  d   RpVR9   d=   V	) pVR8X  d
   V^,          p\        V P                  V P                  W4      w  ppRpT	pM{VR9   d   \        V	^4      MV	^,           p\        V P                  V P                  V4      w  pppVR9   ;'       g    V^ 8  ;'       g    VV,           R#8*  pV'       d
   V^,
          MV) pVR8X  d   RpMV'       d   V VV,           R 2pMRpVRV^,            R2 pV'       d   RMTpVR\        V4      V,
           o V\        V4      V,
          R oV'       d   SP                  R4      oV'       d   S'       g   RMRpV
'       d0   V
P                  V3R l\        ^ \        S4      ^4       4       4      oVS,           V,           pV'       dS   V\        V4      ,
          \        V4      ,
          pS P                  S!'       d   ^V,          ^,          ^,           MT4      o S!'       d[   ^\        S 4      ^,
          ^,          ,           pS RV RP                  V V!3R  l\        V\        S 4      ^4       4       4      ,           o S V,           pW(\        V4      ,
          \        V4      ,
          ,          pVR8X  d   VV,           V,           # VR!8X  d   VV,           V,           # VR"8X  d0   \        V4      ^,          pVRV V,           V,           VVR ,           # VV,           V,           # )$r   r   r   r   r   r4   r2   r   r   zeropadr   r.   r   	precision6frac_separatorspresentation_typegGEFGEe=TzfF%%FeEz+03dr   N.c              3   :   <"   T F  pSW^,            x  K  	  R# 5i   N ).0pos	frac_parts   & r   	<genexpr>/Fraction._format_float_style.<locals>.<genexpr>4  s"      &N1L# '0!G&<1Ls   c              3   H   <"   T F  pSSW^,            ,           x  K  	  R# 5ir   r   )r   r   leadingr   s   & r   r   r   D  s)      4<C Ag 666<s   "r   r   )r   r9   r   r:   r;   maxr)   r#   rstripjoinrangezfill)"rJ   rB   r   r   r   r   r   r   r   r   frac_sepr   
trim_zeros
trim_pointexponent_indicatorr   negativer(   
scientific	point_posr$   suffixdigitsr   	separatortrailingmin_leading	first_posr   r   r   r   r   r   s"   &&                             @@@r   _format_float_styleFraction._format_float_style  s   V}##g%%#v#-25=5/0eEl+uY'(5077C8o.k*11c2	*+11r!"56&$.EE~3E
''
$5$>SCC<DCKG %!zH C'A$6!2!2H%K!HkJ!I %, Iq!] 
 /@!2!2G/=+Hk8 "T) , ,a<, ,g%+ 
 (2!yI #F*+Hy,@+FGFF  )a-12
 sH23v;233v;245	!((-I$YBC	  &N16q#i.!1L&N NIy(61 &T2S]BK mm,9K1$q({G
 S\A-22Ijy)BGG 4 CL!<4 - G !T2SY>?C<T>D((c\$;((c\w<1$D5D>D(4/'$%.@@'>D((r    c               
   \        V4      ;p'       d   V P                  V4      # \        V4      ;p'       d(   VR ,          e   VR,          f   V P                  V4      # \	        RV: R\        V 4      P                  : 24      h)r   r   zInvalid format specifier z for object of type )%_GENERAL_FORMAT_SPECIFICATION_MATCHERr   #_FLOAT_FORMAT_SPECIFICATION_MATCHERr   r   r8   rX   )rJ   format_specrB   s   "" r   
__format__Fraction.__format__W  s     :+FF5F''..7DD5D W~%y)9)A//66' 7""&t*"5"5!8:
 	
r    c                   a aa VVV 3R  lpRSP                   ,           R,           Vn         S P                  Vn        VVV 3R lpRSP                   ,           R,           Vn         S P                  Vn        W43# )c                 L  < \        V\        4      '       d	   S! W4      # \        V\        4      '       d   S! V \        V4      4      # \        V\        4      '       d   S! \        V 4      V4      # S'       d)   \        V\        4      '       d   S! \        V 4      V4      # \
        # rb   )r<   r   r9   r?   complexNotImplemented)rt   bfallback_operatorhandle_complexmonomorphic_operators   &&r   forward-Fraction._operator_fallbacks.<locals>.forward  s}    !X&&+A11As##+Ax{;;Au%%(q155Jq'$:$:(q155%%r    __c                 p  < \        V\        P                  4      '       d   S! \        V4      V 4      # \        V\        P                  4      '       d   S! \        V4      \        V 4      4      # S'       d<   \        V\        P                  4      '       d   S! \        V4      \        V 4      4      # \        # rb   )	r<   r=   r>   r   Realr?   Complexr   r   )r   rt   r   r   r   s   &&r   reverse-Fraction._operator_fallbacks.<locals>.reverse  s{    !W--..+HQK;;Aw||,,(q58<<Jq'//$B$B(U1X>>%%r    __r)rX   __doc__)r   r   r   r   r   s   fff  r   _operator_fallbacksFraction._operator_fallbacksh  sg    b
	&  "3"<"<<tC.66		& !#4#=#==D.66r    c                   V P                   V P                  r2VP                   VP                  rT\        P                  ! W54      pV^8X  d0   \        P                  W%,          W4,          ,           W5,          4      # W6,          pW%V,          ,          WG,          ,           p\        P                  ! W4      p	V	^8X  d   \        P                  WV,          4      # \        P                  W,          WuV	,          ,          4      # rf   r:   r;   rG   rH   r   rP   
rt   r   nadanbdbrL   stg2s
   &&        r   _addFraction._add      q~~Bq~~BHHR6..rw/@"'JJG'NRV#XXa^7..qb&99**17ArNCCr    c                   V P                   V P                  r2VP                   VP                  rT\        P                  ! W54      pV^8X  d0   \        P                  W%,          W4,          ,
          W5,          4      # W6,          pW%V,          ,          WG,          ,
          p\        P                  ! W4      p	V	^8X  d   \        P                  WV,          4      # \        P                  W,          WuV	,          ,          4      # rf   r   r   s
   &&        r   _subFraction._sub*  r   r    c                V   V P                   V P                  r2VP                   VP                  rT\        P                  ! W%4      pV^8  d   W&,          pWV,          p\        P                  ! WC4      pV^8  d   WG,          pW7,          p\        P                  W$,          WS,          4      # rf   r   )rt   r   r   r   r   r   g1r   s   &&      r   _mulFraction._mul:  s}    q~~Bq~~BXXb6IBIBXXb6IBIB**27BG<<r    c                   VP                   VP                  r2V^ 8X  d   \        RV,          4      hV P                   V P                  rT\        P                  ! WB4      pV^8  d   WF,          pW&,          p\        P                  ! W54      pV^8  d   WW,          pW7,          pWC,          W%,          rV	^ 8  d   V) V	) r\
        P                  W4      # )r   r5   )r:   r;   rF   rG   rH   r   rP   )
rt   r   r   r   r   r   r   r   r   r   s
   &&        r   _divFraction._divJ  s     q~~B7#$5$:;;q~~BXXb6IBIBXXb6IBIBw1q52rq**100r    c                    V P                   VP                  ,          V P                  VP                   ,          ,          # rb   )r   r   rt   r   s   &&r   	_floordivFraction._floordiv`  s'    amm+1LMMr    Fc                    V P                   VP                   r2\        V P                  V,          W!P                  ,          4      w  rEV\        WRV,          4      3# rb   )r   r   r   r   )rt   r   r   r   divn_mods   &&    r   _divmodFraction._divmodf  sC    BAKK",b;;.>?
HUG,,,r    c                    V P                   VP                   r2\        V P                  V,          VP                  V,          ,          W#,          4      # rb   )r   r   r   )rt   r   r   r   s   &&  r   _modFraction._modn  s7    Br)akkB.>?IIr    c                (   Ve   \         # \        V\        P                  4      '       Ed5   VP                  ^8X  Ed   VP
                  pV^ 8  d9   \        P                  V P                  V,          V P                  V,          4      # V P                  ^ 8  d;   \        P                  V P                  V) ,          V P                  V) ,          4      # V P                  ^ 8X  d%   \        RV P                  V) ,          ,          4      h\        P                  V P                  ) V) ,          V P                  ) V) ,          4      # \        V 4      \        V4      ,          # \        V\        \        34      '       d   \        V 4      V,          # \         # )Nr5   )r   r<   r=   r>   r   r   r   rP   r:   r;   rF   r?   r   )rt   r   modulopowers   &&& r   __pow__Fraction.__pow__u  sJ    !!a))**}}!A:#66q||u7L78~~7NP P\\A%#66q~~%7O78||v7MO O\\Q&+,=,-NNuf,D-E F F $66UF7R9:5&7PR R
 Qx58++E7+,,8q= !!r    c                v   Ve   \         # V P                  ^8X  d$   V P                  ^ 8  d   WP                  ,          # \        V\        P
                  4      '       d(   \        VP                  VP                  4      V ,          # V P                  ^8X  d   WP                  ,          # V\        V 4      ,          # rb   )
r   r;   r:   r<   r=   r>   r   r   r   r?   )r   rt   r  s   &&&r   __rpow__Fraction.__rpow__  s    !!>>Q1<<1#4$$a))**AKK71<<>>Q$$E!H}r    c                V    \         P                  V P                  V P                  4      # rb   r   rP   r:   r;   rz   s   &r   __pos__Fraction.__pos__  s    **1<<HHr    c                X    \         P                  V P                  ) V P                  4      # rb   r  rz   s   &r   __neg__Fraction.__neg__  s    **ALL=!..IIr    c                h    \         P                  \        V P                  4      V P                  4      # rb   )r   rP   r   r:   r;   rz   s   &r   __abs__Fraction.__abs__  s"    **3q||+<annMMr    c                    V P                   ^ 8  d&   V! V P                   ) V P                  ,          ) 4      # V! V P                   V P                  ,          4      # r   rl   )rt   _indexs   &&r   __int__Fraction.__int__  sC    <<!Q\\MQ^^;<==!,,!..899r    c                    V P                   ^ 8  d    V P                   ) V P                  ,          ) # V P                   V P                  ,          # r  rl   rz   s   &r   	__trunc__Fraction.__trunc__  s9    <<!ll]ann455<<1>>11r    c                <    V P                   V P                  ,          # rb   rl   rz   s   &r   	__floor__Fraction.__floor__  s    ||q~~--r    c                @    V P                   ) V P                  ,          ) # rb   rl   rz   s   &r   __ceil__Fraction.__ceil__  s     ,,!..011r    c                |   Vfe   V P                   p\        V P                  V4      w  r4V^,          V8  d   V# V^,          V8  d
   V^,           # V^,          ^ 8X  d   V# V^,           # ^
\        V4      ,          pV^ 8  d   \	        \        W,          4      V4      # \	        \        W,          4      V,          4      # rb   )r;   r   r:   r   r   round)rJ   ndigitsr   floor	remaindershifts   &&    r   	__round__Fraction.__round__  s    
 ?!!A%dooq9E1}q Q"qy aqy CL  Q;E$,/77E$,/%788r    c                B    \        V P                  V P                  4      # rb   )r   r:   r;   rh   s   &r   __hash__Fraction.__hash__  s    t0A0ABBr    c                z   \        V4      \        J d'   V P                  V8H  ;'       d    V P                  ^8H  # \	        V\
        P                  4      '       d;   V P                  VP                  8H  ;'       d    V P                  VP                  8H  # \	        V\
        P                  4      '       d   VP                  ^ 8X  d   VP                  p\	        V\        4      '       dQ   \        P                  ! V4      '       g   \        P                  ! V4      '       d   RV8H  # W P!                  V4      8H  # \"        # )r           )r8   r9   r:   r;   r<   r=   r>   r   r   r   imagrealr?   rG   isnanisinfrZ   r   r   s   &&r   __eq__Fraction.__eq__  s    7c><<1$<<1)<<a))**LLAKK/ 4 4NNamm35a))affkAazz!}}

1 axLLO++ "!r    c                   \        V\        P                  4      '       d@   V! V P                  VP                  ,          V P
                  VP                  ,          4      # \        V\        4      '       dY   \        P                  ! V4      '       g   \        P                  ! V4      '       d
   V! R V4      # V! W P                  V4      4      # \        # )r/  )r<   r=   r>   r:   r   r;   r   r?   rG   r2  r3  rZ   r   )rJ   otherops   &&&r   _richcmpFraction._richcmp  s     eW--..doo(9(99''%//9; ;eU##zz%  DJJu$5$5#u~%$ 677!!r    c                B    V P                  V\        P                  4      # rb   )r9  operatorltr   s   &&r   __lt__Fraction.__lt__      zz!X[[))r    c                B    V P                  V\        P                  4      # rb   )r9  r<  gtr   s   &&r   __gt__Fraction.__gt__  r@  r    c                B    V P                  V\        P                  4      # rb   )r9  r<  ler   s   &&r   __le__Fraction.__le__  r@  r    c                B    V P                  V\        P                  4      # rb   )r9  r<  ger   s   &&r   __ge__Fraction.__ge__  r@  r    c                ,    \        V P                  4      # rb   )r   r:   rz   s   &r   __bool__Fraction.__bool__#  s     ALL!!r    c                J    V P                   V P                  V P                  33# rb   )rM   r:   r;   rh   s   &r   
__reduce__Fraction.__reduce__+  s     $2C2C DEEr    c                z    \        V 4      \        8X  d   V # V P                  V P                  V P                  4      # rb   r8   r   rM   r:   r;   rh   s   &r   __copy__Fraction.__copy__.  .    :!K~~doot/@/@AAr    c                z    \        V 4      \        8X  d   V # V P                  V P                  V P                  4      # rb   rT  )rJ   memos   &&r   __deepcopy__Fraction.__deepcopy__3  rW  r    )r;   r:   rl   )r   N)i@B )Trb   )MrX   
__module____qualname____firstlineno__	__slots__r7   classmethodrR   rZ   r_   rP   ri   r,   rw   propertyr   r   r   r   r   r   r   r   r   r<  add__add____radd__r   sub__sub____rsub__r   mul__mul____rmul__r   truediv__truediv____rtruediv__r   floordiv__floordiv____rfloordiv__r   r   
__divmod____rdivmod__r  mod__mod____rmod__r  r	  r  r  r  indexr  r  r  r!  r)  r,  r4  r9  r>  rC  rG  rK  rN  rQ  rU  rZ  __static_attributes____classdictcell____classcell__)rM   __classdict__s   @@r   r   r      s    * /IiV B B* = = 	? 	? 	 	&47Ar    C
B )Df)P
"l dD ,D(,,?GXD ,D(,,?GX= ,D(,,?GX1( !4D(:J:J KKN #6iARARTY"ZL-- 2'65IJJ
 ,D(,,FGX "D IJN #.. :2.2
94C"*",****"FB
B Br    i @  )F)	functoolsrG   r=   r<  resys__all__	hash_infomodulusr
   infr   	lru_cacher   compileVERBOSE
IGNORECASErA   r   r)   DOTALL	fullmatchr   r   r>   r   r   r    r   <module>r     s       	 
,
 --'' mm
w'* (*@ ::  ZZ"--! ":$'P )+

 4 YY) 'Y &$ ')jj 2& YY''& 'Y' $,@Bw @Br    