ó
l™xTc           @   sP   d  d l  m Z d  d l Z e d „ Z d „  Z e d k rL e ƒ  d GHn  d S(   iÿÿÿÿ(   t   divisionNc         C   sa  g  } g  } g  } x2 t  |  ƒ D]$ } | j | d ƒ | j t ƒ q Wt | d <d } | rm | j d ƒ n  x¸ | t j t |  ƒ ƒ k r'd  } xŠ t  |  ƒ D]| } | d  k rê | | | k rê | | sç | | } | j | ƒ qç qê n  | d  k rž | | | d k rt | | <qqž qž W| } qp Wx2 t  |  ƒ D]$ } | | s5| j | | ƒ q5q5W| S(   Ni   i    (   t   xranget   appendt   Falset   Truet   matht   sqrtt   floatt   None(   t   nt   include_unityt   numberst   markst   primest   iit   kt   m(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/math/sieve_of_eratosthenes.pyt   prime_sieve   s4    




c          C   s4   d d d d g }  t  d ƒ } |  | k s0 t ‚ d  S(   Ni   i   i   i   i
   (   R   t   AssertionError(   t   knownt   test(    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/math/sieve_of_eratosthenes.pyt   tst_prime_sieve'   s    t   __main__t   OK(   t
   __future__R    R   R   R   R   t   __name__(    (    (    sO   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/scitbx/math/sieve_of_eratosthenes.pyt   <module>   s   "	