3
^g                 @   s  d Z ddlZddlZddlmZmZ ddlmZmZ ye	 W n  e
k
r\   ddlm	Z	 Y nX yddlmZ W n ek
r   dd ZY nX ed	d
 ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!dZ"dZ#dZ$d Z%d!Z&d"Z'd#Z(d$Z)d%Z*d&Z+d'Z,d(Z-d)Z.G d*d+ d+Z/G d,d- d-Z0G d.d/ d/Z1G d0d1 d1Z2d2d3 Z3d4d5 Z4d6d7 Z5d8d9 Z6d:d; Z7i Z8G d<d= d=Z9e9j:Z8d>Z;ee;dfd?d@Z<edGdAdBZ=ee;dfdCdDZ>edHdEdFZ?dS )Iax  Internal Python object serialization

This module contains functions that can read and write Python values
in a binary format. The format is specific to Python, but independent
of machine architecture issues (e.g., you can write a Python value to
a file on a PC, transport the file to a Sun, and read it back
there). Details of the format may change between Python versions.

    N)PYTHON_VERSIONPYTHON3)Code2Code3)intern)
builtinifyc             C   s   | S )N )fr   r   G/home/psgendb/BIRCHDEV/python/lib/python3.6/site-packages/xdis/marsh.pyr   -   s    r   c             C   s   t r| S t| S )N)r   ord)cr   r   r
   Ord1   s    r   0NFTS.iIr	   gxylstrR([{Cr   u?<>aA)zZc            ;   @   s  e Zd ZdZi Zd:ddZdd Zdd Zd	d
 Zdd Z	dd Z
e
eed< dd Zeee< dd Zeeee< dd Zyeeee< W n ek
r   Y nX dd Zeee< dd Zye W n ek
r   eee< Y n
X eee< dd Zeee< dd Zeee< dd Zyeee< W n ek
r0   Y nX dd  Zeee< d!d" Ze d#krdeee!< eee"< d$d% Z#ye$ W n ek
r   e#ee%< Y n
X e#ee$< d&d' Z&e&ee'< e&ee(< d(d) Z)e)ee*< d*d+ Z+e+ee,< e&ee-< d,d- Z.e.ee/< d.d/ Z0e0ee1< d0d1 Z2e2ee3< y e4r e2ee5j6< n
e0ee5j6< W n ek
rB   Y nX d2d3 Z7ye7ee8< W n ek
rn   Y nX d4d5 Z9ye9ee:< W n ek
r   Y nX d6d7 Z;e;ee<< d8d9 Z=e=ee>< dS );_MarshallerzPython marshalling routine that runs in Python 2 and Python 3.
    We also extend to allow for xdis Code2 and Code3 types and instances.
    Nc             C   s   || _ || _d S )N)_writepython_version)selfZ	writefuncr-   r   r   r
   __init___   s    z_Marshaller.__init__c             C   s   t |tjr(t| jkr(tdt| jf y| jt| | | W n tk
r   t |t	rn| jt	 | | d S t |t
r| jt
 | | d S x.t|j D ]}| jj|}|rP qW td|| | Y nX d S )Nz=code type passed for version %s but we are running version %szunmarshallable object)
isinstancetypesCodeTyper   versionRuntimeErrordispatchtypeKeyErrorr   r   mroget
ValueError)r.   r   tpfuncr   r   r
   dumpc   s$    

z_Marshaller.dumpc             C   s   | j | | j |d?  d S )N    )w_long)r.   r   r   r   r
   w_long64y   s    
z_Marshaller.w_long64c             C   sb   t |d@ }|dL }t |d@ }|dL }t |d@ }|dL }t |d@ }| j|| | |  d S )N      )chrr,   )r.   r   r&   br   dr   r   r
   r?   }   s    z_Marshaller.w_longc             C   s,   | j t|d@  | j t|d? d@  d S )NrA   rB   )r,   rC   )r.   r   r   r   r
   w_short   s    z_Marshaller.w_shortc             C   s   | j t d S )N)r,   	TYPE_NONE)r.   r   r   r   r
   	dump_none   s    z_Marshaller.dump_nonec             C   s   |r| j t n
