;
Òâ"Ic            ,   @   sÃ  d  d d d g Z  d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l m Z d d l	 m
 Z
 m Z m Z m Z m Z m Z d d l m Z d d	 l m Z m Z m Z m Z d d
 l m Z m Z y d d l m Z Wn$ e k
 o d d l m Z Yn Xd „  Z e j e j e ƒ d „  d d d f Dƒ Z  e  d e! k	 oJ d „  Z" x: e  D]2 Z# e j e# e" ƒ d d l$ Z$ e$ j e# e" ƒ qqWn Gd „  d e% ƒ Z& f  i  d „ Z' d „  Z( Gd „  d e) ƒ Z* d „  Z+ d „  Z, Gd „  d e% ƒ Z- Gd „  d e% ƒ Z. i e j/ e j0 f d 6e j1 e j2 f d 6Z3 Gd „  d  e% ƒ Z4 Gd  „  d! e5 ƒ Z6 Gd" „  d e% ƒ Z7 d# „  Z8 i  d$ „ Z9 e: e: e: e; d% „ Z< Gd& „  d' e% ƒ Z= Gd( „  d) e% ƒ Z> e; d* „ Z? Gd+ „  d, e7 ƒ Z@ Gd- „  d. e7 ƒ ZA Gd/ „  d0 eA ƒ ZB Gd1 „  d2 e7 ƒ ZC Gd3 „  d4 e7 ƒ ZD Gd5 „  d6 e7 ƒ ZE e9 d7 d8 d9 d: d; d< d= d> d? d@ dA dB dC dD dE dF dG dH dI dJ dK dL dM f ƒ ZF GdN „  dO eF ƒ ZG e9 dP d9 d: d< d> dB dQ dR dS dT d d dI dU dV dW d f ƒ ZH e9 dX d> d< dB d= dC f ƒ ZI e9 dY dZ d[ d\ d] d^ d_ d` da db f	 ƒ ZJ i dc d[ 6dc da 6dd d] 6dd d^ 6eJ _K Gde „  d e4 ƒ ZL eL j df e jM ƒ eL j dg e jM ƒ eL j dh e jN eC ƒ eL j di e jO eA ƒ eL j dj e jP eA ƒ eL j dk e jQ eA ƒ eL j dl e jR eA ƒ eL j dm e jS eB ƒ eL j dn e eJ ƒ eL j do e! eG ƒ eL j dp eT eH ƒ eL j d) e> eE ƒ eL j dq e? eI ƒ eL j d' e= eD ƒ eL j dd dr e@ ds eU ƒeL j dc ds eU ƒd S(t   u   BaseManageru   SyncManageru	   BaseProxyu   Tokeni    N(   u
   format_exc(   u   Processu   current_processu   active_childrenu   Poolu   utilu
   connection(   u   AuthenticationString(   u   exitu   Popenu   assert_spawningu   ForkingPickler(   u   Finalizeu   info(   u   PicklingErrorc             C   s   t  j  |  j |  j ƒ  f f S(   N(   u   arrayu   typecodeu   tostring(   u   a(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   reduce_array&   s    c             C   s-   g  } |  ] } | t  t i  | ƒ ƒ  ƒ q
 S(    (   u   typeu   getattr(   u   .0u   _[1]u   name(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   <listcomp>*   s    u   itemsu   keysu   valuesc             C   s   t  t  |  ƒ f f S(   N(   u   list(   u   obj(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   rebuild_as_list,   s    c             B   s>   |  Ee  Z d  Z d	 Z d „  Z d „  Z d „  Z d „  Z d S(
   u4   
    Type to uniquely indentify a shared object
    u   typeidu   addressu   idc             C   s!   | | | |  _  |  _ |  _ d  S(   N(   u   typeidu   addressu   id(   u   selfu   typeidu   addressu   id(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __init__=   s    c             C   s   |  j  |  j |  j f S(   N(   u   typeidu   addressu   id(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __getstate__@   s    c             C   s   | \ |  _  |  _ |  _ d  S(   N(   u   typeidu   addressu   id(   u   selfu   state(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __setstate__C   s    c             C   s   d |  j  |  j |  j f S(   Nu#   Token(typeid=%r, address=%r, id=%r)(   u   typeidu   addressu   id(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __repr__F   s    N(   u   typeidu   addressu   id(   u   __name__u
   __module__u   __doc__u	   __slots__u   __init__u   __getstate__u   __setstate__u   __repr__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   Token7   s   
			c             C   sP   |  j  | | | | f ƒ |  j ƒ  \ } } | d k o | St | | ƒ ‚ d S(   uL   
    Send a message to manager using connection `c` and return response
    u   #RETURNN(   u   sendu   recvu   convert_to_error(   u   cu   idu
   methodnameu   argsu   kwdsu   kindu   result(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   dispatchN   s
    c             C   sT   |  d k o | S|  d k o t  | ƒ S|  d k o t  d | ƒ St d ƒ Sd  S(   Nu   #ERRORu
   #TRACEBACKu   #UNSERIALIZABLEu   Unserializable message: %s
u   Unrecognized message type(   u   RemoteErroru
   ValueError(   u   kindu   result(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   convert_to_errorX   s    c             B   s   |  Ee  Z d  „  Z d S(   c             C   s)   d d d d t  |  j d ƒ d d S(   Nu   
u   -iK   i    (   u   stru   args(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __str__e   s    N(   u   __name__u
   __module__u   __str__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   RemoteErrord   s   
u   RemoteErrorc             C   sQ   g  } xD t  |  ƒ D]6 } t |  | ƒ } t | d ƒ o | j | ƒ q q W| S(   u4   
    Return a list of names of methods of `obj`
    u   __call__(   u   diru   getattru   hasattru   append(   u   obju   tempu   nameu   func(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   all_methodsl   s     c             C   s   d „  t  |  ƒ Dƒ S(   uP   
    Return a list of names of methods of `obj` which do not start with '_'
    c             S   s0   g  } |  ]" } | d  d k o | | q
 q
 S(   i    u   _(    (   u   .0u   _[1]u   name(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   <listcomp>{   s    (   u   all_methods(   u   obj(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   public_methodsw   s    c          	   B   sà   |  Ee  Z d  Z d d d d d d d d d	 g	 Z d
 „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 i e	 d 6e
 d 6e d 6Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d S(   uM   
    Server class which runs in a process controlled by a manager object
    u   shutdownu   createu   accept_connectionu   get_methodsu
   debug_infou   number_of_objectsu   dummyu   increfu   decrefc             C   sŠ   | |  _  t | ƒ |  _ t | \ } } | d | d d ƒ |  _ |  j j |  _ i d  d f d 6|  _ i  |  _ t	 j
 ƒ  |  _ d |  _ d  S(   Nu   addressu   backlogi   i    (    (   u   registryu   AuthenticationStringu   authkeyu   listener_clientu   listeneru   addressu   Noneu	   id_to_obju   id_to_refcountu	   threadingu   RLocku   mutexu   stop(   u   selfu   registryu   addressu   authkeyu
   serializeru   Listeneru   Client(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __init__ˆ   s    		c             C   s¹   |  t  ƒ  _ z yn xg y |  j j ƒ  } Wn t t f k
 o w Yn Xt j d |  j d | f ƒ } d | _
 | j ƒ  q Wn t t f k
 o Yn XWd d |  _ |  j j ƒ  Xd S(   u(   
        Run the server forever
        u   targetu   argsNiç  T(   u   current_processu   _manager_serveru   listeneru   acceptu   OSErroru   IOErroru	   threadingu   Threadu   handle_requestu   Trueu   daemonu   startu   KeyboardInterruptu
   SystemExitu   stopu   close(   u   selfu   cu   t(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   serve_forever—   s    		
	c             C   s}  d } } } yW t j | |  j ƒ t j | |  j ƒ | j ƒ  } | \ } } } } t |  | ƒ } Wn# t k
 o d t ƒ  f }	 YnJ Xy | | | | Ž } Wn# t k
 o d t ƒ  f }	 Yn Xd | f }	 y | j	 |	 ƒ Wnˆ t k
 o| }
 zf y | j	 d t ƒ  f ƒ Wn t k
 o Yn Xt
 j d |	 ƒ t
 j d | ƒ t
 j d |
 ƒ WYd d }
 ~
 Xn X| j ƒ  d S(   u)   
        Handle a new connection
        u
   #TRACEBACKu   #RETURNu   Failure to send message: %ru    ... request was %ru    ... exception was %rN(   u   Noneu
   connectionu   deliver_challengeu   authkeyu   answer_challengeu   recvu   getattru	   Exceptionu
   format_excu   sendu   utilu   infou   close(   u   selfu   cu   funcnameu   resultu   requestu   ignoreu   argsu   kwdsu   funcu   msgu   e(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   handle_request¬   s2    $c          "   C   s<  t  j d t j ƒ  j ƒ | j } | j } |  j } x|  j pöy6d } } | ƒ  } | \ } } }	 }
 | | \ } } } | | k o# t
 d | t | ƒ | f ƒ ‚ n t | | ƒ } y | |	 |
 Ž  } Wn3 t k
 o' } z d | f } WYd d } ~ Xnt X| o | j | d ƒ } | oF |  j | | | ƒ \ } } t | |  j | ƒ } d | | f f } n d | f } Wní t
 k
 o† | d k o d t ƒ  f } n_ y8 |  j | } | |  | | | |	 |
 Ž } d | f } Wn# t k
 o d t ƒ  f } Yn XYn] t k
 o. t  j d t j ƒ  j ƒ t j d	 ƒ Yn$ t k
 o d t ƒ  f } Yn XyR y | | ƒ Wn= t k
 o1 } z | d
 t | ƒ f ƒ WYd d } ~ Xn XWq7 t k
 ok } zU t  j d t j ƒ  j ƒ t  j d | ƒ t  j d | ƒ | j ƒ  t j d ƒ WYd d } ~ Xq7 Xq7 Wd S(   uQ   
        Handle requests from the proxies in a particular process/thread
        u$   starting server thread to service %ru+   method %r of %r object is not in exposed=%ru   #ERRORNu   #PROXYu   #RETURNu
   #TRACEBACKu$   got EOF -- exiting thread serving %ri    u   #UNSERIALIZABLEu   exception in thread serving %ru    ... message was %ru    ... exception was %ri   (   u   utilu   debugu	   threadingu   current_threadu   nameu   recvu   sendu	   id_to_obju   stopu   Noneu   AttributeErroru   typeu   getattru	   Exceptionu   getu   createu   Tokenu   addressu
   format_excu   fallback_mappingu   EOFErroru   sysu   exitu   repru   infou   close(   u   selfu   connu   recvu   sendu	   id_to_obju
   methodnameu   obju   requestu   identu   argsu   kwdsu   exposedu	   gettypeidu   functionu   resu   eu   msgu   typeidu   ridentu   rexposedu   tokenu   fallback_funcu   result(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   serve_clientÎ   sn    				 

	 	.	
c             C   s   | S(   N(    (   u   selfu   connu   identu   obj(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   fallback_getvalue  s    c             C   s
   t  | ƒ S(   N(   u   str(   u   selfu   connu   identu   obj(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   fallback_str  s    c             C   s
   t  | ƒ S(   N(   u   repr(   u   selfu   connu   identu   obj(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   fallback_repr  s    u   __str__u   __repr__u	   #GETVALUEc             C   s   d  S(   N(    (   u   selfu   c(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   dummy'  s    c             C   s¶   |  j  j ƒ  z” g  } t |  j j ƒ  ƒ } | j ƒ  x[ | D]S } | d k o@ | j d | |  j | t |  j | d ƒ d d … f ƒ q< q< Wd j	 | ƒ SWd |  j  j
 ƒ  Xd S(   uO   
        Return some info --- useful to spot problems with refcounting
        i    u     %s:       refcount=%s
    %sNiK   u   
(   u   mutexu   acquireu   listu	   id_to_obju   keysu   sortu   appendu   id_to_refcountu   stru   joinu   release(   u   selfu   cu   resultu   keysu   ident(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   debug_info*  s    
 	.c             C   s   t  |  j ƒ d S(   u*   
        Number of shared objects
        i   (   u   lenu	   id_to_obj(   u   selfu   c(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   number_of_objects<  s    c             C   s  zù yÔ t  j d ƒ | j d ƒ t j t j k o) t  j d ƒ t j t _ t j t _ n t  j	 d ƒ x( t
 ƒ  D] } t  j d ƒ | j ƒ  qs Wx( t
 ƒ  D] } t  j d ƒ | j ƒ  qž Wt  j	 ƒ  t  j d ƒ Wn d d l } | j ƒ  Yn XWd t d ƒ Xd S(	   u'   
        Shutdown this process
        u!   manager received shutdown messageu   #RETURNu   resetting stdout, stderri    u&   terminating a child process of manageru   manager exiting with exitcode 0N(   u   #RETURNN(   u   utilu   debugu   sendu   Noneu   sysu   stdoutu
   __stdout__u
   __stderr__u   stderru   _run_finalizersu   active_childrenu	   terminateu   joinu   infou	   tracebacku	   print_excu   exit(   u   selfu   cu   pu	   traceback(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   shutdownB  s.    
 
 
c          
   O   s-  |  j  j ƒ  z|  j | \ } } } } | d k o | d }	 n | | | Ž  }	 | d k o t |	 ƒ } n | d k	 o t | ƒ t | ƒ } n d t |	 ƒ }
 t j d | |
 ƒ |	 t	 | ƒ | f |  j
 |
 <|
 |  j k o d |  j |
 <n |  j | |
 ƒ |
 t | ƒ f SWd |  j  j ƒ  Xd S(   u>   
        Create a new shared object and return its id
        i    u   %xu&   %r callable returned object with id %rN(   u   mutexu   acquireu   registryu   Noneu   public_methodsu   listu   idu   utilu   debugu   setu	   id_to_obju   id_to_refcountu   increfu   tupleu   release(   u   selfu   cu   typeidu   argsu   kwdsu   callableu   exposedu   method_to_typeidu	   proxytypeu   obju   ident(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   createb  s$    c             C   s   t  |  j | j d ƒ S(   uL   
        Return the methods of the shared object indicated by token
        i   (   u   tupleu	   id_to_obju   id(   u   selfu   cu   token(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   get_methodsˆ  s    c             C   s-   | t  j ƒ  _ | j d ƒ |  j | ƒ d S(   u=   
        Spawn a new thread to serve this connection
        u   #RETURNN(   u   #RETURNN(   u	   threadingu   current_threadu   nameu   sendu   Noneu   serve_client(   u   selfu   cu   name(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   accept_connectionŽ  s    c          
   C   s9   |  j  j ƒ  z |  j | c d 7<Wd  |  j  j ƒ  Xd  S(   Ni   (   u   mutexu   acquireu   id_to_refcountu   release(   u   selfu   cu   ident(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   incref–  s    c          
   C   su   |  j  j ƒ  zS |  j | c d 8<|  j | d k o( |  j | =|  j | =t j d | ƒ n Wd  |  j  j ƒ  Xd  S(   Ni   i    u   disposing of obj with id %d(   u   mutexu   acquireu   id_to_refcountu	   id_to_obju   utilu   debugu   release(   u   selfu   cu   ident(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   decref  s    N(   u   __name__u
   __module__u   __doc__u   publicu   __init__u   serve_foreveru   handle_requestu   serve_clientu   fallback_getvalueu   fallback_stru   fallback_repru   fallback_mappingu   dummyu
   debug_infou   number_of_objectsu   shutdownu   createu   get_methodsu   accept_connectionu   increfu   decref(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   Server   s.   
			"	J			
				 	&			u   Serverc             B   s)   |  Ee  Z d  g Z d Z d Z d Z d S(   u   valuei    i   i   N(   u   __name__u
   __module__u	   __slots__u   INITIALu   STARTEDu   SHUTDOWN(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   State¬  s   
	u   Stateu   pickleu	   xmlrpclibc             B   sÚ   |  Ee  Z d  Z i  Z e Z d d d d „ Z d „  Z d „  Z	 d „  Z
 d „  Z e d „  ƒ Z d „  Z d d	 „ Z d
 „  Z d „  Z d „  Z d „  Z e d „  ƒ Z e d „  ƒ Z e d d d d d d „ ƒ Z d S(   u!   
    Base class for managers
    u   picklec             C   ss   | d  k o t ƒ  j } n | |  _ t | ƒ |  _ t ƒ  |  _ t j |  j _	 | |  _
 t | \ |  _ |  _ d  S(   N(   u   Noneu   current_processu   authkeyu   _addressu   AuthenticationStringu   _authkeyu   Stateu   _stateu   INITIALu   valueu   _serializeru   listener_clientu	   _Listeneru   _Client(   u   selfu   addressu   authkeyu
   serializer(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __init__Æ  s    		c             C   s%   t  |  ƒ j |  j |  j |  j f f S(   N(   u   typeu   from_addressu   _addressu   _authkeyu   _serializer(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   __reduce__Ð  s    c             C   s   t  |  j |  j |  j |  j ƒ S(   uX   
        Return server object with serve_forever() method and address attribute
        (   u   Serveru	   _registryu   _addressu   _authkeyu   _serializer(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   get_serverÔ  s    c             C   sN   t  |  j \ } } | |  j d |  j ƒ} t | d d ƒ t j |  j _	 d S(   u>   
        Connect manager object to the server process
        u   authkeyu   dummyN(
   u   listener_clientu   _serializeru   _addressu   _authkeyu   dispatchu   Noneu   Stateu   STARTEDu   _stateu   value(   u   selfu   Listeneru   Clientu   conn(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   connectÜ  s    c          	   C   s  t  j d d
 ƒ \ } } t d t |  ƒ j d |  j |  j |  j |  j	 | f ƒ |  _
 d j d „  |  j
 j Dƒ ƒ } t |  ƒ j d | |  j
 _ |  j
 j ƒ  | j ƒ  | j ƒ  |  _ | j ƒ  t j |  j _ t j |  t |  ƒ j d |  j
 |  j |  j |  j |  j f d d ƒ|  _ d	 S(   u@   
        Spawn a server process for this manager object
        u   duplexu   targetu   argsu   :c             s   s   |  ] } t  | ƒ Vq d  S(   N(   u   str(   u   .0u   i(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu	   <genexpr>ô  s    u   -u   exitpriorityi    NF(   u
   connectionu   Pipeu   Falseu   Processu   typeu   _run_serveru	   _registryu   _addressu   _authkeyu   _serializeru   _processu   joinu	   _identityu   __name__u   nameu   startu   closeu   recvu   Stateu   STARTEDu   _stateu   valueu   utilu   Finalizeu   _finalize_manageru   _Clientu   shutdown(   u   selfu   readeru   writeru   ident(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   startå  s"    

c             C   sS   |  j  | | | | ƒ } | j | j ƒ | j ƒ  t j d | j ƒ | j ƒ  d S(   u@   
        Create a server, report its address and run it
        u   manager serving at %rN(   u   _Serveru   sendu   addressu   closeu   utilu   infou   serve_forever(   u   clsu   registryu   addressu   authkeyu
   serializeru   writeru   server(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _run_server  s
    
c             O   sk   |  j  |  j d |  j ƒ} z) t | d d | f | | ƒ \ } } Wd | j ƒ  Xt | |  j | ƒ | f S(   uP   
        Create a new shared object; return the token and exposed tuple
        u   authkeyu   createN(   u   _Clientu   _addressu   _authkeyu   dispatchu   Noneu   closeu   Token(   u   selfu   typeidu   argsu   kwdsu   connu   idu   exposed(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _create  s
    )c             C   s   |  j  j | ƒ d S(   uC   
        Join the manager process (if it has been spawned)
        N(   u   _processu   join(   u   selfu   timeout(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   join"  s    c          
   C   sA   |  j  |  j d |  j ƒ} z t | d d ƒ SWd | j ƒ  Xd S(   uS   
        Return some info about the servers shared objects and connections
        u   authkeyu
   debug_infoN(   u   _Clientu   _addressu   _authkeyu   dispatchu   Noneu   close(   u   selfu   conn(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _debug_info(  s    c          
   C   sA   |  j  |  j d |  j ƒ} z t | d d ƒ SWd | j ƒ  Xd S(   u5   
        Return the number of shared objects
        u   authkeyu   number_of_objectsN(   u   _Clientu   _addressu   _authkeyu   dispatchu   Noneu   close(   u   selfu   conn(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _number_of_objects2  s    c             C   s   |  S(   N(    (   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu	   __enter__<  s    c             C   s   |  j  ƒ  d  S(   N(   u   shutdown(   u   selfu   exc_typeu   exc_valu   exc_tb(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __exit__?  s    c             C   s)  |  j  ƒ  oç t j d ƒ y8 | | d | ƒ} z t | d d ƒ Wd | j ƒ  XWn t k
 o Yn X|  j d d ƒ |  j  ƒ  oj t j d ƒ t |  d ƒ oI t j d	 ƒ |  j	 ƒ  |  j d d
 ƒ |  j  ƒ  o t j d ƒ qì qð qô n t
 j | _ y t j | =Wn t k
 o Yn Xd S(   uQ   
        Shutdown the manager process; will be registered as a finalizer
        u#   sending shutdown message to manageru   authkeyu   shutdownNu   timeoutgš™™™™™É?u   manager still aliveu	   terminateu'   trying to `terminate()` manager processgš™™™™™¹?u#   manager still alive after terminate(   u   is_aliveu   utilu   infou   dispatchu   Noneu   closeu	   Exceptionu   joinu   hasattru	   terminateu   Stateu   SHUTDOWNu   valueu	   BaseProxyu   _address_to_localu   KeyError(   u   processu   addressu   authkeyu   stateu   _Clientu   conn(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _finalize_managerB  s.    
c             C   s   |  j  S(    (   u   _address(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   <lambda>b  s    c       
         sð   d |  j  k o |  j j ƒ  |  _ n ˆ d k o
 t ‰ n | p t ˆ d d ƒ } | p t ˆ d d ƒ } | o' x$ t | j ƒ  ƒ D] \ } } q‰ Wn | | | ˆ f |  j ˆ  <| o/ ‡  ‡ f d †  }	 ˆ  |	 _ t	 |  ˆ  |	 ƒ n d S(   u9   
        Register a typeid with the manager type
        u	   _registryu	   _exposed_u   _method_to_typeid_c          	      sŠ   t  j d ˆ  ƒ |  j ˆ  | | Ž \ } } ˆ | |  j d |  d |  j d | ƒ} |  j | j d |  j ƒ} t | d  d | j	 f ƒ | S(   Nu)   requesting creation of a shared %r objectu   manageru   authkeyu   exposedu   decref(
   u   utilu   debugu   _createu   _serializeru   _authkeyu   _Clientu   addressu   dispatchu   Noneu   id(   u   selfu   argsu   kwdsu   tokenu   expu   proxyu   conn(   u   typeidu	   proxytype(    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   temp  s    N(
   u   __dict__u	   _registryu   copyu   Noneu	   AutoProxyu   getattru   listu   itemsu   __name__u   setattr(
   u   clsu   typeidu   callableu	   proxytypeu   exposedu   method_to_typeidu   create_methodu   keyu   valueu   temp(    (   u   typeidu	   proxytypeu5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   registerd  s     
 
	NT(   u   __name__u
   __module__u   __doc__u	   _registryu   Serveru   _Serveru   Noneu   __init__u
   __reduce__u
   get_serveru   connectu   startu   classmethodu   _run_serveru   _createu   joinu   _debug_infou   _number_of_objectsu	   __enter__u   __exit__u   staticmethodu   _finalize_manageru   propertyu   addressu   Trueu   register(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   BaseManager¿  s(   

					!		
	
		 	c             B   s    |  Ee  Z d  „  Z d „  Z d S(   c             C   s   t  j |  d „  ƒ d  S(   Nc             S   s
   |  j  ƒ  S(    (   u   clear(   u   obj(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   <lambda>’  s    (   u   utilu   register_after_fork(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __init__‘  s    c             C   s   t  |  ƒ d f S(   N(    (   u   type(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   __reduce__“  s    N(   u   __name__u
   __module__u   __init__u
   __reduce__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   ProcessLocalSet  s   
	u   ProcessLocalSetc             B   s¡   |  Ee  Z d  Z i  Z e j ƒ  Z d d d d d „ Z	 d „  Z
 d i  d „ Z d „  Z d „  Z e d „  ƒ Z d „  Z d „  Z d	 „  Z d
 „  Z d „  Z d S(   u.   
    A base for proxies of shared objects
    c          	   C   sC  t  j j ƒ  zR t  j j | j d  ƒ } | d  k o) t j ƒ  t	 ƒ  f } | t  j | j <n Wd  t  j j
 ƒ  X| d |  _ | d |  _ | |  _ |  j j |  _ | |  _ | |  _ t | d |  _ | d  k	 o t | ƒ |  _ n3 |  j d  k	 o |  j j |  _ n t ƒ  j |  _ | o |  j ƒ  n t j |  t  j ƒ d  S(   Ni    i   (   u	   BaseProxyu   _mutexu   acquireu   _address_to_localu   getu   addressu   Noneu   utilu   ForkAwareLocalu   ProcessLocalSetu   releaseu   _tlsu   _idsetu   _tokenu   idu   _idu   _manageru   _serializeru   listener_clientu   _Clientu   AuthenticationStringu   _authkeyu   current_processu   authkeyu   _increfu   register_after_forku   _after_fork(   u   selfu   tokenu
   serializeru   manageru   authkeyu   exposedu   increfu	   tls_idset(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __init__¡  s,    			c             C   sŽ   t  j d ƒ t ƒ  j } t j ƒ  j d k o | d t j ƒ  j 7} n |  j |  j j d |  j	 ƒ} t
 | d  d | f ƒ | |  j _ d  S(   Nu   making connection to manageru
   MainThreadu   |u   authkeyu   accept_connection(   u   utilu   debugu   current_processu   nameu	   threadingu   current_threadu   _Clientu   _tokenu   addressu   _authkeyu   dispatchu   Noneu   _tlsu
   connection(   u   selfu   nameu   conn(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _connectÇ  s    c             C   s<  y |  j  j } WnC t k
 o7 t j d t j ƒ  j ƒ |  j ƒ  |  j  j } Yn X| j	 |  j
 | | | f ƒ | j ƒ  \ } } | d k o | S| d k o† | \ } } |  j j | j d }	 |	 | |  j d |  j d |  j d | ƒ}
 |  j | j d |  j ƒ} t | d	 d | j f ƒ |
 St | | ƒ ‚ d	 S(
   uW   
        Try to call a method of the referrent and return a copy of the result
        u#   thread %r does not own a connectionu   #RETURNu   #PROXYiÿÿÿÿu   manageru   authkeyu   exposedu   decrefN(   u   _tlsu
   connectionu   AttributeErroru   utilu   debugu	   threadingu   current_threadu   nameu   _connectu   sendu   _idu   recvu   _manageru	   _registryu   typeidu   _serializeru   _authkeyu   _Clientu   addressu   dispatchu   Noneu   idu   convert_to_error(   u   selfu
   methodnameu   argsu   kwdsu   connu   kindu   resultu   exposedu   tokenu	   proxytypeu   proxy(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _callmethodÐ  s*    	
c             C   s   |  j  d ƒ S(   u9   
        Get a copy of the value of the referent
        u	   #GETVALUE(   u   _callmethod(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu	   _getvalueí  s    c          
   C   s¿   |  j  |  j j d |  j ƒ} t | d  d |  j f ƒ t j d |  j j	 ƒ |  j
 j |  j ƒ |  j o
 |  j j } t j |  t j d |  j |  j | |  j |  j
 |  j  f d d ƒ|  _ d  S(   Nu   authkeyu   increfu	   INCREF %ru   argsu   exitpriorityi
   (   u   _Clientu   _tokenu   addressu   _authkeyu   dispatchu   Noneu   _idu   utilu   debugu   idu   _idsetu   addu   _manageru   _stateu   Finalizeu	   BaseProxyu   _decrefu   _tlsu   _close(   u   selfu   connu   state(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _increfó  s    c             C   s  | j  |  j ƒ | d  k p | j t j k oƒ yE t j d |  j ƒ | |  j d | ƒ} t	 | d  d |  j f ƒ WqÆ t
 k
 o+ } z t j d | ƒ WYd  d  } ~ XqÆ Xn t j d |  j ƒ | o@ t | d ƒ o0 t j d t j ƒ  j ƒ | j j ƒ  | ` n d  S(   Nu	   DECREF %ru   authkeyu   decrefu   ... decref failed %su%   DECREF %r -- manager already shutdownu
   connectionu-   thread %r has no more proxies so closing conn(   u   discardu   idu   Noneu   valueu   Stateu   STARTEDu   utilu   debugu   addressu   dispatchu	   Exceptionu   hasattru	   threadingu   current_threadu   nameu
   connectionu   close(   u   tokenu   authkeyu   stateu   tlsu   idsetu   _Clientu   connu   e(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _decref  s     (	c             C   sV   d  |  _ y |  j ƒ  Wn8 t k
 o, } z t j d | ƒ WYd  d  } ~ Xn Xd  S(   Nu   incref failed: %s(   u   Noneu   _manageru   _increfu	   Exceptionu   utilu   info(   u   selfu   e(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   _after_fork  s
    	c             C   s‡   i  } t  j ƒ  o |  j | d <n t |  d d ƒ o* |  j | d <t t |  j |  j	 | f f St t
 |  ƒ |  j |  j	 | f f Sd  S(   Nu   authkeyu   _isautou   exposedF(   u   Popenu   thread_is_spawningu   _authkeyu   getattru   Falseu	   _exposed_u   RebuildProxyu	   AutoProxyu   _tokenu   _serializeru   type(   u   selfu   kwds(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   __reduce__$  s    c             C   s
   |  j  ƒ  S(   N(   u	   _getvalue(   u   selfu   memo(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __deepcopy__1  s    c             C   s*   d t  |  ƒ j |  j j d t |  ƒ f S(   Nu   <%s object, typeid %r at %s>u   0x%x(   u   typeu   __name__u   _tokenu   typeidu   id(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __repr__4  s    c             C   sD   y |  j  d ƒ SWn, t k
 o  t |  ƒ d d … d SYn Xd S(   uV   
        Return representation of the referent (or a fall-back if that fails)
        u   __repr__Niÿÿÿÿu   ; '__str__()' failed>(   u   _callmethodu	   Exceptionu   repr(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __str__8  s    NT(    (   u   __name__u
   __module__u   __doc__u   _address_to_localu   utilu   ForkAwareThreadLocku   _mutexu   Noneu   Trueu   __init__u   _connectu   _callmethodu	   _getvalueu   _increfu   staticmethodu   _decrefu   _after_forku
   __reduce__u   __deepcopy__u   __repr__u   __str__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu	   BaseProxyš  s   
%								c             C   s…   t  t ƒ  d d ƒ } | o& | j | j k o | j | j d S| j d d ƒ o t  t ƒ  d d ƒ } |  | | d | | Sd S(   u‚   
    Function used for unpickling proxy objects.

    If possible the shared object is returned, or otherwise a proxy for it.
    u   _manager_serveri    u   increfu   _inheritingNTF(	   u   getattru   current_processu   Noneu   addressu	   id_to_obju   idu   popu   Trueu   False(   u   funcu   tokenu
   serializeru   kwdsu   serveru   incref(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   RebuildProxyE  s    c             C   s•   t  | ƒ } y | |  | f SWn t k
 o Yn Xi  } x% | D] } t d | | f | ƒ qB Wt |  t f | ƒ } | | _ | | |  | f <| S(   uC   
    Return an proxy type whose methods are given by `exposed`
    uL   def %s(self, *args, **kwds):
        return self._callmethod(%r, args, kwds)(   u   tupleu   KeyErroru   execu   typeu	   BaseProxyu	   _exposed_(   u   nameu   exposedu   _cacheu   dicu   methu	   ProxyType(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   MakeProxyTypeZ  s     	c       
      C   sæ   t  | d } | d k oC | |  j d | ƒ} z t | d d |  f ƒ } Wd | j ƒ  Xn | d k o | d k	 o | j } n | d k o t ƒ  j } n t d |  j	 | ƒ } | |  | d | d | d | ƒ}	 d |	 _ |	 S(	   u*   
    Return an auto-proxy for `token`
    i   u   authkeyu   get_methodsNu   AutoProxy[%s]u   manageru   increfT(   u   listener_clientu   Noneu   addressu   dispatchu   closeu   _authkeyu   current_processu   authkeyu   MakeProxyTypeu   typeidu   Trueu   _isauto(
   u   tokenu
   serializeru   manageru   authkeyu   exposedu   increfu   _Clientu   connu	   ProxyTypeu   proxy(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu	   AutoProxyp  s    		c             B   s    |  Ee  Z d  „  Z d „  Z d S(   c             K   s   |  j  j | ƒ d  S(   N(   u   __dict__u   update(   u   selfu   kwds(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __init__Ž  s    c             C   s{   t  |  j j ƒ  ƒ } g  } x? | D]7 \ } } | j d ƒ p | j d | | f ƒ q" q" W| j ƒ  d t j d | ƒ S(   Nu   _u   %s=%ru   Namespace(%s)u   , (   u   listu   __dict__u   itemsu
   startswithu   appendu   sortu   stru   join(   u   selfu   itemsu   tempu   nameu   value(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __repr__  s     
N(   u   __name__u
   __module__u   __init__u   __repr__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu	   Namespace  s   
	u	   Namespacec             B   sD   |  Ee  Z d d  „ Z d „  Z d „  Z d „  Z e e e ƒ Z d S(   c             C   s   | |  _  | |  _ d  S(   N(   u	   _typecodeu   _value(   u   selfu   typecodeu   valueu   lock(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __init__š  s    	c             C   s   |  j  S(   N(   u   _value(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   get  s    c             C   s   | |  _  d  S(   N(   u   _value(   u   selfu   value(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   setŸ  s    c             C   s    d t  |  ƒ j |  j |  j f S(   Nu
   %s(%r, %r)(   u   typeu   __name__u	   _typecodeu   _value(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __repr__¡  s    NT(	   u   __name__u
   __module__u   Trueu   __init__u   getu   setu   __repr__u   propertyu   value(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   Value™  s
   
			u   Valuec             C   s   t  j  |  | ƒ S(   N(   u   array(   u   typecodeu   sequenceu   lock(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   Array¥  s    c             B   sA   |  Ee  Z d
 Z d „  Z d „  Z d „  Z d „  Z d „  Z d	 S(   u   __next__u   sendu   throwu   closec             C   s   |  S(   N(    (   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __iter__®  s    c             G   s   |  j  d | ƒ S(   Nu   __next__(   u   _callmethod(   u   selfu   args(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __next__°  s    c             G   s   |  j  d | ƒ S(   Nu   send(   u   _callmethod(   u   selfu   args(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   send²  s    c             G   s   |  j  d | ƒ S(   Nu   throw(   u   _callmethod(   u   selfu   args(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   throw´  s    c             G   s   |  j  d | ƒ S(   Nu   close(   u   _callmethod(   u   selfu   args(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   close¶  s    N(   u   __next__u   sendu   throwu   close(   u   __name__u
   __module__u	   _exposed_u   __iter__u   __next__u   sendu   throwu   close(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   IteratorProxy¬  s   
				u   IteratorProxyc             B   s;   |  Ee  Z d Z d d „ Z d „  Z d „  Z d „  Z d S(	   u   acquireu   releasec             C   s   |  j  d | f ƒ S(   Nu   acquire(   u   _callmethod(   u   selfu   blocking(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   acquire¼  s    c             C   s   |  j  d ƒ S(   Nu   release(   u   _callmethod(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   release¾  s    c             C   s   |  j  d ƒ S(   Nu   acquire(   u   _callmethod(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu	   __enter__À  s    c             C   s   |  j  d ƒ S(   Nu   release(   u   _callmethod(   u   selfu   exc_typeu   exc_valu   exc_tb(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __exit__Â  s    N(   u   acquireu   releaseT(   u   __name__u
   __module__u	   _exposed_u   Trueu   acquireu   releaseu	   __enter__u   __exit__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   AcquirerProxyº  s
   
		u   AcquirerProxyc             B   s2   |  Ee  Z d	 Z d d „ Z d „  Z d „  Z d S(
   u   acquireu   releaseu   waitu   notifyu
   notify_allc             C   s   |  j  d | f ƒ S(   Nu   wait(   u   _callmethod(   u   selfu   timeout(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   waitÈ  s    c             C   s   |  j  d ƒ S(   Nu   notify(   u   _callmethod(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   notifyÊ  s    c             C   s   |  j  d ƒ S(   Nu
   notify_all(   u   _callmethod(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   notify_allÌ  s    N(   u   acquireu   releaseu   waitu   notifyu
   notify_all(   u   __name__u
   __module__u	   _exposed_u   Noneu   waitu   notifyu
   notify_all(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   ConditionProxyÆ  s   
	u   ConditionProxyc             B   s;   |  Ee  Z d	 Z d „  Z d „  Z d „  Z d d „ Z d S(
   u   is_setu   setu   clearu   waitc             C   s   |  j  d ƒ S(   Nu   is_set(   u   _callmethod(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   is_setÑ  s    c             C   s   |  j  d ƒ S(   Nu   set(   u   _callmethod(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   setÓ  s    c             C   s   |  j  d ƒ S(   Nu   clear(   u   _callmethod(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   clearÕ  s    c             C   s   |  j  d | f ƒ S(   Nu   wait(   u   _callmethod(   u   selfu   timeout(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   wait×  s    N(   u   is_setu   setu   clearu   wait(   u   __name__u
   __module__u	   _exposed_u   is_setu   setu   clearu   Noneu   wait(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   EventProxyÏ  s
   
			u
   EventProxyc             B   s/   |  Ee  Z d Z d „  Z d „  Z d „  Z d S(   u   __getattribute__u   __setattr__u   __delattr__c             C   sD   | d d k o t  j |  | ƒ St  j |  d ƒ } | d | f ƒ S(   Ni    u   _u   _callmethodu   __getattribute__(   u   objectu   __getattribute__(   u   selfu   keyu
   callmethod(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __getattr__Ü  s    c             C   sJ   | d d k o t  j |  | | ƒ St  j |  d ƒ } | d | | f ƒ S(   Ni    u   _u   _callmethodu   __setattr__(   u   objectu   __setattr__u   __getattribute__(   u   selfu   keyu   valueu
   callmethod(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __setattr__á  s    c             C   sD   | d d k o t  j |  | ƒ St  j |  d ƒ } | d | f ƒ S(   Ni    u   _u   _callmethodu   __delattr__(   u   objectu   __delattr__u   __getattribute__(   u   selfu   keyu
   callmethod(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __delattr__æ  s    N(   u   __getattribute__u   __setattr__u   __delattr__(   u   __name__u
   __module__u	   _exposed_u   __getattr__u   __setattr__u   __delattr__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   NamespaceProxyÚ  s   
		u   NamespaceProxyc             B   s5   |  Ee  Z d Z d „  Z d „  Z e e e ƒ Z d S(   u   getu   setc             C   s   |  j  d ƒ S(   Nu   get(   u   _callmethod(   u   self(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   getï  s    c             C   s   |  j  d | f ƒ S(   Nu   set(   u   _callmethod(   u   selfu   value(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   setñ  s    N(   u   getu   set(   u   __name__u
   __module__u	   _exposed_u   getu   setu   propertyu   value(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu
   ValueProxyí  s   
		u
   ValueProxyu   BaseListProxyu   __add__u   __contains__u   __delitem__u   __delslice__u   __getitem__u   __getslice__u   __len__u   __mul__u   __reversed__u   __rmul__u   __setitem__u   __setslice__u   appendu   countu   extendu   indexu   insertu   popu   removeu   reverseu   sortu   __imul__c             B   s    |  Ee  Z d  „  Z d „  Z d S(   c             C   s   |  j  d | f ƒ |  S(   Nu   extend(   u   _callmethod(   u   selfu   value(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __iadd__þ  s    c             C   s   |  j  d | f ƒ |  S(   Nu   __imul__(   u   _callmethod(   u   selfu   value(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   __imul__  s    N(   u   __name__u
   __module__u   __iadd__u   __imul__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu	   ListProxyý  s   
	u	   ListProxyu	   DictProxyu   clearu   copyu   getu   has_keyu   popitemu
   setdefaultu   updateu
   ArrayProxyu	   PoolProxyu   applyu   apply_asyncu   closeu   imapu   imap_unorderedu   joinu   mapu	   map_asyncu	   terminateu   AsyncResultu   Iteratorc             B   s   |  Ee  Z d  Z d S(   u(  
    Subclass of `BaseManager` which supports a number of shared object types.

    The types registered are those intended for the synchronization
    of threads, plus `dict`, `list` and `Namespace`.

    The `multiprocessing.Manager()` function creates started instances of
    this class.
    N(   u   __name__u
   __module__u   __doc__(   u
   __locals__(    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   SyncManager!  s   
	u   Queueu   JoinableQueueu   Eventu   Locku   RLocku	   Semaphoreu   BoundedSemaphoreu	   Conditionu   Poolu   listu   dictu   Arrayu	   proxytypeu   create_method(V   u   __all__u   osu   sysu   weakrefu	   threadingu   arrayu   queueu	   tracebacku
   format_excu   multiprocessingu   Processu   current_processu   active_childrenu   Poolu   utilu
   connectionu   multiprocessing.processu   AuthenticationStringu   multiprocessing.forkingu   exitu   Popenu   assert_spawningu   ForkingPickleru   multiprocessing.utilu   Finalizeu   infou   cPickleu   PicklingErroru   ImportErroru   pickleu   reduce_arrayu   registeru
   view_typesu   listu   rebuild_as_listu	   view_typeu   copyregu   objectu   Tokenu   dispatchu   convert_to_erroru	   Exceptionu   RemoteErroru   all_methodsu   public_methodsu   Serveru   Stateu   Listeneru   Clientu   XmlListeneru	   XmlClientu   listener_clientu   BaseManageru   setu   ProcessLocalSetu	   BaseProxyu   RebuildProxyu   MakeProxyTypeu   Noneu   Trueu	   AutoProxyu	   Namespaceu   Valueu   Arrayu   IteratorProxyu   AcquirerProxyu   ConditionProxyu
   EventProxyu   NamespaceProxyu
   ValueProxyu   BaseListProxyu	   ListProxyu	   DictProxyu
   ArrayProxyu	   PoolProxyu   _method_to_typeid_u   SyncManageru   Queueu   Eventu   Locku   RLocku	   Semaphoreu   BoundedSemaphoreu	   Conditionu   dictu   False(    (    (    u5   /mit/python/lib/python3.0/multiprocessing/managers.pyu   <module>
   s¸   ."		 
			
ÿ ,
Ñ
«				