Ë
    ¨Œ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 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 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'„Z8y)(é    N)Ú	unhexlify)ÚSequence)Úlog10)Úiter_unpack)ÚAnyÚCallableÚClassVarÚOptionalÚUnionÚcasté   )é   é
   )Ú	TypeGuard)Ú_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ed	ededefd„Zded    fd„Z	 ddededeef   ddfd„Zy)Ú	PdfObject).zhashlib._HashÚ	hash_funcÚIndirectObjectÚindirect_referenceÚreturnc                 óF   — 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    ú]/var/www/html/Fitness-lenito-AI-main/venv/lib/python3.12/site-packages/pypdf/generic/_base.pyÚhash_binzPdfObject.hash_binA   s'   € ô "Ø�~‰~×&Ñ&Ð'Ð'MÐNó
ð 	
ó    c                 ó$   — | › j                  «       S ©N)Úencoder*   s    r,   Úhash_value_datazPdfObject.hash_value_dataM   s   € Ø�×ÑÓ!Ð!r.   c                 óª   — | j                   j                  › d| j                  | j                  «       «      j	                  «       › �j                  «       S )NÚ:)r(   r)   r    r2   Ú	hexdigestr1   r*   s    r,   Ú
hash_valuezPdfObject.hash_valueP   sG   € à�~‰~×&Ñ&Ð' qØ�~‰~˜d×2Ñ2Ó4Ó5×?Ñ?ÓAÐBðDç
‰&‹(ð	r.   Úpdf_destc                 ó$   — | j                  |«      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+   r7   s     r,   Ú	replicatezPdfObject.replicateV   s   € ð �z‰z˜(Ó#Ð#r.   Úforce_duplicateÚignore_fieldsc                 óF   — 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+   r7   r<   r=   s       r,   r9   zPdfObject.cloneg   s'   € ô6 "Ø�~‰~×&Ñ&Ð'Ð'HÐIó
ð 	
r.   r9   c                 ór  — 	 |s|j                   j                  |k(  r|S 	 | j                   }|j                  rJ|�H|j                  |j
                  k(  r/|j                  t        |j                  «      k  r|j                  }nt        |j                  «      dz   }|��t        |j                  «      |j                  vrQi |j                  t        |j                  «      <   |j                  |j                  t        |j                  «         d<   |sr|j                  |j                  t        |j                  «         v rD|j                  |j                  t        |j                  «         |j                     «      }|€J ‚|S ||j                  t        |j                  «         |j                  <   	 ||j                  |dz
  <   t        |d|«      |_         |S # t        $ r Y �ŒÆw xY w# t        $ r |cY S w xY w# t        $ r3 |j                  j                  |«       t        |j                  «      }Y Œpw xY w)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

        é   Ú	PreventGCr   )r"   ÚpdfÚ	ExceptionÚAttributeErrorÚincrementalÚ_readerÚidnumÚlenÚ_objectsÚidÚ_id_translatedÚ
get_objectÚ
IndexErrorÚappendr!   )r+   r9   r7   r<   ÚindÚiÚobjs          r,   Ú_reference_clonezPdfObject._reference_clone†   sï  € ð"	Ù" u×'?Ñ'?×'CÑ'CÀxÒ'OØ�ð	Ø×)Ñ)ˆCð × Ò Ø�Ø—‘˜8×+Ñ+Ò+Ø—	‘	œS ×!2Ñ!2Ó3Ò3à—	‘	‰Aä�H×%Ñ%Ó&¨Ñ*ˆAØ‰?Ü�#—'‘'‹{ (×"9Ñ"9Ñ9Ø79�×'Ñ'¬¨3¯7©7«Ñ4ØDGÇGÁG�×'Ñ'¬¨3¯7©7«Ñ4°[ÑAá#Ø—I‘I ×!8Ñ!8¼¸C¿G¹G»Ñ!EÑEà×)Ñ)Ø×+Ñ+¬B¨s¯w©w«KÑ8¸¿¹ÑCó�ð �Ð&�Ø�
Ø>?ˆH×#Ñ#¤B s§w¡w£KÑ0°·±Ñ;ð	'Ø',ˆH×Ñ˜a !™eÑ$ô $2°!°Q¸Ó#AˆÔ ØˆøôI ò 	Úð	ûô
 ò 	ØŠLð	ûô6 ò 	'Ø×Ñ×$Ñ$ UÔ+Ü�H×%Ñ%Ó&ŠAð	'ús4   ‚G  G) Æ3G: Ç	G&Ç%G&Ç)G7Ç6G7Ç:9H6È5H6c                 ó   — | S )zResolve indirect references.© r*   s    r,   rM   zPdfObject.get_objectÀ   ó   € àˆr.   NÚstreamÚencryption_keyc                 ó   — t         ‚r0   )r'   ©r+   rW   rX   s      r,   Úwrite_to_streamzPdfObject.write_to_streamÄ   s
   € ô "Ð!r.   ©FrU   )Fr0   )r)   Ú
