+
    Bi                     <   ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RIH	t
 ]P                  P                  t]P                  P                  t ! R R]4      t ! R R] P$                  4      t ! R R	] P$                  4      t]R
8X  d   ] P,                  ! 4        R# R# )    N)Decimal)Fractionc                   `   a a ] tR t^t oV 3R lt]tR t]t]R 4       t	]R 4       t
RtVtV ;t# )DummyIntegralc                4   < \        \        SV `	  V4      4      # N)r   super__mul__)selfother	__class__s   &&./usr/lib/python3.14/test/test_numeric_tower.pyr
   DummyIntegral.__mul__   s    UW_U344    c                    \         # r   )NotImplementedr   r   s   &&r   __truediv__DummyIntegral.__truediv__   s    r   c                    \        V 4      # r   r   r   s   &r   	numeratorDummyIntegral.numerator   s    T""r   c                    \        ^4      # )   r   r   s   &r   denominatorDummyIntegral.denominator!   s    Qr    )__name__
__module____qualname____firstlineno__r
   __rmul__r   __rtruediv__propertyr   r   __static_attributes____classdictcell____classcell__)r   __classdict__s   @@r   r   r      sD     5HL# #      r   r   c                   P   a  ] tR t^&t o R tR tR tR tR tR t	R t
R tR	tV tR
# )HashTestc                    V P                  \        V4      \        V4      R P                  W4      4       V P                  W4       R# )z&got different hashes for {!r} and {!r}N)assertEqualhashformat)r   xys   &&&r   check_equal_hashHashTest.check_equal_hash'   s9    a$q'AHHN	Pr   c                N    V P                  R ^ 4       V P                  R^4       R# )FTN)r3   r   s   &r   
test_boolsHashTest.test_bools-   s"    eQ'dA&r   c                n   \        RR 4       FT  pV P                  V\        V4      4       V P                  V\        V4      4       V P                  V\	        V4      4       KV  	  \        ^d4       EF  p^V,          ^,
          pV\        \        V4      4      8X  d9   V P                  V\        V4      4       V P                  V) \        V4      ) 4       V P                  V\        V4      4       V P                  V\	        V4      4       V P                  V) \        V) 4      4       V P                  V) \	        V) 4      4       ^V,          pV P                  V\        V4      4       V P                  V) \        V4      ) 4       V P                  V\        V4      4       V P                  V\	        V4      4       V P                  V) \        V) 4      4       V P                  V) \	        V) 4      4       EK  	  \        R 4       F  p\        P                  ! R4      p\        P                  ! ^
V,          ) ^
V,          4      pV P                  V\        V4      4       V P                  V\	        V4      4       V\        \        V4      4      8X  g   K  V P                  V\        V4      4       K  	  R# )  i,  Ni)ranger3   floatDFintrandom	randrange)r   in_es   &    r   test_integersHashTest.test_integers1   s    ud#A!!!U1X.!!!QqT*!!!QqT* $ sA1qACaM!%%aq2%%qb58)4!!!QqT*!!!QqT*!!1"ae,!!1"ae,1A!!!U1X.!!1"uQxi0!!!QqT*!!!QqT*!!1"ae,!!1"ae,! & tA  %A  "a%Q/A!!!QqT*!!!QqT*CaM!%%aq2 r   c                   V P                  R R4       V P                  R \        ^ 4      4       V P                  R\        ^ 4      4       V P                  R\        R4      4       V P                  R \        ^ 4      4       V P                  \        R4      \        R4      4       V P                  \        R4      \        R4      4       \	        R4       F  p\
        P
                  ! 4       \        P                  ! \
        P
                  ! 4       R,          R,
          4      ,          pV P                  V\        P                  ! V4      4       V P                  V\        P                  ! V4      4       K  	  R# )	        z-0.0inf-infr9   g      i@g      Y@N       )	r3   r<   r=   r;   r:   r?   mathexp