| j t d S )N)r,   	TYPE_TRUE
TYPE_FALSE)r.   r   r   r   r
   	dump_bool   s    z_Marshaller.dump_boolc             C   s   |t k	rtd| jt d S )Nzunmarshallable object)StopIterationr:   r,   TYPE_STOPITER)r.   r   r   r   r
   dump_stopiter   s    z_Marshaller.dump_stopiterc             C   s   | j t d S )N)r,   TYPE_ELLIPSIS)r.   r   r   r   r
   dump_ellipsis   s    z_Marshaller.dump_ellipsisc             C   sB   |d? }|r*|dkr*| j t | j| n| j t | j| d S )N      )r,   
TYPE_INT64r@   TYPE_INTr?   )r.   r   r   r   r   r
   dump_int   s    

z_Marshaller.dump_intc             C   sr   | j t d}|dk r d}| }g }x|rB|j|d@  |d? }q&W | jt||  x|D ]}| j| q\W d S )NrR   r   i     rS   )r,   	TYPE_LONGappendr?   lenrF   )r.   r   signdigitsrE   r   r   r
   	dump_long   s    

z_Marshaller.dump_longc             C   s2   | j }|t t|}|tt| || d S )N)r,   
TYPE_FLOATreprrC   rZ   )r.   r   writer   r   r   r
   
dump_float   s
    z_Marshaller.dump_floatc             C   s"   | j }|t |tjd| d S )Nz<d)r,   TYPE_BINARY_FLOATstructpack)r.   r   r`   r   r   r
   dump_binary_float   s    z_Marshaller.dump_binary_floatc             C   sV   | j }|t t|j}|tt| || t|j}|tt| || d S )N)r,   TYPE_COMPLEXr_   realrC   rZ   imag)r.   r   r`   r   r   r   r
   dump_complex   s    

z_Marshaller.dump_complexc             C   s6   | j }|t |tjd|j |tjd|j d S )Nz<d)r,   TYPE_BINARY_COMPLEXrc   rd   rg   rh   )r.   r   r`   r   r   r
   dump_binary_complex   s    z_Marshaller.dump_binary_complexc             C   s&   | j t | jt| | j | d S )N)r,   TYPE_STRINGr?   rZ   )r.   r   r   r   r
   dump_string   s    
z_Marshaller.dump_stringg      @c             C   sF   | j t t r&| jdk r&|jd}n|}| jt| | j | d S )Nz3.0utf8)r,   TYPE_UNICODEr   r-   encoder?   rZ   )r.   r   r   r   r   r
   dump_unicode   s    
z_Marshaller.dump_unicodec             C   s4   | j t | jt| x|D ]}| j| qW d S )N)r,   
TYPE_TUPLEr?   rZ   r=   )r.   r   itemr   r   r
   
dump_tuple
  s    

z_Marshaller.dump_tuplec             C   s4   | j t | jt| x|D ]}| j| qW d S )N)r,   TYPE_SMALL_TUPLErF   rZ   r=   )r.   r   rs   r   r   r
   dump_small_tuple  s    

z_Marshaller.dump_small_tuplec             C   s4   | j t | jt| x|D ]}| j| qW d S )N)r,   	TYPE_LISTr?   rZ   r=   )r.   r   rs   r   r   r
   	dump_list  s    

z_Marshaller.dump_listc             C   sB   | j t x(|j D ]\}}| j| | j| qW | j t d S )N)r,   	TYPE_DICTitemsr=   	TYPE_NULL)r.   r   keyvaluer   r   r
   	dump_dict$  s
    

z_Marshaller.dump_dictc             C   s   | j t | j|j | j|j | j|j | j|j | j|j | j	|j
 | j t | jt|j x|jD ]}| j| qtW | j	|j | j	|j | j	|j | j|j | j|j | j|j | j|j d S )N)r,   	TYPE_CODEr?   co_argcount
co_nlocalsco_stacksizeco_flagsrm   co_coder=   	co_constsrr   rZ   co_namesco_varnamesco_freevarsco_cellvarsco_filenameco_nameco_firstlineno	co_lnotab)r.   r   namer   r   r
   
dump_code2-  s&    

z_Marshaller.dump_code2c             C   s   | j t | j|j t|dr,| j|j | j|j | j|j | j|j | j|j	 | j
|j | j
|j | j
|j | j
|j | j
|j | j
|j | j
|j | j
|j | j|j | j
|j d S )Nco_posonlyargcount)r,   r   r?   r   hasattrr   co_kwonlyargcountr   r   r   r=   r   r   r   r   r   r   r   r   r   r   )r.   r   r   r   r
   
