
    SAiV                     b   S SK r S SKrS SKrS SKJrJr  S SKJrJrJ	r	  \S   r
   SS\	\\ R                  \\4   S\\   S\\	\\ R                  4      S\
S	\4
S
 jjr    SS\	\\ R                  \\4   S\\	\\ R                  4      S\\   S\\	\\ R                  4      S\
S	\\   4S jjrg)    N)BufferedReaderBytesIO)LiteralOptionalUnion)defaultprepressprinterebookscreen
path_or_fppasswordgs_pathsettingreturnc                    U=(       dP    [         R                  " S5      =(       d3    [         R                  " S5      =(       d    [         R                  " S5      nUc  [        S5      eUSSSSS	U 3/nU(       a	  US
U 3/-  n[        U [        [
        R                  45      (       a4  S nU[	        [
        R                  " U 5      R                  5       5      /-  nOU nUS/-  n[        R                  " UU(       a  [        R                  OS [        R                  [        R                  S9nUR                  U(       a  UR                  5       OS 5      u  pUR                  (       a  [        U	R                  S5       5      e[        U5      $ )Ngsgswin32cgswin64czyCannot find Ghostscript, which is required for repairs.
Visit https://www.ghostscript.com/ for installation instructions.z-sstdout=%stderrz-o-z-sDEVICE=pdfwritez-dPDFSETTINGS=/z-sPDFPassword=)stdinstdoutstderrzutf-8)shutilwhich	Exception
isinstancestrpathlibPathabsolute
subprocessPopenPIPEcommunicateread
returncodedecoder   )
r   r   r   r   
executablerepair_argsr   procr   r   s
             M/var/www/html/land-ocr/venv/lib/python3.13/site-packages/pdfplumber/repair.py_repairr-   
   sY    	 	$<<	$<<
#	$ <<
#	  P
 	
 	
'#K .
344*sGLL122GLL4==?@AAu!&jooD	D %%eejjlFNF6==12446?    outfilec                     [        XX4S9nU(       a5  [        US5       nUR                  UR                  5       5        S S S 5        g U$ ! , (       d  f       g = f)N)r   r   wb)r-   openwriter&   )r   r/   r   r   r   repairedfs          r,   repairr6   ?   sJ     zWNH'4 AGGHMMO$ !	 ! s    A		
A)NNr   )NNNr   )r   r   r"   ior   r   typingr   r   r   T_repair_settingr   r    r-   r6    r.   r,   <module>r;      s      & + +NO 
 #26 )	2c7<<@A2sm2 eC-./2 	2
 2n 37"26 )c7<<@AeC-./ sm eC-./	
  gr.   