Ë
    V.jÑ3  ã            	       óv  — d dl Z d dlmZ d dlZ	 d dlZd dlmZ	 d dl
Z
d dlmZmZmZ 	 d dlmZ dZddlmZmZmZmZmZmZmZmZmZmZmZ 	 d d	lmZ dZ e
jB                  jE                  d e#e dd e dd «      D � �cg c]	  \  } }| |f‘Œ c}} «      d„ «       Z$e
jB                  jE                  dg d¢«      d„ «       Z%e
jB                  jL                  e
jB                  jE                  de«      d„ «       «       Z'd„ Z(d„ Z)d„ Z*d„ Z+ G d„ dejX                  «      Z-e	j\                  d„ «       Z/e	j\                  d„ «       Z0e	j\                  d„ «       Z1e	j\                  d„ «       Z2e	j\                  d„ «       Z3i Z4er ejj                  ejl                  ge4d<   d e4d!<   d"ejn                  v rd#e4d$<    e8e4«      Z9d"ejn                  v rde9d$<   nd#e9d$<    G d%„ d&ejX                  «      Z: G d'„ d(ejX                  «      Z;y# e$ r d dlZY �Œíw xY w# e$ r dZY �ŒÞw xY w# e$ r 	 d d	lmZ n# e$ r d
„ ZY nw xY wY �Œßw xY wc c}} w ))é    N)Úreduce)ÚgivenÚsettingsÚexample)ÚHealthCheckTFé   )ÚSquareRootErrorÚJacobiErrorÚfactorizationÚgcdÚlcmÚjacobiÚinverse_modÚis_primeÚ
next_primeÚsmallprimesÚsquare_root_mod_prime)Úmpzc                 ó   — | S ©N© ©Úxs    úYC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\ecdsa/test_numbertheory.pyr   r   (   s   € ØˆHó    )i÷@ iA i)A i/A iEA iSA iYA i]A i�A i­A i·A iËA iãA iíA iûA iB iB iB i+B i/B zprime, next_péÿÿÿÿc                 ó$   — t        | «      |k(  sJ ‚y r   ©r   )ÚprimeÚnext_ps     r   Útest_next_primer!   D   s   € ô �eÓ Ò&Ð&Ñ&r   Úval)r   r   r   c                 ó$   — t        | «      dk(  sJ ‚y ©Né   r   )r"   s    r   Ú test_next_prime_with_nums_less_2r&   K   s   € ä�c‹?˜aÒÐÑr   r   c                 óJ  — t        «       }t        dd| dz  z   «      D ]4  }||z  | z  }|j                  |«       t        || «      }||z  | z  |k(  rŒ4J ‚ t        d| «      D ]5  }||v rŒt	        j
                  t        «      5  t        || «       d d d «       Œ7 y # 1 sw Y   ŒBxY w)Nr   r   r%   )ÚsetÚrangeÚaddr   ÚpytestÚraisesr	   )r   ÚsquaresÚnumÚsqÚrootÚ	nonsquares         r   Ú+test_square_root_mod_prime_for_small_primesr2   P   s¤   € ô ‹e€GÜ�Q˜˜E Q™J™Ö'ˆØ�3‰Y˜ÑˆØ�‰�BŒÜ$ R¨Ó/ˆà�d‰{˜UÑ" bÓ(Ð(Ð(ð (ô ˜1˜e–_ˆ	Ø˜ÑØÜ�]‰]œ?Õ+Ü! )¨UÔ3÷ ,Ð+ñ %÷ ,Ð+ús   ÂBÂB"	c                  ó*   — t        dd«      } | dk(  sJ ‚y )Nr   r%   ©r   )Úas    r   Ú test_square_root_mod_prime_for_2r6   b   s   € Ü˜a Ó#€AØ�Š6€M‰6r   c                  ó6   — t        dd«      } | | z  dz  dk(  sJ ‚y )Né	   ée   r4   )r0   s    r   Ú*test_square_root_mod_prime_for_small_primer:   g   s%   € Ü  ¨cÓ2€DØ�$‰;˜Ñ Ò!Ð!Ñ!r   c                  óN   — d} | dz  dk(  sJ ‚t        d| «      }||z  | z  dk(  sJ ‚y )Né   é   é   é   r4   ©Úpr0   s     r   Ú,test_square_root_mod_prime_for_p_congruent_5rB   l   ó9   € Ø