from_float)r   rC   r1   s   &  r   test_binary_floatsHashTest.test_binary_floatsW   s     	c4( 	c1Q4(dAaD)dAfI.c1Q4( 	eElAeH5eFmQvY7tA$((6==?5+@5+H"IIA!!!Q\\!_5!!!Q\\!_5 r   c           
         R RRRRR\        R4      \        R4      .pR	 F'  pV F  pV P                  V\        W24      4       K   	  K)  	  R# )
rH         ?g      ?rI   rJ   NrK   g      g    )rK   rH   )r;   r3   complex)r   test_valueszerovalues   &   r   test_complexHashTest.test_complexl   sP     D#tWgU|U6]4 D$%%eWU-AB % r   c                8   . ROpV F'  pV P                  \        V4      \        ^ 4      4       K)  	  V P                  \        R4      \        ^4      4       V P                  \        R4      \        ^4      4       V P                  \        R4      \        R4      4       V P                  \        R4      \        R4      4       V P                  \        R4      \        R4      4       V P                  \        R4      \        R4      4       V P                  \        R4      \        R4      4       V P                  \        R	4      \        R4      4       V P                  \        R
4      \        R4      4       V P                  \        R4      \        R4      4       R# )0z1.00z1.00000z-1.00z-1.00000123e2i0  1230e112300z12300.0z12300.00z	12300.000N)rZ   z-0z0.0z-0.0e10z000e-10)r3   r<   )r   zerosrU   s   &  r   test_decimalsHashTest.test_decimalsw   s    9D!!!D'1Q40  	ai1.a	lAaD1aj!B%0a
mQrU3aj!E(3ak1U84aj!E(3a	lAeH5a
mQuX6anah7r   c           	     <  a V P                  \        \        ^\        4      4      \        4       V P                  \        \        R^\        ,          4      4      \        ) 4       V P                  \        \        ^\        ,          ^4      4      ^ 4       V P                  \        \        \        ) ^4      4      ^ 4       \        P
                  ! \        ^4      \        ^4      4      oV P                  \        V3R l4       V P                  \        S4      R4       R# )r   c                  >   < S P                   S P                  ,          # r   )r   r   )r1   s   r   <lambda>)HashTest.test_fractions.<locals>.<lambda>   s    Q[[-Fr   g      ?Nr^   )
r.   r/   r=   _PyHASH_MODULUS_PyHASH_INF_from_coprime_intsr   assertRaises	TypeErrorr;   )r   r1   s   &@r   test_fractionsHashTest.test_fractions   s     	a?34kBaAo$567+Fa/ 1156:a 0!45q9
   q!1=3CD)%FGq3'r   c                b     ! R  R4      pRV! 4       0pV P                  \        V4      ^4       R# )c                   ,   a  ] tR t^t o R tR tRtV tR# )6HashTest.test_hash_normalization.<locals>.HalibutProxyc                    \        R 4      # halibut)r/   r   s   &r   __hash__?HashTest.test_hash_normalization.<locals>.HalibutProxy.__hash__   s    I&r   c                    VR 8H  # rq   r   r   s   &&r   __eq__=HashTest.test_hash_normalization.<locals>.HalibutProxy.__eq__   s    	))r   r   N)r    r!   r"   r#   rs   rv   r'   r(   r*   s   @r   HalibutProxyro      s     '* *r   ry   rr   N)r.   len)r   ry   r1   s   &  r   test_hash_normalization HashTest.test_hash_normalization   s.    	* 	* 'Q#r   r   N)r    r!   r"   r#   r3   r6   rE   rO   rW   r`   rk   r{   r'   r(   rx   s   @r   r,   r,   &   s4     '$3L6*	C8$($ $r   r,   c                   ,   a  ] tR t^t o R tR tRtV tR# )ComparisonTestc                   \        R 4      \        R4      R\        R^4      RRRRR\        R4      \        R4      \        R4      \        RR	4      \        R
4      \        RR4      \        RR4      R\        R4      .p\        V4       F[  w  r#W^,           R  FG  pV P	                  W44       V P                  W44       V P                  WC4       V P                  WC4       KI  	  K]  	  R# )rJ   z-1e425000000rH   g      Tz1.2z1.3z1.4i_5 i z1.414213562373095048801688724iC i; i:iJ gvܼ5JiinfinityNgigQ	)r;   r<   r=   	enumerate
assertLessassertLessEqualassertGreaterassertGreaterEqual)r   rT   rA   firstseconds   &    r   test_mixed_comparisons%ComparisonTest.test_mixed_comparisons   s    
 &Mnc1IeHeH%Lff-.feijM%( "+.HA%cd+.$$U3""61''6	 , /r   c                   RpRp^R \        ^4      \        ^4      \        ^4      3 F%  pV P                  W4       V P                  W14       K'  	  ^R\        ^4      \        ^4      \        ^4      3 FG  pV P	                  W4       V P	                  W14       V P	                  W#4       V P	                  W24       KI  	  ^R \        ^4      \        ^4      \        ^4      ^R\        ^4      \        ^4      \        ^4      V3 Fv  p\
        P                  \
        P                  \
        P                  \
        P                  3 F1  pV P                  \        WAV4       V P                  \        WCV4       K3  	  Kx  	  R# )rR   g       @Ny      ?        yQ	@)r=   r<   rS   r.   assertNotEqualoperatorleltgegtri   rj   )r   zwvops   &    r   rW   ComparisonTest.test_complex   s,    C1qtWQZ/AQ"Q" 0 C1qtWQZ/A%%%%	 0 S!A$!gajS!A$!gaj!5Akk8;;X[[H!!)RA6!!)RA6 I5r   r   N)r    r!   r"   r#   r   rW   r'   r(   rx   s   @r   r~   r~      s     7>7 7r   r~   __main__)unittestr?   rL   sysr   decimalr   r<   	fractionsr   r=   	hash_infomodulusrf   rI   rg   r>   r   TestCaser,   r~   r    mainr   r   r   <module>r      s       
    # --''mm C  (E$x   E$N57X&& 57p zMMO r   