File: //proc/2/cwd/usr/lib64/python2.7/bisect.pyo
�
zfc           @   st   d  Z  d d d � Z e Z d d d � Z e Z d d d � Z d d d � Z y d d l TWn e	 k
 ro n Xd S(	   s   Bisection algorithms.i    c         C   s�   | d k  r t  d � � n  | d k r6 t |  � } n  xA | | k  ry | | d } | |  | k  rl | } q9 | d } q9 W|  j | | � d S(   s�   Insert item x in list a, and keep it sorted assuming a is sorted.
    If x is already in a, insert it to the right of the rightmost x.
    Optional args lo (default 0) and hi (default len(a)) bound the
    slice of a to be searched.
    i    s   lo must be non-negativei   i   N(   t
   ValueErrort   Nonet   lent   insert(   t   at   xt   lot   hit   mid(    (    s   /usr/lib64/python2.7/bisect.pyt   insort_right   s    	 	c         C   s~   | d k  r t  d � � n  | d k r6 t |  � } n  xA | | k  ry | | d } | |  | k  rl | } q9 | d } q9 W| S(   s�  Return the index where to insert item x in list a, assuming a is sorted.
    The return value i is such that all e in a[:i] have e <= x, and all e in
    a[i:] have e > x.  So if x already appears in the list, a.insert(x) will
    insert just after the rightmost x already there.
    Optional args lo (default 0) and hi (default len(a)) bound the
    slice of a to be searched.
    i    s   lo must be non-negativei   i   N(   R    R   R   (   R   R   R   R   R   (    (    s   /usr/lib64/python2.7/bisect.pyt   bisect_right   s     	c         C   s�   | d k  r t  d � � n  | d k r6 t |  � } n  xA | | k  ry | | d } |  | | k  rp | d } q9 | } q9 W|  j | | � d S(   s�   Insert item x in list a, and keep it sorted assuming a is sorted.
    If x is already in a, insert it to the left of the leftmost x.
    Optional args lo (default 0) and hi (default len(a)) bound the
    slice of a to be searched.
    i    s   lo must be non-negativei   i   N(   R    R   R   R   (   R   R   R   R   R   (    (    s   /usr/lib64/python2.7/bisect.pyt   insort_left/   s    	 
c         C   s~   | d k  r t  d � � n  | d k r6 t |  � } n  xA | | k  ry | | d } |  | | k  rp | d } q9 | } q9 W| S(   s�  Return the index where to insert item x in list a, assuming a is sorted.
    The return value i is such that all e in a[:i] have e < x, and all e in
    a[i:] have e >= x.  So if x already appears in the list, a.insert(x) will
    insert just before the leftmost x already there.
    Optional args lo (default 0) and hi (default len(a)) bound the
    slice of a to be searched.
    i    s   lo must be non-negativei   i   N(   R    R   R   (   R   R   R   R   R   (    (    s   /usr/lib64/python2.7/bisect.pyt   bisect_leftC   s     
i����(   t   *N(
   t   __doc__R   R	   t   insortR
   t   bisectR   R   t   _bisectt   ImportError(    (    (    s   /usr/lib64/python2.7/bisect.pyt   <module>   s