§
    ¡”jØ€  ã                   ó†  — 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 d dlmZ d dl	m
Z
 d dlmZmZmZmZmZmZ ej        dd…         dk    rd dlmZ nd dlmZ ej        d	k    rd d
lmZ nd d
lmZ ddlmZ ddlmZmZ ddlmZmZmZmZm Z m!Z!m"Z" ddl#m$Z$m%Z%m&Z& dZ'dZ( G d„ de¦  «        Z) G d„ de)¦  «        Z* G d„ de)¦  «        Z+ G d„ de)¦  «        Z,dZ- G d„ de.e)¦  «        Z/ G d„ de0e)¦  «        Z1 G d„ de2e)¦  «        Z3 G d „ d!e4e)¦  «        Z5 G d"„ d#e4e)¦  «        Z6d$e4d%e2fd&„Z7d'ed%eede*e,f                  fd(„Z8dS ))é    N)ÚSequence)Úlog10)Úiter_unpack)ÚAnyÚCallableÚClassVarÚOptionalÚUnionÚcasté   )é   é
   )Ú	TypeGuard)r   é   )ÚSelf©Ú_pdfdoc_encoding_rev)ÚPdfObjectProtocolÚPdfWriterProtocol)Ú
StreamTypeÚclasspropertyÚdeprecation_no_replacementÚdeprecation_with_replacementÚlogger_warningÚread_non_whitespaceÚread_until_regex)ÚSTREAM_TRUNCATED_PREMATURELYÚPdfReadErrorÚPdfStreamErrorzMathieu Fenniakzbiziqe@mathieu.fenniak.netc                   ó"  — e Zd ZU ej        Zed         ed<   ed         ed<   de	fd„Z
defd„Zdefd„Zd	edd fd
„Z	 	 dd	ededeeeee	f                           dd fd„Z	 ddd d	ededd fd„Zded          fd„Z	 ddededeef         ddfd„ZdS )Ú	PdfObject).zhashlib._HashÚ	hash_funcÚIndirectObjectÚindirect_referenceÚreturnc                 ó:   — t          | j        j        › d�¦  «        ‚)úq
        Used to detect modified object.

        Returns:
            Hash considering type and value.

        z& does not implement .hash_bin() so far©ÚNotImplementedErrorÚ	__class__Ú__name__©Úselfs    úb/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/pypdf/generic/_base.pyÚhash_binzPdfObject.hash_binE   s'   € õ "ØŒ~Ô&ÐNÐNÐNñ
ô 
ð 	
ó    c                 ó,   — | ›                       ¦   «         S ©N©Úencoder,   s    r.   Úhash_value_datazPdfObject.hash_value_dataQ   s   € Øˆy×ÒÑ!Ô!Ð!r0   c                 ó¶   — | j         j        › d|                      |                      ¦   «         ¦  «                             ¦   «         › �                     ¦   «         S )Nú:)r*   r+   r"   r5   Ú	hexdigestr4   r,   s    r.   Ú
hash_valuezPdfObject.hash_valueT   sW   € àŒ~Ô&ð Dð DØ�~Š~˜d×2Ò2Ñ4Ô4Ñ5Ô5×?Ò?ÑAÔAðDð Dç
Š&‰(Œ(ð	r0   Úpdf_destc                 ó,   — |                       |¦  «        S )a/  
        Clone object into pdf_dest (PdfWriterProtocol which is an interface for PdfWriter)
        without ensuring links. This is used in clone_document_from_root with incremental = True.

        Args:
          pdf_dest: Target to clone to.

        Returns:
          The cloned PdfObject

        )Úclone©r-   r:   s     r.   Ú	replicatezPdfObject.replicateZ   s   € ð �zŠz˜(Ñ#Ô#Ð#r0   F© Úforce_duplicateÚignore_fieldsc                 ó:   — t          | j        j        › d�¦  «        ‚)a›  
        Clone object into pdf_dest (PdfWriterProtocol which is an interface for PdfWriter).

        By default, this method will call ``_reference_clone`` (see ``_reference``).


        Args:
          pdf_dest: Target to clone to.
          force_duplicate: By default, if the object has already been cloned and referenced,
            the copy will be returned; when ``True``, a new copy will be created.
            (Default value = ``False``)
          ignore_fields: List/tuple of field names (for dictionaries) that will be ignored
            during cloning (applies to children duplication as well). If fields are to be
            considered for a limited number of levels, you have to add it as integer, for
            example ``[1,"/B","/TOTO"]`` means that ``"/B"`` will be ignored at the first
            level only but ``"/TOTO"`` on all levels.

        Returns:
          The cloned PdfObject

        z! does not implement .clone so farr(   ©r-   r:   r@   rA   s       r.   r<   zPdfObject.clonek   s'   € õ6 "ØŒ~Ô&ÐIÐIÐIñ
ô 
ð 	
r0   r<   c                 ó"  — 	 |s|j         �|j         j        |k    r|S n# t          $ r Y nw xY w	 | j         }n# t          $ r |cY S w xY w|j        r7|�5|j        |j        k    r%|j        t          |j        ¦  «        k    r|j        }nt          |j        ¦  «        dz   }|��t          |j        ¦  «        |j
        vrCi |j
        t          |j        ¦  «        <   |j        |j
        t          |j        ¦  «                 d<   |s„|j        |j
        t          |j        ¦  «                 v r^|                     |j
        t          |j        ¦  «                 |j                 ¦  «        }t          |t          ¦  «        s
J d¦   «         ‚|S ||j
        t          |j        ¦  «                 |j        <   	 ||j        |dz
  <   n># t          $ r1 |j                             |¦  «         t          |j        ¦  «        }Y nw xY wt!          |d|¦  «        |_         |S )aX  
        Reference the object within the _objects of pdf_dest only if
        indirect_reference attribute exists (which means the objects was
        already identified in xref/xobjstm) if object has been already
        referenced do nothing.

        Args:
          clone:
          pdf_dest:

        Returns:
          The clone

        Né   Ú	PreventGCÚmypyr   )r$   ÚpdfÚ	ExceptionÚAttributeErrorÚincrementalÚ_readerÚidnumÚlenÚ_objectsÚidÚ_id_translatedÚ
get_objectÚ
isinstancer!   Ú
IndexErrorÚappendr#   )r-   r<   r:   r@   ÚindÚiÚobjs          r.   Ú_reference_clonezPdfObject._reference_cloneŠ   s5  € ð"	à#ðàÔ,Ð8ØÔ,Ô0°HÒ<Ð<à�øøÝð 	ð 	ð 	ØˆDð	øøøð	ØÔ)ˆCˆCøÝð 	ð 	ð 	ØˆLˆLˆLð	øøøð Ô ð	+à�Ø”˜8Ô+Ò+Ð+Ø”	�S Ô!2Ñ3Ô3Ò3Ð3à”	ˆAˆAå�HÔ%Ñ&Ô&¨Ñ*ˆAØ‰?Ý�#”'‰{Œ{ (Ô"9Ð9Ð9Ø79�Ô'­¨3¬7©¬Ñ4ØDGÄG�Ô'­¨3¬7©¬Ô4°[ÑAà#ðà”I Ô!8½¸C¼G¹¼Ô!EÐEÐEà×)Ò)ØÔ+­B¨s¬w©K¬KÔ8¸¼ÔCñô �õ " #¥yÑ1Ô1Ð9Ð9°6Ñ9Ô9Ð9Ø�
Ø>?ˆHÔ#¥B s¤w¡K¤KÔ0°´Ñ;ð	'Ø',ˆHÔ˜a !™eÑ$Ð$øÝð 	'ð 	'ð 	'ØÔ×$Ò$ UÑ+Ô+Ð+Ý�HÔ%Ñ&Ô&ˆAˆAˆAð	'øøøõ $2°!°Q¸Ñ#AÔ#AˆÔ Øˆs-   ‚ ž
+ª+¯7 ·AÁAÆ-F; Æ;8G6Ç5G6c                 ó   — | S )zResolve indirect references.r?   r,   s    r.   rR   zPdfObject.get_objectÈ   ó   € àˆr0   NÚstreamÚencryption_keyc                 ó   — t           ‚r2   )r)   ©r-   r\   r]   s      r.   Úwrite_to_streamzPdfObject.write_to_streamÌ   s
   € õ "Ð!r0   ©Fr?   )Fr2   )r+   Ú
