???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................
]0                 @   s  d  d d d d d g Z  d Z d d l m Z d d	 l Z d d	 l Z d d	 l Z y d d
 l m	 Z	 Wn" e
 k
 r d d
 l m	 Z	 Yn Xd d l m Z m Z d Z d Z d Z Gd d    d  e j  Z d d d	 d	 d	 d d  Z d d d  Z d d   Z d	 S)BZ2FileBZ2CompressorBZ2Decompressoropencompress
decompressz%Nadeem Vawda <nadeem.vawda@gmail.com>    )r   N)RLock)r   r         c               @   s   e  Z d  Z d d d d d  Z d d   Z e d d	    Z d
 d   Z d d   Z d d   Z	 d d   Z
 d d d  Z d( d d  Z d) d d  Z d d   Z d* d d  Z d+ d d  Z d  d!   Z d" d#   Z e j d$ d%  Z d& d'   Z d S),r   rN	   c             C   s  t    |  _ d  |  _ d |  _ t |  _ | d  k	 rC t j d t  d | k oZ d k n sk t	 d   | d k r d } t
 } n | d k r d
 } t } t |  |  _ ng | d k r d } t } t |  |  _ n= | d k rd } t } t |  |  _ n t	 d | f   t | t t f  rSt | |  |  _ d |  _ | |  _ n? t | d  sqt | d  r| |  _ | |  _ n t d   |  j t
 k rt j |  j t d t } t j |  |  _ n	 d |  _ d  S)NFz)Use of 'buffering' argument is deprecatedr	   r   z%compresslevel must be between 1 and 9 r   rbwwbxxbaabzInvalid mode: %rTreadwritez1filename must be a str or bytes object, or a filetrailing_errorr   )r   r   r   )r   r   )r   r   )r   r   )r   _lock_fp_closefp_MODE_CLOSED_modewarningswarnDeprecationWarning
ValueError
_MODE_READ_MODE_WRITEr   _compressor
isinstancestrbytes_builtin_openhasattr	TypeError_compressionDecompressReaderr   OSErrorioBufferedReader_buffer_pos)selffilenamemode	bufferingcompresslevel	mode_coderaw r8   (/opt/alt/python35/lib64/python3.5/bz2.py__init__*   sL    							zBZ2File.__init__c             C   s   |  j   |  j t k r d  SzT |  j t k r? |  j j   n1 |  j t k rp |  j j |  j	 j
    d  |  _	 Wd  z |  j r |  j j   Wd  d  |  _ d |  _ t |  _ d  |  _ XXWd  QRXd  S)NF)r   r   r   r!   r/   closer"   r   r   r#   flushr   )r1   r8   r8   r9   r;   o   s     
				zBZ2File.closec             C   s   |  j  t k S)N)r   r   )r1   r8   r8   r9   closed   s    zBZ2File.closedc             C   s   |  j    |  j j   S)N)_check_not_closedr   fileno)r1   r8   r8   r9   r?      s    
zBZ2File.filenoc             C   s   |  j    o |  j j   S)N)readabler/   seekable)r1   r8   r8   r9   rA      s    zBZ2File.seekablec             C   s   |  j    |  j t k S)N)r>   r   r!   )r1   r8   r8   r9   r@      s    
zBZ2File.readablec             C   s   |  j    |  j t k S)N)r>   r   r"   )r1   r8   r8   r9   writable   s    
zBZ2File.writabler   c          	   C   s/   |  j   |  j   |  j j |  SWd  QRXd  S)N)r   _check_can_readr/   peek)r1   nr8   r8   r9   rD      s    

zBZ2File.peekr	   c          	   C   s/   |  j   |  j   |  j j |  SWd  QRXd  S)N)r   rC   r/   r   )r1   sizer8   r8   r9   r      s    

zBZ2File.readc          	   C   sD   |  j  4 |  j   | d k  r) t j } |  j j |  SWd  QRXd  S)Nr   )r   rC   r-   DEFAULT_BUFFER_SIZEr/   read1)r1   rF   r8   r8   r9   rH      s
    

	zBZ2File.read1c          	   C   s/   |  j   |  j   |  j j |  SWd  QRXd  S)N)r   rC   r/   readinto)r1   br8   r8   r9   rI      s    

zBZ2File.readintoc          	   C   se   t  | t  s6 t | d  s* t d   | j   } |  j  |  j   |  j j |  SWd  QRXd  S)N	__index__zInteger argument expected)	r$   intr(   r)   rK   r   rC   r/   readline)r1   rF   r8   r8   r9   rM      s    

zBZ2File.readlinec          	   C   se   t  | t  s6 t | d  s* t d   | j   } |  j  |  j   |  j j |  SWd  QRXd  S)NrK   zInteger argument expected)	r$   rL   r(   r)   rK   r   rC   r/   	readlines)r1   rF   r8   r8   r9   rN      s    

zBZ2File.readlinesc             C   s`   |  j  P |  j   |  j j |  } |  j j |  |  j t |  7_ t |  SWd  QRXd  S)N)r   _check_can_writer#   r   r   r   r0   len)r1   data
compressedr8   r8   r9   r      s    

zBZ2File.writec          
   C   s(   |  j   t j j |  |  SWd  QRXd  S)N)r   r*   
BaseStream
writelines)r1   seqr8   r8   r9   rT      s    
zBZ2File.writelinesc          
   C   s2   |  j  " |  j   |  j j | |  SWd  QRXd  S)N)r   _check_can_seekr/   seek)r1   offsetwhencer8   r8   r9   rW     s    

zBZ2File.seekc          	   C   sB   |  j  2 |  j   |  j t k r0 |  j j   S|  j SWd  QRXd  S)N)r   r>   r   r!   r/   tellr0   )r1   r8   r8   r9   rZ     s
    

zBZ2File.tellr[   r[   r[   )__name__
__module____qualname__r:   r;   propertyr=   r?   rA   r@   rB   rD   r   rH   rI   rM   rN   r   rT   r-   SEEK_SETrW   rZ   r8   r8   r8   r9   r      s"   E
	r   r   c             C   s   d | k r. d | k rv t  d | f   nH | d  k	 rF t  d   | d  k	 r^ t  d   | d  k	 rv t  d   | j d d  } t |  | d | } d | k r t j | | | |  S| Sd  S)	NtrJ   zInvalid mode: %rz0Argument 'encoding' not supported in binary modez.Argument 'errors' not supported in binary modez/Argument 'newline' not supported in binary moder   r5   )r    replacer   r-   TextIOWrapper)r2   r3   r5   encodingerrorsnewlinebz_modebinary_filer8   r8   r9   r      s    c             C   s#   t  |  } | j |   | j   S)N)r   r   r<   )rQ   r5   compr8   r8   r9   r   H  s    c             C   s   g  } xs |  r{ t    } y | j |   } Wn t k
 rL | rE Pn   Yn X| j |  | j so t d   | j }  q	 Wd j |  S)NzACompressed data ended before the end-of-stream marker was reached    )r   r   r,   appendeofr    unused_datajoin)rQ   resultsdecompresr8   r8   r9   r   S  s    			)__all__
__author__builtinsr   r'   r-   r   r*   	threadingr   ImportErrordummy_threading_bz2r   r   r   r!   r"   rS   r   r   r   r8   r8   r8   r9   <module>   s(   	 '