+
    @i^"              
       D   ^ RI t  ^ RIt^ RIHtHt ^ RIHt	  ^ RIH
t
 Rt^RIHt ^RIHtHtHtHt / t]'       d   ]
P(                  .]R&   R	]R
&   RtRtRtRtRt]! ]R]4      t]! ]]]]4      t]! ^^^4      t]! ]^^^4      t]! ]4      t^]R&   ]! R/ ]B ]! ]	P@                  ! ^]^,
          R7      4      R 4       4       t!R t"] PF                  PI                  R]%! ]"! ]^4      4       U Uu. uF	  w  r]W3NK  	  upp ]&! ^	4       Uu. uF  pRPO                  V4      NK  	  upR7      R 4       t( ! R R]PR                  4      t* ! R R]PR                  4      t+ ! R R]PR                  4      t,R#   ] d	    ^ RIt ELyi ; i  ] d    Rt ELri ; iu upp i u upi )     N)givensettings)HealthCheckTF)inverse_mod)CurveFpINFINITYPoint	CurveEdTwsuppress_health_checki  deadline      1(i&^#a;   9{uDjSg9g(B   +' 1t:_|v!a:@m   H<^W]dZ{cxW\Iq max_examples)	min_value	max_valuec                 f    \        V \        4      p\        V ,          pW!,          \        8X  g   Q hR # N)r   rp192)multipleinv_mp1s   &  V/var/www/html/photoedit/myenv/lib/python3.14/site-packages/ecdsa/test_ellipticcurve.pytest_p192_mult_testsr   .   s)     !$E	B:    c              #   X   "   \         p^ pW18:  d   Vx  W ,           pV^,          pK  R# 5i)r   N)r   )pointnretis   &&  r   add_n_timesr$   7   s.     
C	A
&	k	Q s   (*zp, m, checkzg_23 test with mult {0})idsc                 $    W,          V8X  g   Q hR # r    )pmchecks   &&&r   test_add_and_mult_equivalencer+   A   s     5E>>r   c                   `   a  ] tR t^Jt o ]R 4       tR tR tR tR t	R t
R tR tR	 tR
tV tR# )	TestCurvec                *    \        ^^^4      V n        R#    N)r   c_23clss   &r   
setUpClassTestCurve.setUpClassK   s    2q!$r   c                T    V P                  V P                  \        ^^^4      4       R# r/   )assertEqualr1   r   selfs   &r   test_equality_curvesTestCurve.test_equality_curvesO   s    GB1$56r   c                h    \        \        R\        4      pV P                  V P                  V4       R# )   N)r   r(   bassertNotEqualr1   )r9   c192s   & r   test_inequality_curves TestCurve.test_inequality_curvesR   s$    q"a DIIt,r   c                \    \        ^^^ 4      p\        ^^^4      pV P                  W4       R# r/   )r   r@   )r9   ar?   s   &  r    test_inequality_curves_by_b_only*TestCurve.test_inequality_curves_by_b_onlyV   s,    B1B1A!r   c                "    V P                   R / R # r   r1   r8   s   &r   ,test_usability_in_a_hashed_collection_curves6TestCurve.test_usability_in_a_hashed_collection_curves[       	Dr   c                0    \        V P                  4       R # r   hashr1   r8   s   &r   test_hashability_curves!TestCurve.test_hashability_curves^       TYYr   c           
        \        ^^^4      \        ^^^4      \        ^^^4      r2p\        ^^^4      \        ^^^4      V P                  repV P                  \        \	        \        WEV34      4      ^4       V P                  \        \	        \        WV34      4      ^4       V P                  \        R/VR/4       V P                  WVR/4       R# )   N)r   r1   r7   lensetassertDictEqualassertIn)r9   ne1ne2ne3eq1eq2eq3s   &      r   test_conflation_curves TestCurve.test_conflation_curvesa   s    Aq)72q!+<gb!Q>O#Aq)72q!+<dii#S$#!678!<S$#!678!<dD\C;7c;'r   c                P    V P                  \        V P                  4      R 4       R# )zCurveFp(p=23, a=1, b=1)Nr7   strr1   r8   s   &r   test___str__TestCurve.test___str__i   s    TYY)BCr   c                X    \        ^^^^4      pV P                  \        V4      R4       R# )r0   zCurveFp(p=23, a=1, b=1, h=4)N)r   r7   rc   r9   cs   & r   test___str___with_cofactor$TestCurve.test___str___with_cofactorl   s'    B1a Q!?@r   r'   N)__name__