__module__Ú__qualname__ÚhashlibÚsha1r"   r   Ú__annotations__r	   Úintr/   Úbytesr5   r9   r   r>   Úboolr   r
   Ústrr<   rY   rR   r   r`   r?   r0   r.   r!   r!   @   s¶  € € € € € € à07´€IˆxÐ,Ô-Ð<Ð<Ñ<Ø Ð!1Ô2Ð2Ð2Ñ2ð

˜#ð 

ð 

ð 

ð 

ð" ð "ð "ð "ð "ð˜Eð ð ð ð ð$à#ð$ð 
ð$ð $ð $ð $ð( !&Ø=?ð	
ð 
à#ð
ð ð
ð   ¨¨s°C¨x¬Ô 9Ô:ð	
ð
 
ð
ð 
ð 
ð 
ð@ X]ð<ð <Ø ð<Ø,=ð<ØPTð<à	ð<ð <ð <ð <ð|˜H [Ô1ð ð ð ð ð
 MQð"ð "Ø ð"Ø27¸¸cÀ5Ð8HÔ2Ið"à	ð"ð "ð "ð "ð "ð "r0   r!   c                   óÒ   — e Zd Z	 	 ddededeeeee	f                           dd fd„Z
de	fd„Z	 dd
eded	eef         dd	fd„Zed
edd fd„¦   «         Zdefd„Zdedefd„Zde	fd„Zd	S )Ú
NullObjectFr?   r:   r@   rA   r%   c                 ód   — t          d|                      t          ¦   «         ||¦  «        ¦  «        S )úClone object into pdf_dest.rl   )r   rY   rl   rC   s       r.   r<   zNullObject.cloneÓ   s1   € õ Ø˜$×/Ò/µ
±´¸hÈÑXÔXñ
ô 
ð 	
r0   c                 ó,   — t          | j        f¦  «        S ©r'   ©Úhashr*   r,   s    r.   r/   zNullObject.hash_binÞ   s   € õ �T”^Ð%Ñ&Ô&Ð&r0   Nr\   r]   c                 óT   — |�t          dd¦  «         |                     d¦  «         d S )Nú/the encryption_key parameter of write_to_streamú5.0.0ó   null)r   Úwriter_   s      r.   r`   zNullObject.write_to_streamè   s;   € ð Ð%Ý&ØAÀ7ñô ð ð 	�Š�WÑÔÐÐÐr0   c                 ór   — |                       d¦  «        }|dk    rt          d¦  «        ‚t          ¦   «         S )Né   rv   zCould not read Null object)Úreadr   rl   )r\   Únulltxts     r.   Úread_from_streamzNullObject.read_from_streamñ   s5   € à—+’+˜a‘.”.ˆØ�gÒÐÝÐ;Ñ<Ô<Ð<Ý‰|Œ|Ðr0   c                 ó   — dS )Nrl   r?   r,   s    r.   Ú__repr__zNullObject.__repr__ø   s   € Øˆ|r0   Úotherc                 ó,   — t          |t          ¦  «        S r2   )rS   rl   ©r-   r   s     r.   Ú__eq__zNullObject.__eq__û   s   € Ý˜%¥Ñ,Ô,Ð,r0   c                 ó*   — |                       ¦   «         S r2   ©r/   r,   s    r.   Ú__hash__zNullObject.__hash__þ   ó   € Ø�}Š}‰ŒÐr0   ra   r2   )r+   rb   rc   r   ri   r	   r   r
   rj   rg   r<   r/   r   rh   r`   Ústaticmethodr|   r~   Úobjectr‚   r…   r?   r0   r.   rl   rl   Ò   sR  € € € € € ð !&Ø=?ð		
ð 	
à#ð	
ð ð	
ð   ¨¨s°C¨x¬Ô 9Ô:ð		
ð
 
ð	
ð 	
ð 	
ð 	
ð'˜#ð 'ð 'ð 'ð 'ð MQðð Ø ðØ27¸¸cÀ5Ð8HÔ2Iðà	ðð ð ð ð ð ð °ð ð ð ñ „\ðð˜#ð ð ð ð ð-˜Fð - tð -ð -ð -ð -ð˜#ð ð ð ð ð ð r0   rl   c                   óî   — e Zd ZU eed<   deddfd„Z	 	 ddeded	ee	e
eef                           dd fd
„Zdefd„Zdedefd„Zdefd„Zdefd„Z	 ddede
deef         ddfd„Zededd fd„¦   «         ZdS )ÚBooleanObjectÚvaluer%   Nc                 ó   — || _         d S r2   ©r‹   )r-   r‹   s     r.   Ú__init__zBooleanObject.__init__  s   € ØˆŒ
ˆ
ˆ
r0   Fr?   r:   r@   rA   c                 óp   — t          d|                      t          | j        ¦  «        ||¦  «        ¦  «        S )rn   rŠ   )r   rY   rŠ   r‹   rC   s       r.   r<   zBooleanObject.clone  s8   € õ ØØ×!Ò!¥-°´
Ñ";Ô";¸XÀÑWÔWñ
ô 
ð 	
r0   c                 ó8   — t          | j        | j        f¦  «        S rp   )rr   r*   r‹   r,   s    r.   r/   zBooleanObject.hash_bin  s   € õ �T”^ T¤ZÐ0Ñ1Ô1Ð1r0   Úoc                ó�   — t          |t          ¦  «        r| j        |j        k    S t          |t          ¦  «        r| j        |k    S dS )NF)rS   rŠ   r‹   ri   ©r-   r‘   s     r.   r‚   zBooleanObject.__eq__  sF   € Ý�a�Ñ'Ô'ð 	)Ø”: ¤Ò(Ð(Ý�a�ÑÔð 	#Ø”: ’?Ð"Øˆur0   c                 ó*   — |                       ¦   «         S r2   r„   r,   s    r.   r…   zBooleanObject.__hash__%  r†   r0   c                 ó   — | j         rdndS )NÚTrueÚFalser�   r,   s    r.   r~   zBooleanObject.__repr__(  s   € ØœÐ0ˆvˆv¨Ð0r0   r\   r]   c                 ó�   — |�t          dd¦  «         | j        r|                     d¦  «         d S |                     d¦  «         d S )Nrt   ru   ó   trues   false)r   r‹   rw   r_   s      r.   r`   zBooleanObject.write_to_stream+  s]   € ð Ð%Ý&ØAÀ7ñô ð ð Œ:ð 	#Ø�LŠL˜Ñ!Ô!Ð!Ð!Ð!à�LŠL˜Ñ"Ô"Ð"Ð"Ð"r0   c                 óÈ   — |                       d¦  «        }|dk    rt          d¦  «        S |dk    r$|                       d¦  «         t          d¦  «        S t          d¦  «        ‚)Nry   r™   Ts   falsrE   FzCould not read Boolean object)rz   rŠ   r   )r\   Úwords     r.   r|   zBooleanObject.read_from_stream7  s]   € à�{Š{˜1‰~Œ~ˆØ�7Š?ˆ?Ý  Ñ&Ô&Ð&Ø�7Š?ˆ?Ø�KŠK˜‰NŒNˆNÝ  Ñ'Ô'Ð'ÝÐ:Ñ;Ô;Ð;r0   ra   r2   )r+   rb   rc   ri   rf   r   rŽ   r   r	   r   r
   rj   rg   r<   r/   rˆ   r‚   r…   r~   r   rh   r`   r‡   r|   r?   r0   r.   rŠ   rŠ     s  € € € € € € Ø€K€K�Kð˜cð  dð ð ð ð ð !&Ø=?ð	

ð 

à#ð

ð ð

ð   ¨¨s°C¨x¬Ô 9Ô:ð	

ð
 
ð

ð 

ð 

ð 

ð2˜#ð 2ð 2ð 2ð 2ð˜ð  dð ð ð ð ð˜#ð ð ð ð ð1˜#ð 1ð 1ð 1ð 1ð MQð
#ð 
#Ø ð
#Ø27¸¸cÀ5Ð8HÔ2Ið
#à	ð
#ð 
#ð 
#ð 
#ð ð< ð <°ð <ð <ð <ñ „\ð<ð <ð <r0   rŠ   c                   óÆ  — e Zd Zdedededdfd„Zdefd„Zdefd„Zd	edd
fd„Z		 	 d'd	ede
deeeeef                           dd fd„Zed(d„¦   «         Zded
         fd„Zdedd fd„Zded
         fd„Zdedefd„Zdedefd„Zdede
fd„Zdefd„Zdefd„Zdefd„Zdefd„Zdefd„Zd ede
fd!„Zd ede
fd"„Z	 d)d#e d$edee!f         ddfd%„Z"e#d#e dedd fd&„¦   «         Z$dS )*r#   rM   Ú
generationrH   r%   Nc                 ó0   — || _         || _        || _        d S r2   )rM   r�   rH   )r-   rM   r�   rH   s       r.   rŽ   zIndirectObject.__init__C  s   € ØˆŒ
Ø$ˆŒØˆŒˆˆr0   c                 ó^   — t          | j        | j        t          | j        ¦  «        f¦  «        S r2   )rr   rM   r�   rP   rH   r,   s    r.   r…   zIndirectObject.__hash__H  s#   € Ý�T”Z ¤µ"°T´X±,´,Ð?Ñ@Ô@Ð@r0   c                 ój   — t          | j        | j        | j        t	          | j        ¦  «        f¦  «        S rp   )rr   r*   rM   r�   rP   rH   r,   s    r.   r/   zIndirectObject.hash_binK  s)   € õ �T”^ T¤Z°´Å"ÀTÄXÁ,Ä,ÐOÑPÔPÐPr0   r:   r!   c                 ó8   — t          | j        | j        |¦  «        S r2   )r#   rM   r�   r=   s     r.   r>   zIndirectObject.replicateU  s   € õ ˜dœj¨$¬/¸8ÑDÔDÐDr0   Fr?   r@   rA   c                 óX  — | j         |k    r|s| S t          | j         ¦  «        |j        vrCi |j        t          | j         ¦  «        <   | j         |j        t          | j         ¦  «                 d<   | j        |j        t          | j         ¦  «                 v rt|                     |j        t          | j         ¦  «                 | j                 ¦  «        }|r4|€J ‚|j        €J ‚|j        }t          |j        |j        |j         ¦  «        S nm|                      ¦   «         }|€-t          ¦   «         }t          | t          f¦  «        sJ ‚| |_        | 
                    |                     |||¦  «        ¦  «        }t          |t          ¦  «        s
J d¦   «         ‚|j        €
J d¦   «         ‚|j        S )rn   rF   NrG   )rH   rP   rQ   rM   rR   r$   r#   r�   rl   rS   Ú_add_objectr<   r!   )r-   r:   r@   rA   ÚdupÚidrefrX   s          r.   r<   zIndirectObject.clone[  s™  € ð Œ8�xÒÐ¨ÐàˆKÝˆdŒh‰<Œ<˜xÔ6Ð6Ð6Ø46ˆHÔ#¥B t¤x¡L¤LÑ1ØAEÄˆHÔ#¥B t¤x¡L¤LÔ1°+Ñ>àŒ:˜Ô0µ°D´H±´Ô>Ð>Ð>Ø×%Ò% hÔ&=½bÀÄ¹l¼lÔ&KÈDÌJÔ&WÑXÔXˆCØð PØ���ØÔ-Ð9Ð9Ð9ØÔ.�Ý% e¤k°5Ô3CÀUÄYÑOÔOÐOð	Pð —/’/Ñ#Ô#ˆCàˆ{å ‘l”l�Ý! $­Ð(9Ñ:Ô:Ð:Ð:Ð:Ø)-�Ô&Ø×&Ò&Ø—	’	˜( O°]ÑCÔCñô ˆCõ ˜#�yÑ)Ô)Ð1Ð1¨6Ñ1Ô1Ð1ØÔ%Ð1Ð1°6Ñ1Ô1Ð1ØÔ%Ð%r0   c                 ó   — | S r2   r?   r,   s    r.   r$   z!IndirectObject.indirect_reference  r[   r0   c                 ó:   — | j                              | ¦  «        }|S r2   )rH   rR   )r-   rX   s     r.   rR   zIndirectObject.get_objectƒ  s   € Ø#'¤8×#6Ò#6°tÑ#<Ô#<ˆØˆ
r0   Úmemoc                 óB   — t          | j        | j        | j        ¦  «        S r2   )r#   rM   r�   rH   )r-   r¨   s     r.   Ú__deepcopy__zIndirectObject.__deepcopy__‡  s   € Ý˜dœj¨$¬/¸4¼8ÑDÔDÐDr0   c                 óÈ   — |                       ¦   «         }t          |t          ¦  «        r8t          |                      ¦   «         › d|                     ¦   «         › �¦  «        ‚|S )Nz references an IndirectObject )rR   rS   r#   r   r~   r“   s     r.   Ú_get_object_with_checkz%IndirectObject._get_object_with_checkŠ  s]   € Ø�OŠOÑÔˆå�a�Ñ(Ô(ð 	Ý Ø—=’=‘?”?ÐPÐPÀ!Ç*Â*Á,Ä,ÐPÐPñô ð ð ˆr0   Únamec                 óŠ   — 	 t          |                      ¦   «         |¦  «        S # t          $ r t          d|› d�¦  «        ‚w xY w)NzNo attribute z* found in IndirectObject or pointed object)Úgetattrr¬   rJ   ©r-   r­   s     r.   Ú__getattr__zIndirectObject.__getattr__“  s^   € ð	Ý˜4×6Ò6Ñ8Ô8¸$Ñ?Ô?Ð?øÝð 	ð 	ð 	Ý ØP ÐPÐPÐPñô ð ð	øøøs	   ‚!$ ¤AÚkeyc                 ó6   — |                       ¦   «         |         S r2   ©r¬   ©r-   r²   s     r.   Ú__getitem__zIndirectObject.__getitem__œ  s   € à×*Ò*Ñ,Ô,¨SÔ1Ð1r0   c                 ó.   — ||                       ¦   «         v S r2   r´   rµ   s     r.   Ú__contains__zIndirectObject.__contains__   s   € Ø�d×1Ò1Ñ3Ô3Ð3Ð3r0   c                 óN   — |                       ¦   «                              ¦   «         S r2   )r¬   Ú__iter__r,   s    r.   rº   zIndirectObject.__iter__£  s    € Ø×*Ò*Ñ,Ô,×5Ò5Ñ7Ô7Ð7r0   c                 óN   — |                       ¦   «                              ¦   «         S r2   )rR   Ú	__float__r,   s    r.   r¼   zIndirectObject.__float__¦  s   € à�ŠÑ Ô ×*Ò*Ñ,Ô,Ð,r0   c                 óN   — |                       ¦   «                              ¦   «         S r2   )rR   Ú__int__r,   s    r.   r¾   zIndirectObject.__int__ª  ó   € à�ŠÑ Ô ×(Ò(Ñ*Ô*Ð*r0   c                 óN   — |                       ¦   «                              ¦   «         S r2   )rR   Ú__str__r,   s    r.   rÁ   zIndirectObject.__str__®  r¿   r0   c                 óR   — d| j         ›d| j        ›dt          | j        ¦  «        › d�S )NzIndirectObject(z, ú))rM   r�   rP   rH   r,   s    r.   r~   zIndirectObject.__repr__²  s/   € ØU ¤ÐUÐU°´ÐUÐUÅbÈÌÁlÄlÐUÐUÐUÐUr0   r   c                 ó�   — |d uoBt          |t          ¦  «        o-| j        |j        k    o| j        |j        k    o| j        |j        u S r2   )rS   r#   rM   r�   rH   r�   s     r.   r‚   zIndirectObject.__eq__µ  sY   € à˜Ðð &Ý˜5¥.Ñ1Ô1ð&à”
˜eœkÒ)ð&ð ” 5Ô#3Ò3ð&ð ”˜EœIÐ%ð	
r0   c                 ó.   — |                       |¦  «         S r2   )r‚   r�   s     r.   Ú__ne__zIndirectObject.__ne__¾  s   € Ø—;’;˜uÑ%Ô%Ð%Ð%r0   r\   r]   c                 ó˜   — |�t          dd¦  «         |                     | j        › d| j        › d�                     ¦   «         ¦  «         d S )Nrt   ru   ú z R)r   rw   rM   r�   r4   r_   s      r.   r`   zIndirectObject.write_to_streamÁ  s\   € ð Ð%Ý&ØAÀ7ñô ð ð 	�Š˜œ
Ð8Ð8 T¤_Ð8Ð8Ð8×?Ò?ÑAÔAÑBÔBÐBÐBÐBr0   c                 ó  — d}	 |                       d¦  «        }|st          t          ¦  «        ‚|                     ¦   «         rn||z  }ŒFd}	 |                       d¦  «        }|st          t          ¦  «        ‚|                     ¦   «         r|sŒCn||z  }ŒIt	          | ¦  «        }|dk    r1t          dt          |                      ¦   «         ¦  «        › �¦  «        ‚t          t          |¦  «        t          |¦  «        |¦  «        S )Nr0   TrE   ó   Rz0Error reading indirect object reference at byte )
rz   r   r   Úisspacer   r   ÚhexÚtellr#   rg   )r\   rH   rM   Útokr�   Úrs         r.   r|   zIndirectObject.read_from_streamÊ  s  € àˆð	Ø—+’+˜a‘.”.ˆCØð CÝ$Õ%AÑBÔBÐBØ�{Š{‰}Œ}ð ØØ�S‰LˆEð	ð ˆ
ð	Ø—+’+˜a‘.”.ˆCØð CÝ$Õ%AÑBÔBÐBØ�{Š{‰}Œ}ð Ø!ð ØØØ˜#ÑˆJð	õ   Ñ'Ô'ˆØ�Š9ˆ9ÝØWÅ3ÀvÇ{Â{Á}Ä}ÑCUÔCUÐWÐWñô ð õ �c %™jœj­#¨j©/¬/¸3Ñ?Ô?Ð?r0   ra   )r%   r#   r2   )%r+   rb   rc   rg   r   rŽ   r…   r/   r   r>   ri   r	   r   r
   rj   r<   Úpropertyr$   rR   rª   r¬   r±   r¶   r¸   rº   r¼   r¾   rÁ   r~   rˆ   r‚   rÆ   r   rh   r`   r‡   r|   r?   r0   r.   r#   r#   B  sT  € € € € € ð˜cð ¨sð ¸ð Àð ð ð ð ð
A˜#ð Að Að Að AðQ˜#ð Qð Qð Qð QðEà#ðEð 
ðEð Eð Eð Eð !&Ø=?ð	"&ð "&à#ð"&ð ð"&ð   ¨¨s°C¨x¬Ô 9Ô:ð	"&ð
 
ð"&ð "&ð "&ð "&ðH ðð ð ñ „Xðð˜H [Ô1ð ð ð ð ðE ð EÐ)9ð Eð Eð Eð Eð¨°Ô(=ð ð ð ð ð ð ¨ð ð ð ð ð2˜sð 2 sð 2ð 2ð 2ð 2ð4 ð 4¨ð 4ð 4ð 4ð 4ð8˜#ð 8ð 8ð 8ð 8ð-˜3ð -ð -ð -ð -ð+˜ð +ð +ð +ð +ð+˜ð +ð +ð +ð +ðV˜#ð Vð Vð Vð Vð
˜Fð 
 tð 
ð 
ð 
ð 
ð&˜Fð & tð &ð &ð &ð &ð MQðCð CØ ðCØ27¸¸cÀ5Ð8HÔ2IðCà	ðCð Cð Cð Cð ð@ ð @°#ð @Ð:Jð @ð @ð @ñ „\ð@ð @ð @r0   r#   é   c                   óÒ   — e Zd Z	 ddedee         defd„Z	 	 dd	ed
edeee	e
ef                           dd fd„Zdefd„Zde
fd„Zde
fd„Zdefd„Z	 ddede	de
ef         ddfd„ZdS )ÚFloatObjectú0.0Nr‹   Úcontextr%   c                 óò   — 	 t          |¦  «        }t                                | |¦  «        S # t          $ r@}t          |› d|› d�t          ¦  «         t                                | d¦  «        cY d }~S d }~ww xY w)Nz : FloatObject (z) invalid; use 0.0 insteadg        )ÚfloatÚ__new__rI   r   r+   )Úclsr‹   rÕ   Úes       r.   rØ   zFloatObject.__new__ê  s”   € ð		+Ý˜%‘L”LˆEÝ—=’=  eÑ,Ô,Ð,øÝð 	+ð 	+ð 	+õ ØÐGÐG eÐGÐGÐGÍñô ð õ —=’=  cÑ*Ô*Ð*Ð*Ð*Ð*Ð*Ð*øøøøð	+øøøs   ‚), ¬
A6¶5A1Á+A6Á1A6Fr?   r:   r@   rA   c                 óf   — t          d|                      t          | ¦  «        ||¦  «        ¦  «        S )rn   rÓ   )r   rY   rÓ   rC   s       r.   r<   zFloatObject.cloneø  s6   € õ ØØ×!Ò!¥+¨dÑ"3Ô"3°X¸ÑOÔOñ
ô 
ð 	
r0   c                 ó8   — t          | j        | j        f¦  «        S rp   ©rr   r*   Ú
as_numericr,   s    r.   r/   zFloatObject.hash_bin  s   € õ �T”^ T¤_Ð5Ñ6Ô6Ð6r0   c                 óì   — | dk    rdS t           t          t          t          | ¦  «        ¦  «        ¦  «        z
  }| dt	          d|¦  «        › d�›                     d¦  «                             d¦  «        S )Nr   rÔ   ú.rE   ÚfÚ0)ÚFLOAT_WRITE_PRECISIONrg   r   ÚabsÚmaxÚrstrip)r-   Únbs     r.   ÚmyreprzFloatObject.myrepr  sk   € Ø�1Š9ˆ9Ø�5Ý"¥S­­s°4©y¬yÑ)9Ô)9Ñ%:Ô%:Ñ:ˆØÐ'�˜Q ™œÐ'Ð'Ð'Ð'×.Ò.¨sÑ3Ô3×:Ò:¸3Ñ?Ô?Ð?r0   c                 ó*   — |                       ¦   «         S r2   )rè   r,   s    r.   r~   zFloatObject.__repr__  s   € Ø�{Š{‰}Œ}Ðr0   c                 ó    — t          | ¦  «        S r2   )r×   r,   s    r.   rÞ   zFloatObject.as_numeric  s   € Ý�T‰{Œ{Ðr0   r\   r]   c                 óž   — |�t          dd¦  «         |                     |                      ¦   «                              d¦  «        ¦  «         d S ©Nrt   ru   Úutf8)r   rw   rè   r4   r_   s      r.   r`   zFloatObject.write_to_stream  sQ   € ð Ð%Ý&ØAÀ7ñô ð ð 	�Š�T—[’[‘]”]×)Ò)¨&Ñ1Ô1Ñ2Ô2Ð2Ð2Ð2r0   )rÔ   Nra   r2   )r+   rb   rc   r   r	   r   rØ   ri   r   r
   rj   rg   r<   r/   rè   r~   r×   rÞ   r   rh   r`   r?   r0   r.   rÓ   rÓ   é  sZ  € € € € € à:>ð+ð +Øð+Ø*2°3¬-ð+à	ð+ð +ð +ð +ð" !&Ø=?ð	

ð 

àð

ð ð

ð   ¨¨s°C¨x¬Ô 9Ô:ð	

ð
 
ð

ð 

ð 

ð 

ð7˜#ð 7ð 7ð 7ð 7ð@˜ð @ð @ð @ð @ð˜#ð ð ð ð ð˜Eð ð ð ð ð MQð3ð 3Ø ð3Ø27¸¸cÀ5Ð8HÔ2Ið3à	ð3ð 3ð 3ð 3ð 3ð 3r0   rÓ   c                   óò   — e Zd Z ej        d¦  «        Zdedefd„Z	 	 ddede	d	e
eeeef                           dd fd
„Zdefd„Zdefd„Z	 ddededeef         ddfd„Zededed         fd„¦   «         ZdS )ÚNumberObjects	   [^+-.0-9]r‹   r%   c                 óÜ   — 	 t                                | t          |¦  «        ¦  «        S # t          $ r7 t          d|› d�t          ¦  «         t                                | d¦  «        cY S w xY w)NzNumberObject(z) invalid; use 0 insteadr   )rg   rØ   Ú
ValueErrorr   r+   )rÙ   r‹   s     r.   rØ   zNumberObject.__new__'  sr   € ð	'Ý—;’;˜s¥C¨¡J¤JÑ/Ô/Ð/øÝð 	'ð 	'ð 	'ÝÐJ¨5ÐJÐJÐJÍHÑUÔUÐUÝ—;’;˜s AÑ&Ô&Ð&Ð&Ð&ð	'øøøs   ‚'* ª>A+Á*A+Fr?   r:   r@   rA   c                 óf   — t          d|                      t          | ¦  «        ||¦  «        ¦  «        S )rn   rï   )r   rY   rï   rC   s       r.   r<   zNumberObject.clone.  s6   € õ ØØ×!Ò!¥,¨tÑ"4Ô"4°hÀÑPÔPñ
ô 
ð 	
r0   c                 óR   — t          | j        |                      ¦   «         f¦  «        S rp   rÝ   r,   s    r.   r/   zNumberObject.hash_bin:  s#   € õ �T”^ T§_¢_Ñ%6Ô%6Ð7Ñ8Ô8Ð8r0   c                 ó`   — t          t          | ¦  «                             d¦  «        ¦  «        S )Nrí   )rg   Úreprr4   r,   s    r.   rÞ   zNumberObject.as_numericD  s$   € Ý•4˜‘:”:×$Ò$ VÑ,Ô,Ñ-Ô-Ð-r0   Nr\   r]   c                 ó”   — |�t          dd¦  «         |                     t          | ¦  «                             d¦  «        ¦  «         d S rì   )r   rw   rõ   r4   r_   s      r.   r`   zNumberObject.write_to_streamG  sO   € ð Ð%Ý&ØAÀ7ñô ð ð 	�Š•T˜$‘Z”Z×&Ò& vÑ.Ô.Ñ/Ô/Ð/Ð/Ð/r0   )rï   rÓ   c                 óz   — t          | t          j        ¦  «        }d|v rt          |¦  «        S t          |¦  «        S )Nó   .)r   rï   ÚNumberPatternrÓ   )r\   Únums     r.   r|   zNumberObject.read_from_streamP  s9   € å˜v¥|Ô'AÑBÔBˆØ�3ˆ;ˆ;Ý˜sÑ#Ô#Ð#Ý˜CÑ Ô Ð r0   ra   r2   )r+   rb   rc   ÚreÚcompilerù   r   r   rØ   ri   r	   r   r
   rj   rg   r<   r/   rÞ   r   rh   r`   r‡   r|   r?   r0   r.   rï   rï   $  sN  € € € € € Ø�B”J˜|Ñ,Ô,€Mð'˜Cð ' Dð 'ð 'ð 'ð 'ð !&Ø=?ð	

