§
    dÒ³g“  ã                   ó   — d dl Z d dlZd dlmZ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 ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ ddlmZ  ej        e¦  «        Z ed¦  «        Z ed¦  «        Z  G d„ d¦  «        Z!dS )é    N)ÚBinaryIOÚ	ContainerÚDictÚIteratorÚListÚOptionalÚTuple)ÚRecté   )Úsettings)ÚPDFDocumentÚPDFTextExtractionNotAllowedÚPDFNoPageLabels)Ú	PDFParser)ÚPDFObjectNotFound)Ú
dict_value)Ú	int_value)Ú
list_value)Úresolve1)ÚLITÚPageÚPagesc                   óÞ   — e Zd ZdZdedededee         ddf
d„Zdefd	„Z	h d
£Z
ededed          fd„¦   «         Ze	 	 	 	 	 ddedeee                  dededededed          fd„¦   «         ZdS )ÚPDFPageak  An object that holds the information about a page.

    A PDFPage object is merely a convenience class that has a set
    of keys and values, which describe the properties of a page
    and point to its contents.

    Attributes:
      doc: a PDFDocument object.
      pageid: any Python object that can uniquely identify the page.
      attrs: a dictionary of page attributes.
      contents: a list of PDFStream objects that represents the page content.
      lastmod: the last modified time of the page.
      resources: a dictionary of resources used by the page.
      mediabox: the physical size of the page.
      cropbox: the crop rectangle of the page.
      rotate: the page rotation (in degree).
      annots: the page annotations.
      beads: a chain that represents natural reading order.
      label: the page's label (typically, the logical page number).
    ÚdocÚpageidÚattrsÚlabelÚreturnNc                 ó6  — || _         || _        t          |¦  «        | _        || _        t          | j                             d¦  «        ¦  «        | _        t          | j                             dt          ¦   «         ¦  «        ¦  «        | _	        t          | j        d         ¦  «        | _
        d| j        v r t          | j        d         ¦  «        | _        n| j
        | _        t          | j                             dd¦  «        ¦  «        dz   dz  | _        | j                             d¦  «        | _        | j                             d	¦  «        | _        d
| j        v rt          | j        d
         ¦  «        }ng }t!          |t"          ¦  «        s|g}|| _        dS )zßInitialize a page object.

        doc: a PDFDocument object.
        pageid: any Python object that can uniquely identify the page.
        attrs: a dictionary of page attributes.
        label: page label string.
        ÚLastModifiedÚ	ResourcesÚMediaBoxÚCropBoxÚRotater   ih  ÚAnnotsÚBÚContentsN)r   r   r   r   r   r   ÚgetÚlastmodÚdictÚ	resourcesÚmediaboxÚcropboxr   ÚrotateÚannotsÚbeadsÚ