€AØˆq‰5�AŠ:Ðˆ:ä   AÓ&€DØ�$‰;˜‰?˜aÒÐÑr   c                  óN   — d} | dz  dk(  sJ ‚t        d| «      }||z  | z  dk(  sJ ‚y )Né   r=   r>   é   r4   r@   s     r   Ú4test_square_root_mod_prime_for_p_congruent_5_large_drG   t   rC   r   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚTestSquareRootModPrimec                 óp   — | j                  t        «      5  t        dd«       d d d «       y # 1 sw Y   y xY w)Né   é    )ÚassertRaisesr
   r   ©Úselfs    r   Útest_power_of_2_pz(TestSquareRootModPrime.test_power_of_2_p}   s&   € Ø×Ñœ{Õ+Ü! " bÔ)÷ ,×+Ñ+ús   –,¬5c                 óº   — | j                  t        «      5 }t        dd«       d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)NrK   é   zno square root©rM   r	   r   ÚassertInÚstrÚ	exception©rO   Úes     r   Útest_no_squarez%TestSquareRootModPrime.test_no_square�   óD   € Ø×ÑœÔ/°1Ü! " bÔ)÷ 0ð 	�‰Ð&¬¨A¯K©KÓ(8Õ9÷ 0Ð/úó   –AÁAc                 óº   — | j                  t        «      5 }t        dd«       d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)NrK   é!   úp is not primerS   rW   s     r   Útest_non_primez%TestSquareRootModPrime.test_non_prime‡   rZ   r[   c                 óº   — | j                  t        «      5 }t        dd«       d d d «       | j                  dt	        j
                  «      «       y # 1 sw Y   Œ/xY w)Ni¸  i¹  r^   rS   rW   s     r   Útest_non_prime_with_negativez3TestSquareRootModPrime.test_non_prime_with_negative�   sD   € Ø×ÑœÔ/°1Ü! '¨3Ô/÷ 0ð 	�‰Ð&¬¨A¯K©KÓ(8Õ9÷ 0Ð/úr[   N)Ú__name__Ú
__module__Ú__qualname__rP   rY   r_   ra   r   r   r   rI   rI   |   s   „ ò*ò:ò:ó:r   rI   c                 ó°   ‡—  | t        j                  dddz  ¬«      «      Š | t        j                  d‰dz
  ¬«      j                  ˆfd„«      «      }|‰fS )Nr%   é   ©Ú	min_valueÚ	max_valuer   c                 ó"   •— t        | ‰«      dk(  S ©Nr   ©r   )r   Úmods    €r   Ú<lambda>z'st_two_nums_rel_prime.<locals>.<lambda>›   s   ø€ ”c˜!˜S“k QÒ&r   )ÚstÚintegersÚfilter)Údrawr.   rm   s     @r   Úst_two_nums_rel_primers   ”   sS   ø€ ñ Œr�{‰{ Q°!°T±'Ô:Ó
;€CÙ
Ü
�‰˜a¨3°©7Ô3×:Ñ:Û&ó	
ó€Cð
 �ˆ8€Or   c                 ó¨   — d|vrd|d<    | t        j                  t        «      t        j                  |i |¤Žj	                  t
        «      z  «      }|S )Nrh   r   )ro   Úsampled_fromr   rp   rq   r   )rr   ÚargsÚkwargsr   s       r   Ú	st_primesrx   ¡   sR   € à˜&Ñ Øˆˆ{ÑÙÜ
�‰œÓ$Ü
�+‰+�tÐ
&˜vÑ
&×
-Ñ
-¬hÓ
7ñ	8ó€Eð €Lr   c                 óŠ   —  | t        ddz  ¬«      «      } | t        j                  dd|dz  z   ¬«      «      }||z  |z  }||fS )Nr%   rf   ©ri   r   r   rg   )rx   ro   rp   )rr   r   r.   r/   s       r   Úst_num_square_primer{   ¬   sJ   € á” Q¨¡WÔ-Ó.€EÙ
Œr�{‰{ Q°!°e¸q±j±.ÔAÓ
B€CØ	ˆs‰�UÑ	€BØˆuˆ9Ðr   c                 ó²  ‡—  | t        j                  t        ddz  ¬«      dd¬«      «      Š | t        j                  t        j                  ‰«      dd¬«      «      }t	        t
        j                  |d«      } | t        j                  dd¬«      j                  ˆfd	„«      «      }|D �cg c]   }t	        t
        j                  |d«      |z  ‘Œ" c}S c c}w )