ð 

àð

ð ð

ð   ¨¨s°C¨x¬Ô 9Ô:ð	

ð
 
ð

ð 

ð 

ð 

ð9˜#ð 9ð 9ð 9ð 9ð.˜Cð .ð .ð .ð .ð MQð0ð 0Ø ð0Ø27¸¸cÀ5Ð8HÔ2Ið0à	ð0ð 0ð 0ð 0ð ð! ð !°Ð6SÔ0Tð !ð !ð !ñ „\ð!ð !ð !r0   rï   c                   ó¶   — e Zd ZdZ	 	 ddededeeee	e
f                           dd fd„Zde
fd	„Zedefd
„¦   «         Z	 ddedede	ef         ddfd„Zde	fd„ZdS )ÚByteStringObjecta>  
    Represents a string object where the text encoding could not be determined.

    This occurs quite often, as the PDF spec doesn't provide an alternate way to
    represent strings -- for example, the encryption data stored in files (like
    /O) is clearly not text, but is still stored in a "String" object.
    Fr?   r:   r@   rA   r%   c           
      ó€   — t          d|                      t          t          | ¦  «        ¦  «        ||¦  «        ¦  «        S )rn   rþ   )r   rY   rþ   rh   rC   s       r.   r<   zByteStringObject.clonea  sA   € õ ØØ×!Ò!Ý ¥ t¡¤Ñ-Ô-¨x¸ñô ñ
