
    Mia                     d   S SK r S SKJrJr  S SKrS SKJrJrJrJ	r	J
r
JrJr  \	R                  r\ R                  " \	R                  5      S\	S\SS4S j5       r\ R                  " \	R"                  5      S\S	\S\4S
 j5       r\ R                  " \	R&                  5      S\\\
4   4S j5       rS rg)    N)TupleUnion)END_KEYWORDKWDPSEOFPSBaseParserPSBaseParserToken	PSKeywordlogselfposreturnc                 (    [        X5        SU l        g )NF)factory_seekeof)r   r   s     w/var/www/eduai.edurigo.com/storigo/production/storigo_env/lib/python3.13/site-packages/unstructured/patches/pdfminer.pyseekr      s    DH    sic                    [         R                  " X5      nU(       a)  UR                  S5      nU =R                  XU -  sl        O"U =R                  XS  -  sl        [	        U5      $ U R                  S:X  a  SnO(U R                  S:X  a  SnO[        U R                  5      nU R                  U5        U R                  U l        U$ )Nr   s   trueTs   falseF)	r   searchstart	_curtokenlenr   
_add_token_parse_main_parse1)r   r   r   mjtokens         r   _parse_keywordr"      s    1 AGGAJ!a& !B%1v~~ (,	8	#DNN#OOE##DLHr   c                    U R                   (       a  [        S5      eU R                  (       dO   U R                  5         U R	                  U R
                  U R                  5      U l        U R                  (       d  MO  U R                  R                  S5      n[        R                  " SU5        U$ ! [         a3    U R	                  SS5      U l        SU l         U R                  (       d  e  Nf = f)NzUnexpected EOF   
r   Tznexttoken: %r)
r   r   _tokensfillbufr   bufcharpospopr   debug)r   r!   s     r   	nexttokenr+   ,   s    xx$%%ll	LLN<<$,,?DL lll LLQEIIou%L  	  <<q1DLDH<<  	s   ;B1 1:C.-C.c                      [         R                  S::  a.  [        [        l        [        [        l        [
        [        l        gg)zMonkey-patch certain versions of pdfminer.six to avoid dropping
tokens at EOF (before 20231228) and splitting tokens at buffer
boundaries (20231228 and 20240706).
20240706N)pdfminer__version__r   r   r"   r+    r   r   patch_psparserr1   C   s/     z) &4#!* *r   )	functoolstypingr   r   r.   pdfminer.psparserr   r   r   r   r	   r
   r   r   r   wrapsintr"   bytesr+   r1   r0   r   r   <module>r8      s            ""#| # $  $
 ,,-E c c  .& ''(uS"334  ),	+r   