zM
    Strategy that returns lists of numbers, all having a common factor.
    r%   é   rz   r   é
   ©Úmin_sizeÚmax_sizeé   rg   c                 ó„   •— t        j                  t        j                  t        j                  ‰«      d¬«      d| ¬«      S ©Né   )r�   r   r   ©ro   Úlistsru   )ÚnÚprimess    €r   rn   z&st_comp_with_com_fac.<locals>.<lambda>Ç   s+   ø€ ”b—h‘hÜ—‘œŸ™¨Ó0¸2Ô>ØØõr   )	ro   r‡   rx   ru   r   ÚoperatorÚmulrp   Úflatmap)rr   Úcom_fac_primesÚcom_facÚcomp_primesÚnumsr‰   s        @r   Úst_comp_with_com_facr‘   ´   s¹   ø€ ñ
 Ü
�‰” Q¨¡VÔ,°qÀ2ÔFó€Fñ Ü
�‰”—‘ Ó(°1¸rÔBó€Nô ”X—\‘\ >°1Ó5€Gñ
 Ü
�‰˜a¨2Ô.×6Ñ6óó	
ó€Kñ ALÓLÁ¸ŒF”8—<‘<  qÓ)¨GÓ3ÀÑLÐLùÒLs   Â,%Cc           	      ó~  ‡	—  | t        j                  t        ddz  ¬«      ddd¬«      «      } | t        j                  t        j                  |«      dt	        |«      dz
  d¬«      «      }t        t        j                  |d«      }|D �cg c]	  }||vsŒ|‘Œ c}Š	‰	sJ ‚|sJ ‚ | t        j                  dd¬	«      j                  ˆ	fd
„«      «      }|D �cg c]  }t        t        j                  |d«      ‘Œ }} | t        j                  dt	        |«      ¬	«      «      }|j                  ||«       |S c c}w c c}w )zQ
    Strategy that returns lists of numbers that don't have a common factor.
    r%   r}   rz   r~   T)r€   r�   Úuniquer   r‚   rg   c                 ó„   •— t        j                  t        j                  t        j                  ‰«      d¬«      d| ¬«      S r„   r†   )rˆ   Úleftover_primess    €r   rn   z$st_comp_no_com_fac.<locals>.<lambda>ò   s+   ø€ ”b—h‘hÜ—‘œŸ™¨Ó9ÀBÔGØØõr   r   )ro   r‡   rx   ru   Úlenr   rŠ   r‹   rp   rŒ   Úinsert)
rr   r‰   Úuncom_fac_primesÚ	uncom_facÚiÚnumber_primesr�   ÚnumbersÚ	insert_atr•   s
            @r   Úst_comp_no_com_facrž   Ò   s-  ø€ ñ
 Ü
