§
    ¡”jÇ?  ã                  óè   — d dl mZ d dlZd dlmZ d dlmZmZ d dlm	Z	m
Z
 d dlmZ 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mZmZmZ erd dlZd dl m!Z! d dl"m#Z#  G d„ d¦  «        Z$dS )é    )ÚannotationsN)Úcached_property)ÚTYPE_CHECKINGÚcast)Úformat_iso8824_dateÚparse_iso8824_date)ÚCatalogAttributes)Ú"FileSpecificationDictionaryEntries)ÚPageAttributes)ÚPdfReadErrorÚ
PyPdfError)
ÚArrayObjectÚByteStringObjectÚDecodedStreamObjectÚDictionaryObjectÚ
NameObjectÚ
NullObjectÚNumberObjectÚStreamObjectÚTextStringObjectÚis_null_or_none)Ú	Generator)Ú	PdfWriterc                  ó  — e Zd ZdZd?d@d„ZedAd„¦   «         ZedBd„¦   «         ZedCd„¦   «         Z	edDd„¦   «         Z
edEd„¦   «         Zej        dFd„¦   «         ZedEd„¦   «         Zej        dFd„¦   «         ZedAd„¦   «         Zej        dGd „¦   «         ZedHd"„¦   «         ZedId#„¦   «         ZedId$„¦   «         ZedEd%„¦   «         Zej        dJd'„¦   «         ZedKd)„¦   «         Zej        dLd*„¦   «         ZedMd,„¦   «         Zej        dNd.„¦   «         ZedOd0„¦   «         Zej        dPd1„¦   «         ZedOd2„¦   «         Zej        dPd3„¦   «         ZedQd5„¦   «         Zej        dRd7„¦   «         ZdSd8„ZdAd9„ZedTd<„¦   «         ZedUd>„¦   «         ZdS )VÚEmbeddedFilezØ
    Container holding the information on an embedded file.

    Attributes are evaluated lazily if possible.

    Further information on embedded files can be found in section 7.11 of the PDF 2.0 specification.
    NÚnameÚstrÚ
pdf_objectr   ÚparentúArrayObject | NoneÚreturnÚNonec                ó0   — || _         || _        || _        dS )zÖ
        Args:
            name: The (primary) name as provided in the name tree.
            pdf_object: The corresponding PDF object to allow retrieving further data.
            parent: The parent list.
        N)Ú_namer   Ú_parent)Úselfr   r   r   s       úc/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/pypdf/generic/_files.pyÚ__init__zEmbeddedFile.__init__(   s   € ð ˆŒ
Ø$ˆŒØˆŒˆˆó    c                ó   — | j         S )zEThe (primary) name of the embedded file as provided in the name tree.)r$   ©r&   s    r'   r   zEmbeddedFile.name3   s   € ð ŒzÐr)   Úwriterr   Úcontentústr | bytesc           	     óÎ  — t          |t          ¦  «        r|                     d¦  «        }t          ¦   «         }|                     |¦  «         |                     t          t          j        ¦  «        t          d¦  «        i¦  «         t          ¦   «         }|                     t          d¦  «        | 
                    |¦  «        i¦  «         ddlm} t          ¦   «         }| 
                    |¦  «        }t          t           ||¦  «        ¦  «        }	|                     t          t          j        ¦  «        t          d¦  «        t          t          j        ¦  «        |	t          t          j        ¦  «        |i¦  «         |                      |¦  «        }
|                      |
|	¦  «        }|
                     ||¦  «         |
                     ||	¦  «          | |||
¬¦  «        S )aO  
        Create a new embedded file and add it to the PdfWriter.

        Args:
            writer: The PdfWriter instance to add the embedded file to.
            name: The filename to display.
            content: The data in the file.

        Returns:
            EmbeddedFile instance for the newly created embedded file.
        úlatin-1z/EmbeddedFilez/Fr   )Úcreate_string_objectz	/Filespec©r   r   r   )Ú
isinstancer   Úencoder   Úset_dataÚupdater   ÚPGÚTYPEr   Ú_add_objectÚpypdf.genericr1   r   r   r
   ÚFÚEFÚ_get_names_arrayÚ_get_insertion_indexÚinsert)Úclsr,   r   r-   Ú
