File: //lib/python3/dist-packages/pdfminer/__pycache__/runlength.cpython-38.pyc
U
�R�]/ � @ s d dl Z dd� ZdS )� Nc C s� d}d}|t | �k r�t�| |�}|dkr*q�|dkr�|dk r�t|d |d |d �D ]}|t�t�| |��7 }qT|d |d }|dkrt�t�| |d ��d| }||7 }|d d }q|S )a�
RunLength decoder (Adobe version) implementation based on PDF Reference
version 1.4 section 3.3.4:
The RunLengthDecode filter decodes data that has been encoded in a
simple byte-oriented format based on run length. The encoded data
is a sequence of runs, where each run consists of a length byte
followed by 1 to 128 bytes of data. If the length byte is in the
range 0 to 127, the following length + 1 (1 to 128) bytes are
copied literally during decompression. If length is in the range
129 to 255, the following single byte is to be copied 257 - length
(2 to 128) times during decompression. A length value of 128
denotes EOD.
� r � � i )�len�sixZ
indexbytes�rangeZint2byte)�dataZdecoded�iZlength�j�run� r �4/usr/lib/python3/dist-packages/pdfminer/runlength.py�rldecode s r )r r r r r r
�<module> s