ô 
ð 	
r0   c                 óH   — t          | j        t          | ¦  «        f¦  «        S rp   )rr   r*   rh   r,   s    r.   r/   zByteStringObject.hash_bino  s   € õ �T”^¥U¨4¡[¤[Ð1Ñ2Ô2Ð2r0   c                 ó   — | S )z7For compatibility with TextStringObject.original_bytes.r?   r,   s    r.   Úoriginal_byteszByteStringObject.original_bytesy  s	   € ð ˆr0   Nr\   r]   c                 óÌ   — |�t          dd¦  «         |                     d¦  «         |                     t          j        | ¦  «        ¦  «         |                     d¦  «         d S )Nrt   ru   ó   <ó   >)r   rw   ÚbinasciiÚhexlifyr_   s      r.   r`   z ByteStringObject.write_to_stream~  sj   € ð Ð%Ý&ØAÀ7ñô ð ð 	�Š�TÑÔÐØ�Š•XÔ% dÑ+Ô+Ñ,Ô,Ð,Ø�Š�TÑÔÐÐÐr0   c                 ó°   — dgt          t          j        ¦  «        ¢}|D ])}	 |                      |¦  «        c S # t          $ r Y Œ&w xY wt          d¦  «        ‚)Núutf-16zCannot decode ByteStringObject.)ÚlistÚ
NameObjectÚCHARSETSÚdecodeÚUnicodeDecodeErrorr   )r-   Úcharset_to_tryÚencs      r.   rÁ   zByteStringObject.__str__‰  su   € Ø"Ð?¥T­*Ô*=Ñ%>Ô%>Ð?ˆØ!ð 	ð 	ˆCðØ—{’{ 3Ñ'Ô'Ð'Ð'Ð'øÝ%ð ð ð Ø�ðøøøåÐ<Ñ=Ô=Ð=s   ¢9¹
AÁAra   r2   )r+   rb   rc   Ú__doc__r   ri   r	   r   r
   rj   rg   r<   r/   rÐ   rh   r  r   r`   rÁ   r?   r0   r.   rþ   rþ   X  s  € € € € € ðð ð !&Ø=?ð	
