Ë
    ìì�ix  ã                   ó„   — d dl mZ  G d„ de«      Z G d„ d«      Zd„ Zedk(  rd dlZ ed	 ej                  «       «       yy)
é    )ÚBytesIOc                   ó   — e Zd Zy)ÚCorruptDataErrorN)Ú__name__Ú
__module__Ú__qualname__© ó    úq/var/www/ITT-ServiceAPI-Services/ITT-Document-Scan/mrzscanner/mrzenv/lib/python3.12/site-packages/pdfminer/lzw.pyr   r      s   „ Ør
   r   c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)Ú
LZWDecoderc                 óX   — || _         d| _        d| _        d| _        d | _        d | _        y )Nr   é   é	   )ÚfpÚbuffÚbposÚnbitsÚtableÚprevbuf)Úselfr   s     r   Ú__init__zLZWDecoder.__init__   s/   € ØˆŒØˆŒ	ØˆŒ	ØˆŒ
ØˆŒ
ØˆŒØr
   c                 óL  — d}	 d| j                   z
  }||k  r9||z  | j                  ||z
  z	  d|z  dz
  z  z  }| xj                   |z  c_         	 |S ||z  | j                  d|z  dz
  z  z  }||z  }| j                  j                  d«      }|st        ‚|d   | _        d| _         Œ¢)Nr   é   r   )r   r   r   ÚreadÚEOFError)r   ÚbitsÚvÚrÚxs        r   ÚreadbitszLZWDecoder.readbits   sº   € ØˆØà�$—)‘)‘ˆAØ�qŠyð ˜$‘Y D§I¡I°!°D±&Ñ$9¸qÀD¹yÈ!¹mÑ#LÑM�Ø—	’	˜TÑ!•	Øð ˆð ˜!‘V §	¡	¨a°1©f°a©ZÑ 8Ñ9�Ø˜‘	�Ø—G‘G—L‘L “O�ÙÜ"�NØ˜a™D�”	Ø�”	ð) r
   c                 óB  — d}|dk(  rnt        d«      D �cg c]  }t        |g«      ‘Œ c}| _        | j                  j                  d «       | j                  j                  d «       d| _        d| _        |S |dk(  r	 |S | j                  s| j                  |   x}| _        |S |t        | j                  «      k  r;| j                  |   }| j                  j                  | j                  |d d z   «       nc|t        | j                  «      k(  rE| j                  j                  | j                  | j                  d d z   «       | j                  |   }nt        ‚t        | j                  «      }|dk(  rd| _        n|dk(  rd	| _        n|d
k(  rd| _        || _        |S c c}w )Nr
   é   r   i  r   iÿ  é
   iÿ  é   iÿ  é   )ÚrangeÚbytesr   Úappendr   r   Úlenr   )r   Úcoder    ÚcÚls        r   ÚfeedzLZWDecoder.feed/   sn  € ØˆØ�3Š;Ü.3°C«jÖ9¨œ%  �*Ò9ˆDŒJØ�J‰J×Ñ˜dÔ#Ø�J‰J×Ñ˜dÔ#ØˆDŒLØˆDŒJð, ˆð+ �SŠ[Øð( ˆð' —’Ø#Ÿz™z¨$Ñ/Ð/ˆA�”ð$ ˆð! ”c˜$Ÿ*™*“oÒ%Ø—J‘J˜tÑ$�Ø—
‘
×!Ñ! $§,¡,¨q°°!¨uÑ"4Õ5Øœ˜TŸZ™Z›Ò(Ø—
‘
×!Ñ! $§,¡,¨t¯|©|¸B¸QÐ/?Ñ"?Ô@Ø—J‘J˜tÑ$‘ä&Ð&Ü�D—J‘J“ˆAØ�CŠxØ�•
Ø�d’Ø�•
Ø�d’Ø�”
ØˆDŒLØˆùò5 :s   •Fc              #   ó®   K  — 	 	 | j                  | j                  «      }	 | j                  |«      }|–— Œ3# t        $ r Y y w xY w# t        $ r Y y w xY w­w)N)r!   r   r   r.   r   )r   r+   r    s      r   ÚrunzLZWDecoder.runN   sn   è ø€ ØðØ—}‘} T§Z¡ZÓ0�ðØ—I‘I˜d“O�ð ŠGð øô ò Øð 	ðûô $ò àð 	ðüsB   ‚A…7 ¡A ²A·	AÁ AÁAÁAÁ	AÁAÁAÁAN)r   r   r   r   r!   r.   r0   r	   r
   r   r   r      s   „ òòò2ó>r
   r   c                 óh   — t        | «      }dj                  t        |«      j                  «       «      S )zN
    >>> lzwdecode(bytes.fromhex('800b6050220c0c8501'))
    b'-----A---B'
    r
   )r   Újoinr   r0   )Údatar   s     r   Ú	lzwdecoder4   `   s)   € ô
 
�‹€BØ�8‰8”J˜r“N×&Ñ&Ó(Ó)Ð)r
   Ú__main__Nzpdfminer.lzw)
Úior   Ú	Exceptionr   r   r4   r   ÚdoctestÚprintÚtestmodr	   r
   r   ú<module>r;      sK   ðå ô	�yô 	÷Qñ Qòj*ð ˆzÒÛÙ	ˆ.˜/˜'Ÿ/™/Ó+Õ,ð r
   