__module____qualname____firstlineno__classmethodr4   r:   rB   rF   rJ   rP   r_   rd   ri   __static_attributes____classdictcell____classdict__s   @r   r-   r-   J   sG     % %7-"
(DA Ar   r-   c                   H   a  ] tR t^qt o ]R 4       tR tR tR tR t	Rt
V tR# )TestCurveEdTwc                *    \        ^^^4      V n        R# r/   )r
   r1   r2   s   &r   r4   TestCurveEdTw.setUpClassr   s    RA&r   c                P    V P                  \        V P                  4      R 4       R# )zCurveEdTw(p=23, a=1, d=1)Nrb   r8   s   &r   rd   TestCurveEdTw.test___str__v   s    TYY)DEr   c                X    \        ^^^^4      pV P                  \        V4      R4       R# )r0   zCurveEdTw(p=23, a=1, d=1, h=4)N)r
   r7   rc   rg   s   & r   ri   (TestCurveEdTw.test___str___with_cofactory   s'    b!Q"Q!ABr   c                "    V P                   R / R # r   rI   r8   s   &r   rJ   :TestCurveEdTw.test_usability_in_a_hashed_collection_curves}   rL   r   c                0    \        V P                  4       R # r   rN   r8   s   &r   rP   %TestCurveEdTw.test_hashability_curves   rR   r   r'   N)rk   rl   rm   rn   ro   r4   rd   ri   rJ   rP   rp   rq   rr   s   @r   ru   ru   q   s2     ' 'FC r   ru   c                      a  ] tR t^t o ]R 4       tR tR tR tR t	R t
R tR tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tRtV tR# )	TestPointc                    \        ^^^4      V n        \        V P                  ^^^4      V n        RpRpRpRpRp\        VRV4      V n        \        V P                  WEV4      V n        R# )r0   r   r   r   r   r   Nr>   )r   r1   r	   g_23rA   r   )r3   r(   r   r?   GxGys   &     r   r4   TestPoint.setUpClass   sg    2q!$2q!,FF ???1b!$21-r   c                   R pWP                   ,          pV P                  VP                  4       R4       RpW0P                   ,          pV P                  VP                  4       R4       V P                  VP                  4       R4       RpRpWPP                   ,          Wb,          ,           pV P                  VP                  4       R4       V P                  VP                  4       R4       R# )l   uH=.t.#",W}7?jl   Z`uSG;R-]]0sk	+l   N/vZL_~XXw]ol   ~n&DJ,6'1a47b?`l   5XD+8n#w}rO	l   WTY>n+BtC*Yql   !M_JT96wfF[,z=N)r   r7   xy)r9   dQkRu1u2temps   &       r   	test_p192TestPoint.test_p192   s     F		MCCEE	
 G		MCCEE	
 	CCEE	
 HGII~&FFHH	
 	FFHH	
r   c                   \         pVP                  4       pV P                  W4       V P                  VP                  4       VP                  4       4       V P                  VP	                  4       VP	                  4       4       R # r   )r   doubler7   r   r   )r9   r   p3s   &  r   test_double_infinityTestPoint.test_double_infinity   sX    YY[ ((r   c                    Rw  rr4\        V P                  W4      pVP                  4       pV P                  VP	                  4       V4       V P                  VP                  4       V4       R# )r=   N)r=   
         )r	   r1   r   r7   r   r   )r9   x1y1x3y3r   r   s   &      r   test_doubleTestPoint.test_double   sR    '499b%YY[$$r   c                X   \        V P                  ^^4      pVP                  4       pV P                  VP	                  4       VP                  4       3R4       V P                  V\        4       VP                  4       pV P                  V\        4       V P                  V\        4       R#    N)   r   )	r	   r1   r   r7   r   r   r@   r   assertIsr9   r   p2r   s   &   r   test_double_to_infinity!TestPoint.test_double_to_infinity   sy    499b"%YY["$$&"$$&)62B)YY[X&b(#r   c                8   \        V P                  ^^4      pW,           pV P                  VP                  4       VP	                  4       3R4       V P                  V\        4       W",           pV P                  V\        4       V P                  V\        4       R# r   r	   r1   r7   r   r   r@   r   r   r   s   &   r   test_add_self_to_infinity#TestPoint.test_add_self_to_infinity   sq    499b"%W"$$&"$$&)62B)WX&b(#r   c                <   \        V P                  ^^4      pV^,          pV P                  VP                  4       VP	                  4       3R4       V P                  V\        4       V^,          pV P                  V\        4       V P                  V\        4       R# r   r   r   s   &   r   test_mul_to_infinityTestPoint.test_mul_to_infinity   su    499b"%!V"$$&"$$&)62B)!VX&b(#r   c                    Rw  rr4p\        V P                  W4      pWc,          pV P                  VP                  4       V4       V P                  VP	                  4       V4       R# )r=   N)r=   r      r   r   r	   r1   r7   r   r   )r9   r   r   r)   r   r   r   r   s   &       r   test_multiplyTestPoint.test_multiply   sQ    -r499b%V$$r   c                    Rw  rr4rV\        V P                  W4      p\        V P                  W44      pWx,           p	V P                  V	P                  4       V4       V P                  V	P	                  4       V4       R# ):We expect that on curve c, (x1,y1) + (x2, y2 ) = (x3, y3).N)r=   r   	   r         r   