file_entryÚef_entryr1   ÚfilespecÚfilespec_referenceÚname_objectÚnames_arrayÚinsertion_indexs               r'   Ú_create_newzEmbeddedFile._create_new8   sÀ  € õ �g�sÑ#Ô#ð 	0Ø—n’n YÑ/Ô/ˆGõ )Ñ*Ô*ˆ
Ø×Ò˜GÑ$Ô$Ð$Ø×Ò�:¥b¤gÑ.Ô.µ
¸?Ñ0KÔ0KÐLÑMÔMÐMõ $Ñ%Ô%ˆØ�Š� DÑ)Ô)¨6×+=Ò+=¸jÑ+IÔ+IÐJÑKÔKÐKð 	7Ð6Ð6Ð6Ð6Ð6Ý#Ñ%Ô%ˆØ#×/Ò/°Ñ9Ô9ÐÝÕ+Ð-AÐ-AÀ$Ñ-GÔ-GÑHÔHˆØ�Šå�2œ7Ñ#Ô#¥Z°Ñ%<Ô%<ÝÕ=Ô?Ñ@Ô@À+ÝÕ=Ô@ÑAÔAÀ8ðñ	
ô 	
ð 	
ð ×*Ò*¨6Ñ2Ô2ˆØ×2Ò2°;ÀÑLÔLˆØ×Ò˜?Ð,>Ñ?Ô?Ð?Ø×Ò˜?¨KÑ8Ô8Ð8ð ˆs˜¨¸+ÐFÑFÔFÐFr)   r   c                ó$  — t           j        |j        vr@|                     t	          ¦   «         ¦  «        |j        t          t           j        ¦  «        <   t          t          |j        t           j                 ¦  «        }d|vr]t          ¦   «         }t	          t          t           j        ¦  «        |i¦  «        }|                     |¦  «        |t          d¦  «        <   |S t          t          |d         ¦  «        }d|v r2t          t          |t          t           j        ¦  «                 ¦  «        S d|vrt          d¦  «        ‚t          ¦   «         }t          t          |d          	                    ¦   «         ¦  «        }t	          t          t           j        ¦  «        |i¦  «        }|                     |¦  «        |t          d¦  «        <   |D ]B}| 	                    ¦   «          
                    dg ¦  «        D ]}|                     |¦  «         ŒŒC|S )zLGet the names array for embedded files, possibly creating and flattening it.ú/EmbeddedFilesú/Namesú/Kidsz2Got neither Names nor Kids in embedded files tree.)ÚCAÚNAMESÚroot_objectr9   r   r   r   r   r   Ú
get_objectÚgetÚappend)	r@   r,   Ú
names_dictÚnamesÚembedded_files_names_dictionaryÚembedded_files_names_treeÚkidsÚkidr   s	            r'   r=   zEmbeddedFile._get_names_arrayj   sä  € õ Œ8˜6Ô-Ð-Ð-à7=×7IÒ7IÕJZÑJ\ÔJ\Ñ7]Ô7]ˆFÔ�z­"¬(Ñ3Ô3Ñ4åÕ*¨FÔ,>½r¼xÔ,HÑIÔIˆ
Ø :Ð-Ð-å‘M”MˆEÝ.>Ý�BœHÑ%Ô% uÐ-ñ/ô /Ð+ð 8>×7IÒ7IÐJiÑ7jÔ7jˆJ•zÐ"2Ñ3Ô3Ñ4ØˆLõ %)Õ)9¸:ÐFVÔ;WÑ$XÔ$XÐ!ØÐ0Ð0Ð0å�Ð%>½zÍ"Ì(Ñ?SÔ?SÔ%TÑUÔUÐUØÐ3Ð3Ð3åÐSÑTÔTÐTõ
 ‘”ˆÝ•KÐ!:¸7Ô!C×!NÒ!NÑ!PÔ!PÑQÔQˆÝ*:Ý�œÑ!Ô! 5Ð)ñ+
