-í
įķ<c       sē     d  Z    d k l Z 	 d d g Z  h  Z  h  Z  e d  Z  d   Z	   d   Z
 # e e d  e
 e  ' d   Z + d	 e _ - d	 d
 >Z / d   Z d S(   sŽ   Helper to provide extensibility for pickle/cPickle.

This is only useful to add pickle support for extension types defined in
C, not for instances of user-defined classes.
(   s	   ClassTypes   pickles   constructorc    s     t  |   t j o  t d   n  t |  o  t d   n  | t |  < | t j	 o  t	 |  n d  S(   Ns-   copy_reg is not intended for use with classess$   reduction functions must be callable(
   s   types   ob_types
   _ClassTypes	   TypeErrors   callables   pickle_functions   dispatch_tables   constructor_obs   Nones   constructor(   s   ob_types   pickle_functions   constructor_ob(    (    s   /usr/lib/python2.2/copy_reg.pys   pickle s   c    s8     t  |   o  t d   n  d t |  <d  S(   Ns   constructors must be callablei   (   s   callables   objects	   TypeErrors   safe_constructors(   s   object(    (    s   /usr/lib/python2.2/copy_reg.pys   constructor s   c    s      ! t  |  i |  i f f Sd  S(   N(   s   complexs   cs   reals   imag(   s   c(    (    s   /usr/lib/python2.2/copy_reg.pys   pickle_complex  s   x0.01.0c    s6   ' ( | i |  |  } ) | i | |  * | Sd  S(   N(   s   bases   __new__s   clss   states   objs   __init__(   s   clss   bases   states   obj(    (    s   /usr/lib/python2.2/copy_reg.pys   _reconstructor' s   i   i	   c    sZ  / 0 xJ |  i i D0 ]0 } 1 t | d  o | i t @o 2 Pn q W4 t } 5 | t j o 6 t } n: 8 | |  i j o 9 t
 d | i  n : | |   } ; |  i | | f } < y = |  i } WnK > t j
 o< ? y @ |  i } Wn A t j
 o B t } n Xn XD |   } E | o F t | | f Sn H t | f Sd  S(   Ns	   __flags__s   can't pickle %s objects(   s   selfs	   __class__s   __mro__s   bases   hasattrs	   __flags__s	   _HEAPTYPEs   objects   Nones   states	   TypeErrors   __name__s   argss   __getstate__s   getstates   AttributeErrors   __dict__s   dicts   _reconstructor(   s   selfs   getstates   argss   states   bases   dict(    (    s   /usr/lib/python2.2/copy_reg.pys   _reduce/ s,    	"	
N(   s   __doc__s   typess	   ClassTypes
   _ClassTypes   __all__s   dispatch_tables   safe_constructorss   Nones   pickles   constructors   pickle_complexs   types   complexs   _reconstructors   __safe_for_unpickling__s	   _HEAPTYPEs   _reduce(
   s   __all__s   pickles   _reconstructors	   _HEAPTYPEs   _reduces
   _ClassTypes   safe_constructorss   pickle_complexs   constructors   dispatch_table(    (    s   /usr/lib/python2.2/copy_reg.pys   ? s   		