r9   r   r   x2y2r   r   r   r   r   s
   &         r   test_addTestPoint.test_add   c     "7499b%499b%W$$r   c                    Rw  rr4rV\        V P                  W4      p\        V P                  W44      pWx,           p	V P                  V	P                  4       V4       V P                  V	P	                  4       V4       R# )r   N)r=   r   r=   r   r   r   r   r   s
   &         r   test_add_as_doubleTestPoint.test_add_as_double   r   r   c           	     j    V P                  V P                  \        V P                  ^^^4      4       R# )   N)r7   r   r	   r1   r8   s   &r   test_equality_pointsTestPoint.test_equality_points   s%    E$))RA$>?r   c                t    \        ^dR^d4      p\        V^d^d^d4      pV P                  V P                  V4       R# d   Nr>   )r   r	   r@   r   )r9   rh   r(   s   &  r   test_inequality_points TestPoint.test_inequality_points   s4    CS!!S#s#DIIq)r   c                X    \        ^dR^d4      pV P                  V P                  V4       R# r   )r   r@   r   rg   s   & r   !test_inequality_points_diff_types+TestPoint.test_inequality_points_diff_types   s$    CS!DIIq)r   c                    \        V P                  ^^4      p\        V P                  ^^4      pV P                  W4       R# )   N)r	   r1   r@   )r9   r   r   s   &  r   test_inequality_diff_y TestPoint.test_inequality_diff_y  s4    499a#499a$B#r   c                    \        V P                  ^^
4      pV P                  V\         P                  ! V P                  VP	                  4       4      4       R# r=   N)r	   r1   r7   
from_bytesto_bytesr9   r(   s   & r   test_to_bytes_from_bytes"TestPoint.test_to_bytes_from_bytes	  s;    $))Q#E,,TYY

EFr   c                n    \        V P                  ^^
4      pV P                  \        W) ,           4       R# r   )r	   r1   r7   r   r   s   & r   test_add_to_neg_selfTestPoint.test_add_to_neg_self  s(    $))Q#18,r   c                l    \        V P                  ^^
4      pV P                  W\        ,           4       R# r   )r	   r1   r   r   r   s   & r   test_add_to_infinityTestPoint.test_add_to_infinity  s$    $))Q#aX&r   c                H    V P                  \        \        ^
,          4       R# )r   N)r   r   r8   s   &r   test_mul_infinity_by_scalar%TestPoint.test_mul_infinity_by_scalar  s    h2.r   c                v    \        V P                  ^^
4      pV P                  VR,          V) ^,          4       R# )r=   N)r	   r1   r7   r   s   & r   test_mul_by_negativeTestPoint.test_mul_by_negative  s.    $))Q#R1"*r   c                D    V P                  \        \        4      R 4       R# )infinityN)r7   rc   r   r8   s   &r   test_str_infinityTestPoint.test_str_infinity   s    X
3r   c                j    \        V P                  ^^
4      pV P                  \        V4      R4       R# )r=   z(3,10)N)r	   r1   r7   rc   r   s   & r   test_str_pointTestPoint.test_str_point#  s(    $))Q#Q*r   r'   N)rk   rl   rm   rn   ro   r4   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rp   rq   rr   s   @r   r   r      s     . .
8)%$$$%%%@*
*$G
-
'
/+
4+ +r   r   r>   r'   )-pytest	unittest2unittestImportError
hypothesisr   r   hypothesis.strategies
strategiesstr   
HC_PRESENTnumbertheoryr   ellipticcurver   r   r	   r
   HYP_SETTINGStoo_slowr(   r   r?   r   r   rA   r   r1   r   dictHYP_SLOW_SETTINGSintegersr   r$   markparametrize	enumeraterangeformatr+   TestCaser-   ru   r   )r!   expr#   s   000r   <module>r     s     ' "&J & > > -8-A-A,BL()#L ?> 777q"aT2r1r1aT2q! & $% . ! 
r{{Q!a%01 2  "+Ka,@"AB"AdA^"AB6;Ah?h	"	)	)!	,h?  

$A!! $ANH%% &b+!! b+    Jj C?s.   E5 F 0FF5FF	FF