๓
O'^c           @@  s>  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 rฌd d l Z d d l m Z m Z d d	 l m Z d d
 l m Z m Z e Z e Z e Z e Z e Z e Z e f Z d Z d   Z  d   Z! d   Z" d   Z# e$ e d  Z% d d  Z' d e f d     YZ( nฟ d d l) Z d d l m Z m Z d d l m* Z m+ Z d d l m Z e, Z e- Z e, Z e. Z e/ Z e e. f Z d Z d   Z  d   Z! d   Z" d   Z# d d d  Z% e% d  e Z Z( e0 d d g  d  Z1 e j d. k  rd d l2 Z2 e2 j3   Z4 y d d l5 Z5 Wn e
 k
 rำd Z5 n Xe4 d  k rqe5 d k	 rqd d! l6 m7 Z7 e5 j8 e7 d"   Z9 e5 j8 e7 d#  d$ e: Z; e9 j< Z< e5 j= e< _> e; j? Z@ e5 j= e@ _> e5 j= g e@ _A d%   ZB qe4 d& k r๙e5 d k	 r๙d d lC ZC d' ZD d( e5 jE f d)     YZF e5 j8 d* d$ e: ZG eG jH ZH e5 jI e5 jJ eF  g eH _A d+   ZB qd d, lK mK ZB n  y d d- lK mL ZL Wn e
 k
 r9eB ZL n Xd S(/   s   
    celery.five
    ~~~~~~~~~~~

    Compatibility implementations of features
    only available in newer Python versions.


i    (   t   absolute_importNi   (   t   reload(   t   UserList(   t   UserDict(   t   Queuet   Empty(   t   zip_longest(   t   StringIOt   BytesIOs   builtins.openc         C@  s
   |  j    S(   N(   t   items(   t   d(    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyR	   2   s    c         C@  s
   |  j    S(   N(   t   keys(   R
   (    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyR   5   s    c         C@  s
   |  j    S(   N(   t   values(   R
   (    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyR   8   s    c         C@  s   |  j  S(   N(   t   __next__(   t   it(    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyt   nextfun;   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-9igm28/amqp/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-9igm28/amqp/five.pyR   G   s    (   t   __name__t
   __module__R   (    (    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyR   E   s   (   t   imapt   izip_longest(   R   s   __builtin__.openc         C@  s
   |  j    S(   N(   t	   iteritems(   R
   (    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyR	   Z   s    c         C@  s
   |  j    S(   N(   t   iterkeys(   R
   (    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyR   ]   s    c         C@  s
   |  j    S(   N(   t
   itervalues(   R
   (    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyR   `   s    c         C@  s   |  j  S(   N(   t   next(   R   (    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyR   c   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-9igm28/amqp/five.pyt   exec_f   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 3 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   keyR   (   t
   skip_attrs(    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pys	   <genexpr>   s    	(   t   dictR	   t   varsR   t	   __bases__(   t   Classt   attrs(   t   TypeR4   (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyt   _clone_with_metaclass   s    ((    (   R:   R4   R;   (    (   R:   R4   s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyt   with_metaclassw   s    	t   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-9igm28/amqp/five.pyt
   _monotonic   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(   R   R   t   ctypest   c_longt   _fields_(    (    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyRE   จ   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ึ&่.>(   RE   t   clock_gettimet   CLOCK_MONOTONICRH   t   pointert	   get_errnot   OSErrort   ost   strerrorRF   RG   (   t   tt   errno_(    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyRC   ด   s
    	(   t   time(   t	   monotonic(   i   i   (M   t   __doc__t
   __future__R    R'   t   version_infot   PY3R   t	   NameErrort   impR   t   ImportErrort   collectionsR   t   builtinst   queueR   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   getattrR/   R&   R   R   t   __builtin__R    R!   t   unicodet
   basestringt   longt   xranget   setR<   t   platformt   systemt   SYSTEMRH   t   ctypes.utilR>   t   CDLLt	   libSystemt   TrueR?   RB   t   c_uint64t   restypet   AbsoluteToNanosecondsRA   t   argtypesRC   RP   RL   t	   StructureRE   t   librtRK   t   c_intt   POINTERRT   RU   (    (    (    s+   /tmp/pip-unpacked-wheel-9igm28/amqp/five.pyt   <module>
   sช   
									


				