ð 
àð
ð ð
ð   ¨¨s°C¨x¬Ô 9Ô:ð	
ð
 
ð
ð 
ð 
ð 
ð3˜#ð 3ð 3ð 3ð 3ð ð ð ð ð ñ „Xðð
 MQð	ð 	Ø ð	Ø27¸¸cÀ5Ð8HÔ2Ið	à	ð	ð 	ð 	ð 	ð>˜ð >ð >ð >ð >ð >ð >r0   rþ   c                   ó  — e Zd ZU dZeed<   eed<   eed<   dZee         ed<   de	de
fd	„Z	 	 dde	dedeeeeef                           dd fd„Zdefd„Zedefd„¦   «         Zdefd„Zdefd„Z	 ddededeef         ddfd„ZdS )ÚTextStringObjectzë
    A string object that has been decoded into a real unicode string.

    If read from a PDF document, this string appeared to match the
    PDFDocEncoding, or contained a UTF-16BE BOM mark to cause UTF-16 decoding
    to occur.
    Úautodetect_pdfdocencodingÚautodetect_utf16Ú	utf16_bomNÚ_original_bytesr‹   r%   c                 ó   — d }t          |t          ¦  «        r|}|                     d¦  «        }t                               | |¦  «        }||_        d|_        d|_        d|_        |�æ|d d…         t          j
        t          j        hv rÄ	 t                               | |                     d¦  «        ¦  «        }nv# t          $ ri}t          |›d|j        ›�t          ¦  «         t                               | |j        d |j        …                              d¦  «        ¦  «        }Y d }~nd }~ww xY w||_        d|_        |d d…         |_        n@	 t#          |¦  «         d|_        n(# t$          $ r d|_        t          j        |_        Y nw xY w|S )NÚcharmapFr0   r   r	  z