dump_code3Q  s$    

z_Marshaller.dump_code3c             C   s4   | j t | jt| x|D ]}| j| qW d S )N)r,   TYPE_SETr?   rZ   r=   )r.   r   eachr   r   r
   dump_seto  s    

z_Marshaller.dump_setc             C   s4   | j t | jt| x|D ]}| j| qW d S )N)r,   TYPE_FROZENSETr?   rZ   r=   )r.   r   r   r   r   r
   dump_frozensetz  s    

z_Marshaller.dump_frozensetc             C   s&   | j t | jt| | j | d S )N)r,   
TYPE_ASCIIr?   rZ   )r.   r   r   r   r
   
dump_ascii  s    
z_Marshaller.dump_asciic             C   s&   | j t | jt| | j | d S )N)r,   TYPE_SHORT_ASCIIrF   rZ   )r.   r   r   r   r
   dump_short_ascii  s    
z_Marshaller.dump_short_ascii)N)?__name__
__module____qualname____doc__r5   r/   r=   r@   r?   rF   rH   r6   rK   boolrN   rL   rP   Ellipsis	NameErrorrV   intr]   longra   floatre   rb   ri   complexrk   rj   rm   r   bytes	bytearrayrq   unicodestrrt   tuplerr   rv   ru   rx   listrw   r~   dictr   r   r   r   r   r1   r2   r   setr   	frozensetr   r   r   r   r   r   r   r
   r+   X   s   

	

	 r+   c               @   s   e Zd ZdS )_NULLN)r   r   r   r   r   r   r
   r     s   r   c               @   s   e Zd Zdd Zdd ZdS )_StringBufferc             C   s   || _ d| _d S )Nr   )bufstrbufpos)r.   r}   r   r   r
   r/     s    z_StringBuffer.__init__c             C   s&   | j }|| }| j|| }|| _ |S )N)r   r   )r.   nposnewposretr   r   r
   read  s
    z_StringBuffer.readN)r   r   r   r/   r   r   r   r   r
   r     s   r   c               @   s  e Zd Zi Zd8ddZdd Zdd Zdd	 Zd
d Zdd Z	dd Z
e
ee< dd Zeee< dd Zeee< dd Zeee< dd Ze
ee< dd Zeee< dd Zeee< eee< e	ee< dd Zeee< dd Zeee< d d! Zeee< d"d# Z e ee!< d$d% Z"e"ee#< d&d' Z$e$ee%< d(d) Z&e&ee'< d*d+ Z(e(ee)< d,d- Z*e*ee+< d.d/ Z,e,ee-< d0d1 Z.e.ee/< d2d3 Z0e0ee1< d4d5 Z2e2ee3< d6d7 Z4e4ee5< dS )9_UnmarshallerNc             C   s   || _ g | _|| _d S )N)_read_stringtabler-   )r.   Zreadfuncr-   r   r   r
   r/     s    z_Unmarshaller.__init__c             C   sN   | j d}|sty| j| | S  tk
rH   td|t|f Y nX d S )NrR   zbad marshal code: %c (%d))r   EOFErrorr5   r7   r:   r   )r.   r   r   r   r
   load  s    
z_Unmarshaller.loadc             C   s   t | jdS )NrR   )r   r   )r.   r   r   r
   r_byte  s    z_Unmarshaller.r_bytec             C   s<   t | jd}t | jd}||d> B }|d@ r8|d }|S )NrR   rB   i   i   )r   r   )r.   lohir   r   r   r
   r_short  s    z_Unmarshaller.r_shortc             C   s   | j d}t|d }t|d }t|d }t|d }||d> B |d> B |d> B }|d	@ rx|dkrxd|  }t|S |S d S )N   r   rR         rB            r>   l        )r   r   r   )r.   r   r&   rD   r   rE   r   r   r   r
   r_long  s    

z_Unmarshaller.r_longc       
      C   s   t | jd}t | jd}t | jd}t | jd}t | jd}t | jd}t | jd}t | jd}||d> B |d> B |d> B }	|	|d> B |d> B |d> B |d> B }	|d	@ r|	d
krd|	  }	|	S )NrR   rB   r   r   r>   (   0   8   r   r   @   l            )r   r   )
r.   r&   rD   r   rE   er	   r   hr   r   r   r
   r_long64  s    $
