
    SAiR                         S SK r S SKJrJrJrJrJrJrJrJ	r	J
r
Jr  S SKJrJr  S\S\\   4S jr\\   r " S S5      r " S	 S
\5      r " S S\5      rS\S\\\4   S\4S jrS\\   SS4S jrg)    N)
AnyCallableDictIteratorListMutableSequenceOptionalSequenceUnioncast)PDFExceptionPDFValueErrordatareturnc              #   $   #    U  S h  vN   g  N7fN )r   s    J/var/www/html/land-ocr/venv/lib/python3.13/site-packages/pdfminer/ccitt.py	get_bytesr      s     OOs   c            	           \ rS rSr% \\S'   \\\/\4      \S'   SS jr	\
S\S\\\4   S	\SS4S
 j5       rS\SS4S jrS\SS4S jrSrg)	BitParser)   _state_acceptr   Nc                     SU l         g )Nr   )_posselfs    r   __init__BitParser.__init__0   s	    	    rootvbitsc                     UnS n[        [        U5      5       H+  nUS:  a  Uc   eXE   c  S S /XE'   XE   nX6   S:X  a  SnM)  SnM-     Uc   eX$U'   g )Nr   1   )rangelen)clsr"   r#   r$   pbis          r   addBitParser.add3   so     s4y!A1u}$}4< $<ADDw#~ " }}!r!   r   c                 `    [        U5       H  nS H  nU R                  X#-  5        M     M!     g N   @                   r'   )r   
_parse_bitr   r   bytems       r   	feedbytesBitParser.feedbytesD   s(    dOD2) 3 $r!   xc                     U(       a  U R                   S   nOU R                   S   nU =R                  S-  sl        [        U[        5      (       a  X l         g U R                  c   eU R	                  U5      U l         g Nr'   r   )r   r   
isinstancelistr   )r   r@   r#   s      r   r:   BitParser._parse_bitI   s]    AAAA		Q	aK<<+++,,q/DKr!   )r   r   r   N)__name__
__module____qualname____firstlineno__BitParserState__annotations__r	   r   r   r   classmethodr   intstrr.   bytesr>   objectr:   __static_attributes__r   r!   r   r   r   )   s     hun4566 ~ %S/     *e * *

*F 
*t 
*r!   r   c                   v&   \ rS rSr% SS/r\R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \S	S
5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS 5        \R                  \S!S"5        \R                  \S#S$5        \R                  \S%S&5        SS/r\R                  \SS'5        \R                  \SS(5        \R                  \SS)5        \R                  \SS*5        \R                  \S+S,5        \R                  \S-S.5        \R                  \S/S05        \R                  \S1S25        \R                  \S3S45        \R                  \S5S65        \R                  \S7S85        \R                  \S9S:5        \R                  \S;S<5        \R                  \S=S5        \R                  \S>S?5        \R                  \S@SA5        \R                  \SBSC5        \R                  \SDSE5        \R                  \SFSG5        \R                  \SHSI5        \R                  \SJSK5        \R                  \SLSM5        \R                  \SNS5        \R                  \SOSP5        \R                  \SQSR5        \R                  \SSST5        \R                  \SUSV5        \R                  \SWSX5        \R                  \SYSZ5        \R                  \S[S\5        \R                  \S]S^5        \R                  \S_S`5        \R                  \SaSb5        \R                  \ScSd5        \R                  \SeSf5        \R                  \SgSh5        \R                  \SiSj5        \R                  \SkSl5        \R                  \SmSn5        \R                  \SoSp5        \R                  \SqSr5        \R                  \SsSt5        \R                  \SuSv5        \R                  \SwSx5        \R                  \SySz5        \R                  \S{S|5        \R                  \S}S~5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        SS/r\R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \S+S5        \R                  \S-S5        \R                  \S/S5        \R                  \S1S5        \R                  \S3S5        \R                  \S5S5        \R                  \S7SP5        \R                  \S9S5        \R                  \S;S5        \R                  \S=S|5        \R                  \S>S5        \R                  \S@S5        \R                  \SBS5        \R                  \SDS5        \R                  \SFS5        \R                  \SHS5        \R                  \SJGS 5        \R                  \SLGS5        \R                  \SNGS5        \R                  \SOGS5        \R                  \SQGS5        \R                  \SSGS5        \R                  \SUGS5        \R                  \SWGS5        \R                  \SYGS5        \R                  \S[GS	5        \R                  \S]GS
5        \R                  \S_GS5        \R                  \SaGS5        \R                  \ScGS5        \R                  \SeGS5        \R                  \SgGS5        \R                  \SiGS5        \R                  \SkGS5        \R                  \SmGS5        \R                  \SoGS5        \R                  \SqGS5        \R                  \SsGS5        \R                  \SuGS5        \R                  \SwGS5        \R                  \SyGS5        \R                  \S{GS5        \R                  \S}GS5        \R                  \SGS5        \R                  \SGS5        \R                  \SGS5        \R                  \SGS5        \R                  \SGS5        \R                  \SGS 5        \R                  \SGS!5        \R                  \SGS"5        \R                  \SGS#5        \R                  \SGS$5        \R                  \SGS%5        \R                  \SGS&5        \R                  \SGS'5        \R                  \SGS(5        \R                  \SGS)5        \R                  \SGS*5        \R                  \SGS+5        \R                  \SS5        \R                  \SGS,5        \R                  \SGS-5        \R                  \SGS.5        \R                  \SGS/5        \R                  \SGS05        \R                  \SGS15        \R                  \SGS25        \R                  \SGS35        \R                  \SGS45        \R                  \SGS55        \R                  \SGS65        \R                  \SGS75        \R                  \SGS85        \R                  \SGS95        \R                  \SGS:5        \R                  \SGS;5        \R                  \SGS<5        \R                  \SGS=5        \R                  \SGS>5        \R                  \SGS?5        \R                  \SGS@5        \R                  \SGSA5        \R                  \SGSB5        \R                  \SGSC5        \R                  \SGSD5        \R                  \SGSE5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        \R                  \SS5        SS/r	\R                  \	SS5        \R                  \	GSFGSF5        \R                  \	S
S
5        \R                  \	SS5        \R                  \	GSGGSG5        \R                  \	GSHGSI5        \R                  \	GSJS^5        \R                  \	GSKS\5        \R                  \	GSLGSM5        \R                  \	GSNGSO5        \R                  \	GSPGSQ5        \R                  \	GSRGSS5        \R                  \	GSTGSU5        \R                  \	GSVGSW5         " GSX GSY\
5      r " GSZ GS[\5      r " GS\ GS]\5      r " GS^ GS_\5      r\\GS`'   GS~GSa\GSb\GScS4GSd jjrGSe\GScS4GSf jrGSg\GSc\4GSh jrGSi\GSc\4GSj jrGSi\GSc\4GSk jrGSl\\   GSc\4GSm jrGSc\4GSn jrGSo\GSc\4GSp jrGSGSq jr GSr\GSl\!\   GScS4GSs jr"GSGSt jr#GSGSu jr$GSv\GScS4GSw jr%GSGSx jr&GSy\GSz\GScS4GS{ jr'GSl\GScS4GS| jr(GS}r)g(  CCITTG4ParserV   Nr   r&   r'   011010h001r+   0001r9   000011000010   00000110000010u
0000001111x1
0000001000x2
0000001001x3
0000001010x4
0000001011x5
0000001100x6
0000001101x7
0000001110e0000000000010000000000010011010100011101111000r8   1011   1100   1110   1111r7   10011	   10100
   00111   01000   001000      110100   110101r6   101010   101011   0100111   0001100   0001000   0010111      0000100   0101000   0101011   0010011   0100100   0011000   00000010   00000011   00011010r5   00011011!   00010010"   00010011#   00010100$   00010101%   00010110&   00010111'   00101000(   00101001r   00101010*   00101011+   00101100,   00101101-   00000100.   00000101/   000010100   000010111   010100102   010100113   010101004   010101015   001001006   001001017   010110008   010110019   01011010:   01011011;   01001010<   01001011=   00110010>   00110011?   00110100r4   11011r3   10010   010111   0110111i@  00110110i  00110111i  01100100i   01100101i@  01101000i  01100111i  	011001100i   	011001101i@  	011010010i  	011010011i  	011010100i   	011010101i@  	011010110i  	011010111i  	011011000i   	011011001i@  	011011010i  	011011011i  	010011000i   	010011001i@  	010011010i  011000i  	010011011i   00000001000i@  00000001100i  00000001101i  000000010010i   000000010011i@  000000010100i  000000010101i  000000010110i 	  000000010111i@	  000000011100i	  000000011101i	  000000011110i 
  000000011111
0000110111111000110010000110001010001000000101000011100000111	000011000
0000010111
00000110000000110011100001101000000011011000000011011100000101000000000101110000001100000001100101000001100101100001100110000001100110100000110100000000110100100000110101000000110101100001101001000001101001100001101010000001101010100001101011000001101011100000110110000000110110100001101101000001101101100000101010000000101010100000101011000000101011100000110010000000110010100000101001000000101001100000010010000000011011100000011100000000010011100000010100000000101100000000101100100000010101100000010110000000101101000000110011000000110011100001100100000001100100100000101101100000011001100000011010000000011010100000011011000000001101101000000100101000000010010110000001001100000000100110100000011100100000001110011000000111010000000011101010000001110110000000111011100000010100100000001010011000000101010000000010101010000001011010000000101101100000011001000000001100101010000100000000001T00T10T000	000000011T100	000000010T0000
0000000011T1000
0000000010T0000000000000011T1000000000000010c                       \ rS rSrSrg)CCITTG4Parser.CCITTExceptioniO  r   NrG   rH   rI   rJ   rR   r   r!   r   CCITTExceptionr|  O      r!   r~  c                       \ rS rSrSrg)CCITTG4Parser.EOFBiR  r   Nr}  r   r!   r   EOFBr  R  r  r!   r  c                       \ rS rSrSrg)CCITTG4Parser.InvalidDataiU  r   Nr}  r   r!   r   InvalidDatar  U  r  r!   r  c                       \ rS rSrSrg)CCITTG4Parser.ByteSkipiX  r   Nr}  r   r!   r   ByteSkipr  X  r  r!   r  _colorwidth	bytealignr   c                 f    [         R                  U 5        Xl        X l        U R	                  5         g r   )r   r   r  r  reset)r   r  r  s      r   r   CCITTG4Parser.__init__]  s#    4 
"

r!   r   c                     [        U5       H   n S H  nU R                  X#-  5        M     M"     g ! U R                   a&    U R                  U l        U R
                  U l         MZ  U R                   a       g f = fr1   )r   r:   r  _parse_moder   MODEr   r  r;   s       r   r>   CCITTG4Parser.feedbytesc  si    dOD6AOODH- 7 $ == (#//"ii99 s   12A9&A98A9modec                    US:X  a,  U R                  5         U R                  5         U R                  $ US:X  aA  SU l        U R                  U l        U R                  (       a  U R                  $ U R                  $ US:X  a  U R                  U l        U R                  $ US:X  a  U R                  e[        U[        5      (       a-  U R                  U5        U R                  5         U R                  $ U R                  U5      e)Nr+   rY   r   rc   rs   )_do_pass_flush_liner  _n1_parse_horiz1r   r  WHITEBLACK_parse_uncompressedUNCOMPRESSEDr  rC   rN   _do_verticalr  )r   r  s     r   r  CCITTG4Parser._parse_moden  s    3;MMO99S[DH--DL{{zz!zz!S[33DL$$$S[))Oc""d#99""4((r!   nc                     Uc  U R                   eU =R                  U-  sl        US:  a,  SU l        SU R                  -
  U l        U R                  U l        U R                  (       a  U R                  $ U R                  $ )Nr4   r   r'   )r  r  _n2r  _parse_horiz2r   r  r  r   r  s     r   r  CCITTG4Parser._parse_horiz1  se    9"""Ar6DHdkk/DK--DL;;::::r!   c                 v   Uc  U R                   eU =R                  U-  sl        US:  ag  SU R                  -
  U l        U R                  U l        U R                  U R                  U R                  5        U R                  5         U R                  $ U R                  (       a  U R                  $ U R                  $ )Nr4   r'   )r  r  r  r  r   _do_horizontalr  r  r  r  r  r  s     r   r  CCITTG4Parser._parse_horiz2  s    9"""Ar6dkk/DK++DL$((399[[::::r!   r$   c                    U(       d  U R                   eUR                  S5      (       aD  U R                  U l        [	        US   5      U l        U R                  USS  5        U R                  $ U R                  U5        U R                  $ )NTr'   r9   )	r  
startswithr  r   rN   r  _do_uncompressedr  r  )r   r$   s     r   r  !CCITTG4Parser._parse_uncompressed  st    """??3++DLd1g,DK!!$qr(+99!!$'$$$r!   c                 `    SR                  S U R                  S U R                    5       5      $ )N c              3   8   #    U  H  n[        U5      v   M     g 7fr   rO   .0r,   s     r   	<genexpr>*CCITTG4Parser._get_bits.<locals>.<genexpr>  s     E'D!s1vv'D   )join_curline_curposr   s    r   	_get_bitsCCITTG4Parser._get_bits  s&    wwEt}}^t||'DEEEr!   r-   c                    US:  a%  SSR                  S U R                   5       5      -   $ [        U R                  5      U::  a%  SR                  S U R                   5       5      S-   $ SR                  S U R                  S U  5       5      S-   [        U R                  U   5      -   S-   SR                  S	 U R                  US
-   S   5       5      -   $ )Nr   z[]r  c              3   8   #    U  H  n[        U5      v   M     g 7fr   r  r  s     r   r  -CCITTG4Parser._get_refline.<locals>.<genexpr>  s     !@-Q#a&&-r  c              3   8   #    U  H  n[        U5      v   M     g 7fr   r  r  s     r   r  r    s     9=a3q66=r  c              3   8   #    U  H  n[        U5      v   M     g 7fr   r  r  s     r   r  r    s     :(91A(9r  []c              3   8   #    U  H  n[        U5      v   M     g 7fr   r  r  s     r   r  r    s     A*@Q#a&&*@r  r'   )r  _refliner)   rO   )r   r-   s     r   _get_reflineCCITTG4Parser._get_refline  s    q5"''!@$--!@@@@1$7794==99D@@ :bq(9::dmmA&'(  ''A$--A*@AA	Br!   c                     SU l         [        R                  " SS/U R                  -  5      U l        U R	                  5         U R
                  U l        U R                  U l        g )Nr   r,   r'   )	_yarrayr  r  _reset_liner  r   r  r   r   s    r   r  CCITTG4Parser.reset  sJ    C!tzz)9:''iir!   yc                 H    [        USR                  S U 5       5      5        g )Nr  c              3   8   #    U  H  n[        U5      v   M     g 7fr   r  r  s     r   r  ,CCITTG4Parser.output_line.<locals>.<genexpr>  s     .AQr  )printr  )r   r  r$   s      r   output_lineCCITTG4Parser.output_line  s    a.../r!   c                     U R                   U l        [        R                  " SS/U R                  -  5      U l         SU l        SU l        g )Nr,   r'   rW   )r  r  r  r  r  r  r   s    r   r  CCITTG4Parser._reset_line  s8    C!tzz)9:r!   c                 
   U R                   U R                  ::  ai  U R                  U R                  U R                  5        U =R                  S-  sl        U R                  5         U R                  (       a  U R                  eg g Nr'   )r  r  r  r  r  r  r  r  r   s    r   r  CCITTG4Parser._flush_line  s^    ::%TWWdmm4GGqLG~~mm# 	 &r!   dxc                    U R                   S-   n US:X  a/  U R                  S:X  a  U R                  U   U R                  :w  a  O_OWU[        U R                  5      :X  d=  U R                  US-
     U R                  :X  a  U R                  U   U R                  :w  a  OUS-  nM  X!-  n[	        SU R                   5      n[	        S[        U R                  U5      5      nX#:  a,  [        X#5       H  nU R                  U R                  U'   M     O0X2:  a+  [        X25       H  nU R                  U R                  U'   M     X l         SU R                  -
  U l        g rB   )	r  r  r  r)   maxminr  r(   r  )r   r  re   x0r@   s        r   r  CCITTG4Parser._do_vertical  s   \\AQw;;!#b(9T[[(Hs4==))b1f%4MM"%4!GB  	DLL!C

B'(72]#';;a  #W2]#';;a  #$++or!   c                    U R                   S-   n US:X  a/  U R                  S:X  a  U R                  U   U R                  :w  a  O_OWU[        U R                  5      :X  d=  U R                  US-
     U R                  :X  a  U R                  U   U R                  :w  a  OUS-  nM   US:X  a/  U R                  S:X  a  U R                  U   U R                  :X  a  O_OWU[        U R                  5      :X  d=  U R                  US-
     U R                  :w  a  U R                  U   U R                  :X  a  OUS-  nM  [	        U R                   U5       H  nU R                  U R
                  U'   M     Xl         g rB   )r  r  r  r)   r(   r  )r   re   r@   s      r   r  CCITTG4Parser._do_pass  s<   \\AQw;;!#b(9T[[(Hs4==))b1f%4MM"%4!GB  Qw;;!#b(9T[[(Hs4==))b1f%4MM"%4!GB  t||R(A#{{DMM! )r!   n1n2c                    U R                   S:  a  SU l         U R                   n[        U5       H<  n[        U R                  5      U::  a    O"U R                  U R                  U'   US-  nM>     [        U5       H?  n[        U R                  5      U::  a    O%SU R                  -
  U R                  U'   US-  nMA     X0l         g )Nr   r'   )r  r(   r)   r  r  )r   r  r  r@   _s        r   r  CCITTG4Parser._do_horizontal	  s    <<!DLLLrA4==!Q&#{{DMM!FA	 
 rA4==!Q& 4;;DMM!FA	 
 r!   c                     U HJ  n[        U5      U R                  U R                  '   U =R                  S-  sl        U R                  5         ML     g r  )rN   r  r  r  )r   r$   cs      r   r  CCITTG4Parser._do_uncompressed  s<    A*-a&DMM$,,'LLAL r!   )r   r  r  r  r  r  r  r   r  r  r  FrF   )*rG   rH   rI   rJ   r  r   r.   r  r  r  r   r~  r  r  r  rN   rL   boolr   rP   r>   rQ   rK   r  r   r  r  r	   rO   r  r  r  r  r
   r  r  r  r  r  r  r  rR   r   r!   r   rT   rT   V   ss   $<DMM$3MM$E"MM$E"MM$U#MM$V$MM$H%MM$H%MM$I&MM$I&MM$\*MM$l+MM$l+MM$l+MM$l+MM$l+MM$l+MM$l+MM$784LEMM%J'MM%H%MM%F#MM%F#MM%F#MM%F#MM%F#MM%F#MM%G$MM%G$MM%W%MM%W%MM%X&MM%X&MM%X&MM%X&MM%X&MM%X&MM%Y'MM%Y'MM%Y'MM%Y'MM%Y'MM%Y'MM%Y'MM%Y'MM%Y'MM%Y'MM%Y'MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%Z(MM%W%MM%g&MM%h'MM%i(MM%j)MM%j)MM%j)MM%j)MM%j)MM%j)MM%k*MM%k*MM%k*MM%k*MM%k*MM%{+MM%{+MM%{+MM%{+MM%{+MM%{+MM%{+MM%{+MM%{+MM%{+MM%x(MM%{+MM%}-MM%}-MM%}-MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.4LEMM%L)MM%E"MM%D!MM%D!MM%E"MM%F#MM%F#MM%G$MM%H%MM%H%MM%Y'MM%Y'MM%Y'MM%Z(MM%Z(MM%[)MM%\*MM%\*MM%\*MM%]+MM%]+MM%]+MM%]+MM%]+MM%]+MM%]+MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%^,MM%\*MM%n-MM%n-MM%n-MM%n-MM%n-MM%n-MM%o.MM%o.MM%o.MM%o.MM%o.MM%o.MM%o.MM%o.MM%/MM%/MM%/MM%/MM%/MM%/MM%/MM%/MM%/MM%/MM%/MM%/MM%}-MM%}-MM%}-MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.MM%~.$<LMM,S)MM,d+MM,u-MM,/MM,1MM,2MM,z2MM,z2MM,4MM,4MM,6MM,6MM,-8MM,-8 ~ n >  Kc d t 	e 	 	) )> )0s ~ s ~ 
% 
%. 
%F3 Fc c  0S 0 0$ 0$&s &t &04 # $  S T  r!   rT   c            	       `    \ rS rSr  SS\S\S\SS4S jjrS\4S jrS	\S
\	\   SS4S jr
Srg)CCITTFaxDecoderi   r  r  reversedr   Nc                 F    [         R                  XUS9  X0l        SU l        g )Nr  r!   )rT   r   r  _buf)r   r  r  r  s       r   r   CCITTFaxDecoder.__init__!  s#     	ti@ 	r!   c                     U R                   $ r   )r  r   s    r   closeCCITTFaxDecoder.close+  s    yyr!   r  r$   c                 X   [         R                   " SS/[        U5      S-   S-  -  5      nU R                  (       a  U Vs/ s H  nSU-
  PM
     nn[        U5       H#  u  pTU(       d  M  X5S-  ==   SUS-     -  ss'   M%     U =R                  UR                  5       -  sl        g s  snf )NBr   r~   r7   r'   r2   )r  r)   r  	enumerater  tobytes)r   r  r$   arrr,   r-   s         r   r  CCITTFaxDecoder.output_line.  s    kk#ss4y1}&:;<==#'(4aAE4D(dODAqF<QUCC $ 			S[[]"		 )s    B')r  r  )FF)rG   rH   rI   rJ   rN   r  r   rP   r  r
   r  rR   r   r!   r   r  r     s_      	  	
 
u #S # #$ #r!   r  paramsc                 X   UR                  S5      nUS:X  ah  [        [        UR                  S5      5      n[        [        UR                  S5      5      n[        [        UR                  S5      5      n[	        X4US9nO[        U5      eUR                  U 5        UR                  5       $ )NKrW   ColumnsEncodedByteAlignBlackIs1)r  r  )getr   rN   r  r  r   r>   r  )r   r  r  colsr  r  parsers          r   ccittfaxdecoder  8  s    

3ABwCI./vzz*<=>	fjj45 XNA
T<<>r!   argvc                 \   U SS  (       d  SS K nUR                  5         g  " S S[        5      nU SS   Hu  n[        US5      nUR	                  S5      u    pVpxnU" [        U5      5      n	U	R                  UR                  5       5        U	R                  5         UR                  5         Mw     g )Nr'   r   c                   T    \ rS rSrSS\S\SS4S jjrS\S\\   SS4S	 jrSS
 jr	Sr
g)main.<locals>.ParseriM  r  r  r   Nc                 x    SS K n[        R                  XUS9  UR                  U R                  S45      U l        g )Nr   r  i  )pygamerT   r   Surfacer  img)r   r  r  r  s       r   r   main.<locals>.Parser.__init__N  s1    ""4)"D~~tzz4&89DHr!   r  r$   c                     [        U5       HH  u  p4U(       a  U R                  R                  X14S5        M+  U R                  R                  X14S5        MJ     g )N)   r  r  )r   r   r   )r  r
  set_at)r   r  r$   r@   r,   s        r   r   main.<locals>.Parser.output_lineT  s=    !$HHOOQFO<HHOOQFI6	 (r!   c                 X    SS K nUR                  R                  U R                  S5        g )Nr   zout.bmp)r  imagesaver
  )r   r  s     r   r  main.<locals>.Parser.close[  s    LLdhh	2r!   )r
  r  rF   )rG   rH   rI   rJ   rN   r  r   r
   r  r  rR   r   r!   r   Parserr  M  s?    	:# 	:$ 	:4 	:	7 	7HSM 	7d 	7	3r!   r  rb.)	unittestmainrT   opensplitrN   r>   readr  )
r  r  r  pathfpr  kwrY   r  s
             r   r  r  F  s    83 3& QR$!ZZ_A!A#

 r!   )r  typingr   r   r   r   r   r   r	   r
   r   r   pdfminer.pdfexceptionsr   r   rP   rN   r   rK   r   rT   r  rO   rQ   r  r  r   r!   r   <module>r"     s       ?E hsm 
 !%
** **ZGI GT#m #0
 
S&[(9 
e 
 tCy  T  r!   