�‰Ü  3¡Ô'°!¸bÈô	
ó€Fñ Ü
�‰Ü�O‰O˜FÓ#ØÜ˜“[ 1‘_Øô		
óÐô ”x—|‘|Ð%5°qÓ9€Iñ #)ÓF¡&˜Q¨AÐ5EÒ,E’q &ÑF€OáÐˆ?ÙÐÐñ Ü
�‰˜a¨2Ô.×6Ñ6óó	
ó€Mñ :GÓG¹°Œv”h—l‘l D¨!Õ,¸€GÐGá”R—[‘[¨1¼¸G»ÔEÓF€IØ‡N�N�9˜iÔ(Ø€Nùò+ Gùò" Hs   Â	D5ÂD5Ã"D:Úsuppress_health_checkiˆ  Údeadlinez--fastr‚   Úmax_examplesc                   óN   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zy)ÚTestIsPrimec                 ó   — t        d«      sJ ‚y )Né   ©r   rN   s    r   Útest_very_small_primez!TestIsPrime.test_very_small_prime  s   € Ü˜Œ|Ð‰|r   c                 ó   — t        d«      rJ ‚y )Né   r¦   rN   s    r   Útest_very_small_compositez%TestIsPrime.test_very_small_composite  s   € Ü˜B”<ÐÐ�<r   c                 ó   — t        d«      sJ ‚y )NiÍ[r¦   rN   s    r   Útest_small_primezTestIsPrime.test_small_prime  s   € Ü˜	Ô"Ð"Ñ"r   c                 ó   — t        d«      rJ ‚y )Ni(  r¦   rN   s    r   Útest_special_compositez"TestIsPrime.test_special_composite  s   € Ü˜E”?Ð"Ð"�?r   c                 ó*   — t        ddz  dz   «      sJ ‚y )Nr%   é   i)  r¦   rN   s    r   Útest_medium_prime_1zTestIsPrime.test_medium_prime_1"  ó   € ä˜˜3™ ™Ô'Ð'Ñ'r   c                 ó*   — t        ddz  dz   «      sJ ‚y )Nr%   r°   i-  r¦   rN   s    r   Útest_medium_prime_2zTestIsPrime.test_medium_prime_2&  r²   r   c                 ó*   — t        ddz  dz   «      rJ ‚y )Nr%   r°   i0  r¦   rN   s    r   Útest_medium_trivial_compositez)TestIsPrime.test_medium_trivial_composite*  ó   € Ü˜A˜s™F U™NÔ+Ð+Ð+Ð+r   c                 ó*   — t        ddz  dz   «      rJ ‚y )Nr%   r°   i/  r¦   rN   s    r   Ú!test_medium_non_trivial_compositez-TestIsPrime.test_medium_non_trivial_composite-  r·   r   c                 ó<   — t        t        d«      dz  dz   «      sJ ‚y )Nr%   i   iÕ  )r   r   rN   s    r   Útest_large_primezTestIsPrime.test_large_prime0  s   € äœ˜A› $™¨Ñ.Ô/Ð/Ñ/r   c                 ó   — t        d«      rJ ‚y )Nl   Å*i:.S#q.m±& r¦   rN   s    r   Útest_pseudoprime_base_19z$TestIsPrime.test_pseudoprime_base_194  s   € ÜÐ>Ô?Ð?Ð?Ð?r   c                 óÊ   — t        dj                  dd«      «      }t        |«      sJ ‚t        d«      D ]'  }t        |d|dz
  z  dz   z  d|dz
  z  dz   z  «      rŒ' y  J d«       ‚)	Nz®29 674 495 668 685 510 550 154 174 642 905 332 730 771 991 799 853 043 350 995 075 531 276 838 753 171 770 199 594 238 596 428 121 188 033 664 754 218 345 562 493 168 782 883Ú Ú r~   i9  r   ia  zcomposite not detected)ÚintÚreplacer   r)   )rO   rA   Ú_s      r   Útest_pseudoprime_base_300z%TestIsPrime.test_pseudoprime_base_3007  sy   € ô ð"÷ #*¡'¨#¨rÓ"2ó	
ˆô ˜Œ{Ðˆ{Ü�r–ˆAÜ˜A ¨¨A©¡°Ñ!2Ñ3°s¸aÀ!¹e±}ÀqÑ7HÑIÕJÙð ð 3Ð2Ó2�5r   N)rb   rc   rd   r§   rª   r¬   r®   r±   r´   r¶   r¹   r»   r½   rÄ   r   r   r   r£   r£     s:   „ òò ò#ò#ò(ò(ò,ò,ò0ò@ó3r   r£   c            
       ó  — e Zd Zd„ Z ej
                  ed«       ed!i e¤Ž e	ddg«       e
 e«       «      d„ «       «       «       «       Z ej
                  ed«       ed!i e¤Ž e	g d¢«       e
 e«       «      d„ «       «       «       «       Z ed!i e¤Ž e
 ej                    ej"                  dd	d