z_Unmarshaller.r_long64c             C   s   t S )N)r   )r.   r   r   r
   	load_null  s    z_Unmarshaller.load_nullc             C   s   d S )Nr   )r.   r   r   r
   	load_none  s    z_Unmarshaller.load_nonec             C   s   dS )NTr   )r.   r   r   r
   	load_true  s    z_Unmarshaller.load_truec             C   s   dS )NFr   )r.   r   r   r
   
load_false  s    z_Unmarshaller.load_falsec             C   s   | j  S )N)r   )r.   r   r   r
   
load_ascii  s    z_Unmarshaller.load_asciic             C   s   t S )N)rL   )r.   r   r   r
   load_stopiter  s    z_Unmarshaller.load_stopiterc             C   s   t S )N)r   )r.   r   r   r
   load_ellipsis   s    z_Unmarshaller.load_ellipsisc             C   sT   | j  }d}|dk rd}| }d}x(t|D ]}| j }|||d > B }q,W || S )NrR   r   rW   rS   )r   ranger   )r.   sizer[   r   r   rE   r   r   r
   	load_long	  s    z_Unmarshaller.load_longc             C   s    t | jd}| j|}t|S )NrR   )r   r   r   )r.   r   r   r   r   r
   
load_float  s    
z_Unmarshaller.load_floatc             C   s   | j d}ttjd|d S )NrB   z<dr   )r   r   rc   unpack)r.   r	   r   r   r
   load_binary_float  s    
z_Unmarshaller.load_binary_floatc             C   sJ   t | jd}| j|}t|}t | jd}| j|}t|}t||S )NrR   )r   r   r   r   )r.   r   r   rg   rh   r   r   r
   load_complex$  s    

z_Unmarshaller.load_complexc             C   s   | j  }| j|S )N)r   r   )r.   r   r   r   r
   load_string/  s    z_Unmarshaller.load_stringc             C   s&   | j  }t| j|}| jj| |S )N)r   r   r   r   rY   )r.   r   r   r   r   r
   load_interned5  s    z_Unmarshaller.load_internedc             C   s   | j  }| j| S )N)r   r   )r.   r   r   r   r
   load_stringref=  s    z_Unmarshaller.load_stringrefc             C   s    | j  }| j|}|jd}|S )Nrn   )r   r   decode)r.   r   r   r   r   r   r
   load_unicodeC  s    

z_Unmarshaller.load_unicodec             C   s   t | j S )N)r   	load_list)r.   r   r   r
   
load_tupleK  s    z_Unmarshaller.load_tuplec                s"    j  } fddt|D }|S )Nc                s   g | ]} j  qS r   )r   ).0r   )r.   r   r
   
<listcomp>R  s    z+_Unmarshaller.load_list.<locals>.<listcomp>)r   r   )r.   r   r   r   )r.   r
   r   P  s    z_Unmarshaller.load_listc             C   s0   i }x&| j  }|tkrP | j  }|||< qW |S )N)r   r   )r.   rE   r|   r}   r   r   r
   	load_dictW  s    z_Unmarshaller.load_dictc             C   s6  | j  }| jr&| jdkr&d}| j  }nd}| j  }| j  }| j  }| j }| j }| j }	| j }
| j }| j }| j }| j }| j  }| j }|rtrtj||||||||	|
||||||S t||||||||	|
||||||S nLtrt|||||||	|
||||||S tj|||||||	|
||||||S d S )Nz3.0TF)r   r-   r   r   r1   r2   r   r   )r.   argcount
is_python3Zkwonlyargcountnlocals	stacksizeflagscodeconstsnamesvarnamesfreevarscellvarsfilenamer   firstlinenolnotabr   r   r
   	load_codec  s    