initial string:T)rS   rh   r  rj   rØ   r  r  r  r  ÚcodecsÚBOM_UTF16_LEÚBOM_UTF16_BEr  r   rˆ   r+   ÚstartÚencode_pdfdocencodingÚUnicodeEncodeError)rÙ   r‹   r  Útext_string_objectÚ	exceptions        r.   rØ   zTextStringObject.__new__¡  sÔ  € ØˆÝ�e�UÑ#Ô#ð 	,Ø"ˆNØ—L’L Ñ+Ô+ˆEÝ Ÿ[š[¨¨eÑ4Ô4ÐØ-;ÐÔ*Ø.3ÐÔ+Ø7<ÐÔ4Ø'*ÐÔ$ØÐ%¨.¸¸!¸Ô*<ÅÔATÕV\ÔViÐ@jÐ*jÐ*jð
lÝ%(§[¢[°°n×6KÒ6KÈHÑ6UÔ6UÑ%VÔ%VÐ"Ð"øÝ%ð lð lð lÝØ ÐIÐI°YÔ5EÐIÐIÝñô ð õ &)§[¢[°°iÔ6FÐGXÈÌÐGXÔ6Y×6`Ò6`ÐaiÑ6jÔ6jÑ%kÔ%kÐ"Ð"Ð"Ð"Ð"Ð"øøøøðløøøð 2@ÐÔ.Ø26ÐÔ/Ø+9¸"¸1¸"Ô+=ÐÔ(Ð(ðCÝ%Ð&8Ñ9Ô9Ð9Ø?CÐ"Ô<Ð<øÝ%ð Cð Cð CØ6:Ð"Ô3Ý/5Ô/BÐ"Ô,Ð,Ð,ðCøøøð "Ð!s+   Â.B: Â:
D-ÃAD(Ä(D-ÅE& Å&"FÆ
FFr?   r:   r@   rA   c                 óÊ   — t          | ¦  «        }| j        |_        | j        |_        | j        |_        | j        |_        t          d|                      |||¦  «        ¦  «        S )rn   r  )r  r  r  r  r  r   rY   )r-   r:   r@   rA   rX   s        r.   r<   zTextStringObject.cloneÄ  sd   € õ ˜tÑ$Ô$ˆØ"Ô2ˆÔØ(,Ô(FˆÔ%Ø#Ô4ˆÔØœˆŒÝØ × 5Ò 5°c¸8À_Ñ UÔ Uñ
ô 
ð 	
r0   c                 ó8   — t          | j        | j        f¦  «        S rp   )rr   r*   r  r,   s    r.   r/   zTextStringObject.hash_binÔ  s   € õ �T”^ TÔ%8Ð9Ñ:Ô:Ð:r0   c                 óF   — | j         �| j         S |                      ¦   «         S )a-  
        It is occasionally possible that a text string object gets created where
        a byte string object was expected due to the autodetection mechanism --
        if that occurs, this "original_bytes" property can be used to
        back-calculate what the original encoded bytes were.
        )r  Úget_original_bytesr,   s    r.   r  zTextStringObject.original_bytesÞ  s(   € ð ÔÐ+ØÔ'Ð'Ø×&Ò&Ñ(Ô(Ð(r0   c                 ó`  — | j         rƒ| j        t          j        k    r"t          j        |                      d¦  «        z   S | j        t          j        k    r"t          j        |                      d¦  «        z   S |                      d¦  «        S | j        rt          | ¦  «        S t          d¦  «        ‚)Núutf-16leúutf-16bez#no information about original bytes)	r  r  r  r  r4   r  r  r  rI   r,   s    r.   r%  z#TextStringObject.get_original_bytesê  s�   € ð Ô ð 	+ØŒ~¥Ô!4Ò4Ð4ÝÔ*¨T¯[ª[¸Ñ-DÔ-DÑDÐDØŒ~¥Ô!4Ò4Ð4ÝÔ*¨T¯[ª[¸Ñ-DÔ-DÑDÐDØ—;’;˜zÑ*Ô*Ð*ØÔ)ð 	/Ý(¨Ñ.Ô.Ð.ÝÐ=Ñ>Ô>Ð>r0   c                 ó¢  — 	 | j         �| j         S | j        rt          ddddd¦  «        ‚t          | ¦  «        }n•# t          $ rˆ | j        t
          j        k    r#t
          j        |                      d¦  «        z   }nM| j        t
          j        k    r#t
          j        |                      d¦  «        z   }n|                      d¦  «        }Y nw xY w|S )NÚ Úforcedéÿÿÿÿr'  r(  )	r  r  r  r  r  r  r  r4   r  )r-   Úbytearrs     r.   Úget_encoded_bytesz"TextStringObject.get_encoded_bytesú  sÕ   € ð	2ØÔ#Ð/ØÔ+Ð+ØÔ$ð CÝ(¨¨X°r¸2¸rÑBÔBÐBÝ+¨DÑ1Ô1ˆGˆGøÝ!ð 	2ð 	2ð 	2ØŒ~¥Ô!4Ò4Ð4Ý Ô-°·²¸JÑ0GÔ0GÑG��Ø”¥6Ô#6Ò6Ð6Ý Ô-°·²¸JÑ0GÔ0GÑG��àŸ+š+ jÑ1Ô1�øøð	2øøøð ˆs   ‚: �): ºBCÃCr\   r]   c                 ó¬  — |�t          dd¦  «         |                      ¦   «         }|                     d¦  «         t          d|¦  «        D ]r}t	          t
          |d         ¦  «        }|                     ¦   «         s,|dk    r&|                     dt          |¦  «        z  ¦  «         Œ]|                     |¦  «         Œs|                     d¦  «         d S )	Nrt   ru   ó   (Úcr   ó    s   \%03oó   ))r   r.  rw   r   r   rh   ÚisalnumÚord)r-   r\   r]   r-  Úc_r1  s         r.   r`   z TextStringObject.write_to_stream  sÕ   € ð Ð%Ý&ØAÀ7ñô ð ð ×(Ò(Ñ*Ô*ˆØ�Š�TÑÔÐÝ˜c 7Ñ+Ô+ð 		 ð 		 ˆBÝ•U˜B˜qœEÑ"Ô"ˆAØ—9’9‘;”;ð   1¨¢9 9ð
 —’˜Y­¨Q©¬Ñ/Ñ0Ô0Ð0Ð0à—’˜Q‘”��Ø�Š�TÑÔÐÐÐr0   ra   r2   )r+   rb   rc   r  ri   rf   rh   r  r	   r   r   rØ   r   r
   rj   rg   r<   r/   rÐ   r  r%  r.  r   r`   r?   r0   r.   r  r  “  s’  € € € € € € ðð ð  $Ð#Ð#Ñ#ØÐÐÑØÐÐÑØ'+€O�X˜e”_Ð+Ð+Ñ+ð!"˜Cð !" Dð !"ð !"ð !"ð !"ðL !&Ø=?ð	
ð 
àð
ð ð
ð   ¨¨s°C¨x¬Ô 9Ô:ð	
ð
 
ð
ð 
ð 
ð 
ð ;˜#ð ;ð ;ð ;ð ;ð ð	) ð 	)ð 	)ð 	)ñ „Xð	)ð? Eð ?ð ?ð ?ð ?ð  5ð ð ð ð ð( MQðð Ø ðØ27¸¸cÀ5Ð8HÔ2Iðà	ðð ð ð ð ð r0   r  c                   ó”  — e Zd ZU  ej        d¦  «        ZdZi d„ dD ¦   «         ¥d„  ed¦  «        D ¦   «         ¥Ze	e
eef                  ed<   	 	 dd
ededeeeeef                           dd fd„Zdefd„Z	 ddededeef         ddfd„Zdefd„Zdd„Zedefd„¦   «         Zededefd„¦   «         ZdZedededd fd„¦   «         ZdS )r  s   \s+|[\(\)<>\[\]{}/%]ó   /c                 óZ   — i | ](}t          |¦  «        d |d›�                     ¦   «         “Œ)S ©ú#Ú02X©Úchrr4   ©Ú.0rW   s     r.   ú
<dictcomp>zNameObject.<dictcomp>'  s4   € Ð
@Ð
@Ð
@¨A�3ˆq‰6Œ6�;�q�;�;�;×%Ò%Ñ'Ô'Ð
@Ð
@Ð
@r0   s   #()<>[]{}/%c                 óZ   — i | ](}t          |¦  «        d |d›�                     ¦   «         “Œ)S r:  r=  r?  s     r.   rA  zNameObject.<dictcomp>(  s4   € Ð
;Ð
;Ð
;¨A�3ˆq‰6Œ6�;�q�;�;�;×%Ò%Ñ'Ô'Ð
;Ð
;Ð
;r0   é!   Úrenumber_tableFr?   r:   r@   rA   r%   c                 óf   — t          d|                      t          | ¦  «        ||¦  «        ¦  «        S )rn   r  )r   rY   r  rC   s       r.   r<   zNameObject.clone+  s6   € õ ØØ×!Ò!¥*¨TÑ"2Ô"2°H¸oÑNÔNñ
ô 
ð 	
r0   c                 ó.   — t          | j        | f¦  «        S rp   rq   r,   s    r.   r/   zNameObject.hash_bin7  s   € õ �T”^ TÐ*Ñ+Ô+Ð+r0   Nr\   r]   c                 óx   — |�t          dd¦  «         |                     |                      ¦   «         ¦  «         d S )Nrt   ru   )r   rw   Úrenumberr_   s      r.   r`   zNameObject.write_to_streamA  sC   € ð Ð%Ý&ØAÀ7ñô ð ð 	�Š�T—]’]‘_”_Ñ%Ô%Ð%Ð%Ð%r0   c                 óÚ  — | d                               d¦  «        }|dk    rt          d| › d�d¦  «         |g}| dd …         D ]”}|dk    r3|                     d	„ |                      d¦  «        D ¦   «         ¦  «         Œ;	 |                     | j        |         ¦  «         Œ]# t
          $ r+ |                     |                      d¦  «        ¦  «         Y Œ‘w xY wd
                     |¦  «        S )Nr   úutf-8r8  z<Incorrect first char in NameObject, should start with '/': (rÃ   ru   rE   ú~c              3   óF   K  — | ]}d |d›�                      ¦   «         V — ŒdS )r;  r<  Nr3   )r@  Úxs     r.   ú	<genexpr>z&NameObject.renumber.<locals>.<genexpr>T  s6   è è € ÐMÐM°a˜[ ˜[˜[˜[×/Ò/Ñ1Ô1ÐMÐMÐMÐMÐMÐMr0   r0   )r4   r   ÚextendrU   rD  ÚKeyErrorÚjoin)r-   ÚoutÚpartsr1  s       r.   rH  zNameObject.renumberJ  s  € Ø�1Œg�nŠn˜WÑ%Ô%ˆØ�$Š;ˆ;Ý&ØVÈtÐVÐVÐVØñô ð ð �ˆØ�a�b�b”ð 	4ð 	4ˆAØ�3ŠwˆwØ—’ÐMÐM¸1¿8º8ÀGÑ;LÔ;LÐMÑMÔMÑMÔMÐMÐMð4Ø—L’L Ô!4°QÔ!7Ñ8Ô8Ð8Ð8øÝð 4ð 4ð 4Ø—L’L §¢¨'Ñ!2Ô!2Ñ3Ô3Ð3Ð3Ð3ð4øøøà�xŠx˜‰ŒÐs   Á? B Â 2CÃCc                 óÂ   — t          | ¦  «                             d¦  «        }t          j        dd|¦  «        }t          j        dd|¦  «        }t	          d|z   ¦  «        S )a0  
        Sanitize the NameObject's name to be a valid PDF name part
        (alphanumeric, underscore, hyphen). The _sanitize method replaces
        spaces and any non-alphanumeric/non-underscore/non-hyphen with
        underscores.

        Returns:
            NameObject with sanitized name.
        ú/z\ Ú_z[^a-zA-Z0-9_-])rj   Úremoveprefixrû   Úsubr  r°   s     r.   Ú	_sanitizezNameObject._sanitize\  sV   € õ �4‰yŒy×%Ò% cÑ*Ô*ˆÝŒv�e˜S $Ñ'Ô'ˆÝŒvÐ'¨¨dÑ3Ô3ˆÝ˜# ™*Ñ%Ô%Ð%r0   c                 ó(   — t          ddd¦  «         dS )NÚsurfixÚprefixru   r8  )r   )rÙ   s    r.   r[  zNameObject.surfixk  s   € å$ X¨x¸ÑAÔAÐAØˆtr0   Úsinc                 óŒ  — t          ¦   «         }d}|t          | ¦  «        k     r“| ||dz   …         dk    rO	 |                     t          | |dz   |dz   …         d¦  «        ¦  «         |dz  }Œ\# t          t
          f$ r Y nw xY w|                     | |         ¦  «         |dz  }|t          | ¦  «        k     °“t          |¦  «        S )Nr   rE   ó   #r   é   )Ú	bytearrayrN   rU   rg   rñ   rT   rh   )r]  ÚresultrW   s      r.   ÚunnumberzNameObject.unnumberp  sÛ   € å‘”ˆØˆØ•#�c‘(”(ŠlˆlØ�1�Q˜‘U�7Œ|˜tÒ#Ð#ðØ—M’M¥# c¨!¨a©%°!°a±%¨-Ô&8¸"Ñ"=Ô"=Ñ>Ô>Ð>Ø˜‘F�AØøÝ"¥JÐ/ð ð ð ð �Dðøøøð �MŠM˜#˜aœ&Ñ!Ô!Ð!Ø�‰FˆAð •#�c‘(”(Šlˆlõ �V‰}Œ}Ðs   ¶6A- Á-BÂ B)rJ  ÚgbkÚlatin1rH   c                 ór  — |                       d¦  «        }|t          j        k    rt          d¦  «        ‚|t	          | t          j        ¦  «        z  }	 t                               |¦  «        }t          j        D ]8}	 |                     |¦  «        }t          |¦  «        c S # t          $ r Y Œ5w xY wt          d|ddd¦  «        ‚# t          t          f$ r`}|j        s@t          d|›d�t          ¦  «         t          |                     d¦  «        ¦  «        cY d }~S t          d|›d	�¦  «        |‚d }~ww xY w)