z  ¬«      dd¬«      «      d„ «       «       Zd„ Z ed!i e¤Ž e
 ej                    ej"                  dd	d
z  ¬«      dd¬«      «      d„ «       «       Z ej
                  ed«       ed!i e¤Ž e
 e«       «      d„ «       «       «       Zej0                  j2                   ed!i e¤Ž e
 ej"                  dd¬«      «       e	d«       e	d«      d„ «       «       «       «       «       Zd„ Zd„ Zd„ Zd„ Z ed!i e¤Ž e
 ej"                  dd¬«      j?                  d„ «      «      d„ «       «       Z  ed!i e¤Ž e
 e!«       «      d„ «       «       Z"d„ Z#y )"ÚTestNumbertheoryc                 ól   — t        ddd«      dk(  sJ ‚t        g d¢«      dk(  sJ ‚t        d«      dk(  sJ ‚y )Néi   é¥   éÃ   é   )rÈ   rÉ   rÊ   r?   rl   rN   s    r   Útest_gcdzTestNumbertheory.test_gcdM  s=   € Ü�9˜j¨*Ó5¸Ò>Ð>Ð>ÜÒ6Ó7¸5Ò@Ð@Ð@Ü�1‹v˜Š{Ð‰{r   zwHypothesis 2.0.0 can't be made tolerant of hard to meet requirements (like `is_prime()`), the test case times-out on itig i�€ c                 óR   — t        |«      }d|v s|dk7  sJ ‚|D ]  }||z  dk(  rŒJ ‚ y ©Nr   r   rl   ©rO   rœ   rˆ   rš   s       r   Útest_gcd_with_com_factorz)TestNumbertheory.test_gcd_with_com_factorR  s:   € ô �‹LˆØ�G‰|˜q AšvÐ%Ð%ÛˆAØ�q‘5˜A“:Ð�:ñ r   )i  i-  iñ  c                 ó(   — t        |«      }|dk(  sJ ‚y rk   rl   )rO   rœ   rˆ   s      r   Útest_gcd_with_uncom_factorz+TestNumbertheory.test_gcd_with_uncom_factora  s   € ô �‹LˆØ�AŠvˆ‰vr   r   r%   i    rg   r‚   r   c                 ó<   — t        |«      }|D ]  }||z  dk(  rŒJ ‚ y ©Nr   rl   rÏ   s       r   Útest_gcd_with_random_numbersz-TestNumbertheory.test_gcd_with_random_numbersn  s'   € ô �‹LˆÛˆAà�q‘5˜A“:Ð�:ñ r   c                 ól   — t        ddd«      dk(  sJ ‚t        g d¢«      dk(  sJ ‚t        d«      dk(  sJ ‚y )Nr?   rË   é   rÈ   )r?   rË   r×   ©r   rN   s    r   Útest_lcmzTestNumbertheory.test_lcm|  s=   € Ü�1�e˜UÓ# yÒ0Ð0Ð0ÜÒ$Ó%¨Ò2Ð2Ð2Ü�1‹v˜Š{Ð‰{r   c                 ó<   — t        |«      }|D ]  }||z  dk(  rŒJ ‚ y rÔ   rØ   rÏ   s       r   Útest_lcm_with_random_numbersz-TestNumbertheory.test_lcm_with_random_numbers�  s'   € ô �‹LˆÛˆAØ�q‘5˜A“:Ð�:ñ r   c                 ó@   — |\  }}t        ||«      }||z  |z  |k(  sJ ‚y r   r4   )rO   ÚvalsÚsquarer   Úcalcs        r   Útest_square_root_mod_primez+TestNumbertheory.test_square_root_mod_primeŽ  s0   € ð ‰ˆ�ä$ V¨UÓ3ˆØ�d‰{˜UÑ" fÒ,Ð,Ñ,r   l    J)£l   §5yl   §1n
Y’c                 óV   — t        |«      }d}|D ]  }||d   |d   z  z  }Œ ||k(  sJ ‚y rÎ   )r   )rO   r.   ÚfactorsÚmultrš   s        r   Útest_factorizationz#TestNumbertheory.test_factorizationœ  s?   € ô   Ó$ˆØˆÛˆAØ�A�a‘D˜A˜a™D‘LÑ ‰Dð à�sŠ{Ð‰{r   c                 ó‚   — d}dt         v sJ ‚dt         v sJ ‚t        |«      }d}|D ]  }||d   |d   z  z  }Œ ||k(  sJ ‚y )Ni£(  r9   ég   r   r   ©r   r   ©rO   Úexprâ   rã   rš   s        r   Útest_factorisation_smallprimesz/TestNumbertheory.test_factorisation_smallprimes¨  s^   € ØˆØ”kÑ!Ð!Ð!Ø”kÑ!Ð!Ð!Ü Ó$ˆØˆÛˆAØ�A�a‘D˜A˜a™D‘LÑ ‰Dð à�sŠ{Ð‰{r   c                 ó‚   — d}dt         vsJ ‚dt         vsJ ‚t        |«      }d}|D ]  }||d   |d   z  z  }Œ ||k(  sJ ‚y )Ni;< iÏ  iÕ  r   r   rç   rè   s        r   Ú"test_factorisation_not_smallprimesz3TestNumbertheory.test_factorisation_not_smallprimes²  s^   € ØˆØœ;Ñ&Ð&Ð&Øœ;Ñ&Ð&Ð&Ü Ó$ˆØˆÛˆAØ�A�a‘D˜A˜a™D‘LÑ ‰Dð à�sŠ{Ð‰{r   c                 ó&   — t        dd«      dk(  sJ ‚y )Nr   r?   ©r   rN   s    r   Útest_jacobi_with_zeroz&TestNumbertheory.test_jacobi_with_zero¼  ó   € Ü�a˜‹|˜qÒ Ð Ñ r   c                 ó&   — t        dd«      dk(  sJ ‚y )Nr   r?   rî   rN   s    r   Útest_jacobi_with_onez%TestNumbertheory.test_jacobi_with_one¿  rð   r   r?   iè  c                 ó   — | dz  S r$   r   r   s    r   rn   zTestNumbertheory.<lambda>Ã  s   € ÀQÈÂUr   c                 óÔ  — t        |«      }t        |«      r„t        «       }t        d|«      D ]8  }t        |«      }t	        ||z  |«      dk(  sJ ‚|j                  ||z  |z  «       Œ: t        d|«      D ]#  }||vsŒt        |«      }t	        ||«      dk(  rŒ#J ‚ y t        |«      }t        d|«      D ]4  }d}|D ]  }|t	        ||d   «      |d   z  z  }Œ |t	        ||«      k(  rŒ4J ‚ y )Nr   r   r   )r   r   r(   r)   r   r*   r   )rO   rm   r-   r0   rš   râ   r5   Úcs           r   Útest_jacobizTestNumbertheory.test_jacobiÂ  sõ   € ô �#‹hˆÜ�CŒ=Ü“eˆGÜ˜a ž�Ü˜4“y�Ü˜d T™k¨3Ó/°1Ò4Ð4Ð4Ø—‘˜D 4™K¨#Ñ-Õ.ð &ô ˜1˜c–]�Ø˜GÒ#Ü˜A›�AÜ! ! S›>¨RÓ/Ð/Ð/ñ #ô
 $ CÓ(ˆGÜ˜1˜c–]�Ø�Û �AØœ  1 Q¡4›¨A¨a©DÑ0Ñ0‘Að !àœF 1 c›NÓ*Ð*Ð*ñ	 #r   c                 ó`   — |\  }}t        ||«      }d|cxk  r|k  sJ ‚ J ‚||z  |z  dk(  sJ ‚y )Nr   r   ©r   )rO   r�   r.   rm   Úinvs        r   Útest_inverse_modz!TestNumbertheory.test_inverse_modØ  sD   € ð ‰ˆˆSä˜#˜sÓ#ˆà�3Œ}˜Š}Ð‰}Ðˆ}Ø�S‰y˜3‰ !Ò#Ð#Ñ#r   c                 ó&   — dt        dd«      k(  sJ ‚y )Nr   é   rø   rN   s    r   Útest_inverse_mod_with_zeroz+TestNumbertheory.test_inverse_mod_with_zeroâ  s   € Ø”K  2Ó&Ò&Ð&Ñ&r   Nr   )$rb   rc   rd   rÌ   ÚunittestÚ
