???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................ó
k°x]c           @   sŒ  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 d d l m Z d e	 e ƒ k r™ e j
 e _ e j e _ n  d Z d Z d	 Z d
 „  Z d e f d „  ƒ  YZ d d` d „  ƒ  YZ d da d „  ƒ  YZ d db d „  ƒ  YZ d dc d „  ƒ  YZ d dd d „  ƒ  YZ d de d „  ƒ  YZ d df d „  ƒ  YZ d dg d „  ƒ  YZ d dh d „  ƒ  YZ i; e e j ƒ d 6e e j ƒ d  6e e j ƒ d! 6e e j  ƒ d" 6e e j! ƒ d# 6e e j" ƒ d$ 6e e j# ƒ d% 6e ƒ  d& 6e e j$ ƒ d' 6e e j% ƒ d( 6e e j& e ƒ  ƒ d) 6e e j' ƒ d* 6e ƒ  d+ 6e e j( ƒ d, 6e e j) ƒ d- 6e e j* ƒ d. 6e e j+ ƒ d/ 6e e j, ƒ d0 6e e j- ƒ d1 6e e j. ƒ d2 6e e j/ ƒ d3 6e e j0 ƒ d4 6e e j1 ƒ d5 6e e j2 ƒ d6 6e e j3 ƒ d7 6e e j4 ƒ d8 6e e j5 ƒ d9 6e e j6 ƒ d: 6e e j7 ƒ d; 6e e j8 ƒ d< 6e e j9 ƒ d= 6e e j: ƒ d> 6e e j; ƒ d? 6e e j< ƒ d@ 6e e j= ƒ dA 6e e j> ƒ dB 6e e j? ƒ dC 6e e j@ ƒ dD 6e e jA ƒ dE 6e e jB ƒ dF 6e e jC ƒ dG 6e e jD ƒ dH 6e e jE ƒ dI 6e e jF ƒ dJ 6e e jG ƒ dK 6e e jH ƒ dL 6e e jI ƒ dM 6e e jJ e ƒ  ƒ dN 6e e jJ e ƒ  ƒ dO 6e e jK e ƒ  ƒ dP 6e e jL e ƒ  ƒ dQ 6e e jM e ƒ  ƒ dR 6e e jN e ƒ  ƒ dS 6e e jO ƒ dT 6e e jP ƒ dU 6e e jQ ƒ dV 6e e jR ƒ dW 6e e jS ƒ dX 6e e jT ƒ dY 6ZU dZ „  ZV eW eW d[ „ ZX d\ „  ZY eW d] „ ZZ d^ „  Z[ d_ „  Z\ d S(i   iÿÿÿÿNi   (   t   magic(   t   pb(   t   pb2dictt   encodebytesi   i   i   c         C   s   |  d | d Bd S(   Ni   (    (   t   xt   y(    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyt   round_up>   s    t   MagicExceptionc           B   s   e  Z d  „  Z RS(   c         C   s   | |  _  d  S(   N(   R    (   t   selfR    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyt   __init__C   s    (   t   __name__t
   __module__R	   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR   B   s   t   entry_handlerc           B   sP   e  Z d  Z d d „ Z e e d „ Z e d „ Z d „  Z d „  Z	 d „  Z
 RS(   sp   
    Generic class to handle loading/dumping criu images
    entries from/to bin format to/from dict(json).
    c         C   s   | |  _  | |  _ d S(   s=   
        Sets payload class and extra handler class.
        N(   t   payloadt   extra_handler(   R   R   R   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR	   O   s    	c         C   sò   g  } xå t  rí i  } |  j ƒ  } | j d ƒ } | d k r@ Pn  t j d | ƒ \ } | j | j | ƒ ƒ t j | | ƒ } |  j rÝ | rÁ d „  }	 |  j j | | ƒ }
 d |	 |
 ƒ | d <qÝ |  j j	 | | ƒ | d <n  | j
 | ƒ q	 W| S(   s®   
        Convert criu image entries from binary format to dict(json).
        Takes a file-like object and returnes a list with entries in
        dict(json) format.
        i   t    t   ic         S   sx   xm d d d d d d d d g D]M } |  d	 k  rb t  |  ƒ |  k rQ d
 |  | f Sd |  | f Sn  |  d	 :}  q Wd |  S(   NR   t   Kt   Mt   Gt   Tt   Pt   Et   Zg      @s   %d%sBs   %.1f%sBs   %.1fYB(   t   int(   t   numt   unit(    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyt   human_readablen   s    %s   ... <%s>t   extra(   t   TrueR   t   readt   structt   unpackt   ParseFromStringR   R   t   skipt   loadt   append(   R   t   ft   prettyt
   no_payloadt   entriest   entryt   pbufft   buft   sizeR   t   pl_size(    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   V   s$    			
c         C   s   t  j | ƒ } |  j | | ƒ S(   sD   
        Same as load(), but takes a string as an argument.
        (   t   iot   BytesIOR#   (   R   t   sR&   R%   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyt   loads   s    c         C   s©   x¢ | D]š } | j  d d ƒ } |  j ƒ  } t j | | ƒ | j ƒ  } t | ƒ } | j t j	 d | ƒ ƒ | j | ƒ |  j
 r | r |  j
 j | | | ƒ q q Wd S(   s³   
        Convert criu image entries from dict(json) format to binary.
        Takes a list of entries and a file-like object to write entries
        in binary format to.
        R   R   N(   t   popt   NoneR   R   t   dict2pbt   SerializeToStringt   lent   writeR   t   packR   t   dump(   R   R(   R%   R)   R   R*   t   pb_strR,   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9   ˆ   s    c         C   s)   t  j d ƒ } |  j | | ƒ | j ƒ  S(   sf   
        Same as dump(), but doesn't take file-like object and just
        returns a string.
        R   (   R.   R/   R9   R   (   R   R(   R%   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyt   dumps   s    c         C   se   d } xX t  r` | j d ƒ } | d k r. Pn  t j d | ƒ \ } | j | d ƒ | d 7} q	 W| S(   sI   
        Counts the number of top-level object in the image file
        i    i   R   R   i   (   R   R   R   R    t   seek(   R   R%   R(   R+   R,   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyt   count¦   s    	N(   R
   R   t   __doc__R3   R	   t   FalseR#   R1   R9   R;   R=   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR   I   s   +			t   pagemap_handlerc           B   sD   e  Z d  Z e e d „ Z e d „ Z d „  Z d „  Z d „  Z RS(   s¦   
    Special entry handler for pagemap.img, which is unique in a way
    that it has a header of pagemap_head type followed by entries
    of pagemap_entry type.
    c         C   s’   g  } t  j ƒ  } xy t r | j d ƒ } | d k r: Pn  t j d | ƒ \ } | j | j | ƒ ƒ | j t j | | ƒ ƒ t  j	 ƒ  } q W| S(   Ni   R   R   (
   R   t   pagemap_headR   R   R   R    R!   R$   R   t   pagemap_entry(   R   R%   R&   R'   R(   R*   R+   R,   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   ¿   s    	c         C   s   t  j | ƒ } |  j | | ƒ S(   N(   R.   R/   R#   (   R   R0   R&   R%   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR1   Ï   s    c         C   s{   t  j ƒ  } xh | D]` } t j | | ƒ | j ƒ  } t | ƒ } | j t j d | ƒ ƒ | j | ƒ t  j	 ƒ  } q Wd  S(   NR   (
   R   RA   R   R4   R5   R6   R7   R   R8   RB   (   R   R(   R%   R*   t   itemR:   R,   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9   Ó   s    c         C   s)   t  j d ƒ } |  j | | ƒ | j ƒ  S(   NR   (   R.   R/   R9   R   (   R   R(   R%   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR;   Þ   s    c         C   s   t  d  ƒ j | ƒ d S(   Ni   (   R   R3   R=   (   R   R%   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR=   ã   s    (	   R
   R   R>   R?   R#   R1   R9   R;   R=   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR@   ¸   s   		t   ghost_file_handlerc           B   s5   e  Z e e d  „ Z e d „ Z d „  Z d „  Z RS(   c         C   s}  g  } t  j ƒ  } | j d ƒ } t j d | ƒ \ } | j | j | ƒ ƒ t j | | ƒ } | j r7| j | ƒ xt	 r3t  j
 ƒ  }	 | j d ƒ } | d k r¨ Pn  t j d | ƒ \ } |	 j | j | ƒ ƒ t j |	 | ƒ }
 | r| j |	 j t j ƒ n t j | j |	 j ƒ ƒ |
 d <| j |
 ƒ qw WnB | rS| j d t j ƒ n t j | j ƒ  ƒ | d <| j | ƒ | S(   Ni   R   R   R   i    (   R   t   ghost_file_entryR   R   R    R!   R   t   chunksR$   R   t   ghost_chunk_entryR<   R6   t   ost   SEEK_CURt   base64R   t   SEEK_END(   R   R%   R&   R'   R(   t   gfR+   R,   t   g_entryt   gcR)   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   é   s2    		c         C   s   t  j | ƒ } |  j | | ƒ S(   N(   R.   R/   R#   (   R   R0   R&   R%   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR1   
  s    c         C   s  t  j ƒ  } | j d ƒ } t j | | ƒ | j ƒ  } t | ƒ } | j t j	 d | ƒ ƒ | j | ƒ | j
 rú xŸ | D]z } t  j ƒ  } t j | | ƒ | j ƒ  } t | ƒ } | j t j	 d | ƒ ƒ | j | ƒ | j t j | d ƒ ƒ qy Wn | j t j | d ƒ ƒ d  S(   Ni    R   R   (   R   RE   R2   R   R4   R5   R6   R7   R   R8   RF   RG   RJ   t   decodebytes(   R   R(   R%   R*   RC   R:   R,   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9     s"    	!c         C   s)   t  j d ƒ } |  j | | ƒ | j ƒ  S(   NR   (   R.   R/   R9   R   (   R   R(   R%   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR;   #  s    (   R
   R   R?   R#   R1   R9   R;   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyRD   è   s   !	t   pipes_data_extra_handlerc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s%   | j  } | j | ƒ } t j | ƒ S(   N(   t   bytesR   RJ   R   (   R   R%   t   ploadR,   t   data(    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   0  s    	c         C   s    t  j | ƒ } | j | ƒ d  S(   N(   RJ   RO   R7   (   R   R   R%   RR   RS   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9   5  s    c         C   s   | j  | j t j ƒ | j S(   N(   R<   RQ   RH   RI   (   R   R%   RR   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR"   9  s    (   R
   R   R#   R9   R"   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyRP   /  s   		t   sk_queues_extra_handlerc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s%   | j  } | j | ƒ } t j | ƒ S(   N(   t   lengthR   RJ   R   (   R   R%   RR   R,   RS   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   ?  s    	c         C   s    t  j | ƒ } | j | ƒ d  S(   N(   RJ   RO   R7   (   R   R   R%   t   _unusedRS   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9   D  s    c         C   s   | j  | j t j ƒ | j S(   N(   R<   RU   RH   RI   (   R   R%   RR   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR"   H  s    (   R
   R   R#   R9   R"   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyRT   >  s   		t   tcp_stream_extra_handlerc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   sT   i  } | j  | j ƒ } | j  | j ƒ } t j | ƒ | d <t j | ƒ | d <| S(   Nt   inqt   outq(   R   t   inq_lent   outq_lenRJ   R   (   R   R%   R*   t   dRX   RY   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   N  s    c         C   sD   t  j | d ƒ } t  j | d ƒ } | j | ƒ | j | ƒ d  S(   NRX   RY   (   RJ   RO   R7   (   R   R   R%   RV   RX   RY   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9   Y  s    c         C   s!   | j  d t j ƒ | j | j S(   Ni    (   R<   RH   RK   RZ   R[   (   R   R%   R*   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR"   `  s    (   R
   R   R#   R9   R"   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyRW   M  s   		t   ipc_sem_set_handlerc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s   t  j  | ƒ } t | d } t | t ƒ } t j d ƒ } | j t k rY t d ƒ ‚ n  | j | j | ƒ ƒ | j	 | | d ƒ | j
 ƒ  S(   Nt   nsemst   Hs   Array size mismatchi   (   R   t
   sizeof_u16R   t
   sizeof_u64t   arrayt   itemsizet	   Exceptiont
   fromstringR   R<   t   tolist(   R   R%   R*   R)   R,   t   roundedR0   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   f  s    c         C   s·   t  j  | ƒ } t | d } t | t ƒ } t j d ƒ } | j t k rY t d ƒ ‚ n  | j | ƒ t | ƒ | d k r‹ t d ƒ ‚ n  | j	 | j
 ƒ  ƒ | j	 d | | ƒ d  S(   NR^   R_   s   Array size mismatchs   Number of semaphores mismatchs    (   R   R`   R   Ra   Rb   Rc   Rd   t   fromlistR6   R7   t   tostring(   R   R   R%   R*   R)   R,   Rg   R0   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9   q  s    c         C   s=   t  j  | ƒ } t | d } | j t | t ƒ t j ƒ | S(   NR^   (   R   R`   R<   R   Ra   RH   RI   (   R   R%   R*   R)   R,   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR"   ~  s    (   R
   R   R#   R9   R"   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR]   e  s   		t   ipc_msg_queue_handlerc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   sô   t  j  | ƒ } g  } xØ t d | d ƒ D]Ã } | j d ƒ } | d k rN Pn  t j d | ƒ \ } t j ƒ  } | j | j | ƒ ƒ t | j	 t
 ƒ }	 | j | j	 ƒ }
 | j |	 | j	 d ƒ | j t  j  | ƒ ƒ | j t j |
 ƒ ƒ q) W| S(   Ni    t   qnumi   R   R   i   (   R   t   rangeR   R   R    R   t   ipc_msgR!   R   t   msizeRa   R<   R$   RJ   R   (   R   R%   R*   R)   t   messagesR   R+   R,   t   msgRg   RS   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   †  s    c         C   sé   t  j  | ƒ } xÓ t d t | ƒ d ƒ D]¹ } t j ƒ  } t  j | | | ƒ | j ƒ  } t | ƒ } | j t j	 d | ƒ ƒ | j | ƒ t
 | j t ƒ }	 t j | | d ƒ }
 | j |
 | j  ƒ | j d |	 | j ƒ q( Wd  S(   Ni    i   R   i   s    (   R   Rl   R6   R   Rm   R4   R5   R7   R   R8   R   Rn   Ra   RJ   RO   (   R   R   R%   R*   R)   R   Rp   t   msg_strR,   Rg   RS   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9   —  s    c   
      C   sÃ   t  j  | ƒ } d } x§ t d | d ƒ D]’ } | j d ƒ } | d k rN Pn  t j d | ƒ \ } t j ƒ  } | j | j | ƒ ƒ t | j	 t
 ƒ }	 | j |	 t j ƒ | | | j	 7} q) W| S(   Ni    Rk   i   R   R   (   R   Rl   R   R   R    R   Rm   R!   R   Rn   Ra   R<   RH   RI   (
   R   R%   R*   R)   t   pl_lenR   R+   R,   Rp   Rg   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR"   ¥  s    (   R
   R   R#   R9   R"   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyRj   …  s   		t   ipc_shm_handlerc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   sX   t  j  | ƒ } | d } | j | ƒ } t | t ƒ } | j | | d ƒ t j | ƒ S(   NR,   i   (   R   R   R   t
   sizeof_u32R<   RJ   R   (   R   R%   R*   R)   R,   RS   Rg   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   ·  s    
c         C   sa   t  j  | ƒ } | d } t j | ƒ } t | t ƒ } | j | |  ƒ | j d | | ƒ d  S(   NR,   s    (   R   RJ   RO   R   Rt   R7   (   R   R   R%   R*   R)   R,   RS   Rg   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9   ¿  s    
c         C   s?   t  j  | ƒ } | d } t | t ƒ } | j | t j ƒ | S(   NR,   (   R   R   Rt   R<   RH   RI   (   R   R%   R*   R)   R,   Rg   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR"   Ç  s
    
(   R
   R   R#   R9   R"   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyRs   ¶  s   		t	   INVENTORYt   COREt   IDSt   CREDSt   UTSNSt   IPC_VARt   FSt
   GHOST_FILEt   MMt   CGROUPt
   TCP_STREAMt   STATSt   PAGEMAPt   PSTREEt	   REG_FILESt   NS_FILESt   EVENTFD_FILEt   EVENTPOLL_FILEt   EVENTPOLL_TFDt   SIGNALFDt   TIMERFDt   INOTIFY_FILEt
   INOTIFY_WDt   FANOTIFY_FILEt   FANOTIFY_MARKt   VMASt   PIPESt   FIFOt   SIGACTt
   NETLINK_SKt   REMAP_FPATHt   MNTSt	   TTY_FILESt   TTY_INFOt   TTY_DATAt   RLIMITt   TUNFILEt	   EXT_FILESt   IRMAP_CACHEt
   FILE_LOCKSt   FDINFOt   UNIXSKt   INETSKt   PACKETSKt   ITIMERSt   POSIX_TIMERSt   NETDEVt
   PIPES_DATAt	   FIFO_DATAt	   SK_QUEUESt	   IPCNS_SHMt	   IPCNS_SEMt	   IPCNS_MSGt   NETNSt   USERNSt   SECCOMPt   AUTOFSt   FILESt   CPUINFOc         C   s¸   t  j d |  j d ƒ ƒ \ } | t j d t j d f k r_ t  j d |  j d ƒ ƒ \ } n  y t j | } Wn t | ƒ ‚ n Xy t | } Wn t d | ƒ ‚ n X| | f S(   NR   i   t
   IMG_COMMONt   IMG_SERVICEs&   No handler found for image with magic (	   R   R    R   R    t   by_namet   by_valR   t   handlersRd   (   R%   t	   img_magict   mt   handler(    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyt
   __rhandler  s    !c         C   s?   i  } t  |  ƒ \ } } | | d <| j |  | | ƒ | d <| S(   s¡   
    Convert criu image from binary format to dict(json).
    Takes a file-like object to read criu image from.
    Returns criu image in dict(json) format.
    R    R(   (   R¸   R#   (   R%   R&   R'   t   imageR¶   R·   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR#   $  s
    
c         C   s9   i  } t  |  ƒ \ } } | | d <| j |  ƒ | d <| S(   NR    R=   (   R¸   R=   (   R%   t   resR¶   R·   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyt   info4  s
    
c         C   s   t  j |  ƒ } t | | ƒ S(   s-   
    Same as load(), but takes a string.
    (   R.   R/   R#   (   R0   R&   R%   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR1   ?  s    c         C   sÎ   |  d } t  j |  d } | d k ry | d k rV | j t j d t  j d ƒ ƒ qy | j t j d t  j d ƒ ƒ n  | j t j d | ƒ ƒ y t | } Wn t d ƒ ‚ n X| j |  d	 | ƒ d
 S(   sŒ   
    Convert criu image from dict(json) format to binary.
    Takes an image in dict(json) format and file-like
    object to write to.
    R    Ru   R€   R›   R   R±   R°   s*   No handler found for image with such magicR(   N(   R€   R›   (   R    R²   R7   R   R8   R´   Rd   R9   (   t   imgR%   R¶   t	   magic_valR·   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR9   G  s    
##c         C   s&   t  j d ƒ } t |  | ƒ | j ƒ  S(   sK   
    Same as dump(), but takes only an image and returns
    a string.
    R   (   R.   R/   R9   t   getvalue(   R¼   R%   (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyR;   b  s    (    (    (    (    (    (    (    (    (    (]   R.   RJ   R   RH   Rb   R   R    R   R   t   dirt   encodestringR   t   decodestringRO   R`   Rt   Ra   R   Rd   R   R   R@   RD   RP   RT   RW   R]   Rj   Rs   t   inventory_entryt
   core_entryt   task_kobj_ids_entryt   creds_entryt   utsns_entryt   ipc_var_entryt   fs_entryt   mm_entryt   cgroup_entryt   tcp_stream_entryt   stats_entryt   pstree_entryt   reg_file_entryt   ns_file_entryt   eventfd_file_entryt   eventpoll_file_entryt   eventpoll_tfd_entryt   signalfd_entryt   timerfd_entryt   inotify_file_entryt   inotify_wd_entryt   fanotify_file_entryt   fanotify_mark_entryt	   vma_entryt
   pipe_entryt
   fifo_entryt   sa_entryt   netlink_sk_entryt   remap_file_path_entryt	   mnt_entryt   tty_file_entryt   tty_info_entryt   tty_data_entryt   rlimit_entryt   tunfile_entryt   ext_file_entryt   irmap_cache_entryt   file_lock_entryt   fdinfo_entryt   unix_sk_entryt   inet_sk_entryt   packet_sock_entryt   itimer_entryt   posix_timer_entryt   net_device_entryt   pipe_data_entryt   sk_packet_entryt   ipc_shm_entryt   ipc_sem_entryt   ipc_msg_entryt   netns_entryt   userns_entryt   seccomp_entryt   autofs_entryt
   file_entryt   cpuinfo_entryR´   R¸   R?   R#   R»   R1   R9   R;   (    (    (    s8   /usr/lib/python2.7/site-packages/pycriu/images/images.pyt   <module>(   s¸   	o0G 1
	
				