§
    ZŠtjB`  ã            0       óf  — d Z ddlZddlZddlZddlZddlZddlZddlmZmZm	Z	 ddl
mZmZmZmZmZmZ ddlmZ ddlmZ ddlmZmZmZ ddlmZmZmZmZ dd	lmZm Z m!Z!m"Z" d
dgZ#dgZ$ddddddddddddd e¦   «         dddddddfdee%ef         de&dee%ef         de&de&de%dede&de%de%de'de'de'de'ded ee%ef         d!e'd"eee&f         d#e'd$e'd%e&d&e'd'eej                 f.d(„Z(ddddddddddddd e¦   «         dddddddfd)e)de&dee%ef         de&de&de%dede&de%de%de'de'de'de'dee%ef         d ee%ef         d!e'd"eee&f         d#e'd$e'd%e&d&e'd'eej                 f.d*„Z*d+ede%de&de&de%dede%de%de%de'de'de'd!e'd"ee&ee&e&f         f         d&e'd'ee%         f d,„Z+d9de%d!e'd'ee%e%ee'f         fd-„Z,ded'e%fd.„Z-d:d/e%d e%d'e%fd0„Z.	 d;d/e%d e%d%e&d'ee&e&f         fd1„Z/	 	 	 	 	 	 	 d<de%de%de%d e%d2e'd%e&de&de&d'efd3„Z0	 	 	 	 	 	 	 d<d4e)de%de%d e%d2e'd%e&de&de&d'efd5„Z1	 d9de%de%d6e%d#e'd7e'd'eej                 fd8„Z2dS )=zq
    pdf2image is a light wrapper for the poppler-utils tools that can convert your
    PDFs into Pillow images.
é    N)ÚPopenÚPIPEÚTimeoutExpired)ÚAnyÚUnionÚTupleÚListÚDictÚCallable)ÚPurePath)ÚImage)Úuuid_generatorÚcounter_generatorÚThreadSafeGenerator)Úparse_buffer_to_pgmÚparse_buffer_to_ppmÚparse_buffer_to_jpegÚparse_buffer_to_png)ÚPDFInfoNotInstalledErrorÚPDFPageCountErrorÚPDFSyntaxErrorÚPDFPopplerTimeoutErrorÚpngÚtiffÚPageséÈ   Úppmé   FÚpdf_pathÚdpiÚoutput_folderÚ
first_pageÚ	last_pageÚfmtÚjpegoptÚthread_countÚuserpwÚownerpwÚuse_cropboxÚstrictÚtransparentÚsingle_fileÚoutput_fileÚpoppler_pathÚ	grayscaleÚsizeÚ
paths_onlyÚuse_pdftocairoÚtimeoutÚhide_annotationsÚreturnc                 ó*  — |r|dk    rd}t          | t          ¦  «        r|                      ¦   «         } t          |t          ¦  «        r|                     ¦   «         }t          |t          ¦  «        r|                     ¦   «         }t          | ||	|¬¦  «        d         }t	          ||¦  «        \  }}}}|p|p
|o|t
          v }t          |rdnd|¬¦  «        \  }}|dk    r|dk    rd	}|dk    r|d
k    rd}t          |t          j        ¦  «        s9t          |t          ¦  «        s$|rt          |g¦  «        }d}nt          |¦  «        }|dk     rd}|�|dk     rd}|�||k    r|}||k    rg S 	 d}|€|rt          j        ¦   «         }d}||z
  dz   }||k    r|}||z  }|} g }!t          |¦  «        D �]m}"t          |¦  «        }#||z  t!          |dk    ¦  «        z   }$t#          dt%          |¦  «        | g|| | |$z   dz
  |||#||	|
|||||¦  «        }%|r&|rt'          d¦  «        ‚t)          d|¦  «        g|%z   }%nt)          d|¦  «        g|%z   }%| |$z   } |t!          |dk    ¦  «        z  }t*          j                             ¦   «         }&|�|dz   |&                     dd¦  «        z   |&d<   d	}'t3          j        ¦   «         dk    r-t7          j        ¦   «         }'|'xj        t6          j        z  c_        |!                     |#tA          |%|&tB          tB          |'¬¦  «        f¦  «         �Œog }(|!D ]¹\  })}*	 |* "                    |¬¦  «        \  }+},nH# tF          $ r; |* $                    ¦   «          |* "                    ¦   «         \  }-}.tK          d¦  «        ‚w xY wd|,v r%|r#tM          |, '                    dd¦  «        ¦  «        ‚|�|(tQ          ||)|||¬¦  «        z  }(Œ«|( ||+¦  «        z  }(Œº	 |rtS          j*        |¦  «         n# |rtS          j*        |¦  «         w w xY w|(S )ab  Function wrapping pdftoppm and pdftocairo

    :param pdf_path: Path to the PDF that you want to convert
    :type pdf_path: Union[str, PurePath]
    :param dpi: Image quality in DPI (default 200), defaults to 200
    :type dpi: int, optional
    :param output_folder: Write the resulting images to a folder (instead of directly in memory), defaults to None
    :type output_folder: Union[str, PurePath], optional
    :param first_page: First page to process, defaults to None
    :type first_page: int, optional
    :param last_page: Last page to process before stopping, defaults to None
    :type last_page: int, optional
    :param fmt: Output image format, defaults to "ppm"
    :type fmt: str, optional
    :param jpegopt: jpeg options `quality`, `progressive`, and `optimize` (only for jpeg format), defaults to None
    :type jpegopt: Dict, optional
    :param thread_count: How many threads we are allowed to spawn for processing, defaults to 1
    :type thread_count: int, optional
    :param userpw: PDF's password, defaults to None
    :type userpw: str, optional
    :param ownerpw: PDF's owner password, defaults to None
    :type ownerpw: str, optional
    :param use_cropbox: Use cropbox instead of mediabox, defaults to False
    :type use_cropbox: bool, optional
    :param strict: When a Syntax Error is thrown, it will be raised as an Exception, defaults to False
    :type strict: bool, optional
    :param transparent: Output with a transparent background instead of a white one, defaults to False
    :type transparent: bool, optional
    :param single_file: Uses the -singlefile option from pdftoppm/pdftocairo, defaults to False
    :type single_file: bool, optional
    :param output_file: What is the output filename or generator, defaults to uuid_generator()
    :type output_file: Any, optional
    :param poppler_path: Path to look for poppler binaries, defaults to None
    :type poppler_path: Union[str, PurePath], optional
    :param grayscale: Output grayscale image(s), defaults to False
    :type grayscale: bool, optional
    :param size: Size of the resulting image(s), uses the Pillow (width, height) standard, defaults to None
    :type size: Union[Tuple, int], optional
    :param paths_only: Don't load image(s), return paths instead (requires output_folder), defaults to False
    :type paths_only: bool, optional
    :param use_pdftocairo: Use pdftocairo instead of pdftoppm, may help performance, defaults to False
    :type use_pdftocairo: bool, optional
    :param timeout: Raise PDFPopplerTimeoutError after the given time, defaults to None
    :type timeout: int, optional
    :param hide_annotations: Hide PDF annotations in the output, defaults to False
    :type hide_annotations: bool, optional
    :raises NotImplementedError: Raised when conflicting parameters are given (hide_annotations for pdftocairo)
    :raises PDFPopplerTimeoutError: Raised after the timeout for the image processing is exceeded
    :raises PDFSyntaxError: Raised if there is a syntax error in the PDF and strict=True
    :return: A list of Pillow images, one for each page between first_page and last_page
    :rtype: List[Image.Image]
    r   r   )r.   r   Ú
pdftocairoÚpdftoppmr   é9   NéS   Fr   Tz-rz4Hide annotations flag not implemented in pdftocairo.ú:ÚLD_LIBRARY_PATHÚ ÚWindows)ÚenvÚstdoutÚstderrÚstartupinfo©r3   zRun poppler timeout.s   Syntax ErrorÚutf8Úignore)Ú	in_memory)+Ú
isinstancer   Úas_posixÚpdfinfo_from_pathÚ_parse_formatÚTRANSPARENT_FILE_TYPESÚ_get_poppler_versionÚtypesÚGeneratorTyper   Úiterr   ÚtempfileÚmkdtempÚrangeÚnextÚintÚ_build_commandÚstrÚNotImplementedErrorÚ_get_command_pathÚosÚenvironÚcopyÚgetÚplatformÚsystemÚ
subprocessÚSTARTUPINFOÚdwFlagsÚSTARTF_USESHOWWINDOWÚappendr   r   Úcommunicater   Úkillr   r   ÚdecodeÚ_load_from_output_folderÚshutilÚrmtree)/r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   Ú
page_countÚ
parsed_fmtÚfinal_extensionÚparse_buffer_funcÚuse_pdfcairo_formatÚuse_pdfcairoÚpoppler_version_majorÚpoppler_version_minorÚauto_temp_dirÚreminderÚcurrent_pageÚ	processesÚ_Úthread_output_fileÚthread_page_countÚargsr?   rB   ÚimagesÚuidÚprocÚdataÚerrÚoutsÚerrss/                                                  úQ/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pdf2image/pdf2image.pyÚconvert_from_pathr‚   %   s…  € ðZ ð ˜# š,˜,Øˆõ �(�HÑ%Ô%ð 'Ø×$Ò$Ñ&Ô&ˆå�-¥Ñ*Ô*ð 1Ø%×.Ò.Ñ0Ô0ˆå�,¥Ñ)Ô)ð /Ø#×,Ò,Ñ.Ô.ˆå"Ø�&˜'°ðñ ô àô€Jõ
 KXØˆYñKô KÑG€J�Ð!2Ð4Gð 	ð 	BØð	BàÐ@˜JÕ*@Ð@ð õ 4HØ$Ð4ˆˆ¨*À<ð4ñ 4ô 4Ñ0ÐÐ0ð  Ò!Ð!Ð&;¸rÒ&AÐ&AØˆà Ò!Ð!Ð&;¸rÒ&AÐ&AØ Ðõ �k¥5Ô#6Ñ7Ô7ð 9Å
ØÕ(ñAô Að 9ð ð 	9Ý ˜}Ñ-Ô-ˆKØˆLˆLå+¨KÑ8Ô8ˆKà�aÒÐØˆàÐ˜Z¨!š^˜^Øˆ
àÐ˜I¨
Ò2Ð2Øˆ	à�IÒÐØˆ	ða)ØˆØÐ  \Ð Ý$Ô,Ñ.Ô.ˆMØ ˆMð  Ñ+¨aÑ/ˆ
à˜*Ò$Ð$Ø%ˆLà Ñ,ˆØ!ˆØˆ	Ý�|Ñ$Ô$ð 7	ñ 7	ˆAÝ!% kÑ!2Ô!2Ðð !+¨lÑ :½SÀÈAÂÑ=NÔ=NÑ NÐå!Ø•s˜3‘x”x Ð*ØØØÐ0Ñ0°1Ñ4ØØØ"ØØØØØØØØ ñô ˆDð$ ð LØ#ð Ý-ØNñô ð õ *¨,¸ÑEÔEÐFÈÑM��å)¨*°lÑCÔCÐDÀtÑK�ð (Ð*;Ñ;ˆLØ�˜H qšLÑ)Ô)Ñ)ˆHå”*—/’/Ñ#Ô#ˆCØÐ'à  3Ñ&¨¯ªÐ1BÀBÑ)GÔ)GÑGð Ð%Ñ&ð ˆKÝŒÑ Ô  IÒ-Ð-å(Ô4Ñ6Ô6�ØÐ#Ô#¥zÔ'FÑFÐ#Ô#Ø×Òà&ÝØ #­d½4È[ðñ ô ðñô ð ñ ð ˆà"ð 	2ð 	2‰IˆC�ðEØ ×,Ò,°WÐ,Ñ=Ô=‘	��c�cøÝ!ð Eð Eð EØ—	’	‘”�Ø!×-Ò-Ñ/Ô/‘
��dÝ,Ð-CÑDÔDÐDðEøøøð
  #Ð%Ð%¨&Ð%Ý$ S§Z¢Z°¸Ñ%AÔ%AÑBÔBÐBàÐ(ØÕ2Ø!ØØ#ØØ+ðñ ô ñ ��ð Ð+Ð+¨DÑ1Ô1Ñ1��ð)	2ð, ð 	)ÝŒM˜-Ñ(Ô(Ð(øøð ð 	)ÝŒM˜-Ñ(Ô(Ð(Ð(ð	)øøøð €Ms'   Å/F;O7 Ì+MÍO7 ÍAN
Î
AO7 Ï7PÚpdf_filec                 óp  — t          j        ¦   «         \  }}	 t          |d¦  «        5 }|                     | ¦  «         |                     ¦   «          t          |j        fi d|“d|“d|“d|“d|“d|“d|“d	|“d
|	“d|
“d|“d|“d|“d|“d|“d|“d|“d|“d|“d|“d|“Žcddd¦  «         t          j        |¦  «         t          j	        |¦  «         S # 1 swxY w Y   	 t          j        |¦  «         t          j	        |¦  «         dS # t          j        |¦  «         t          j	        |¦  «         w xY w)aW  Function wrapping pdftoppm and pdftocairo.

    :param pdf_bytes: Bytes of the PDF that you want to convert
    :type pdf_bytes: bytes
    :param dpi: Image quality in DPI (default 200), defaults to 200
    :type dpi: int, optional
    :param output_folder: Write the resulting images to a folder (instead of directly in memory), defaults to None
    :type output_folder: Union[str, PurePath], optional
    :param first_page: First page to process, defaults to None
    :type first_page: int, optional
    :param last_page: Last page to process before stopping, defaults to None
    :type last_page: int, optional
    :param fmt: Output image format, defaults to "ppm"
    :type fmt: str, optional
    :param jpegopt: jpeg options `quality`, `progressive`, and `optimize` (only for jpeg format), defaults to None
    :type jpegopt: Dict, optional
    :param thread_count: How many threads we are allowed to spawn for processing, defaults to 1
    :type thread_count: int, optional
    :param userpw: PDF's password, defaults to None
    :type userpw: str, optional
    :param ownerpw: PDF's owner password, defaults to None
    :type ownerpw: str, optional
    :param use_cropbox: Use cropbox instead of mediabox, defaults to False
    :type use_cropbox: bool, optional
    :param strict: When a Syntax Error is thrown, it will be raised as an Exception, defaults to False
    :type strict: bool, optional
    :param transparent: Output with a transparent background instead of a white one, defaults to False
    :type transparent: bool, optional
    :param single_file: Uses the -singlefile option from pdftoppm/pdftocairo, defaults to False
    :type single_file: bool, optional
    :param output_file: What is the output filename or generator, defaults to uuid_generator()
    :type output_file: Any, optional
    :param poppler_path: Path to look for poppler binaries, defaults to None
    :type poppler_path: Union[str, PurePath], optional
    :param grayscale: Output grayscale image(s), defaults to False
    :type grayscale: bool, optional
    :param size: Size of the resulting image(s), uses the Pillow (width, height) standard, defaults to None
    :type size: Union[Tuple, int], optional
    :param paths_only: Don't load image(s), return paths instead (requires output_folder), defaults to False
    :type paths_only: bool, optional
    :param use_pdftocairo: Use pdftocairo instead of pdftoppm, may help performance, defaults to False
    :type use_pdftocairo: bool, optional
    :param timeout: Raise PDFPopplerTimeoutError after the given time, defaults to None
    :type timeout: int, optional
    :param hide_annotations: Hide PDF annotations in the output, defaults to False
    :type hide_annotations: bool, optional
    :raises NotImplementedError: Raised when conflicting parameters are given (hide_annotations for pdftocairo)
    :raises PDFPopplerTimeoutError: Raised after the timeout for the image processing is exceeded
    :raises PDFSyntaxError: Raised if there is a syntax error in the PDF and strict=True
    :return: A list of Pillow images, one for each page between first_page and last_page
    :rtype: List[Image.Image]
    Úwbr    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   N)
rP   ÚmkstempÚopenÚwriteÚflushr‚   ÚnamerY   ÚcloseÚremove)rƒ   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   ÚfhÚtemp_filenameÚfs                            r�   Úconvert_from_bytesr�     s"  € õZ !Ô(Ñ*Ô*Ñ€Bˆð!Ý�- Ñ&Ô&ð 	¨!Ø�GŠG�HÑÔÐØ�GŠG‰IŒIˆIÝ$Ø”ðð ð à�Cðð ,˜mðð &˜:ð	ð
 $˜)ðð �Cðð  ˜ðð *˜\ðð �vðð  ˜ðð (˜Kðð �vðð (˜Kðð (˜Kðð (˜Kðð  *˜\ð!ð" $˜)ð#ð$ �Tð%ð& &˜:ð'ð(  .˜~ð)ð*  ˜ð+ð, "2Ð!1ð-ð	ð 	ð 	ð 	ñ 	ô 	ð 	õ8 	Œ�‰ŒˆÝ
Œ	�-Ñ Ô Ð Ð ð;	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	õ8 	Œ�‰ŒˆÝ
Œ	�-Ñ Ô Ð Ð Ð øõ 	Œ�‰ŒˆÝ
Œ	�-Ñ Ô Ð Ð øøøs/   ˜D ¨A8CÂ D ÃCÃD ÃCÃD Ä*D5ry   c           	      óx  — |	r|                       d¦  «         |r|                       d¦  «         |
r|t          v r|                       d¦  «         |�$|                      dt          |¦  «        g¦  «         |�$|                      dt          |¦  «        g¦  «         |dvr|                       d|z   ¦  «         |dv r&|r$|                      d	t	          |¦  «        g¦  «         |r|                       d
¦  «         |�3|                       t
          j                             ||¦  «        ¦  «         |�|                      d|g¦  «         |�|                      d|g¦  «         |r|                       d¦  «         |€�nÀt          |t          ¦  «        rÜt          |¦  «        dk    rÉ|d         �8|                      dt          t          |d         ¦  «        ¦  «        g¦  «         n$|                      dt          d¦  «        g¦  «         |d         �8|                      dt          t          |d         ¦  «        ¦  «        g¦  «         nô|                      dt          d¦  «        g¦  «         nÏt          |t          ¦  «        rKt          |¦  «        dk    r8|                      dt          t          |d         ¦  «        ¦  «        g¦  «         not          |t          ¦  «        st          |t          ¦  «        r2|                      dt          t          |¦  «        ¦  «        g¦  «         nt          d|› d�¦  «        ‚| S )Nz-cropboxz-hide-annotationsz-transpú-fú-l)Úpgmr   ú-©ÚjpegÚjpgz-jpegoptz-singlefileú-upwú-opwz-grayé   r   z-scale-to-xéÿÿÿÿr   z-scale-to-yz	-scale-tozSize z is not a tuple or an integer)rc   rK   ÚextendrV   Ú_parse_jpegoptrY   ÚpathÚjoinrG   ÚtupleÚlenrT   ÚfloatÚ
ValueError)ry   r!   r"   r#   r$   r%   r-   r'   r(   r)   r+   r,   r/   r0   r4   s                  r�   rU   rU   „  s  € ð" ð  Ø�Š�JÑÔÐàð )Ø�ŠÐ'Ñ(Ô(Ð(àð �sÕ4Ð4Ð4Ø�Š�IÑÔÐàÐØ�Š�T�3˜z™?œ?Ð+Ñ,Ô,Ð,àÐØ�Š�T�3˜y™>œ>Ð*Ñ+Ô+Ð+à
�.Ð Ð Ø�Š�C˜#‘IÑÔÐà
ˆoÐÐ 'ÐØ�Š�Z¥°Ñ!8Ô!8Ð9Ñ:Ô:Ð:àð #Ø�Š�MÑ"Ô"Ð"àÐ Ø�Š•B”G—L’L °Ñ<Ô<Ñ=Ô=Ð=àÐØ�Š�V˜VÐ$Ñ%Ô%Ð%àÐØ�Š�V˜WÐ%Ñ&Ô&Ð&àð Ø�Š�GÑÔÐà€|ÙÝ	�D�%Ñ	 Ô	 ð F¥S¨¡Y¤Y°!¢^ ^Ø�Œ7ÐØ�KŠK˜­­C°°Q´©L¬LÑ(9Ô(9Ð:Ñ;Ô;Ð;Ð;à�KŠK˜­¨B©¬Ð0Ñ1Ô1Ð1Ø�Œ7ÐØ�KŠK˜­­C°°Q´©L¬LÑ(9Ô(9Ð:Ñ;Ô;Ð;Ð;à�KŠK˜­¨B©¬Ð0Ñ1Ô1Ð1Ð1Ý	�D�%Ñ	 Ô	 ð F¥S¨¡Y¤Y°!¢^ ^Ø�Š�[¥#¥c¨$¨q¬'¡l¤lÑ"3Ô"3Ð4Ñ5Ô5Ð5Ð5Ý	�D�#Ñ	Ô	ð F¥*¨Tµ5Ñ"9Ô"9ð FØ�Š�[¥#¥c¨$¡i¤i¡.¤.Ð1Ñ2Ô2Ð2Ð2åÐD ÐDÐDÐDÑEÔEÐEà€Kó    c                 óÞ   — |                       ¦   «         } | d         dk    r
| dd …         } | dv rddt          dfS | dk    rddt          dfS | d	v rd
S | dk    r|rddt          dfS ddt          dfS )Nr   ú.r   r–   r—   r˜   Fr   )Útifr   )r   r¨   NTr   r”   )Úlowerr   r   r   r   )r$   r/   s     r�   rJ   rJ   Î  s›   € Ø
�)Š)‰+Œ+€CØ
ˆ1„v�‚}€}Ø�!�"�"ŒgˆØ
ˆoÐÐØ�uÕ2°EÐ9Ð9Ø
ˆe‚|€|Ø�eÕ0°%Ð7Ð7Ø
ˆoÐÐØ(Ð(Ø
ˆe‚|€|˜	€|Ø�eÕ0°%Ð7Ð7à�%Õ,¨eÐ3Ð3r¥   c                 óÎ   — g }|                       ¦   «         D ]:\  }}|du rd}|du rd}|                     d                     ||¦  «        ¦  «         Œ;d                     |¦  «        S )NTÚyFÚnz{}={}ú,)Úitemsrc   Úformatr    )r%   ÚpartsÚkÚvs       r�   rž   rž   Þ  sq   € Ø€EØ—’‘”ð +ð +‰ˆˆ1Ø�ˆ9ˆ9ØˆAØ�ˆ:ˆ:ØˆAØ�Š�W—^’^ A qÑ)Ô)Ñ*Ô*Ð*Ð*Ø�8Š8�E‰?Œ?Ðr¥   Úcommandc                 ó‚   — t          j        ¦   «         dk    r| dz   } |� t          j                             || ¦  «        } | S )Nr>   z.exe)r]   r^   rY   rŸ   r    )r³   r.   s     r�   rX   rX   é  s?   € Ý„ÑÔ˜IÒ%Ð%Ø˜FÑ"ˆàÐÝ”'—,’,˜|¨WÑ5Ô5ˆà€Nr¥   c                 óÀ  — t          | |¦  «        dg} t          j                             ¦   «         }|�|dz   |                     dd¦  «        z   |d<   t          | |t          t          ¬¦  «        }	 |                     |¬¦  «        \  }}nH# t          $ r; | 	                    ¦   «          |                     ¦   «         \  }}t          d¦  «        ‚w xY w	 |                     dd	¦  «                             d
¦  «        d                              d¦  «        d                              d¦  «        }	t          |	d         ¦  «        t          |	d         ¦  «        fS #  Y dS xY w)Nz-vr;   r<   r=   ©r?   r@   rA   rC   úRun poppler poppler timeout.rD   rE   ú
r   ú rœ   r§   r   )r   é   )rX   rY   rZ   r[   r\   r   r   rd   r   re   r   rf   ÚsplitrT   )
r³   r.   r3   r?   r|   r}   r~   r   r€   Úversions
             r�   rL   rL   ó  sX  € õ ! ¨,Ñ7Ô7¸Ð>€Gå
Œ*�/Š/Ñ
Ô
€CØÐØ!-°Ñ!3°c·g²gÐ>OÐQSÑ6TÔ6TÑ!TˆÐÑÝ�˜c­$µtÐ<Ñ<Ô<€DðEØ×$Ò$¨WÐ$Ñ5Ô5‰	ˆˆcˆcøÝð Eð Eð EØ�	Š	‰ŒˆØ×%Ò%Ñ'Ô'‰
ˆˆdÝ$Ð%CÑDÔDÐDðEøøøð
à—*’*˜V XÑ.Ô.×4Ò4°TÑ:Ô:¸1Ô=×CÒCÀCÑHÔHÈÔL×RÒRÐSVÑWÔWˆÝ�7˜1”:‰Œ¥ G¨A¤J¡¤Ð/Ð/øðàˆuˆuøøøs   Á0B
 Â
ACÃBE ÅEÚrawdatesc                 óâ  — 	 t          d|¦  «        | g}|�|                     d|g¦  «         |�|                     d|g¦  «         |r|                     dg¦  «         |r$|                     dt          |¦  «        g¦  «         |r$|                     dt          |¦  «        g¦  «         t          j                             ¦   «         }	|�|dz   |	                     d	d
¦  «        z   |	d	<   t          ||	t          t          ¬¦  «        }
	 |
 	                    |¬¦  «        \  }}nH# t          $ r; |
                     ¦   «          |
 	                    ¦   «         \  }}t          d¦  «        ‚w xY wi }|                     dd¦  «                             d¦  «        D ]ƒ}|                     d¦  «        }|d         d                     |dd…         ¦  «        }}|d
k    rA|t           v r!t#          |                     ¦   «         ¦  «        n|                     ¦   «         ||<   Œ„d|vrt&          ‚|S # t(          $ r t+          d¦  «        ‚t&          $ r' t-          d|                     dd¦  «        › �¦  «        ‚w xY w)aâ  Function wrapping poppler's pdfinfo utility and returns the result as a dictionary.

    :param pdf_path: Path to the PDF that you want to convert
    :type pdf_path: str
    :param userpw: PDF's password, defaults to None
    :type userpw: str, optional
    :param ownerpw: PDF's owner password, defaults to None
    :type ownerpw: str, optional
    :param poppler_path: Path to look for poppler binaries, defaults to None
    :type poppler_path: Union[str, PurePath], optional
    :param rawdates: Return the undecoded data strings, defaults to False
    :type rawdates: bool, optional
    :param timeout: Raise PDFPopplerTimeoutError after the given time, defaults to None
    :type timeout: int, optional
    :param first_page: First page to process, defaults to None
    :type first_page: int, optional
    :param last_page: Last page to process before stopping, defaults to None
    :type last_page: int, optional
    :raises PDFPopplerTimeoutError: Raised after the timeout for the image processing is exceeded
    :raises PDFInfoNotInstalledError: Raised if pdfinfo is not installed
    :raises PDFPageCountError: Raised if the output could not be parsed
    :return: Dictionary containing various information on the PDF
    :rtype: Dict
    ÚpdfinfoNr™   rš   z	-rawdatesr’   r“   r;   r<   r=   r¶   rC   r·   rD   rE   r¸   r   r   r   z;Unable to get page count. Is poppler installed and in PATH?zUnable to get page count.
)rX   r�   rV   rY   rZ   r[   r\   r   r   rd   r   re   r   rf   r»   r    ÚPDFINFO_CONVERT_TO_INTrT   Ústripr¤   ÚOSErrorr   r   )r   r'   r(   r.   r½   r3   r"   r#   r³   r?   r|   Úoutr~   r   r€   ÚdÚfieldÚsfÚkeyÚvalues                       r�   rI   rI     s±  € ðD6
Ý$ Y°Ñ=Ô=¸xÐHˆàÐØ�NŠN˜F FÐ+Ñ,Ô,Ð,àÐØ�NŠN˜F GÐ,Ñ-Ô-Ð-àð 	*Ø�NŠN˜K˜=Ñ)Ô)Ð)àð 	4Ø�NŠN˜D¥# j¡/¤/Ð2Ñ3Ô3Ð3àð 	3Ø�NŠN˜D¥# i¡.¤.Ð1Ñ2Ô2Ð2õ Œj�oŠoÑÔˆØÐ#Ø%1°CÑ%7¸#¿'º'ÐBSÐUWÑ:XÔ:XÑ%XˆCÐ!Ñ"Ý�W #­d½4Ð@Ñ@Ô@ˆð	IØ×'Ò'°Ð'Ñ8Ô8‰HˆC��øÝð 	Ið 	Ið 	IØ�IŠI‰KŒKˆKØ×)Ò)Ñ+Ô+‰JˆD�$Ý(Ð)GÑHÔHÐHð	Iøøøð
 ˆØ—Z’Z ¨Ñ1Ô1×7Ò7¸Ñ=Ô=ð 	ð 	ˆEØ—’˜SÑ!Ô!ˆBØ˜Aœ §¢¨¨A¨B¨B¬Ñ 0Ô 0�ˆCØ�bŠyˆyð Õ4Ð4Ð4õ ˜Ÿš™œÑ&Ô&Ð&àŸš™œð �#‘øð ˜!ÐÐÝÐàˆøåð 
ð 
ð 
Ý&ØIñ
ô 
ð 	
õ ð 
ð 
ð 
ÝØH¨#¯*ª*°V¸XÑ*FÔ*FÐHÐHñ
ô 
ð 	
ð
øøøs'   ‚DH% ÄD! Ä H% Ä!AE&Å&B>H% È%A	I.Ú	pdf_bytesc           
      óª  — t          j        ¦   «         \  }}		 t          |	d¦  «        5 }
|
                     | ¦  «         |
                     ¦   «          ddd¦  «         n# 1 swxY w Y   t          |	|||||||¬¦  «        t          j        |¦  «         t          j        |	¦  «         S # t          j        |¦  «         t          j        |	¦  «         w xY w)aô  Function wrapping poppler's pdfinfo utility and returns the result as a dictionary.

    :param pdf_bytes: Bytes of the PDF that you want to convert
    :type pdf_bytes: bytes
    :param userpw: PDF's password, defaults to None
    :type userpw: str, optional
    :param ownerpw: PDF's owner password, defaults to None
    :type ownerpw: str, optional
    :param poppler_path: Path to look for poppler binaries, defaults to None
    :type poppler_path: Union[str, PurePath], optional
    :param rawdates: Return the undecoded data strings, defaults to False
    :type rawdates: bool, optional
    :param timeout: Raise PDFPopplerTimeoutError after the given time, defaults to None
    :type timeout: int, optional
    :param first_page: First page to process, defaults to None
    :type first_page: int, optional
    :param last_page: Last page to process before stopping, defaults to None
    :type last_page: int, optional
    :return: Dictionary containing various information on the PDF
    :rtype: Dict
    r…   N)r'   r(   r.   r½   r3   r"   r#   )	rP   r†   r‡   rˆ   r‰   rI   rY   r‹   rŒ   )rÉ   r'   r(   r.   r½   r3   r"   r#   r�   rŽ   r�   s              r�   Úpdfinfo_from_bytesrË   h  s  € õ> !Ô(Ñ*Ô*Ñ€Bˆð!Ý�- Ñ&Ô&ð 	¨!Ø�GŠG�IÑÔÐØ�GŠG‰IŒIˆIð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ !ØØØØ%ØØØ!Øð	
ñ 	
ô 	
õ 	Œ�‰ŒˆÝ
Œ	�-Ñ Ô Ð Ð øõ 	Œ�‰ŒˆÝ
Œ	�-Ñ Ô Ð Ð øøøs.   ˜B( ¨*AÁB( ÁA"Á"B( Á%A"Á&B( Â(*CÚextrF   c           	      óè  — g }t          t          j        | ¦  «        ¦  «        D ]Í}|                     |¦  «        r¶|                     d¦  «        d         |k    r—|r4|                     t          j                             | |¦  «        ¦  «         Œl|                     t          j	        t          j                             | |¦  «        ¦  «        ¦  «         |r|d          
                    ¦   «          ŒÎ|S )Nr§   rœ   )ÚsortedrY   ÚlistdirÚ
startswithr»   rc   rŸ   r    r   r‡   Úload)r!   r-   rÌ   r1   rF   rz   r�   s          r�   rg   rg   ›  sÒ   € ð €FÝ•B”J˜}Ñ-Ô-Ñ.Ô.ð &ð &ˆØ�<Š<˜Ñ$Ô$ð 	&¨¯ª°©¬°bÔ)9¸SÒ)@Ð)@Øð &Ø—’�bœgŸlšl¨=¸!Ñ<Ô<Ñ=Ô=Ð=Ð=à—’�eœj­¬¯ª°mÀQÑ)GÔ)GÑHÔHÑIÔIÐIØð &Ø˜2”J—O’OÑ%Ô%Ð%øØ€Mr¥   )F)N)NN)NNNFNNN)3Ú__doc__rY   r]   rP   rM   rh   r_   r   r   r   Útypingr   r   r   r	   r
   r   Úpathlibr   ÚPILr   Úpdf2image.generatorsr   r   r   Úpdf2image.parsersr   r   r   r   Úpdf2image.exceptionsr   r   r   r   rK   rÀ   rV   rT   Úboolr‚   Úbytesr�   rU   rJ   rž   rX   rL   rI   rË   rg   © r¥   r�   ú<module>rÜ      s°  ððð ð
 
€	€	€	Ø €€€Ø €€€Ø €€€Ø €€€Ø Ð Ð Ð Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ð :Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à WÐ WÐ WÐ WÐ WÐ WÐ WÐ WÐ WÐ Wðð ð ð ð ð ð ð ð ð ð ð ðð ð ð ð ð ð ð ð ð ð ð ð   ˜Ð Ø!˜Ð ð
 Ø*.ØØØØØØØØØØØØ%�~Ñ'Ô'Ø)-ØØ"ØØ ØØ"ð-mð mØ�C˜�MÔ"ðmà	ðmð ˜˜h˜Ô'ðmð ð	mð
 ðmð 
ðmð ðmð ðmð ðmð ðmð ðmð ðmð ðmð ðmð ðmð  ˜˜X˜Ô&ð!mð" ð#mð$ ��s�
Ô
ð%mð& ð'mð( ð)mð* ð+mð, ð-mð. 
ˆ%Œ+Ôð/mð mð mð mðd Ø*.ØØØØØØØØØØØØ(6¨Ñ(8Ô(8Ø)-ØØ"ØØ ØØ"ð-l!ð l!Øðl!à	ðl!ð ˜˜h˜Ô'ðl!ð ð	l!ð
 ðl!ð 
ðl!ð ðl!ð ðl!ð ðl!ð ðl!ð ðl!ð ðl!ð ðl!ð ðl!ð �s˜H�}Ô%ðl!ð  ˜˜X˜Ô&ð!l!ð" ð#l!ð$ ��s�
Ô
ð%l!ð& ð'l!ð( ð)l!ð* ð+l!ð, ð-l!ð. 
ˆ%Œ+Ôð/l!ð l!ð l!ð l!ð^GØ
ðGàðGð ðGð ð	Gð
 
ðGð ðGð ðGð ðGð ðGð ðGð ðGð ðGð ðGð ��U˜3 ˜8”_Ð$Ô
%ðGð ðGð  
ˆ#„Yð!Gð Gð Gð GðT4ð 4�sð 4 tð 4¸¸cÀ3ÈÐRVÐ>VÔ8Wð 4ð 4ð 4ð 4ð ˜Dð  Sð ð ð ð ðð ˜sð °#ð Àð ð ð ð ð <@ðð ØðØ #ðØ58ðà
ˆ3�ˆ8„_ðð ð ð ð8 ØØØØØØðX
ð X
ØðX
àðX
ð ðX
ð ð	X
ð
 ðX
ð ðX
ð ðX
ð ðX
ð 
ðX
ð X
ð X
ð X
ðz ØØØØØØð0!ð 0!Øð0!àð0!ð ð0!ð ð	0!ð
 ð0!ð ð0!ð ð0!ð ð0!ð 
ð0!ð 0!ð 0!ð 0!ðp ðð Øðàðð 
ðð ð	ð
 ðð 
ˆ%Œ+Ôðð ð ð ð ð r¥   