z_Unmarshaller.load_codec                s&    j  } fddt|D }t|S )Nc                s   g | ]} j  qS r   )r   )r   r   )r.   r   r
   r     s    z*_Unmarshaller.load_set.<locals>.<listcomp>)r   r   r   )r.   r   argsr   )r.   r
   load_set  s    z_Unmarshaller.load_setc                s&    j  } fddt|D }t|S )Nc                s   g | ]} j  qS r   )r   )r   r   )r.   r   r
   r     s    z0_Unmarshaller.load_frozenset.<locals>.<listcomp>)r   r   r   )r.   r   r   r   )r.   r
   load_frozenset  s    z_Unmarshaller.load_frozenset)N)6r   r   r   r5   r/   r   r   r   r   r   r   r{   r   rG   r   rI   r   rJ   r   r   r   rM   r   rO   rU   rT   r   rX   r   r^   r   rb   r   rf   r   rl   r   TYPE_INTERNEDr   TYPE_STRINGREFr   ro   r   rr   r   rw   r   ry   r   r   r   r   r   r   r   r   r   r
   r     sf   
		
]r   c             C   s8   | j }|| }|t| jkr t| j|| }|| _ |S )N)r   rZ   r   r   )r.   r   r   r   r   r   r   r
   r     s    r   c             C   s   | j | j }|  jd7  _|S )NrR   )r   r   )r.   r   r   r   r
   _read1  s    r   c             C   s8   t t| }t t| }||d> B }|d@ r4|d }|S )NrB   i   i   )r   r   )r.   r   r   r   r   r   r
   _r_short  s    r   c             C   s   | j }| j}t|| }t||d  }t||d  }t||d  }|  j d7  _ ||d> B |d> B |d> B }|d@ r|d	krd|  }t|S |S d S )NrR   r   r   r   rB   r   r   r   r   r>   l        )r   r   r   r   )r.   pr   r&   rD   r   rE   r   r   r   r
   _r_long  s    
r   c       
      C   s   t t| }t t| }t t| }t t| }t t| }t t| }t t| }t t| }||d> B |d> B |d> B }	|	|d> B |d> B |d> B |d> B }	|d@ r|	d	krd|	  }	|	S )NrB   r   r   r>   r   r   r   r   r   rR   r   l            )r   r   )
r.   r&   rD   r   rE   r   r	   r   r   r   r   r   r
   	_r_long64  s    $
r  c               @   sr  e Zd Zi Zd0ddZdd Zdd Zeee< dd	 Zeee	< d
d Z
e
ee< dd Zeee< dd Zeee< dd Zeee< dd Zeee< dd Zeee< dd Zeee< dd Zeee< dd Zeee< dd Zeee< dd Zeee< d d! Z e ee!< d"d# Z"e"ee#< d$d% Z$e$ee%< d&d' Z&e&ee'< d(d) Z(e(ee)< d*d+ Z*e*ee+< d,d- Z,e,ee-< d.d/ Z.e.ee/< dS )1_FastUnmarshallerNc             C   s   || _ d| _g | _|| _d S )Nr   )r   r   r   r-   )r.   bufferr-   r   r   r
   r/     s    z_FastUnmarshaller.__init__c             C   sz   d}y2| j | j }trt|}|  jd7  _t| | S  tk
r^   td|t|f Y n tk
rt   t	Y nX d S )Nr#   rR   zbad marshal code: %c (%d))
r   r   r   rC   _load_dispatchr7   r:   r   
IndexErrorr   )r.   r   r   r   r
   r     s    z_FastUnmarshaller.loadc             C   s   t S )N)r   )r.   r   r   r
   r   )  s    z_FastUnmarshaller.load_nullc             C   s   d S )Nr   )r.   r   r   r
   r   .  s    z_FastUnmarshaller.load_nonec             C   s   dS )NTr   )r.   r   r   r
   r   3  s    z_FastUnmarshaller.load_truec             C   s   dS )NFr   )r.   r   r   r
   r   8  s    z_FastUnmarshaller.load_falsec             C   s   t S )N)rL   )r.   r   r   r
   r   =  s    z_FastUnmarshaller.load_stopiterc             C   s   t S )N)r   )r.   r   r   r
   r   B  s    z_FastUnmarshaller.load_ellipsisc             C   s   t | S )N)r   )r.   r   r   r
   load_intG  s    z_FastUnmarshaller.load_intc             C   s   t | S )N)r  )r.   r   r   r
   
load_int64L  s    z_FastUnmarshaller.load_int64c             C   sT   t | }d}|dk rd}| }d}x(t|D ]}t| }|||d > B }q,W || S )NrR   r   rW   rS   )r   r   r   )r.   r   r[   r   r   rE   r   r   r
   r   Q  s    z_FastUnmarshaller.load_longc             C   s   t t| }t| |}t|S )N)r   r   r   r   )r.   r   r   r   r   r
   r   _  s    
z_FastUnmarshaller.load_floatc             C   sF   t t| }t| |}t|}t t| }t| |}t|}t||S )N)r   r   r   r   r   )r.   r   r   rg   rh   r   r   r
   r   f  s    

