ó
O'—^c           @@  sV  d  Z  d d l m Z d d l Z e j d d k Z y
 e Z Wn! e k
 rb d d l m Z n Xy d d l	 m	 Z	 Wn! e
 k
 rš d d l m	 Z	 n Xy d d l m Z Wn! e
 k
 rÒ d d l m Z n Xe j d. k  rhd d l Z e j ƒ  Z y d d l Z Wn e
 k
 r#d Z n Xe d k rÁe d k	 rÁd d	 l m Z e j e d
 ƒ ƒ Z e j e d ƒ d e ƒZ e j Z e j e _ e j Z e j e _ e j g e _ d „  Z qhe d k rUe d k	 rUd d l Z d d l Z d Z  d e j! f d „  ƒ  YZ" e j d d e ƒZ# e# j$ Z$ e j% e j& e" ƒ g e$ _ d „  Z qhd d l' m' Z n  y d d l' m( Z( Wn e
 k
 r•e Z( n Xe rud d l) Z) d d l* m+ Z+ m, Z, m- Z- d d l. m/ Z/ d d l0 m1 Z1 m2 Z2 e3 Z3 e4 Z5 e4 Z6 e7 Z8 e4 Z9 e: Z: e7 f Z; d Z< d „  Z= d „  Z> d „  Z? d „  Z@ eA e) d ƒ ZB d d „ ZC d  e1 f d! „  ƒ  YZD nÅ d d lE Z) d d l+ m+ Z+ m, Z, m- Z- d d" l. mF Z3 mG Z/ d d# l1 m1 Z1 eH Z5 eI Z6 eH Z9 eJ Z8 eK Z: e7 eJ f Z; d$ Z< d% „  Z= d& „  Z> d' „  Z? d( „  Z@ d d d) „ ZB eB d* ƒ e1 Z2 ZD eL d+ d, g ƒ d- „ ZM d S(/   s   
    celery.five
    ~~~~~~~~~~~

    Compatibility implementations of features
    only available in newer Python versions.


i    (   t   absolute_importNi   (   t   reload(   t   UserList(   t   UserDictt   Darwin(   t   find_librarys   libSystem.dylibt   CoreServicest	   use_errnoc           C@  s   t  t ƒ  ƒ d S(   Ng•Ö&è.>(   t   absolute_to_nanosecondst   mach_absolute_time(    (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyt
   _monotonic7   s    t   Linuxi   t   timespecc           B@  s&   e  Z d  e j f d e j f g Z RS(   t   tv_sect   tv_nsec(   t   __name__t
   __module__t   ctypest   c_longt   _fields_(    (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR   B   s   s
   librt.so.1c          C@  s`   t  ƒ  }  t t t j |  ƒ ƒ d k rN t j ƒ  } t | t j | ƒ ƒ ‚ n  |  j	 |  j
 d S(   Ni    g•Ö&è.>(   R   t   clock_gettimet   CLOCK_MONOTONICR   t   pointert	   get_errnot   OSErrort   ost   strerrorR   R   (   t   tt   errno_(    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR
   N   s
    	(   t   time(   t	   monotonic(   t   Queuet   Emptyt   Full(   t   zip_longest(   t   StringIOt   BytesIOs   builtins.openc         C@  s
   |  j  ƒ  S(   N(   t   items(   t   d(    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR%   m   s    c         C@  s
   |  j  ƒ  S(   N(   t   keys(   R&   (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR'   p   s    c         C@  s
   |  j  ƒ  S(   N(   t   values(   R&   (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR(   s   s    c         C@  s   |  j  S(   N(   t   __next__(   t   it(    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyt   nextfunv   s    t   execc         C@  s+   | j  | k	 r! | j | ƒ ‚ n  | ‚ d  S(   N(   t   __traceback__t   with_traceback(   t   tpt   valuet   tb(    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyt   reraise{   s    t
   WhateverIOc           B@  s   e  Z d  „  Z RS(   c         C@  s2   t  | t ƒ r | j ƒ  } n  t j |  | ƒ d  S(   N(   t
   isinstancet   bytest   encodeR#   t   write(   t   selft   data(    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR7   ‚   s    (   R   R   R7   (    (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR3   €   s   (   t   imapt   izip_longest(   R#   s   __builtin__.openc         C@  s
   |  j  ƒ  S(   N(   t	   iteritems(   R&   (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR%   •   s    c         C@  s
   |  j  ƒ  S(   N(   t   iterkeys(   R&   (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR'   ˜   s    c         C@  s
   |  j  ƒ  S(   N(   t
   itervalues(   R&   (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR(   ›   s    c         C@  s   |  j  S(   N(   t   next(   R*   (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyR+   ž   s    c         B@  sc   | d k rB e j d ƒ } | j } | d k r< | j } n  ~ n | d k rW | } n  d d Ud S(   s   Execute code in a namespace.i   s   exec code in globs, locsN(   t   Nonet   syst	   _getframet	   f_globalst   f_locals(   t   codet   globst   locst   frame(    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyt   exec_¡   s    		s4   def reraise(tp, value, tb=None): raise tp, value, tbt   __dict__t   __weakref__c         @  s   ‡  ‡ f d †  } | S(   sú   Class decorator to set metaclass.

    Works with both Python 2 and Python 3 and it does not add
    an extra class in the lookup order like ``six.with_metaclass`` does
    (that is -- it copies the original class instead of using inheritance).

    c         @  s>   t  ‡ f d †  t t |  ƒ ƒ Dƒ ƒ } ˆ  |  j |  j | ƒ S(   Nc         3@  s-   |  ]# \ } } | ˆ  k r | | f Vq d  S(   N(    (   t   .0t   keyR0   (   t
   skip_attrs(    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pys	   <genexpr>¼   s    	(   t   dictR%   t   varsR   t	   __bases__(   t   Classt   attrs(   t   TypeRN   (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyt   _clone_with_metaclass»   s    ((    (   RT   RN   RU   (    (   RT   RN   s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyt   with_metaclass²   s    	(   i   i   (N   t   __doc__t
   __future__R    RA   t   version_infot   PY3R   t	   NameErrort   impR   t   ImportErrort   collectionsR   t   platformt   systemt   SYSTEMR   R@   t   ctypes.utilR   t   CDLLt	   libSystemt   TrueR   R	   t   c_uint64t   restypet   AbsoluteToNanosecondsR   t   argtypesR
   R   R   t	   StructureR   t   librtR   t   c_intt   POINTERR   R   t   builtinst   queueR   R    R!   t	   itertoolsR"   t   ioR#   R$   t   mapt   strt   stringt   string_tt   intt   long_tt   text_tt   ranget	   int_typest	   open_fqdnR%   R'   R(   R+   t   getattrRI   R2   R3   t   __builtin__R:   R;   t   unicodet
   basestringt   longt   xranget   setRV   (    (    (    s/   /tmp/pip-unpacked-wheel-40MfcW/billiard/five.pyt   <module>
   s¬   

				
									

