
    g                     J    d dl mZ d dlmZmZ d dlmZ ed             Zd ZdS )    )invert)ecmPoint)slowc                     t          d          h dk    sJ t          d          h dk    sJ t          d          ddhk    sJ t          d          d	d
hk    sJ t          d          h dk    sJ t          d          h dk    sJ t          d          h dk    sJ t          d          h dk    sJ t          d          h dk    sJ t          ddd          ddhk    sJ d S )Nl   m?hm%P~WE >      a8]    As)p )   l   I.* >   G4( MI+   l   	LVv]F>#l   0V l   os? l   !+ iYi_/= l   y2-:!>   wL 駫	 | l   G#OSWli >    K + {p	 ï  l   !lNCFw >   7?齛     }X r
   l   X<^"V >   	Wr * /   l   !,B?q >   C3f O   q   l   I)?w7`s i i@B )B1B2l   )bP l   GH@Y'p)r        X/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/ntheory/tests/test_ecm.pytest_ecmr'      sT   +,,0T0T0TTTTT !!%=%=%=====$%%*k)BBBBBHg#66666 !!%=%=%=====1226f6f6fffff())-O-O-OOOOO%&&*J*J*JJJJJ$%%)H)H)HHHHH1fIIIN^`sMtttttttr%   c                  >   d} d}|dz   t          d|           z  }t          dd||           }|                                }|t          dd||           k    sJ |                                }|t          dd	||           k    sJ |                                }|t          d
d||           k    sJ |                                }|t          dd||           k    sJ |                                }|t          dd||           k    sJ |                    ||          }	|	t          dd||           k    sJ |	                    ||          }
|
t          dd||           k    sJ |
|                    ||	          k    sJ |	                                }|t          dd||           k    sJ ||                    ||          k    sJ |
                    ||	          }|t          dd||           k    sJ ||                    |	|          k    sJ ||                    ||
          k    sJ |
                    ||          }|t          dd||           k    sJ ||                    |	|	          k    sJ ||                    ||
          k    sJ ||                    ||          k    sJ |
|                    d          k    sJ ||                    d          k    sJ ||                    d          k    sJ ||	                    d          k    sJ d S )Ne   
            D   8      @   G   _         !   `      =   1   Z   W   r   E      c   	   r
   )r   r   doubleaddmont_ladder)modaa_24p1p2p4p8p16p32p3p5p6p7p9s                 r&   
test_PointrR      sD   
C
AE6!S>>!D	r2tS	!	!B	Br2tS))))))	Br2tS))))))	Br2tS))))))
))++C%2tS))))))
**,,C%Bc****** 
BBq"dC((((((	BBr2tS))))))B	Br2tS))))))B	BBr2tS))))))BB	BBr2tS))))))BBB"""""""""""""..$$$$$$""""""""r%   N)	sympy.external.gmpyr   sympy.ntheory.ecmr   r   sympy.testing.pytestr   r'   rR   r$   r%   r&   <module>rV      sv    & & & & & & ( ( ( ( ( ( ( ( % % % % % %u u u+# +# +# +# +#r%   