ó
šxTc           @   sa   d  d l  m Z d  d l Z e j j d ƒ Z d  d l Te d Z	 d „  Z
 d „  Z d „  Z d S(	   iÿÿÿÿ(   t   divisionNt   boost_rational_ext(   t   *t   intc         C   su   g  |  j  d ƒ D] } t | ƒ ^ q } t | ƒ d k s@ t ‚ t | ƒ d k r` t | d ƒ St | d | d ƒ S(   Nt   /i   i   i    (   i   i   (   t   splitt   builtin_intt   lent   AssertionErrorR   (   t   st   it   flds(    (    s<   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/boost/rational.pyt   from_string   s
    (c         C   sˆ   t  | t ƒ r% | g t |  ƒ } n t |  ƒ t | ƒ k sC t ‚ g  } x8 t t |  ƒ ƒ D]$ } | j t |  | | | ƒ ƒ q\ W| S(   N(   t
   isinstanceR   R   R   t   xranget   appendR   (   t
   numeratorst   denominatorst   resultR
   (    (    s<   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/boost/rational.pyt   vector   s    "c         C   s0   d } x# |  D] } t  | | j ƒ  ƒ } q W| S(   Ni   (   t   lcmt   denominator(   t   arrayt   lt   r(    (    s<   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/boost/rational.pyt   lcm_denominators   s    (   t
   __future__R    t   boost.pythont   boostt   pythont
   import_extt   extR   t   __builtins__R   R   R   R   (    (    (    s<   /public2/ftp/pub/ccp4/6.5/ccp4-6.5/lib/py2/boost/rational.pyt   <module>   s   

		