__module__Ú__qualname__ÚhashlibÚsha1r    r   Ú__annotations__r
   Úintr-   Úbytesr2   r6   r   r;   Úboolr   r   Ústrr9   r   r   rS   rM   r   r[   rU   r.   r,   r   r   <   s  … à07·±€IˆxÐ,Ñ-Ó<Ø Ð!1Ñ2Ó2ð

˜#ó 

ð" ó "ð˜Eó ð$à#ð$ð 
ó$ð( !&Ø=?ñ	
à#ð
ð ð
ð   ¨¨s°C¨x©Ñ 9Ñ:ð	
ð
 
ó
ð@ PUñ8Øð8Ø$5ð8ØHLð8à	ó8ðt˜H [Ñ1ó ð
 MQñ"Ø ð"Ø27¸¸cÀ5Ð8HÑ2Ið"à	ô"r.   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y)Ú
NullObjectr7   r<   r=   r#   c                 óL   — t        d| j                  t        «       ||«      «      S )úClone object into pdf_dest.rg   )r   rS   rg   r?   s       r,   r9   zNullObject.cloneË   s'   € ô Ø˜$×/Ñ/´
³¸hÈÓXó
ð 	
r.   c                 ó.   — t        | j                  f«      S ©r%   ©Úhashr(   r*   s    r,   r-   zNullObject.hash_binÖ   s   € ô �T—^‘^Ð%Ó&Ð&r.   NrW   rX   c                 óB   — |�t        dd«       |j                  d«       y )Nú/the encryption_key parameter of write_to_streamú5.0.0ó   null)r   ÚwriterZ   s      r,   r[   zNullObject.write_to_streamà   s%   € ð Ð%Ü&ØAÀ7ôð 	�‰�WÕr.   c                 óX   — | j                  d«      }|dk7  rt        d«      ‚t        «       S )Né   rq   zCould not read Null object)Úreadr   rg   )rW   Únulltxts     r,   Úread_from_streamzNullObject.read_from_streamé   s+   € à—+‘+˜a“.ˆØ�gÒÜÐ;Ó<Ð<Ü‹|Ðr.   c                  ó   — y)Nrg   rU   r*   s    r,   Ú__repr__zNullObject.__repr__ð   s   € Ør.   Úotherc                 ó"   — t        |t        «      S r0   )Ú
isinstancerg   ©r+   rz   s     r,   Ú__eq__zNullObject.__eq__ó   s   € Ü˜%¤Ó,Ð,r.   c                 ó"   — | j                  «       S r0   ©r-   r*   s    r,   Ú__hash__zNullObject.__hash__ö   ó   € Ø�}‰}‹Ðr.   r\   r0   )r)   r]   r^   r   rd   r
   r   r   re   rb   r9   r-   r   rc   r[   Ústaticmethodrw   ry   Úobjectr~   r�   rU   r.   r,   rg   rg   Ê   sÐ   „ ð !&Ø=?ñ		
à#ð	
ð ð	
ð   ¨¨s°C¨x©Ñ 9Ñ:ð		
ð
 
ó	
ð'˜#ó 'ð MQñØ ðØ27¸¸cÀ5Ð8HÑ2Iðà	óð ð ð °ò ó ðð˜#ó ð-˜Fð - tó -ð˜#ô r.   rg   c                   óÂ   — e Z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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y)ÚBooleanObjectÚvaluer#   Nc                 ó   — || _         y r0   ©r‡   )r+   r‡   s     r,   Ú__init__zBooleanObject.__init__û   s	   € Øˆ�
r.   r7   r<   r=   c                 ób   — t        d| j                  t        | j                  «      ||«      «      S )ri   r†   )r   rS   r†   r‡   r?   s       r,   r9   zBooleanObject.cloneþ   s/   € ô ØØ×!Ñ!¤-°·
±
Ó";¸XÀÓWó
ð 	
r.   c                 óD   — t        | j                  | j                  f«      S rk   )rm   r(   r‡   r*   s    r,   r-   zBooleanObject.hash_bin
  s   € ô �T—^‘^ T§Z¡ZÐ0Ó1Ð1r.   Úoc                ó”   — t        |t        «      r| j                  |j                  k(  S t        |t        «      r| j                  |k(  S y)NF)r|   r†   r‡   rd   ©r+   r�   s     r,   r~   zBooleanObject.__eq__  s:   € Ü�aœÔ'Ø—:‘: §¡Ñ(Ð(Ü�aœÔØ—:‘: ‘?Ð"Ør.   c                 ó"   — | j                  «       S r0   r€   r*   s    r,   r�   zBooleanObject.__hash__  r‚   r.   c                 ó"   — | j                   rdS dS )NÚTrueÚFalser‰   r*   s    r,   ry   zBooleanObject.__repr__  s   € ØŸšˆvÐ0¨Ð0r.   rW   rX   c                 ó~   — |�t        dd«       | j                  r|j                  d«       y |j                  d«       y )Nro   rp   ó   trues   false)r   r‡   rr   rZ   s      r,   r[   zBooleanObject.write_to_stream!  s8   € ð Ð%Ü&ØAÀ7ôð �:Š:Ø�L‰L˜Õ!à�L‰L˜Õ"r.   c                 óœ   — | j                  d«      }|dk(  rt        d«      S |dk(  r| j                  d«       t        d«      S t        d«      ‚)Nrt   r•   Ts   falsrA   FzCould not read Boolean object)ru   r†   r   )rW   Úwords     r,   rw   zBooleanObject.read_from_stream-  sJ   € à�{‰{˜1‹~ˆØ�7Š?Ü  Ó&Ð&Ø�7Š?Ø�K‰K˜ŒNÜ  Ó'Ð'ÜÐ:Ó;Ð;r.   r\   r0   )r)   r]   r^   r   rŠ   r   rd   r
   r   r   re   rb   r9   r-   r„   r~   r�   ry   r   rc   r[   rƒ   rw   rU   r.   r,   r†   r†   ú   sã   „ ð˜cð  dó ð !&Ø=?ñ	

à#ð

ð ð

ð   ¨¨s°C¨x©Ñ 9Ñ:ð	

ð
 
ó

ð2˜#ó 2ð˜ð  dó ð˜#ó ð1˜#ó 1ð MQñ
#Ø ð
#Ø27¸¸cÀ5Ð8HÑ2Ið
#à	ó
#ð ð< ð <°ò <ó ñ<r.   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$y)(r!   rH   Ú
generationrC   r#   Nc                 ó.   — || _         || _        || _        y r0   )rH   r™   rC   )r+   rH   r™   rC   s       r,   rŠ   zIndirectObject.__init__9  s   € ØˆŒ
Ø$ˆŒØˆ�r.   c                 ól   — t        | j                  | j                  t        | j                  «      f«      S r0   )rm   rH   r™   rK   rC   r*   s    r,   r�   zIndirectObject.__hash__>  s$   € Ü�T—Z‘Z §¡´"°T·X±X³,Ð?Ó@Ð@r.   c                 ó‚   — t        | j                  | j                  | j                  t	        | j
                  «      f«      S rk   )rm   r(   rH   r™   rK   rC   r*   s    r,   r-   zIndirectObject.hash_binA  s,   € ô �T—^‘^ T§Z¡Z°·±Ä"ÀTÇXÁXÃ,ÐOÓPÐPr.   r7   r   c                 óD   — t        | j                  | j                  |«      S r0   )r!   rH   r™   r:   s     r,   r;   zIndirectObject.replicateK  s   € ô ˜dŸj™j¨$¯/©/¸8ÓDÐDr.   r<   r=   c                 ó  — | j                   |k(  r|s| S t        | j                   «      |j                  vr"i |j                  t        | j                   «      <   | j                  |j                  t        | j                   «         v r‰|j	                  |j                  t        | j                   «         | j                     «      }|r¡|€J ‚|j
                  €J ‚|j
                  }t        |j                  |j                  |j                   «      S | j	                  «       }|€$t        «       }t        | t        f«      sJ ‚| |_        |j                  |j                  |||«      «      }|€J d«       ‚|j
                  €J d«       ‚|j
                  S )ri   Úmypy)rC   rK   rL   rH   rM   r"   r!   r™   rg   r|   Ú_add_objectr9   )r+   r7   r<   r=   ÚdupÚidrefrR   s          r,   r9   zIndirectObject.cloneQ  s^  € ð �8‰8�xÒ©àˆKÜˆd�h‰h‹<˜x×6Ñ6Ñ6Ø46ˆH×#Ñ#¤B t§x¡x£LÑ1à�:‰:˜×0Ñ0´°D·H±H³Ñ>Ñ>Ø×%Ñ% h×&=Ñ&=¼bÀÇÁ»lÑ&KÈDÏJÉJÑ&WÓXˆCÙØ�Ð&�Ø×-Ñ-Ð9Ð9Ð9Ø×.Ñ.�Ü% e§k¡k°5×3CÑ3CÀUÇYÁYÓOÐOà—/‘/Ó#ˆCàˆ{ä “l�Ü! $¬Ð(9Ô:Ð:Ð:Ø)-�Ô&Ø×&Ñ&Ø—	‘	˜( O°]ÓCóˆCð ˆÐ& Ó&ˆØ×%Ñ%Ð1Ð9°6Ó9Ð1Ø×%Ñ%Ð%r.   c                 ó   — | S r0   rU   r*   s    r,   r"   z!IndirectObject.indirect_referencet  rV   r.   c                 ó8   — | j                   j                  | «      S r0   )rC   rM   r*   s    r,   rM   zIndirectObject.get_objectx  s   € Ø�x‰x×"Ñ" 4Ó(Ð(r.   Úmemoc                 óX   — t        | j                  | j                  | j                  «      S r0   )r!   rH   r™   rC   )r+   r¥   s     r,   Ú__deepcopy__zIndirectObject.__deepcopy__{  s   € Ü˜dŸj™j¨$¯/©/¸4¿8¹8ÓDÐDr.   c                 óž   — | j                  «       }t        |t        «      r,t        | j	                  «       › d|j	                  «       › �«      ‚|S )Nz references an IndirectObject )rM   r|   r!   r   ry   r�   s     r,   Ú_get_object_with_checkz%IndirectObject._get_object_with_check~  sH   € Ø�O‰OÓˆä�aœÔ(Ü Ø—=‘=“?Ð#Ð#AÀ!Ç*Á*Ã,ÀÐPóð ð ˆr.   Únamec                 óp   — 	 t        | j                  «       |«      S # t        $ r t        d|› d�«      ‚w xY w)NzNo attribute z* found in IndirectObject or pointed object)Úgetattrr©   rE   ©r+   rª   s     r,   Ú__getattr__zIndirectObject.__getattr__‡  sF   € ð	Ü˜4×6Ñ6Ó8¸$Ó?Ð?øÜò 	Ü Ø ˜vÐ%OÐPóð ð	ús   ‚ œ5Úkeyc                 ó(   — | j                  «       |   S r0   ©r©   ©r+   r¯   s     r,   Ú__getitem__zIndirectObject.__getitem__�  s   € à×*Ñ*Ó,¨SÑ1Ð1r.   c                 ó&   — || j                  «       v S r0   r±   r²   s     r,   Ú__contains__zIndirectObject.__contains__”  s   € Ø�d×1Ñ1Ó3Ð3Ð3r.   c                 ó>   — | j                  «       j                  «       S r0   )r©   Ú__iter__r*   s    r,   r·   zIndirectObject.__iter__—  s   € Ø×*Ñ*Ó,×5Ñ5Ó7Ð7r.   c                 ó>   — | j                  «       j                  «       S r0   )rM   Ú	__float__r*   s    r,   r¹   zIndirectObject.__float__š  s   € à�‰Ó ×*Ñ*Ó,Ð,r.   c                 ó>   — | j                  «       j                  «       S r0   )rM   Ú__int__r*   s    r,   r»   zIndirectObject.__int__ž  ó   € à�‰Ó ×(Ñ(Ó*Ð*r.   c                 ó>   — | j                  «       j                  «       S r0   )rM   Ú__str__r*   s    r,   r¾   zIndirectObject.__str__¢  r¼   r.   c                 óh   — d| j                   ›d| j                  ›dt        | j                  «      › d�S )NzIndirectObject(z, Ú))rH   r™   rK   rC   r*   s    r,   ry   zIndirectObject.__repr__¦  s/   € Ø  §¡ ¨b°·±Ð0CÀ2ÄbÈÏÉÃlÀ^ÐSTÐUÐUr.   rz   c                 óÎ   — |d uxr` t        |t        «      xrN | j                  |j                  k(  xr3 | j                  |j                  k(  xr | j                  |j                  u S r0   )r|   r!   rH   r™   rC   r}   s     r,   r~   zIndirectObject.__eq__©  sc   € à˜Ðò &Ü˜5¤.Ó1ò&à—
‘
˜eŸk™kÑ)ò&ð —‘ 5×#3Ñ#3Ñ3ò&ð —‘˜EŸI™IÐ%ð	
r.   c                 ó&   — | j                  |«       S r0   )r~   r}   s     r,   Ú__ne__zIndirectObject.__ne__²  s   € Ø—;‘;˜uÓ%Ð%Ð%r.   rW   rX   c                 ó’   — |�t        dd«       |j                  | j                  › d| j                  › d�j	                  «       «       y )Nro   rp   Ú z R)r   rr   rH   r™   r1   rZ   s      r,   r[   zIndirectObject.write_to_streamµ  sD   € ð Ð%Ü&ØAÀ7ôð 	�‰˜Ÿ
™
�| 1 T§_¡_Ð$5°RÐ8×?Ñ?ÓAÕBr.   c                 ó   — d}	 | j                  d«      }|st        t        «      ‚|j                  «       rn||z  }Œ9d}	 | j                  d«      }|st        t        «      ‚|j                  «       r|sŒ6n||z  }Œ<t	        | «      }|dk7  r%t        dt        | j                  «       «      › �«      ‚t        t        |«      t        |«      |«      S )Nr.   rA   ó   Rz0Error reading indirect object reference at byte )
ru   r   r   Úisspacer   r   ÚhexÚtellr!   rb   )rW   rC   rH   Útokr™   Úrs         r,   rw   zIndirectObject.read_from_stream¾  sÖ   € àˆØØ—+‘+˜a“.ˆCÙÜ$Ô%AÓBÐBØ�{‰{Œ}ØØ�S‰LˆEð ð ˆ
ØØ—+‘+˜a“.ˆCÙÜ$Ô%AÓBÐBØ�{‰{Œ}Ù!ØØØ˜#ÑˆJð ô   Ó'ˆØ�Š9ÜØBÄ3ÀvÇ{Á{Ã}ÓCUÐBVÐWóð ô œc %›j¬#¨j«/¸3Ó?Ð?r.   r\   )r#   r!   r0   )%r)   r]   r^   rb   r   rŠ   r�   r-   r   r;   rd   r
   r   r   re   r9   Úpropertyr"   rM   r§   r©   r®   r³   rµ   r·   r¹   r»   r¾   ry   r„   r~   rÃ   r   rc   r[   rƒ   rw   rU   r.   r,   r!   r!   8  sì  „ ð˜cð ¨sð ¸ð Àó ð
A˜#ó AðQ˜#ó QðEà#ðEð 
óEð !&Ø=?ñ	!&à#ð!&ð ð!&ð   ¨¨s°C¨x©Ñ 9Ñ:ð	!&ð
 
ó!&ðF òó ðð)˜H [Ñ1ó )ðE ð EÐ)9ó Eð¨°Ñ(=ó ð ð ¨ó ð2˜sð 2 só 2ð4 ð 4¨ó 4ð8˜#ó 8ð-˜3ó -ð+˜ó +ð+˜ó +ðV˜#ó Vð
˜Fð 
 tó 
ð&˜Fð & tó &ð MQñCØ ðCØ27¸¸cÀ5Ð8HÑ2IðCà	óCð ð@ ð @°#ð @Ð:Jò @ó ñ@r.   r!   é   c                   ó²   — e Zd Z	 ddede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	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y)ÚFloatObjectNr‡   Úcontextr#   c                 óÊ   — 	 t        |«      }t         j                  | |«      S # t        $ r6}t        |› d|› d�t        «       t         j                  | d«      cY d }~S d }~ww xY w)Nz : FloatObject (z) invalid; use 0.0 insteadg        )ÚfloatÚ__new__rD   r   r)   )Úclsr‡   rÑ   Úes       r,   rÔ   zFloatObject.__new__Þ  sb   € ð		+Ü˜%“LˆEÜ—=‘=  eÓ,Ð,øÜò 	+ô Ø�#Ð% e WÐ,FÐGÌôô —=‘=  cÓ*Õ*ûð	+ús   ‚ # £	A"¬+AÁA"ÁA"r7   r<   r=   c                 óN   — t        d| j                  t        | «      ||«      «      S )ri   rÐ   )r   rS   rÐ   r?   s       r,   r9   zFloatObject.cloneì  s+   € ô ØØ×!Ñ!¤+¨dÓ"3°X¸ÓOó
ð 	
r.   c                 óD   — t        | j                  | j                  f«      S rk   ©rm   r(   Ú
as_numericr*   s    r,   r-   zFloatObject.hash_binø  s   € ô �T—^‘^ T§_¡_Ð5Ó6Ð6r.   c                 ó¶   — | dk(  ryt         t        t        t        | «      «      «      z
  }| dt	        d|«      › d�›j                  d«      j                  d«      S )Nr   ú0.0Ú.rA   ÚfÚ0)ÚFLOAT_WRITE_PRECISIONrb   r   ÚabsÚmaxÚrstrip)r+   Únbs     r,   ÚmyreprzFloatObject.myrepr  sS   € Ø�1Š9ØÜ"¤S¬¬s°4«yÓ)9Ó%:Ñ:ˆØ�qœ˜Q ›˜ A�oÐ&×.Ñ.¨sÓ3×:Ñ:¸3Ó?Ð?r.   c                 ó"   — | j                  «       S r0   )rå   r*   s    r,   ry   zFloatObject.__repr__  s   € Ø�{‰{‹}Ðr.   c                 ó   — t        | «      S r0   )rÓ   r*   s    r,   rÚ   zFloatObject.as_numeric  s   € Ü�T‹{Ðr.   rW   rX   c                 ó|   — |�t        dd«       |j                  | j                  «       j                  d«      «       y ©Nro   rp   Úutf8)r   rr   rå   r1   rZ   s      r,   r[   zFloatObject.write_to_stream  s6   € ð Ð%Ü&ØAÀ7ôð 	�‰�T—[‘[“]×)Ñ)¨&Ó1Õ2r.   )rÜ   Nr\   r0   )r)   r]   r^   r   r
   rÔ   rd   r   r   re   rb   r9   r-   rå   ry   rÓ   rÚ   r   rc   r[   rU   r.   r,   rÐ   rÐ   Ý  sÍ   „ à:>ñ+Øð+Ø*2°3©-ð+à	ó+ð" !&Ø=?ñ	

àð

ð ð

ð   ¨¨s°C¨x©Ñ 9Ñ:ð	

ð
 
ó

ð7˜#ó 7ð@˜ó @ð˜#ó ð˜Eó ð MQñ3Ø ð3Ø27¸¸cÀ5Ð8HÑ2Ið3à	ô3r.   rÐ   c                   óÐ   — e Zd Z ej                  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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y)ÚNumberObjects	   [^+-.0-9]r‡   r#   c                 ó´   — 	 t         j                  | t        |«      «      S # t        $ r- t        d|› d�t        «       t         j                  | d«      cY S w xY w)NzNumberObject(z) invalid; use 0 insteadr   )rb   rÔ   Ú
ValueErrorr   r)   )rÕ   r‡   s     r,   rÔ   zNumberObject.__new__  sP   € ð	'Ü—;‘;˜s¤C¨£JÓ/Ð/øÜò 	'Ü˜]¨5¨'Ð1IÐJÌHÔUÜ—;‘;˜s AÓ&Ò&ð	'ús   ‚! ¡3AÁAr7   r<   r=   c                 óN   — t        d| j                  t        | «      ||«      «      S )ri   rì   )r   rS   rì   r?   s       r,   r9   zNumberObject.clone"  s+   € ô ØØ×!Ñ!¤,¨tÓ"4°hÀÓPó
ð 	
r.   c                 óL   — t        | j                  | j                  «       f«      S rk   rÙ   r*   s    r,   r-   zNumberObject.hash_bin.  s   € ô �T—^‘^ T§_¡_Ó%6Ð7Ó8Ð8r.   c                 óH   — t        t        | «      j                  d«      «      S )Nrê   )rb   Úreprr1   r*   s    r,   rÚ   zNumberObject.as_numeric8  s   € Ü”4˜“:×$Ñ$ VÓ,Ó-Ð-r.   NrW   rX   c                 ór   — |�t        dd«       |j                  t        | «      j                  d«      «       y ré   )r   rr   rò   r1   rZ   s      r,   r[   zNumberObject.write_to_stream;  s4   € ð Ð%Ü&ØAÀ7ôð 	�‰”T˜$“Z×&Ñ& vÓ.Õ/r.   )rì   rÐ   c                 ój   — t        | t        j                  «      }d|v rt        |«      S t        |«      S )Nó   .)r   rì   ÚNumberPatternrÐ   )rW   Únums     r,   rw   zNumberObject.read_from_streamD  s1   € ä˜v¤|×'AÑ'AÓBˆØ�3‰;Ü˜sÓ#Ð#Ü˜CÓ Ð r.   r\   r0   )r)   r]   r^   ÚreÚcompilerö   r   rÔ   rd   r
   r   r   re   rb   r9   r-   rÚ   r   rc   r[   rƒ   rw   rU   r.   r,   rì   rì     sÚ   „ Ø�B—J‘J˜|Ó,€Mð'˜Cð ' Nó 'ð !&Ø=?ñ	

àð

ð ð

ð   ¨¨s°C¨x©Ñ 9Ñ:ð	

ð
 
ó

ð9˜#ó 9ð.˜Có .ð MQñ0Ø ð0Ø27¸¸cÀ5Ð8HÑ2Ið0à	ó0ð ð! ð !°Ð6SÑ0Tò !ó ñ!r.   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y	)Ú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.
    r7   r<   r=   r#   c           
      ó`   — t        d| j                  t        t        | «      «      ||«      «      S )ri   rû   )r   rS   rû   rc   r?   s       r,   r9   zByteStringObject.cloneU  s2   € ô ØØ×!Ñ!Ü ¤ t£Ó-¨x¸óó
ð 	
r.   c                 óB   — t        | j                  t        | «      f«      S rk   )rm   r(   rc   r*   s    r,   r-   zByteStringObject.hash_binc  s   € ô �T—^‘^¤U¨4£[Ð1Ó2Ð2r.   c                 ó   — | S )z7For compatibility with TextStringObject.original_bytes.rU   r*   s    r,   Úoriginal_byteszByteStringObject.original_bytesm  s	   € ð ˆr.   NrW   rX   c                 ó¬   — |�t        dd«       |j                  d«       |j                  t        j                  | «      «       |j                  d«       y )Nro   rp   ó   <ó   >)r   rr   ÚbinasciiÚhexlifyrZ   s      r,   r[   z ByteStringObject.write_to_streamr  sH   € ð Ð%Ü&ØAÀ7ôð 	�‰�TÔØ�‰”X×%Ñ% dÓ+Ô,Ø�‰�TÕr.   c                 ó¢   — dgt        t        j                  «      ¢}|D ]  }	 | j                  |«      c S  t        d«      ‚# t        $ r Y Œ.w xY w)Núutf-16zCannot decode ByteStringObject.)ÚlistÚ
NameObjectÚCHARSETSÚdecodeÚUnicodeDecodeErrorr   )r+   Úcharset_to_tryÚencs      r,   r¾   zByteStringObject.__str__}  sZ   € Ø"Ð?¤T¬*×*=Ñ*=Ó%>Ð?ˆÛ!ˆCðØ—{‘{ 3Ó'Ò'ð "ô
 Ð<Ó=Ð=øô &ò Ùðús   £AÁ	AÁAr\   r0   )r)   r]   r^   Ú__doc__r   rd   r
   r   r   re   rb   r9   r-   rÍ   rc   rÿ   r   r[   r¾   rU   r.   r,   rû   rû   L  s¯   „ ñð !&Ø=?ñ	
àð
ð ð
ð   ¨¨s°C¨x©Ñ 9Ñ:ð	
ð
 
ó
ð3˜#ó 3ð ð ò ó ðð
 MQñ	Ø ð	Ø27¸¸cÀ5Ð8HÑ2Ið	à	ó	ð>˜ô >r.   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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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y)Ú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|}|j                  d«      }t        j	                  | |«      }||_        d|_        d|_        d|_        |j                  d«      rI|€J d«       ‚	 t        j	                  | |j                  d«      «      }||_        d|_        |d d	 |_        |S 	 t        |«       d|_        |S # t        $ re}t        |›d|j                  ›�t        «       t        j	                  | |j                  d |j                   j                  d«      «      }Y d }~Œ˜d }~ww xY w# t         $ r  d|_        t"        j$                  |_        Y |S w xY w)
NÚcharmapFr.   )u   Ã¾Ã¿u   Ã¿Ã¾rŸ   r  z
initial string:Tr   )r|   rc   r
  re   rÔ   r  r  r  r  Ú
startswithr  r   r„   r)   ÚstartÚencode_pdfdocencodingÚUnicodeEncodeErrorÚcodecsÚBOM_UTF16_BE)rÕ   r‡   Úorgr�   Úexcs        r,   rÔ   zTextStringObject.__new__•  sX  € ØˆÜ�eœUÔ#ØˆCØ—L‘L Ó+ˆEÜ�K‰K˜˜UÓ#ˆØˆÔØ"ˆÔØ&+ˆÔ#ØˆŒØ�<‰<Ð0Ô1Ø�?Ð* FÓ*�?ðOÜ—K‘K  S§Z¡Z°Ó%9Ó:�ð !$ˆAÔØ!%ˆAÔØ˜b˜q˜'ˆAŒKð ˆð2Ü% aÔ(Ø.2�Ô+ð ˆøô! &ò OÜØ�gÐ.¨s¯z©z¨nÐ=Üôô —K‘K  S§Z¡Z°°#·)±)Ð%<×%CÑ%CÀHÓ%MÓN•ûðOûô &ò 2Ø%)�Ô"Ü$×1Ñ1�•Øˆð2ús+   Á3%C Â3D8 Ã	D5ÃAD0Ä0D5Ä8%E!Å E!r7   r<   r=   c                 óÚ   — t        | «      }| j                  |_        | j                  |_        | j                  |_        | j                  |_        t        d| j                  |||«      «      S )ri   r  )r  r  r  r  r  r   rS   )r+   r7   r<   r=   rR   s        r,   r9   zTextStringObject.cloneµ  sd   € ô ˜tÓ$ˆØ"×2Ñ2ˆÔØ(,×(FÑ(FˆÔ%Ø#×4Ñ4ˆÔØŸ™ˆŒÜØ × 5Ñ 5°c¸8À_Ó Uó
ð 	
r.   c                 óD   — t        | j                  | j                  f«      S rk   )rm   r(   rÿ   r*   s    r,   r-   zTextStringObject.hash_binÅ  s   € ô �T—^‘^ T×%8Ñ%8Ð9Ó:Ð:r.   c                 óR   — | j                   �| j                   S | j                  «       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+   € ð ×ÑÐ+Ø×'Ñ'Ð'Ø×&Ñ&Ó(Ð(r.   c                 ó|  — | j                   r�| j                  t        j                  k(  r"t        j                  | j	                  d«      z   S | j                  t        j
                  k(  r"t        j
                  | j	                  d«      z   S | j	                  d«      S | j                  rt        | «      S t        d«      ‚)Núutf-16leúutf-16bez#no information about original bytes)	r  r  r  ÚBOM_UTF16_LEr1   r  r  r  rD   r*   s    r,   r"  z#TextStringObject.get_original_bytesÛ  s”   € ð × Ò Ø�~‰~¤×!4Ñ!4Ò4Ü×*Ñ*¨T¯[©[¸Ó-DÑDÐDØ�~‰~¤×!4Ñ!4Ò4Ü×*Ñ*¨T¯[©[¸Ó-DÑDÐDØ—;‘;˜zÓ*Ð*Ø×)Ò)Ü(¨Ó.Ð.ÜÐ=Ó>Ð>r.   c                 óÎ  — 	 | j                   �| j                   S | j                  rt        ddddd«      ‚t        | «      }|S # t        $ r™ | j                  t
        j                  k(  r%t
        j                  | j                  d«      z   }Y |S | j                  t
        j                  k(  r%t
        j                  | j                  d«      z   }Y |S | j                  d«      }Y |S w xY w)NÚ Úforcedéÿÿÿÿr$  r%  )	r  r  r  r  r  r  r&  r1   r  )r+   Úbytearrs     r,   Úget_encoded_bytesz"TextStringObject.get_encoded_bytesë  sØ   € ð	2Ø×#Ñ#Ð/Ø×+Ñ+Ð+Ø×$Ò$Ü(¨¨X°r¸2¸rÓBÐBÜ+¨DÓ1ˆGð ˆøô "ò 	2Ø�~‰~¤×!4Ñ!4Ò4Ü ×-Ñ-°·±¸JÓ0GÑG‘ð
 ˆð	 —‘¤6×#6Ñ#6Ò6Ü ×-Ñ-°·±¸JÓ0GÑG‘ð ˆð Ÿ+™+ jÓ1‘Øˆð	2ús#   ‚A š&A ÁAC$Â?C$ÃC$Ã#C$rW   rX   c                 óT  — |�t        dd«       | j                  «       }|j                  d«       t        d|«      D ]Y  }t	        t
        |d   «      }|j                  «       s#|dk7  r|j                  dt        |«      z  «       ŒI|j                  |«       Œ[ |j                  d«       y )	Nro   rp   ó   (Úcr   ó    s   \%03oó   ))r   r,  rr   r   r   rc   ÚisalnumÚord)r+   rW   rX   r+  Úc_r/  s         r,   r[   z TextStringObject.write_to_streamþ  s“   € ð Ð%Ü&ØAÀ7ôð ×(Ñ(Ó*ˆØ�‰�TÔÜ˜c 7Ö+ˆBÜ”U˜B˜q™EÓ"ˆAØ—9‘9”; 1¨¢9ð
 —‘˜Y¬¨Q«Ñ/Õ0à—‘˜Q•ð ,ð 	�‰�TÕr.   r\   r0   )r)   r]   r^   r  rd   ra   rc   r  r
   r   rÔ   r   r   re   rb   r9   r-   rÍ   rÿ   r"  r,  r   r[   rU   r.   r,   r  r  ‡  sò   … ñð  $Ó#ØÓØÓØ'+€O�X˜e‘_Ó+ð˜Cð Ð$6ó ðF !&Ø=?ñ	
àð
ð ð
ð   ¨¨s°C¨x©Ñ 9Ñ:ð	
ð
 
ó
ð ;˜#ó ;ð ð	) ò 	)ó ð	)ð? Eó ?ð  5ó ð( MQñØ ðØ27¸¸cÀ5Ð8HÑ2Iðà	ôr.   r  c                   ó  — e Zd ZU  ej                  d«      ZdZi dD � ��ci c]   }t        |«      d|d›�j                  «       “Œ" c}}} ¥ e	d«      D � ��ci c]   }t        |«      d|d›�j                  «       “Œ" c}}} ¥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!yc c}}} w c c}}} w )r  s   \s+|[\(\)<>\[\]{}/%]ó   /s   #()<>[]{}/%Ú#Ú02Xé!   Úrenumber_tabler7   r<   r=   r#   c                 óN   — t        d| j                  t        | «      ||«      «      S )ri   r  )r   rS   r  r?   s       r,   r9   zNameObject.clone  s+   € ô ØØ×!Ñ!¤*¨TÓ"2°H¸oÓNó
ð 	
r.   c                 ó0   — t        | j                  | f«      S rk   rl   r*   s    r,   r-   zNameObject.hash_bin(  s   € ô �T—^‘^ TÐ*Ó+Ð+r.   NrW   rX   c                 ó^   — |�t        dd«       |j                  | j                  «       «       y )Nro   rp   )r   rr   ÚrenumberrZ   s      r,   r[   zNameObject.write_to_stream2  s+   € ð Ð%Ü&ØAÀ7ôð 	�‰�T—]‘]“_Õ%r.   c                 ó>  — | d   j                  d«      }|dk7  rt        d| › d�d«       | dd  D ]H  }|dkD  r.|j                  d«      D ]  }|d	|d
›�j                  «       z  }Œ Œ6	 || j                  |   z  }ŒJ |S # t        $ r ||j                  d«      z  }Y Œlw xY w)Nr   úutf-8r6  z<Incorrect first char in NameObject, should start with '/': (rÀ   rp   rA   Ú~r7  r8  )r1   r   r:  ÚKeyError)r+   Úoutr/  Úxs       r,   r>  zNameObject.renumber;  s¿   € Ø�1‰g�n‰n˜WÓ%ˆØ�$Š;Ü&ØNÈtÈfÐTUÐVØôð �a�b“ˆAØ�3ŠwØŸ™ 'Ö*�AØ˜Q˜q ˜g˜;×-Ñ-Ó/Ñ/‘Cñ +ð-Ø˜4×.Ñ.¨qÑ1Ñ1‘Cð ð ˆ
øô  ò -Ø˜1Ÿ8™8 GÓ,Ñ,’Cð-ús   Á&A<Á<BÂBc                 ó–   — t        | «      d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.
        rA   Nz\ Ú_z[^a-zA-Z0-9_-]Ú/)re   rø   Úsubr  r­   s     r,   Ú	_sanitizezNameObject._sanitizeM  sG   € ô �4‹y˜˜ˆ}ˆÜ�v‰v�e˜S $Ó'ˆÜ�v‰vÐ'¨¨dÓ3ˆÜ˜# ™*Ó%Ð%r.   c                 ó   — t        ddd«       y)NÚsurfixÚprefixrp   r6  )r   )rÕ   s    r,   rK  zNameObject.surfix\  s   € ä$ X¨x¸ÔAØr.   Úsinc                 óÚ   — | j                  dd«      }|dk\  r?	 | d | t        | |dz   |dz    «      z   | |dz   d  z   } | j                  d|dz   «      }|dk\  rŒ?| S # t        $ r |dz   }Y Œw xY w)Nó   #r   rA   r   )Úfindr   rî   )rM  rQ   s     r,   ÚunnumberzNameObject.unnumbera  s‘   € à�H‰H�T˜1ÓˆØ�1ŠfðØ˜"˜1�g¤	¨#¨a°!©e°a¸!±eÐ*<Ó =Ñ=ÀÀAÈÁEÀGÀÑL�Ø—H‘H˜T 1 q¡5Ó)�ð �1‹fð ˆ
øô	 ò ð ˜‘E’ðús   ™8A ÁA*Á)A*)r@  ÚgbkÚlatin1rC   c                 ó4  — | j                  d«      }|t        j                  k7  rt        d«      ‚|t	        | t        j
                  «      z  }	 t        j                  |«      }t        j                  D ]   }	 |j                  |«      }t        |«      c S  t        d|ddd«      ‚# t        $ r Y Œ=w xY w# t        t        f$ rT}|j                  s3t        d|›d�t        «       t        |j                  d«      «      cY d }~S t        d|›d	�«      |‚d }~ww xY w)
NrA   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.)ru   r  rL  r   r   Údelimiter_patternrQ  r	  r
  rD   r  r  Ústrictr   r)   )rW   rC   rª   r  ÚretrÖ   s         r,   rw   zNameObject.read_from_streamp  s%  € à�{‰{˜1‹~ˆØ”:×$Ñ$Ò$ÜÐ0Ó1Ð1ØÔ  ¬×)EÑ)EÓFÑFˆð	ô ×&Ñ& tÓ,ˆDÜ!×*Ô*�ðØŸ+™+ cÓ*�CÜ% c›?Ò*ð +ô % R¨¨q°!Ð5EÓFÐFøô !ò Ùðûô #Ô$6Ð7ò 	Ø—:’:ÜØ7¸°xð @Að Aäôô
 " $§+¡+¨iÓ"8Ó9Õ9ÜØ3°D°8ð <>ð >óð ðûð	úsN   Á(B4 Á7B%ÂB4 ÂB4 Â%	B1Â.B4 Â0B1Â1B4 Â4DÃ9DÃ<DÄDÄDr\   r0   )r#   r  )"r)   r]   r^   rø   rù   rU  rL  Úchrr1   Úranger:  r	   Údictre   rc   ra   r   rd   r
   r   r   rb   r9   r-   r   r[   r>  rI  r   rK  rƒ   rQ  r	  rw   )Ú.0rQ   rX  s   000r,   r  r    s¢  … Ø"˜Ÿ
™
Ð#;Ó<ÐØ€Fð2Ù1?Õ
@±¨AŒ3ˆq‹6�Q�q˜�g�;×%Ñ%Ó'Ñ'°Ó
@ð2á16°r´Õ
;±¨AŒ3ˆq‹6�Q�q˜�g�;×%Ñ%Ó'Ñ'°Ó
;ð2€N�H˜T # u *Ñ-Ñ.ó ð !&Ø=?ñ	

àð

ð ð

ð   ¨¨s°C¨x©Ñ 9Ñ:ð	

ð
 
ó

ð,˜#ó ,ð MQñ&Ø ð&Ø27¸¸cÀ5Ð8HÑ2Ið&à	ó&ð˜%ó ó$&ð ð�uò ó ðð ð
�eð 
 ò 
ó ð
ð *€Hàð ð °#ð ¸,ò ó ñùôs AùÜ
;s   ¡%C5
Á%C<
r  Úunicode_stringr#   c                 ó†   — 	 t        | D �cg c]  }t        |   ‘Œ c}«      S c c}w # t        $ r t        d| ddd«      ‚w xY w)NÚpdfdocencodingr*  z#does not exist in translation table)rc   r   rB  r  )r\  Úks     r,   r  r  �  sU   € ð	
Ü±~ÓF±~°!Ô*¨1Ó-°~ÑFÓGÐGùÒFøÜò 
Ü ØØØØØ1ó
ð 	
ð
ús   ‚	' ‹"›' ¢' §A rD  c                 ó–   — | du xsD t        | t        «      xr2 | j                  «       du xs t        | j                  «       t        «      S )z<
    Returns:
        True if x is None or NullObject.

    N)r|   r   rM   rg   )rD  s    r,   Úis_null_or_nonera  œ  sE   € ð �ˆ9ò Ü�1”iÓ ò 	OØ�\‰\‹^˜tÐ#ÒM¤z°!·,±,³.Ä*Ó'Mðr.   )9r  r  r_   rø   Úsysr   Úcollections.abcr   Úmathr   Ústructr   Útypingr   r   r	   r
   r   r   Úversion_infor   Útyping_extensionsÚ_codecsr   Ú
_protocolsr   r   Ú_utilsr   r   r   r   r   r   r   Úerrorsr   r   r   Ú
__author__Ú__author_email__r   rg   r†   r!   rà   rÓ   rÐ   rb   rì   rc   rû   re   r  r  r  ra  rU   r.   r,   Ú<module>ro     s5  ðó6 Û Û Û 	Û 
Ý Ý $Ý Ý ß A× Aà×Ñ�B�QÐ˜7Ò"Þ å+å *ß =÷÷ ñ ÷ PÑ Oà€
Ø/Ð ôK"Ð!ô K"ô\-�ô -ô`;<�Iô ;<ô|_@�Yô _@ðD Ð ô83�%˜ô 83ôv1!�3˜	ô 1!ôh8>�u˜iô 8>ôvJ�s˜Iô JôZx��iô xðv

¨#ð 

°%ó 

ð	�sð 	˜y¨¨t°ZÀÐ/OÑ)PÑQô 	r.   