
    #                         d dl mZ d dlmZ 	 d dlmZ  G d de      Zej                  e
       y# e$ r	 d dlmZ Y *w xY w)    )absolute_import)abstractmethod)MutableMappingc                   X    e Zd ZdZed        Zed        ZddZ e       Z	e	fdZ
ddZy)	DefaultMapping c                      y)NFr   selfkeys     !lib/third_party/cachetools/abc.py__contains__zDefaultMapping.__contains__   s        c                 |    t        | j                  d      r| j                  j                  | |      S t        |      )N__missing__)hasattr	__class__r   KeyErrorr
   s     r   __getitem__zDefaultMapping.__getitem__   s1    t~~}-^^''c22SMr   Nc                     || v r| |   S |S Nr   )r   r   defaults      r   getzDefaultMapping.get   s    
d{#Ynr   c                 X    || v r
| |   }| |= |S || j                   u rt        |      |}|S r   )_DefaultMapping__markerr   r   r   r   values       r   popzDefaultMapping.pop"   sB    
d{3ie
s)
 L	 
DMM	!SMeLr   c                 *    || v r| |   }|S |x| |<   }|S r   r   r   s       r   
setdefaultzDefaultMapping.setdefault,   s.    
d{3ie L "!d3i%Lr   r   )__name__
__module____qualname__	__slots__r   r   r   r   objectr   r   r    r   r   r   r   r      sH    )    X(% r   r   N)
__future__r   abcr   collections.abcr   ImportErrorcollectionsr   registerdictr   r   r   <module>r-      sE    & ),
&^ &R    [  )()s   1 ??