ô +
Ð'ð 4:×3EÒ3EÐFeÑ3fÔ3fˆ
•:Ð.Ñ/Ô/Ñ0Øð 	#ð 	#ˆCð
 ŸšÑ(Ô(×,Ò,¨X°rÑ:Ô:ð #ð #�Ø—’˜TÑ"Ô"Ð"Ð"ð#àˆr)   rF   Úintc                ó:  ‡— ˆfd„t          dt          ‰¦  «        d¦  «        D ¦   «         }|                     d¦  «        }t          j        ||¦  «        }t          j        ||¦  «        }||k    r|dz  S |dk    rdS |t          |¦  «        x}k    r|dz  S |dz  S )Nc                óF   •— g | ]}‰|                               d ¦  «        ‘ŒS )úutf-8)r4   )Ú.0ÚirF   s     €r'   ú
<listcomp>z5EmbeddedFile._get_insertion_index.<locals>.<listcomp>˜   s+   ø€ ÐVÐVÐV°1�˜A”×%Ò% gÑ.Ô.ÐVÐVÐVr)   r   é   r\   )ÚrangeÚlenr4   ÚbisectÚbisect_leftÚbisect_right)r@   rF   r   ÚkeysÚ
name_bytesÚstartÚendÚ	key_counts    `      r'   r>   z!EmbeddedFile._get_insertion_index–   s¯   ø€ àVÐVÐVÐV½¸aÅÀ[ÑAQÔAQÐSTÑ8UÔ8UÐVÑVÔVˆØ—[’[ Ñ)Ô)ˆ
åÔ" 4¨Ñ4Ô4ˆÝÔ! $¨
Ñ3Ô3ˆà�CŠ<ˆ<Ø˜‘7ˆNØ�AŠ:ˆ:Ø�1Ø¥# d¡)¤)Ð+�YÒ,Ð,Ø˜q‘=Ð Ø�Q‰wˆr)   ú
str | Nonec                óØ   — t           j        t           j        fD ]P}|| j        v rE| j        |                              ¦   «         }t          |¦  «        st          t          |¦  «        c S ŒQdS )z3Retrieve the alternative name (file specification).N)r
   ÚUFr;   r   rP   r   r   r   )r&   ÚkeyÚvalues      r'   Úalternative_namezEmbeddedFile.alternative_name¦   sr   € õ 7Ô9Õ;]Ô;_Ð`ð 	,ð 	,ˆCð �d”oÐ%Ð%Øœ¨Ô,×7Ò7Ñ9Ô9�Ý& uÑ-Ô-ð ,Ý¥ UÑ+Ô+Ð+Ð+Ð+øØˆtr)   ro   úTextStringObject | Nonec                ó–  — |€„t           j        | j        v r-t          ¦   «         | j        t	          t           j        ¦  «        <   t           j        | j        v r/t          ¦   «         | j        t	          t           j        ¦  «        <   dS dS || j        t	          t           j        ¦  «        <   || j        t	          t           j        ¦  «        <   dS )z.Set the alternative name (file specification).N)r
   rm   r   r   r   r;   ©r&   ro   s     r'   rp   zEmbeddedFile.alternative_name²   s®   € ð ˆ=Ý1Ô4¸¼ÐGÐGÝU_ÑUaÔUa�”¥
Õ+MÔ+PÑ QÔ QÑRÝ1Ô3°t´ÐFÐFÝT^ÑT`ÔT`�”¥
Õ+MÔ+OÑ PÔ PÑQÐQÐQð GÐFð RWˆDŒO�JÕ'IÔ'LÑMÔMÑNØPUˆDŒO�JÕ'IÔ'KÑLÔLÑMÐMÐMr)   c                óp   — | j                              t          j        ¦  «        }t	          |¦  «        rdS |S )zRetrieve the description.N)r   rQ   r
   ÚDESCr   rs   s     r'   ÚdescriptionzEmbeddedFile.description¾   s7   € ð ”×#Ò#Õ$FÔ$KÑLÔLˆÝ˜5Ñ!Ô!ð 	Ø�4Øˆr)   c                óª   — |€/t          ¦   «         | j        t          t          j        ¦  «        <   dS || j        t          t          j        ¦  «        <   dS )zSet the description.N)r   r   r   r
   ru   rs   s     r'   rv   zEmbeddedFile.descriptionÆ   sK   € ð ˆ=ÝS]ÑS_ÔS_ˆDŒO�JÕ'IÔ'NÑOÔOÑPÐPÐPàSXˆDŒO�JÕ'IÔ'NÑOÔOÑPÐPÐPr)   c           	     óx   — t          t          | j                             dt          d¦  «        ¦  «        ¦  «        S )zJRetrieve the relationship of the referring document to this embedded file.ú/AFRelationshipz/Unspecified)r   r   r   rQ   r+   s    r'   Úassociated_file_relationshipz)EmbeddedFile.associated_file_relationshipÎ   s7   € õ ÝØŒO×ÒÐ 1µ:¸nÑ3MÔ3MÑNÔNñ