NrE   zName read errorr*  r   zCode Not Foundz!Illegal character in NameObject (z-), you may need to adjust NameObject.CHARSETSr  z.). You may need to adjust NameObject.CHARSETS.)rz   r  r\  r   r   Údelimiter_patternrc  r  r  rI   r  r  Ústrictr   r+   )r\   rH   r­   r  ÚretrÚ   s         r.   r|   zNameObject.read_from_stream„  s‡  € à�{Š{˜1‰~Œ~ˆØ•:Ô$Ò$Ð$ÝÐ0Ñ1Ô1Ð1ØÕ  ­Ô)EÑFÔFÑFˆð	õ ×&Ò& tÑ,Ô,ˆDÝ!Ô*ð ð �ðØŸ+š+ cÑ*Ô*�CÝ% c™?œ?Ð*Ð*Ð*øÝ ð ð ð Ø�Dðøøøå$ R¨¨q°!Ð5EÑFÔFÐFøÝ"Õ$6Ð7ð 	ð 	ð 	Ø”:ð :ÝðA¸ð Að Að Aåñô ð õ
 " $§+¢+¨iÑ"8Ô"8Ñ9Ô9Ð9Ð9Ð9Ð9Ð9Ð9Ýð>°Dð >ð >ð >ñô ð ðøøøøð	øøøsI   Á(C Á<#B"ÂC Â"
B/Â,C Â.B/Â/C ÃD6ÃAD1ÄD6ÄD1Ä1D6ra   r2   )r%   r  ) r+   rb   rc   rû   rü   rg  r\  ÚrangerD  r   Údictrj   rh   rf   r   ri   r	   r   r
   rg   r<   r/   r   r`   rH  rY  r   r[  r‡   rc  r  r|   r?   r0   r.   r  r  #  sþ  € € € € € € Ø"˜œ
Ð#;Ñ<Ô<ÐØ€Fð2Ø
@Ð
@°Ð
@Ñ
@Ô
@ð2à
;Ð
;°°°r±´Ð
;Ñ
;Ô
;ð2€N�H˜T # u *Ô-Ô.ð ð ñ ð !&Ø=?ð	

ð 

àð

ð ð

ð   ¨¨s°C¨x¬Ô 9Ô:ð	

ð
 
ð

ð 

ð 

ð 

ð,˜#ð ,ð ,ð ,ð ,ð MQð&ð &Ø ð&Ø27¸¸cÀ5Ð8HÔ2Ið&à	ð&ð &ð &ð &ð˜%ð ð ð ð ð$&ð &ð &ð &ð ð�uð ð ð ñ „]ðð ð�eð  ð ð ð ñ „\ðð" *€Hàð ð °#ð ¸,ð ð ð ñ „\ðð ð r0   r  Úunicode_stringr%   c                 óx   — 	 t          d„ | D ¦   «         ¦  «        S # t          $ r t          d| ddd¦  «        ‚w xY w)Nc                 ó(   — g | ]}t           |         ‘ŒS r?   r   )r@  Úks     r.   ú
<listcomp>z)encode_pdfdocencoding.<locals>.<listcomp>¥  s   € ÐFÐFÐF°!Õ*¨1Ô-ÐFÐFÐFr0   Úpdfdocencodingr,  z#does not exist in translation table)rh   rP  r  )rl  s    r.   r  r  £  s`   € ð	
ÝÐFÐF°~ÐFÑFÔFÑGÔGÐGøÝð 
ð 
ð 
Ý ØØØØØ1ñ
ô 
ð 	
ð
øøøs   ‚ ›9rM  c                 ó®   — | du pQt          | t          ¦  «        o<|                      ¦   «         du p&t          |                      ¦   «         t          ¦  «        S )z<
    Returns:
        True if x is None or NullObject.

    N)rS   r!   rR   rl   )rM  s    r.   Úis_null_or_noners  °  sO   € ð �ˆ9ð Ý�1•iÑ Ô ð 	OØ�\Š\‰^Œ^˜tÐ#ÐM¥z°!·,²,±.´.Å*Ñ'MÔ'Mðr0   )9r  r  rd   rû   ÚsysÚcollections.abcr   Úmathr   Ústructr   Útypingr   r   r   r	   r
   r   Úversion_infor   Útyping_extensionsr   Ú_codecsr   Ú