isinstanceÚlistÚcontents)Úselfr   r   r   r   r4   s         úN/var/www/html/mpstechhub/venv/lib/python3.11/site-packages/pdfminer/pdfpage.pyÚ__init__zPDFPage.__init__-   sR  € ð ˆŒØˆŒÝ Ñ&Ô&ˆŒ
ØˆŒ
Ý ¤
§¢¨~Ñ >Ô >Ñ?Ô?ˆŒÝ/7ØŒJ�NŠN˜;­©¬Ñ/Ô/ñ0
ô 0
ˆŒõ ' t¤z°*Ô'=Ñ>Ô>ˆŒØ˜œ
Ð"Ð"Ý!)¨$¬*°YÔ*?Ñ!@Ô!@ˆDŒLˆLàœ=ˆDŒLÝ  ¤§¢°¸!Ñ!<Ô!<Ñ=Ô=ÀÑCÀsÑJˆŒØ”j—n’n XÑ.Ô.ˆŒØ”Z—^’^ CÑ(Ô(ˆŒ
Ø˜œÐ#Ð#Ý ¤
¨:Ô 6Ñ7Ô7ˆHˆHàˆHÝ˜(¥DÑ)Ô)ð 	"Ø �zˆHØ&.ˆŒˆˆó    c                 óB   — d                      | j        | j        ¦  «        S )Nz(<PDFPage: Resources={!r}, MediaBox={!r}>)Úformatr,   r-   )r5   s    r6   Ú__repr__zPDFPage.__repr__O   s#   € Ø9×@Ò@ØŒN˜DœMñ
ô 
ð 	
r8   >   r%   r$   r#   r"   Údocumentc              #   ó.  ‡ ‡‡	K  — dt           dt          t          t           f         dt          t          t
          t          t           t          t           t           f         f         f                  fˆ ˆˆ	fd„Š		 ‰                     ¦   «         }n$# t          $ r t          j	        d ¦  «        }Y nw xY wd}d‰j
        v rC ‰	‰j
        d         ‰j
        ¦  «        }|D ]$\  }} ‰ ‰||t          |¦  «        ¦  «        V — d}Œ%|s•‰j        D ]�}|                     ¦   «         D ]v}	 ‰                     |¦  «        }t          |t           ¦  «        r9|                     d¦  «        t$          u r ‰ ‰||t          |¦  «        ¦  «        V — Œg# t&          $ r Y Œsw xY wŒŽd S )	NÚobjÚparentr   c              3   óÈ  •K  — t          | t          ¦  «        r7| }t          ‰	                     |¦  «        ¦  «                             ¦   «         }n(| j        }t          | ¦  «                             ¦   «         }|                     ¦   «         D ]\  }}|‰j        v r	||vr|||<   Œ|                     d¦  «        }|€!t          j
        s|                     d¦  «        }|t          u rQd|v rMt                               d|d         ¦  «         t          |d         ¦  «        D ]} ‰
||¦  «        E d {V —† Œd S |t          u r#t                               d|¦  «         ||fV — d S d S )NÚTypeÚtypeÚKidszPages: Kids=%rzPage: %r)r2   Úintr   ÚgetobjÚcopyÚobjidÚitemsÚINHERITABLE_ATTRSr)   r   ÚSTRICTÚLITERAL_PAGESÚlogÚdebugr   ÚLITERAL_PAGE)r>   r?   rG   ÚtreeÚkÚvÚ	tree_typeÚcÚclsr<   Úsearchs           €€€r6   rU   z$PDFPage.create_pages.<locals>.searchX   s„  øè è € õ ˜#�sÑ#Ô#ð .Ø�Ý! (§/¢/°%Ñ"8Ô"8Ñ9Ô9×>Ò>Ñ@Ô@��ð œ	�Ý! #‘”×+Ò+Ñ-Ô-�Ø Ÿ,š,™.œ.ð  ð  ‘��AØ˜Ô-Ð-Ð-°!¸4°-°-Ø�D˜‘GøàŸš Ñ(Ô(ˆIØÐ ­¬Ð Ø ŸHšH VÑ,Ô,�	à�MÐ)Ð)¨f¸¨n¨nÝ—	’	Ð*¨D°¬LÑ9Ô9Ð9Ý# D¨¤LÑ1Ô1ð /ð /�AØ%˜v a¨™œÐ.Ð.Ð.Ð.Ð.Ð.Ð.Ð.ð/ð /à�lÐ*Ð*Ý—	’	˜* dÑ+Ô+Ð+Ø˜d�mÐ#Ð#Ð#Ð#Ð#ð +Ð*r8   Fr   TrA   )Úobjectr   Ústrr   r	   rD   Úget_page_labelsr   Ú	itertoolsÚrepeatÚcatalogÚnextÚxrefsÚ
get_objidsrE   r2   r+   r)   rN   r   )
rT   r<   Úpage_labelsÚpagesÚobjectsrG   rO   Úxrefr>   rU   s
   ``       @r6   Úcreate_pageszPDFPage.create_pagesV   sê  øøøè è € ð	$Ýð	$Ý!%¥c­6 kÔ!2ð	$å•e�C¥¥f­dµ6½6°>Ô.BÐ&BÔ!CÐCÔDÔEð	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð 	$ð6	1Ø3;×3KÒ3KÑ3MÔ3MˆKˆKøÝð 	1ð 	1ð 	1Ý#Ô*¨4Ñ0Ô0ˆKˆKˆKð	1øøøð ˆØ�hÔ&Ð&Ð&Ø�f˜XÔ-¨gÔ6¸Ô8HÑIÔIˆGØ!(ð ð ‘�˜Ø�c˜( E¨4µ°kÑ1BÔ1BÑCÔCÐCÐCÐCØ��Øð 		à œð ð �Ø!Ÿ_š_Ñ.Ô.ð ð �EðØ&Ÿošo¨eÑ4Ô4˜Ý% c­4Ñ0Ô0ð O°S·W²W¸V±_´_ÍÐ5TÐ5TØ"% # h°°s½DÀÑ<MÔ<MÑ"NÔ"NÐNÐNÐNøøÝ,ð ð ð Ø˜ðøøøðð 	ˆs%   Á7B ÂB-Â,B-Ä A#FÆ