ô 
ð 	
r)   r   c                ó4   — || j         t          d¦  «        <   dS )zESet the relationship of the referring document to this embedded file.ry   N)r   r   rs   s     r'   rz   z)EmbeddedFile.associated_file_relationshipÖ   s   € ð :?ˆŒ�
Ð#4Ñ5Ô5Ñ6Ð6Ð6r)   r   c                óB  — d| j         vrt          d| j         › �¦  «        ‚t          t          | j         d         ¦  «        }t          j        t          j        fD ]5}||v r/t          t          ||                              ¦   «         ¦  «        c S Œ6t          d|› �¦  «        ‚)z)Retrieve the actual embedded file stream.z/EFz/EF entry not found: z'No /(U)F key found in file dictionary: )	r   r   r   r   r
   rm   r;   r   rP   )r&   Úefrn   s      r'   Ú_embedded_filezEmbeddedFile._embedded_fileÛ   s©   € ð ˜œÐ'Ð'ÝÐH°t´ÐHÐHÑIÔIÐIÝÕ" D¤O°EÔ$:Ñ;Ô;ˆÝ6Ô9Õ;]Ô;_Ð`ð 	@ð 	@ˆCØ�bˆyˆyÝ�L¨"¨S¬'×*<Ò*<Ñ*>Ô*>Ñ?Ô?Ð?Ð?Ð?ð åÐIÀRÐIÐIÑJÔJÐJr)   c                óš   — t          t          | j                             dt          ¦   «         ¦  «                             ¦   «         ¦  «        S )z&Retrieve the file-specific parameters.ú/Params)r   r   r~   rQ   rP   r+   s    r'   Ú_paramszEmbeddedFile._paramsæ   s;   € õ Õ$ dÔ&9×&=Ò&=¸iÕIYÑI[ÔI[Ñ&\Ô&\×&gÒ&gÑ&iÔ&iÑjÔjÐjr)   c                óŠ   — | j         }d|vrt          ¦   «         |t          d¦  «        <   t          t          |d         ¦  «        S )z3Ensure the /Params dictionary exists and return it.r€   )r~   r   r   r   )r&   Úembedded_files     r'   Ú_ensure_paramszEmbeddedFile._ensure_paramsë   sE   € ð Ô+ˆØ˜MÐ)Ð)Ý3CÑ3EÔ3EˆM�* YÑ/Ô/Ñ0ÝÕ$ m°IÔ&>Ñ?Ô?Ð?r)   c                ó\   — | j                              d¦  «        }t          |¦  «        rdS |S )zERetrieve the subtype. This is a MIME media type, prefixed by a slash.ú/SubtypeN)r~   rQ   r   rs   s     r'   ÚsubtypezEmbeddedFile.subtypeó   s4   € ð Ô#×'Ò'¨