_protocolsr   r   Ú_utilsr   r   r   r   r   r   r   Úerrorsr   r   r   Ú
__author__Ú__author_email__r!   rl   rŠ   r#   rã   r×   rÓ   rg   rï   rh   rþ   rj   r  r  r  rs  r?   r0   r.   ú<module>r�     sÚ  ðð6 €€€Ø €€€Ø €€€Ø 	€	€	€	Ø 
€
€
€
Ø $Ð $Ð $Ð $Ð $Ð $Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AàÔ�B�Q�BÔ˜7Ò"Ð"Ø Ð Ð Ð Ð Ð Ð à+Ð+Ð+Ð+Ð+Ð+àÔ�wÒÐØÐÐÐÐÐÐà&Ð&Ð&Ð&Ð&Ð&à *Ð *Ð *Ð *Ð *Ð *Ø =Ð =Ð =Ð =Ð =Ð =Ð =Ð =ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð PÐ OÐ OÐ OÐ OÐ OÐ OÐ OÐ OÐ Oà€
Ø/Ð ðO"ð O"ð O"ð O"ð O"Ð!ñ O"ô O"ð O"ðd-ð -ð -ð -ð -�ñ -ô -ð -ð`=<ð =<ð =<ð =<ð =<�Iñ =<ô =<ð =<ð@a@ð a@ð a@ð a@ð a@�Yñ a@ô a@ð a@ðH Ð ð83ð 83ð 83ð 83ð 83�%˜ñ 83ô 83ð 83ðv1!ð 1!ð 1!ð 1!ð 1!�3˜	ñ 1!ô 1!ð 1!ðh8>ð 8>ð 8>ð 8>ð 8>�u˜iñ 8>ô 8>ð 8>ðvMð Mð Mð Mð M�s˜Iñ Mô Mð Mð`}ð }ð }ð }ð }��iñ }ô }ð }ð@

¨#ð 

°%ð 

ð 

ð 

ð 

ð	�sð 	˜y¨¨t°ZÀÐ/OÔ)PÔQð 	ð 	ð 	ð 	ð 	ð 	r0   