FÆFr   Ú TFÚfpÚpagenosÚmaxpagesÚpasswordÚcachingÚcheck_extractablec              #   óD  K  — t          |¦  «        }t          |||¬¦  «        }|j        s5|rd|z  }	t          |	¦  «        ‚d|z  }
t                               |
¦  «         t          |                      |¦  «        ¦  «        D ]\  }}|r||vrŒ|V — |r||dz   k    r nŒd S )N)rh   ri   z"Text extraction is not allowed: %rzÂThe PDF %r contains a metadata field indicating that it should not allow text extraction. Ignoring this field and proceeding. Use the check_extractable if you want to raise an error in this caser   )r   r   Úis_extractabler   rL   ÚwarningÚ	enumeraterc   )rT   re   rf   rg   rh   ri   rj   Úparserr   Ú	error_msgÚwarning_msgÚpagenoÚpages                r6   Ú	get_pageszPDFPage.get_pagesŠ   sè   è è € õ ˜2‘”ˆå˜&¨8¸WÐEÑEÔEˆð Ô!ð 	)Ø ð )Ø@À2ÑE�	Ý1°)Ñ<Ô<Ð<ðAð DFñ	Fð õ —’˜KÑ(Ô(Ð(å'¨×(8Ò(8¸Ñ(=Ô(=Ñ>Ô>ð 	ð 	‰NˆV�TØð ˜F¨'Ð1Ð1ØØˆJˆJˆJØð ˜H¨°©
Ò2Ð2Ø�øØˆr8   )Nr   rd   TF)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   rV   r   rW   r7   r;   rI   Úclassmethodr   rc   r   r   rD   Úboolrt   © r8   r6   r   r      sC  € € € € € ðð ð* /Øð /Ø(.ð /Ø7=ð /ØFNÈsÄmð /à	ð /ð  /ð  /ð  /ðD
˜#ð 
ð 
ð 
ð 
ð
 GÐFÐFÐàð1 Kð 1°H¸YÔ4Gð 1ð 1ð 1ñ „[ð1ðf ð -1ØØØØ"'ð#ð #àð#ð ˜) Cœ.Ô)ð#ð ð	#ð
 ð#ð ð#ð  ð#ð 
�)Ô	ð#ð #ð #ñ „[ð#ð #ð #r8   r   )"rY   ÚloggingÚtypingr   r   r   r   r   r   r	   Úpdfminer.utilsr
   rd   r   Úpdfdocumentr   r   r   Ú	pdfparserr   Úpdftypesr   r   r   r   r   Úpsparserr   Ú	getLoggerru   rL   rN   rK   r   r{   r8   r6   ú<module>r„      sz  ðØ Ð Ð Ð Ø €€€Ø MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ MÐ Mà Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RØ  Ð  Ð  Ð  Ð  Ð  Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø  Ð  Ð  Ð  Ð  Ð  Ø Ð Ð Ð Ð Ð Ø  Ð  Ð  Ð  Ð  Ð  Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à€gÔ˜Ñ!Ô!€ð ˆs�6‰{Œ{€Ø��G‘”€ðWð Wð Wð Wð Wñ Wô Wð Wð Wð Wr8   