z_FastUnmarshaller.load_complexc             C   s   t | }t| |S )N)r   r   )r.   r   r   r   r
   r   q  s    z_FastUnmarshaller.load_stringc             C   s8   t | }t| |}tr |jd}t|}| jj| |S )Nrn   )r   r   r   r   r   r   rY   )r.   r   r   r   r   r   r
   r   w  s    

z_FastUnmarshaller.load_internedc             C   s   t | }| j| S )N)r   r   )r.   r   r   r   r
   r     s    z _FastUnmarshaller.load_stringrefc             C   s    t | }t| |}|jd}|S )Nrn   )r   r   r   )r.   r   r   r   r   r   r
   r     s    

z_FastUnmarshaller.load_unicodec             C   s   t | j S )N)r   r   )r.   r   r   r
   r     s    z_FastUnmarshaller.load_tuplec             C   s0   t | }g }xt|D ]}|j| j  qW |S )N)r   r   rY   r   )r.   r   r   r   r   r   r
   r     s
    z_FastUnmarshaller.load_listc             C   s0   i }x&| j  }|tkrP | j  }|||< qW |S )N)r   r   )r.   rE   r|   r}   r   r   r
   r     s    z_FastUnmarshaller.load_dictc             C   s   t | }t | }t | }t | }| j }| j }| j }| j }| j }	| j }
| j }| j }t | }| j }trt|tr|j }t|||||||||j ||||	|
S tj|||||||||||||	|
S d S )N)	r   r   r   r0   r   r   r   r1   r2   )r.   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r
   r     s^    
z_FastUnmarshaller.load_codec                s&   t  } fddt|D }t|S )Nc                s   g | ]} j  qS r   )r   )r   r   )r.   r   r
   r     s    z._FastUnmarshaller.load_set.<locals>.<listcomp>)r   r   r   )r.   r   r   r   )r.   r
   r     s    z_FastUnmarshaller.load_setc                s&   t  } fddt|D }t|S )Nc                s   g | ]} j  qS r   )r   )r   r   )r.   r   r
   r     s    z4_FastUnmarshaller.load_frozenset.<locals>.<listcomp>)r   r   r   )r.   r   r   r   )r.   r
   r     s    z _FastUnmarshaller.load_frozenset)N)0r   r   r   r5   r/   r   r   r{   r   rG   r   rI   r   rJ   r   rM   r   rO   r  rU   r  rT   r   rX   r   r^   r   rf   r   rl   r   r   r   r   r   ro   r   rr   r   rw   r   ry   r   r   r   r   r   r   r   r   r   r
   r    sZ   
		
4r  rR   c             C   s   t |j|}|j|  d S )N)r+   r`   r=   )r   r	   r3   r-   mr   r   r
   r=     s    r=   c             C   s   t | j|}|j S )N)r   r   r   )r	   r-   umr   r   r
   r     s    r   c                s   g }t |j|d}|j|  |r*|dk}nt}|rtdkrg }xh|D ]` t trtrt fddtt	 D }|j| qDt t
r|jt  qD|j  qDW dj|S d}x|D ] | jdd7 }qW |S nBg }x2|D ]* t tr|j j  q|j  qW dj|S d S )	N)r-   g      @c             3   s   | ]}t  | V  qd S )N)r   )r   j)rD   r   r
   	<genexpr>  s    zdumps.<locals>.<genexpr>    ignore)errors )r+   rY   r=   r   r   r0   r   r   r   rZ   r   joinr   )r   r3   r-   r  r  r   bufZs2br   )rD   r
   dumps  s8    






r  c             C   s   t | |}|j S )N)r  r   )r   r-   r	  r   r   r
   loads0  s    
r  )N)N)@r   r1   rc   Zxdis.version_infor   r   Zxdis.codetyper   r   r   r   sysZ__pypy__r   ImportErrorr   r{   rG   rJ   rI   rM   rO   rU   rT   r^   rb   rf   rj   rX   rl   r   ZTYPE_REFr   rr   rw   ry   ZTYPE_CODE_OLDr   ro   ZTYPE_UNKNOWNr   r   r   ZTYPE_ASCII_INTERNEDru   r   ZTYPE_SHORT_ASCII_INTERNEDr+   r   r   r   r   r   r   r   r  r  r  r5   r3   r=   r   r  r  r   r   r   r
   <module>   s     B  -
	 _*