Ñ3Ô3ˆÝ˜5Ñ!Ô!ð 	Ø�4Øˆr)   úNameObject | Nonec                ó|   — | j         }|€ t          ¦   «         |t          d¦  «        <   dS ||t          d¦  «        <   dS )zGSet the subtype. This should be a MIME media type, prefixed by a slash.Nr†   )r~   r   r   )r&   ro   rƒ   s      r'   r‡   zEmbeddedFile.subtypeû   sE   € ð Ô+ˆØˆ=Ý4>±L´LˆM�* ZÑ0Ô0Ñ1Ð1Ð1à49ˆM�* ZÑ0Ô0Ñ1Ð1Ð1r)   Úbytesc                ó4   — | j                              ¦   «         S )z!Retrieve the actual file content.)r~   Úget_datar+   s    r'   r-   zEmbeddedFile.content  s   € ð Ô"×+Ò+Ñ-Ô-Ð-r)   c                óŽ   — t          |t          ¦  «        r|                     d¦  «        }| j                             |¦  «         dS )zSet the file content.r0   N)r3   r   r4   r~   r5   rs   s     r'   r-   zEmbeddedFile.content	  sD   € õ �e�SÑ!Ô!ð 	,Ø—L’L Ñ+Ô+ˆEØÔ×$Ò$ UÑ+Ô+Ð+Ð+Ð+r)   ú
int | Nonec                ó\   — | j                              d¦  «        }t          |¦  «        rdS |S )z4Retrieve the size of the uncompressed file in bytes.ú/SizeN©r�   rQ   r   rs   s     r'   ÚsizezEmbeddedFile.size  s3   € ð ”× Ò  Ñ)Ô)ˆÝ˜5Ñ!Ô!ð 	Ø�4Øˆr)   úNumberObject | Nonec                ó|   — | j         }|€ t          ¦   «         |t          d¦  «        <   dS ||t          d¦  «        <   dS )z/Set the size of the uncompressed file in bytes.Nr�   ©r„   r   r   ©r&   ro   Úparamss      r'   r’   zEmbeddedFile.size  sE   € ð Ô$ˆØˆ=Ý*4©,¬,ˆF•:˜gÑ&Ô&Ñ'Ð'Ð'à*/ˆF•:˜gÑ&Ô&Ñ'Ð'Ð'r)   údatetime.datetime | Nonec                óP   — t          | j                             d¦  «        ¦  «        S )z$Retrieve the file creation datetime.ú/CreationDate©r   r�   rQ   r+   s    r'   Úcreation_datezEmbeddedFile.creation_date!  s"   € õ " $¤,×"2Ò"2°?Ñ"CÔ"CÑDÔDÐDr)   c                ó´   — | j         }|€ t          ¦   «         |t          d¦  «        <   dS t          |¦  «        }t	          |¦  «        |t          d¦  «        <   dS )zSet the file creation datetime.Nrš   ©r„   r   r   r   r   ©r&   ro   r—   Údate_strs       r'   rœ   zEmbeddedFile.creation_date&  sZ   € ð Ô$ˆØˆ=Ý2<±,´,ˆF•:˜oÑ.Ô.Ñ/Ð/Ð/å*¨5Ñ1Ô1ˆHÝ2BÀ8Ñ2LÔ2LˆF•:˜oÑ.Ô.Ñ/Ð/Ð/r)   c                óP   — t          | j                             d¦  «        ¦  «        S )z4Retrieve the datetime of the last file modification.ú/ModDater›   r+   s    r'   Úmodification_datezEmbeddedFile.modification_date0  s"   € õ " $¤,×"2Ò"2°:Ñ">Ô">Ñ?Ô?Ð?r)   c                ó´   — | j         }|€ t          ¦   «         |t          d¦  «        <   dS t          |¦  «        }t	          |¦  «        |t          d¦  «        <   dS )z/Set the datetime of the last file modification.Nr¢   rž   rŸ   s       r'   r£   zEmbeddedFile.modification_date5  sZ   € ð Ô$ˆØˆ=Ý-7©\¬\ˆF•:˜jÑ)Ô)Ñ*Ð*Ð*å*¨5Ñ1Ô1ˆHÝ-=¸hÑ-GÔ-GˆF•:˜jÑ)Ô)Ñ*Ð*Ð*r)   úbytes | Nonec                ó\   — | j                              d¦  «        }t          |¦  «        rdS |S )z5Retrieve the MD5 checksum of the (uncompressed) file.ú	/CheckSumNr‘   rs   s     r'   ÚchecksumzEmbeddedFile.checksum?  s3   € ð ”× Ò  Ñ-Ô-ˆÝ˜5Ñ!Ô!ð 	Ø�4Øˆr)   úByteStringObject | Nonec                ó|   — | j         }|€ t          ¦   «         |t          d¦  «        <   dS ||t          d¦  «        <   dS )z0Set the MD5 checksum of the (uncompressed) file.Nr§   r•   r–   s      r'   r¨   zEmbeddedFile.checksumG  sE   € ð Ô$ˆØˆ=Ý.8©l¬lˆF•:˜kÑ*Ô*Ñ+Ð+Ð+à.3ˆF•:˜kÑ*Ô*Ñ+Ð+Ð+r)   c                ó¸  — | j         st          d¦  «        ‚| j        | j         v r | j                              | j        ¦  «        }nKt	          | j        dd¦  «        x}�$|| j         v r| j                              |¦  «        }nt          d¦  «        ‚| j                              |¦  «         | j                              |dz
  ¦  «         t          ¦   «         | _        dS )z"Delete the file from the document.z-Parent required to delete file from document.Úindirect_referenceNz File not found in parent object.é   )r%   r   r   ÚindexÚgetattrÚpopr   )r&   r®   r¬   s      r'   ÚdeletezEmbeddedFile.deleteP  sÕ   € àŒ|ð 	NÝÐLÑMÔMÐMØŒ?˜dœlÐ*Ð*Ø”L×&Ò& t¤Ñ7Ô7ˆEˆEå'.¨t¬Ð@TÐVZÑ'[Ô'[Ð[Ð#ÐhØ&¨$¬,Ð6Ð6à”L×&Ò&Ð'9Ñ:Ô:ˆEˆEåÐ?Ñ@Ô@Ð@ØŒ×Ò˜ÑÔÐØŒ×Ò˜ ™Ñ#Ô#Ð#Ý*Ñ,Ô,ˆŒˆˆr)   c                ó2   — d| j         j        › d| j        ›d�S )Nú<z name=ú>)Ú	__class__Ú__name__r   r+   s    r'   Ú__repr__zEmbeddedFile.__repr__a  s"   € Ø@�4”>Ô*Ð@Ð@°$´)Ð@Ð@Ð@Ð@r)   rT   úGenerator[EmbeddedFile]c              #  óè   K  — t          |¦  «        D ]_\  }}t          |t          ¦  «        sE|                     ¦   «         }||dz
                                ¦   «         }t	          |||¬¦  «        V — Œ`dS )zÙ
        Convert the given name tree into class instances.

        Args:
            names: The name tree to load the data from.

        Returns:
            Iterable of class instances for the files found.
        r­   r2   N)Ú	enumerater3   r   rP   r   )r@   rT   r^   r   Úfile_dictionaryÚdirect_names         r'   Ú_load_from_nameszEmbeddedFile._load_from_namesd  s‰   è è € õ ! Ñ'Ô'ð 	_ð 	_‰GˆAˆtÝ˜d¥CÑ(Ô(ð _à"&§/¢/Ñ"3Ô"3�Ø# A¨¡Eœl×5Ò5Ñ7Ô7�Ý"¨ÀÐX]Ð^Ñ^Ô^Ð^Ð^Ð^øð	_ð 	_r)   Úcatalogc              #  ó  K  — 	 t          t          t          t          |d         ¦  «        d         ¦  «        }n# t          $ r Y dS w xY wd|v r|t          t          |d                              ¦   «         ¦  «        D ]N}|                     ¦   «         }d|v r4|                      t          t          |d         ¦  «        ¦  «        E d{V —† ŒOd|v r6|                      t          t          |d         ¦  «        ¦  «        E d{V —† dS dS )aI  
        Load the embedded files for the given document catalog.

        This method and its signature are considered internal API and thus not exposed publicly for now.

        Args:
            catalog: The document catalog to load from.

        Returns:
            Iterable of class instances for the files found.
        rK   rJ   NrL   )r   r   ÚKeyErrorr   rP   r½   )r@   r¾   Ú	containerrX   s       r'   Ú_loadzEmbeddedFile._loadw  s2  è è € ð	ÝÝ ÝÕ% w¨xÔ'8Ñ9Ô9Ð:JÔKñô ˆIˆIøõ ð 	ð 	ð 	ØˆFˆFð	øøøð �iÐÐÝ�K¨°7Ô);×)FÒ)FÑ)HÔ)HÑIÔIð Vð V�ð —n’nÑ&Ô&�Ø˜s�?�?Ø"×3Ò3µD½ÀcÈ(ÄmÑ4TÔ4TÑUÔUÐUÐUÐUÐUÐUÐUÐUøØ�yÐ Ð Ø×+Ò+­Dµ¸iÈÔ>QÑ,RÔ,RÑSÔSÐSÐSÐSÐSÐSÐSÐSÐSÐSð !Ð s   „49 ¹
AÁA)N)r   r   r   r   r   r    r!   r"   )r!   r   )r,   r   r   r   r-   r.   r!   r   )r,   r   r!   r   )rF   r   r   r   r!   rY   )r!   rk   )ro   rq   r!   r"   )ro   r   r!   r"   )r!   r   )r!   r   )ro   rˆ   r!   r"   )r!   rŠ   )ro   r.   r!   r"   )r!   rŽ   )ro   r“   r!   r"   )r!   r˜   )ro   r˜   r!   r"   )r!   r¥   )ro   r©   r!   r"   )r!   r"   )rT   r   r!   r¸   )r¾   r   r!   r¸   )r¶   Ú
__module__Ú__qualname__Ú__doc__r(   Úpropertyr   ÚclassmethodrH   r=   r>   rp   Úsetterrv   rz   r~   r�   r   r„   r‡   r-   r’   rœ   r£   r¨   r±   r·   r½   rÂ   © r)   r'   r   r       s  € € € € € ðð ð	ð 	ð 	ð 	ð 	ð ðð ð ñ „Xðð ð/Gð /Gð /Gñ „[ð/Gðb ð)ð )ð )ñ „[ð)ðV ðð ð ñ „[ðð ð	ð 	ð 	ñ „Xð	ð Ôð	Vð 	Vð 	Vñ Ôð	Vð ðð ð ñ „Xðð ÔðYð Yð Yñ ÔðYð ð
ð 
ð 
ñ „Xð
ð "Ô(ð?ð ?ð ?ñ )Ô(ð?ð ðKð Kð Kñ „XðKð ðkð kð kñ „Xðkð ð@ð @ð @ñ „_ð@ð ðð ð ñ „Xðð „^ð:ð :ð :ñ „^ð:ð ð.ð .ð .ñ „Xð.ð „^ð,ð ,ð ,ñ „^ð,ð ðð ð ñ „Xðð 
„[ð0ð 0ð 0ñ „[ð0ð ðEð Eð Eñ „XðEð ÔðMð Mð Mñ ÔðMð ð@ð @ð @ñ „Xð@ð ÔðHð Hð Hñ ÔðHð ðð ð ñ „Xðð „_ð4ð 4ð 4ñ „_ð4ð-ð -ð -ð -ð"Að Að Að Að ð_ð _ð _ñ „[ð_ð$ ðTð Tð Tñ „[ðTð Tð Tr)   r   )%Ú
__future__r   rc   Ú	functoolsr   Útypingr   r   Úpypdf._utilsr   r   Úpypdf.constantsr	   rM   r
   r   r7   Úpypdf.errorsr   r   r:   r   r   r   r   r   r   r   r   r   r   ÚdatetimeÚcollections.abcr   Úpypdf._writerr   r   rÉ   r)   r'   ú<module>rÓ      s¥  ðØ "Ð "Ð "Ð "Ð "Ð "à €€€Ø %Ð %Ð %Ð %Ð %Ð %Ø &Ð &Ð &Ð &Ð &Ð &Ð &Ð &à @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø >Ð >Ð >Ð >Ð >Ð >Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð (Ø€O€O€OØ)Ð)Ð)Ð)Ð)Ð)à'Ð'Ð'Ð'Ð'Ð'ðtTð tTð tTð tTð tTñ tTô tTð tTð tTð tTr)   