skipUnlessÚ
HC_PRESENTr   ÚHYP_SLOW_SETTINGSr   r   r‘   rÐ   rž   rÒ   ro   r‡   rp   rÕ   rÙ   rÛ   r{   rà   r+   ÚmarkÚslowrä   rê   rì   rï   rò   rq   rö   rs   rú   rý   r   r   r   rÆ   rÆ   L  s¦  „ òð
 €X×ÑØð	óñ Ñ"Ð!Ñ"Ùˆj˜*Ð%Ó&Ù
ÑÓ!Ó"ñó #ó 'ó #óðð €X×ÑØð	óñ Ñ"Ð!Ñ"ÙÒÓ Ù
ÑÓÓ ñó !ó !ó #óðñ Ñ"Ð!Ñ"Ù
Øˆ�‰ØˆB�K‰K !¨q°$©wÔ7ØØô	
óñóó #ðòñ
 Ñ"Ð!Ñ"Ù
Øˆ�‰ØˆB�K‰K !¨q°$©wÔ7ØØô	
óñóó #ðð
 €X×ÑØð	óñ Ñ"Ð!Ñ"Ù
ÑÓ Ó!ñ-ó "ó #óð-ð ‡[�[×ÑÙÑ"Ð!Ñ"Ù
ˆ;ˆ2�;‰; ¨fÔ5Ó6ÙÐÓÙÐÓ ñó !ó ó 7ó #ó ð
òòò!ò!ñ Ñ"Ð!Ñ"Ù
ˆ;ˆ2�;‰; ¨dÔ3×:Ñ:¹?ÓKÓLñ+ó Mó #ð+ñ( Ñ"Ð!Ñ"Ù
Ñ Ó"Ó#ñ$ó $ó #ð$ó'r   rÆ   )<rŠ   Ú	functoolsr   ÚsysÚ	unittest2rþ   ÚImportErrorÚhypothesis.strategiesÚ
strategiesro   r+   Ú
hypothesisr   r   r   r   r   Únumbertheoryr	   r
   r   r   r   r   r   r   r   r   r   Úgmpy2r   ÚgmpyÚ	BIGPRIMESr  ÚparametrizeÚzipr!   r&   r  r2   r6   r:   rB   rG   ÚTestCaserI   Ú	compositers   rx   r{   r‘   rž   ÚHYP_SETTINGSÚfilter_too_muchÚtoo_slowÚargvÚdictr  r£   rÆ   )rA   Úqs   00r   Ú<module>r     s¢  ðÛ Ý Û 
ðÛ õ #Û ß /Ñ /ðÝ&à€J÷÷ ÷ ñ ðÝð€	ð0 ‡�×ÑØ©¨Y°s¸¨^¸YÀqÀr¸]Ô)KÔLÑ)K¡  A�q˜!’fÐ)KÒLóñ'óð'ð ‡�×Ñ˜¢
Ó+ñ ó ,ð ð ‡�×ÑØ‡�×Ñ˜ +Ó.ñ4ó /ó ð4ò ò
"ò
 ò ô:˜X×.Ñ.ô :ð0 ‡�ñ	ó ð	ð ‡�ñó ðð ‡�ñó ðð ‡�ñMó ðMð: ‡�ñ+ó ð+ð\ €Ùà×#Ñ#Ø×Ñð-€LÐ(Ñ)ð
  $€L�Ñàˆs�x‰xÑØ#%€L�Ñ ñ ˜Ó&Ð Øˆs�x‰xÑØ()Ð�nÒ%à(*Ð�nÑ%ô43�(×#Ñ#ô 43ônW'�x×(Ñ(õ W'øðK
 ò Þðûð ò ØƒJðûð$ ò ðÞøØò ô	ðýðüóD Ms^   �G5 ©H ÁH Á<H5Ç5	HÈHÈHÈHÈH2ÈH ÈH2È H+È(H2È*H+È+H2È1H2