§
    ;]¥eäE  ã                   ór  — d Z ddlZddlZddlZddlmZmZmZmZm	Z	m
Z
mZmZmZ ddlmZ ddlmZ ddlmZ ddlmZ dd	lmZmZmZ dd
lmZ ddlmZmZ dZdZdZ dZ!dZ"dZ# ej$        dej%        ¦  «        Z& ed¦  «        Z'de'de'fd„Z(de)dej        fd„Z*de)de)dedge
e	e)                  f         fd„Z+e(fde)de)deegef         dedge
e	e                  f         fd„Z,de)de)dedge
eeef                  f         fd„Z-e(fde)de)dee)gef         dedge
e         f         fd„Z. G d „ de¦  «        Z/dS )!zc
Anything related to XMP metadata.

See https://en.wikipedia.org/wiki/Extensible_Metadata_Platform
é    N)	ÚAnyÚCallableÚDictÚIteratorÚListÚOptionalÚTypeVarÚUnionÚcast)ÚDocument)ÚElement)ÚparseString)Ú
ExpatErroré   )Ú
StreamTypeÚdeprecate_with_replacementÚdeprecation_with_replacement)ÚPdfReadError)ÚContentStreamÚ	PdfObjectz+http://www.w3.org/1999/02/22-rdf-syntax-ns#z http://purl.org/dc/elements/1.1/zhttp://ns.adobe.com/xap/1.0/zhttp://ns.adobe.com/pdf/1.3/zhttp://ns.adobe.com/xap/1.0/mm/zhttp://ns.adobe.com/pdfx/1.3/a{  
        (?P<year>[0-9]{4})
        (-
            (?P<month>[0-9]{2})
            (-
                (?P<day>[0-9]+)
                (T
                    (?P<hour>[0-9]{2}):
                    (?P<minute>[0-9]{2})
                    (:(?P<second>[0-9]{2}(.[0-9]+)?))?
                    (?P<tzd>Z|[-+][0-9]{2}:[0-9]{2})
                )?
            )?
        )?
        ÚKÚvalueÚreturnc                 ó   — | S ©N© )r   s    ú+/usr/lib/python3/dist-packages/pypdf/xmp.pyÚ	_identityr   S   s   € Ø€Ló    c           	      ó¦  — t                                | ¦  «        }|€t          d| › �¦  «        ‚t          |                     d¦  «        ¦  «        }t          |                     d¦  «        pd¦  «        }t          |                     d¦  «        pd¦  «        }t          |                     d¦  «        pd¦  «        }t          |                     d¦  «        pd¦  «        }t          j        |                     d	¦  «        pd¦  «        }|                     t
          j        ¦  «        }||z
  d
z  }	t          |¦  «        }
t          |	¦  «        }|                     d¦  «        pd}t          j	        ||||||
|¦  «        }|dk    rKd„ | 
                    d¦  «        D ¦   «         \  }}|dz  }|dk     r|dz  }|t          j        ||¬¦  «        z   }|S )NzInvalid date format: ÚyearÚmonthÚ1ÚdayÚhourÚ0ÚminuteÚsecondi@B ÚtzdÚZc              3   ó4   K  — | ]}t          |¦  «        V — Œd S r   )Úint)Ú.0Úxs     r   ú	<genexpr>z"_converter_date.<locals>.<genexpr>j   s(   è è € Ð!AÐ!A¨Q¥# a¡&¤&Ð!AÐ!AÐ!AÐ!AÐ!AÐ!Ar   ú:éÿÿÿÿr   )ÚhoursÚminutes)Úiso8601ÚmatchÚ
ValueErrorr,   ÚgroupÚdecimalÚDecimalÚto_integralÚROUND_FLOORÚdatetimeÚsplitÚ	timedelta)r   Úmatchesr!   r"   r$   r%   r'   r(   Úseconds_decÚmilliseconds_decÚsecondsÚmillisecondsr)   ÚdtÚ	tzd_hoursÚtzd_minutess                   r   Ú_converter_daterG   W   s¹  € Ý�mŠm˜EÑ"Ô"€GØ€ÝÐ8°Ð8Ð8Ñ9Ô9Ð9Ýˆw�}Š}˜VÑ$Ô$Ñ%Ô%€DÝ�—’˜gÑ&Ô&Ð-¨#Ñ.Ô.€EÝ
ˆg�mŠm˜EÑ"Ô"Ð) cÑ
*Ô
*€CÝˆw�}Š}˜VÑ$Ô$Ð+¨Ñ,Ô,€DÝ�—’˜xÑ(Ô(Ð/¨CÑ0Ô0€FÝŒ_˜WŸ]š]¨8Ñ4Ô4Ð;¸Ñ<Ô<€FØ×$Ò$¥WÔ%8Ñ9Ô9€KØ Ñ,°	Ñ9Ðå�+ÑÔ€GÝÐ'Ñ(Ô(€Là
�-Š-˜Ñ
Ô
Ð
% #€CÝ	Ô	˜4 ¨¨T°6¸7ÀLÑ	QÔ	Q€BØ
ˆc‚z€zØ!AÐ!A°#·)²)¸C±.´.Ð!AÑ!AÔ!AÑˆ	�;Ø�R‰ˆ	Ø�qŠ=ˆ=Ø˜2ÑˆKØ•(Ô$¨9¸kÐJÑJÔJÑJˆØ€Ir   Ú	namespaceÚnameÚXmpInformationc                 óV   ‡ ‡— dddt           t          t                            fˆˆ fd„}|S )NÚselfrJ   r   c                 óÒ  •— | j                              ‰
i ¦  «                             ‰	¦  «        }|r|S g }|                      d‰
‰	¦  «        D ]y}|                     t          d¦  «        }t          |¦  «        rM|D ]J}|                     t          d¦  «        D ],}|                      |¦  «        }|                     |¦  «         Œ-ŒKŒz| j                              ‰
i ¦  «        }||‰	<   |S )NÚ ÚBagÚli©	ÚcacheÚgetÚget_elementÚgetElementsByTagNameNSÚRDF_NAMESPACEÚlenÚ	_get_textÚappendÚ
setdefault)rL   ÚcachedÚretvalÚelementÚbagsÚbagÚitemr   Úns_cacherI   rH   s            €€r   rS   z_getter_bag.<locals>.getu   sý   ø€ Ø”—’ 	¨2Ñ.Ô.×2Ò2°4Ñ8Ô8ˆØð 	ØˆMØˆØ×'Ò'¨¨I°tÑ<Ô<ð 	-ð 	-ˆGØ×1Ò1µ-ÀÑGÔGˆDÝ�4‰yŒyð -Øð -ð -�CØ #× :Ò :½=È$Ñ OÔ Oð -ð -˜Ø $§¢¨tÑ 4Ô 4˜ØŸš eÑ,Ô,Ð,Ð,ð-øð ”:×(Ò(¨°BÑ7Ô7ˆØˆ�‰Øˆr   )r   r   Ústr©rH   rI   rS   s   `` r   Ú_getter_bagrd   r   sF   øø€ ðÐ"ð ¥xµµS´	Ô':ð ð ð ð ð ð ð ð  €Jr   Ú	converterc                 óZ   ‡ ‡‡— dddt           t          t                            fˆˆˆ fd„}|S )NrL   rJ   r   c                 óP  •— | j                              ‰i ¦  «                             ‰
¦  «        }|r|S g }|                      d‰‰
¦  «        D ]¸}|                     t          d¦  «        }t          |¦  «        rY|D ]U}|                     t          d¦  «        D ]7}|                      |¦  «        } ‰	|¦  «        }|                     |¦  «         Œ8ŒVŒ… ‰	|                      |¦  «        ¦  «        }|                     |¦  «         Œ¹| j                              ‰i ¦  «        }||‰
<   |S )NrN   ÚSeqrP   rQ   )rL   r[   r\   r]   ÚseqsÚseqr`   r   ra   re   rI   rH   s            €€€r   rS   z_getter_seq.<locals>.get‹   s@  ø€ Ø”—’ 	¨2Ñ.Ô.×2Ò2°4Ñ8Ô8ˆØð 	ØˆMØˆØ×'Ò'¨¨I°tÑ<Ô<ð 
	%ð 
	%ˆGØ×1Ò1µ-ÀÑGÔGˆDÝ�4‰yŒyð %Øð -ð -�CØ #× :Ò :½=È$Ñ OÔ Oð -ð -˜Ø $§¢¨tÑ 4Ô 4˜Ø ) 	¨%Ñ 0Ô 0˜ØŸš eÑ,Ô,Ð,Ð,ð-ð-ð "˜	 $§.¢.°Ñ"9Ô"9Ñ:Ô:�Ø—’˜eÑ$Ô$Ð$Ð$Ø”:×(Ò(¨°BÑ7Ô7ˆØˆ�‰Øˆr   )r   r   r   ©rH   rI   re   rS   s   ``` r   Ú_getter_seqrl   ˆ   sL   øøø€ ðÐ"ð ¥xµµS´	Ô':ð ð ð ð ð ð ð ð ð( €Jr   c                 ód   ‡ ‡— dddt           t          t          t          f                  fˆˆ fd„}|S )NrL   rJ   r   c                 ó
  •— | j                              ‰
i ¦  «                             ‰	¦  «        }|r|S i }|                      d‰
‰	¦  «        D ]•}|                     t          d¦  «        }t          |¦  «        rQ|D ]M}|                     t          d¦  «        D ]/}|                      |¦  «        }|||                     d¦  «        <   Œ0ŒNŒ}|                      |¦  «        |d<   Œ–| j                              ‰
i ¦  «        }||‰	<   |S )NrN   ÚAltrP   zxml:langz	x-default)	rR   rS   rT   rU   rV   rW   rX   ÚgetAttributerZ   )rL   r[   r\   r]   ÚaltsÚaltr`   r   ra   rI   rH   s            €€r   rS   z_getter_langalt.<locals>.get¥   s&  ø€ Ø”—’ 	¨2Ñ.Ô.×2Ò2°4Ñ8Ô8ˆØð 	ØˆMØˆØ×'Ò'¨¨I°tÑ<Ô<ð 	>ð 	>ˆGØ×1Ò1µ-ÀÑGÔGˆDÝ�4‰yŒyð >Øð Fð F�CØ #× :Ò :½=È$Ñ OÔ Oð Fð F˜Ø $§¢¨tÑ 4Ô 4˜Ø@E˜˜t×0Ò0°Ñ<Ô<Ñ=Ð=ðFðFð
 '+§n¢n°WÑ&=Ô&=��{Ñ#Ð#Ø”:×(Ò(¨°BÑ7Ô7ˆØˆ�‰Øˆr   )r   r   r   rc   s   `` r   Ú_getter_langaltrs   ¢   sJ   øø€ ðÐ"ð ¥xµµS½#°X´Ô'?ð ð ð ð ð ð ð ð$ €Jr   c                 óD   ‡ ‡‡— dddt           t                   fˆˆˆ fd„}|S )NrL   rJ   r   c                 óX  •— | j                              ‰i ¦  «                             ‰¦  «        }|r|S d }|                      d‰‰¦  «        D ]/}|j        |j        k    r|j        }n|                      |¦  «        } |� ‰|¦  «        }| j                              ‰i ¦  «        }||‰<   |S ©NrN   )rR   rS   rT   ÚnodeTypeÚATTRIBUTE_NODEÚ	nodeValuerX   rZ   )rL   r[   r   r]   ra   re   rI   rH   s        €€€r   rS   z_getter_single.<locals>.get½   sÂ   ø€ Ø”—’ 	¨2Ñ.Ô.×2Ò2°4Ñ8Ô8ˆØð 	ØˆMØˆØ×'Ò'¨¨I°tÑ<Ô<ð 	ð 	ˆGØÔ 7Ô#9Ò9Ð9ØÔ)��àŸš wÑ/Ô/�ØØÐØ�I˜eÑ$Ô$ˆEØ”:×(Ò(¨°BÑ7Ô7ˆØˆ�‰Øˆr   )r   r   rk   s   ``` r   Ú_getter_singlerz   º   sG   øøø€ ðÐ"ð ¥xµ¤}ð ð ð ð ð ð ð ð ð" €Jr   c            	       óV  — e Zd ZdZdeddfd„Zedefd„¦   «         Zde	de
deef         ddfd„Zde	de
deef         ddfd	„Zd
edededee         fd„Zdedededee         fd„Zd
ededee         fd„Zdededee         fd„Zdedefd„Z e eed¦  «        ¦  «        Z	  e eed¦  «        ¦  «        Z	  e eed¦  «        ¦  «        Z	  e eede¦  «        ¦  «        Z	  e eed¦  «        ¦  «        Z 	  e eed¦  «        ¦  «        Z!	  e eed¦  «        ¦  «        Z"	  e eed¦  «        ¦  «        Z#	  e eed¦  «        ¦  «        Z$	  e eed¦  «        ¦  «        Z%	  e eed¦  «        ¦  «        Z&	  e eed¦  «        ¦  «        Z'	  e eed ¦  «        ¦  «        Z(	  e eed!¦  «        ¦  «        Z)	  e eed"¦  «        ¦  «        Z*	  e ee+d#¦  «        ¦  «        Z,	  e ee+d$¦  «        ¦  «        Z-	  e ee+d%¦  «        ¦  «        Z.	  e ee/d&e¦  «        ¦  «        Z0	 ede1j1        fd'„¦   «         Z2e2j3        d(e1j1        ddfd)„¦   «         Z2 e ee/d*e¦  «        ¦  «        Z4	 ede1j1        fd+„¦   «         Z5e5j3        d(e1j1        ddfd,„¦   «         Z5 e ee/d-e¦  «        ¦  «        Z6	 ede1j1        fd.„¦   «         Z7e7j3        d(e1j1        ddfd/„¦   «         Z7 e ee/d0¦  «        ¦  «        Z8	 edefd1„¦   «         Z9e9j3        d(eddfd2„¦   «         Z9 e ee:d3¦  «        ¦  «        Z;	 edefd4„¦   «         Z<e<j3        d(eddfd5„¦   «         Z< e ee:d6¦  «        ¦  «        Z=	 edefd7„¦   «         Z>e>j3        d(eddfd8„¦   «         Z>ede?eef         fd9„¦   «         Z@dS ):rJ   zº
    An object that represents Adobe XMP metadata.
    Usually accessed by :py:attr:`xmp_metadata()<pypdf.PdfReader.xmp_metadata>`

    Raises:
      PdfReadError: if XML is invalid
    Ústreamr   Nc                 ó
  — || _         	 | j                              ¦   «         }t          |¦  «        }n$# t          $ r}t	          d|› �¦  «        ‚d }~ww xY w|                     t          d¦  «        d         | _        i | _        d S )Nz#XML in XmpInformation was invalid: ÚRDFr   )	r|   Úget_datar   r   r   rU   rV   Úrdf_rootrR   )rL   r|   ÚdataÚdoc_rootÚes        r   Ú__init__zXmpInformation.__init__Ú   sœ   € ØˆŒð	JØ”;×'Ò'Ñ)Ô)ˆDÝ!,¨TÑ!2Ô!2ˆHˆHøÝð 	Jð 	Jð 	JÝÐHÀQÐHÐHÑIÔIÐIøøøøð	Jøøøà$,×$CÒ$CÝ˜5ñ%
ô %
à
ô%ˆŒð &(ˆŒ
ˆ
ˆ
s   ‰(2 ²
A¼AÁAc                 ó2   — t          ddd¦  «         | j        S )NÚrdfRootr€   ú4.0.0)r   r€   ©rL   s    r   r†   zXmpInformation.rdfRootæ   s   € å" 9¨j¸'ÑBÔBÐBØŒ}Ðr   Úencryption_keyc                 ó<   — | j                              ||¦  «         d S r   )r|   Úwrite_to_stream©rL   r|   r‰   s      r   r‹   zXmpInformation.write_to_streamë   s"   € ð 	Œ×#Ò# F¨NÑ;Ô;Ð;Ð;Ð;r   c                 óT   — t          ddd¦  «         |                      ||¦  «         dS )zV
        Use :meth:`write_to_stream` instead.

        .. deprecated:: 1.28.0
        ÚwriteToStreamr‹   ú3.0.0N)r   r‹   rŒ   s      r   rŽ   zXmpInformation.writeToStreamð   s3   € õ 	% _Ð6GÈÑQÔQÐQØ×Ò˜V ^Ñ4Ô4Ð4Ð4Ð4r   Ú	about_urirH   rI   c              #   óþ   K  — | j                              t          d¦  «        D ]Y}|                     t          d¦  «        |k    r8|                     ||¦  «        }|�|V — |                     ||¦  «        E d {V —† ŒZd S ©NÚDescriptionÚabout)r€   rU   rV   ÚgetAttributeNSÚgetAttributeNodeNS)rL   r�   rH   rI   ÚdescÚattrs         r   rT   zXmpInformation.get_elementû   s�   è è € Ø”M×8Ò8½ÈÑVÔVð 	Hð 	HˆDØ×"Ò"¥=°'Ñ:Ô:¸iÒGÐGØ×.Ò.¨y¸$Ñ?Ô?�ØÐ#Ø�J�J�JØ×6Ò6°yÀ$ÑGÔGÐGÐGÐGÐGÐGÐGÐGøð	Hð 	Hr   ÚaboutUric                 óR   — t          ddd¦  «         |                      |||¦  «        S )zR
        Use :meth:`get_element` instead.

        .. deprecated:: 1.28.0
        Ú
getElementrT   r�   )r   rT   )rL   r™   rH   rI   s       r   r›   zXmpInformation.getElement  s.   € õ 	% \°=À'ÑJÔJÐJØ×Ò ¨)°TÑ:Ô:Ð:r   c              #   óJ  K  — | j                              t          d¦  «        D ]}|                     t          d¦  «        |k    r^t	          |j        j        ¦  «        D ]+}|j                             |¦  «        }|j        |k    r|V — Œ,|j	        D ]}|j        |k    r|V — ŒŒ€d S r’   )
r€   rU   rV   r•   ÚrangeÚ
attributesÚlengthr`   ÚnamespaceURIÚ
childNodes)rL   r�   rH   r—   Úir˜   Úchilds          r   Úget_nodes_in_namespacez%XmpInformation.get_nodes_in_namespace  s¿   è è € Ø”M×8Ò8½ÈÑVÔVð 	$ð 	$ˆDØ×"Ò"¥=°'Ñ:Ô:¸iÒGÐGÝ˜tœÔ5Ñ6Ô6ð #ð #�AØœ?×/Ò/°Ñ2Ô2�DØÔ(¨IÒ5Ð5Ø"˜
˜
˜
øØ!œ_ð $ð $�EØÔ)¨YÒ6Ð6Ø#˜˜˜øøð	$ð 	$r   c                 óP   — t          ddd¦  «         |                      ||¦  «        S )z]
        Use :meth:`get_nodes_in_namespace` instead.

        .. deprecated:: 1.28.0
        ÚgetNodesInNamespacer¤   r�   )r   r¤   )rL   r™   rH   s      r   r¦   z"XmpInformation.getNodesInNamespace  s6   € õ 	%Ø!Ð#;¸Wñ	
ô 	
ð 	
ð ×*Ò*¨8°YÑ?Ô?Ð?r   r]   c                 óR   — d}|j         D ]}|j        |j        k    r
||j        z  }Œ|S rv   )r¡   rw   Ú	TEXT_NODEr�   )rL   r]   Útextr£   s       r   rX   zXmpInformation._get_text&  s:   € ØˆØÔ'ð 	#ð 	#ˆEØŒ~ ¤Ò0Ð0Ø˜œ
Ñ"�øØˆr   ÚcontributorÚcoverageÚcreatorÚdateÚdescriptionÚformatÚ
identifierÚlanguageÚ	publisherÚrelationÚrightsÚsourceÚsubjectÚtitleÚtypeÚKeywordsÚ
PDFVersionÚProducerÚ
CreateDatec                 ó2   — t          ddd¦  «         | j        S ©NÚxmp_createDateÚxmp_create_dater‡   ©r   rÀ   rˆ   s    r   r¿   zXmpInformation.xmp_createDatez  ó   € å"Ð#3Ð5FÈÑPÔPÐPØÔ#Ð#r   r   c                 ó6   — t          ddd¦  «         || _        d S r¾   rÁ   ©rL   r   s     r   r¿   zXmpInformation.xmp_createDate  ó$   € å"Ð#3Ð5FÈÑPÔPÐPØ$ˆÔÐÐr   Ú
ModifyDatec                 ó2   — t          ddd¦  «         | j        S ©NÚxmp_modifyDateÚxmp_modify_dater‡   ©r   rÊ   rˆ   s    r   rÉ   zXmpInformation.xmp_modifyDate�  rÂ   r   c                 ó6   — t          ddd¦  «         || _        d S rÈ   rË   rÄ   s     r   rÉ   zXmpInformation.xmp_modifyDate’  rÅ   r   ÚMetadataDatec                 ó2   — t          ddd¦  «         | j        S ©NÚxmp_metadataDateÚxmp_metadata_dater‡   ©r   rÑ   rˆ   s    r   rÐ   zXmpInformation.xmp_metadataDate   s   € å"Ð#5Ð7JÈGÑTÔTÐTØÔ%Ð%r   c                 ó6   — t          ddd¦  «         || _        d S rÏ   rÒ   rÄ   s     r   rÐ   zXmpInformation.xmp_metadataDate¥  s$   € å"Ð#5Ð7JÈGÑTÔTÐTØ!&ˆÔÐÐr   ÚCreatorToolc                 ó2   — t          ddd¦  «         | j        S ©NÚxmp_creatorToolÚxmp_creator_toolr�   ©r   rØ   rˆ   s    r   r×   zXmpInformation.xmp_creatorTool­  s   € å$Ð%6Ð8JÈGÑTÔTÐTØÔ$Ð$r   c                 ó6   — t          ddd¦  «         || _        d S rÖ   rÙ   rÄ   s     r   r×   zXmpInformation.xmp_creatorTool²  s$   € å$Ð%6Ð8JÈGÑTÔTÐTØ %ˆÔÐÐr   Ú
DocumentIDc                 ó2   — t          ddd¦  «         | j        S ©NÚxmpmm_documentIdÚxmpmm_document_idr�   ©r   rß   rˆ   s    r   rÞ   zXmpInformation.xmpmm_documentIdº  s   € å$Ð%7Ð9LÈgÑVÔVÐVØÔ%Ð%r   c                 ó6   — t          ddd¦  «         || _        d S rÝ   rà   rÄ   s     r   rÞ   zXmpInformation.xmpmm_documentId¿  ó$   € å$Ð%7Ð9LÈgÑVÔVÐVØ!&ˆÔÐÐr   Ú
InstanceIDc                 óX   — t          ddd¦  «         t          t          | j        ¦  «        S ©NÚxmpmm_instanceIdÚxmpmm_instance_idr�   )r   r   rb   rç   rˆ   s    r   ræ   zXmpInformation.xmpmm_instanceIdÈ  s)   € å$Ð%7Ð9LÈgÑVÔVÐVÝ•C˜Ô/Ñ0Ô0Ð0r   c                 ó6   — t          ddd¦  «         || _        d S rå   )r   rç   rÄ   s     r   ræ   zXmpInformation.xmpmm_instanceIdÍ  râ   r   c           
      ó¼  — t          | d¦  «        sÆi | _        |                      dt          ¦  «        D ]£}|j        }	 |                     d¦  «        }|dk    rnF|d|…         t          t          ||dz   |dz   …         d	¬
¦  «        ¦  «        z   ||dz   d…         z   }Œb|j        |j	        k    r|j
        }n|                      |¦  «        }|| j        |<   Œ¤| j        S )zÍ
        Retrieve custom metadata properties defined in the undocumented pdfx
        metadata schema.

        Returns:
            A dictionary of key/value items for custom metadata properties.
        Ú_custom_propertiesrN   Tu   â†‚r1   Nr   é   é   )Úbase)Úhasattrrê   r¤   ÚPDFX_NAMESPACEÚ	localNameÚfindÚchrr,   rw   rx   ry   rX   )rL   ÚnodeÚkeyÚidxr   s        r   Úcustom_propertiesz XmpInformation.custom_propertiesÒ  s  € õ �tÐ1Ñ2Ô2ð 	5Ø&(ˆDÔ#Ø×3Ò3°B½ÑGÔGð 5ð 5�Ø”n�ð	àŸ(š( 8Ñ,Ô,�CØ˜b’y�yØà˜D˜S˜Dœ	Ý�c # c¨A¡g°°a±Ð&7Ô"8¸rÐBÑBÔBÑCÔCñDà˜c A™g˜i˜iœ.ñ)ð ð	ð ”= DÔ$7Ò7Ð7Ø œN�E�Eà ŸNšN¨4Ñ0Ô0�EØ/4�Ô'¨Ñ,Ð,ØÔ&Ð&r   )AÚ__name__Ú
__module__Ú__qualname__Ú__doc__r   r„   ÚpropertyÚ
XmlElementr†   r   r
   rb   Úbytesr‹   rŽ   r   r   rT   r›   r¤   r¦   rX   rd   ÚDC_NAMESPACEÚdc_contributorrz   Údc_coveragerl   Ú
dc_creatorrG   Údc_daters   Údc_descriptionÚ	dc_formatÚdc_identifierÚdc_languageÚdc_publisherÚdc_relationÚ	dc_rightsÚ	dc_sourceÚ
dc_subjectÚdc_titleÚdc_typeÚPDF_NAMESPACEÚpdf_keywordsÚpdf_pdfversionÚpdf_producerÚXMP_NAMESPACErÀ   r<   r¿   ÚsetterrÊ   rÉ   rÑ   rÐ   rØ   r×   ÚXMPMM_NAMESPACErß   rÞ   rç   ræ   r   rö   r   r   r   rJ   rJ   Ñ   sA  € € € € € ðð ð
(˜}ð 
(°ð 
(ð 
(ð 
(ð 
(ð ð˜ð ð ð ñ „Xðð<Ø ð<Ø27¸¸cÀ5Ð8HÔ2Ið<à	ð<ð <ð <ð <ð
	5Ø ð	5Ø27¸¸cÀ5Ð8HÔ2Ið	5à	ð	5ð 	5ð 	5ð 	5ðH Sð H°Sð HÀð HÈÐQTÌð Hð Hð Hð Hð	;Øð	;Ø(+ð	;Ø36ð	;à	�#Œð	;ð 	;ð 	;ð 	;ð	$°ð 	$Àð 	$ÈÐQTÌð 	$ð 	$ð 	$ð 	$ð@Øð@Ø(+ð@à	�#Œð@ð @ð @ð @ð ð °ð ð ð ð ð �X˜k˜k¨,¸ÑFÔFÑGÔG€Nðð �(˜>˜>¨,¸
ÑCÔCÑDÔD€KØ>à�˜+˜+ l°IÑ>Ô>Ñ?Ô?€Jðð ˆh�{�{ <°¸ÑIÔIÑJÔJ€Gðð �X˜o˜o¨l¸MÑJÔJÑKÔK€Nðð �˜˜¨°hÑ?Ô?Ñ@Ô@€IØ(à�H˜^˜^¨L¸,ÑGÔGÑHÔH€MØ,à�(˜;˜; |°ZÑ@Ô@ÑAÔA€KØKà�8˜K˜K¨°kÑBÔBÑCÔC€LØ0à�(˜;˜; |°ZÑ@Ô@ÑAÔA€Kðð �˜˜¨°xÑ@Ô@ÑAÔA€Ið"ð �˜˜¨°hÑ?Ô?Ñ@Ô@€IØMà�˜+˜+ l°IÑ>Ô>Ñ?Ô?€Jð-ð ˆx˜˜¨°gÑ>Ô>Ñ?Ô?€HØCàˆh�{�{ <°Ñ8Ô8Ñ9Ô9€GØJà�8˜N˜N¨=¸*ÑEÔEÑFÔF€LØDà�X˜n˜n¨]¸LÑIÔIÑJÔJ€NØ5à�8˜N˜N¨=¸*ÑEÔEÑFÔF€LØ=à�hØˆ�} l°OÑDÔDñô €Oðð ð$ Ô 1ð $ð $ð $ñ „Xð$ð Ôð% HÔ$5ð %¸$ð %ð %ð %ñ Ôð%ð �hØˆ�} l°OÑDÔDñô €Oðð ð$ Ô 1ð $ð $ð $ñ „Xð$ð Ôð% HÔ$5ð %¸$ð %ð %ð %ñ Ôð%ð !˜Øˆ�} n°oÑFÔFñô Ððð ð& (Ô"3ð &ð &ð &ñ „Xð&ð Ôð' hÔ&7ð '¸Dð 'ð 'ð 'ñ Ôð'ð  �x  ¨}¸mÑ LÔ LÑMÔMÐØGàð% ð %ð %ð %ñ „Xð%ð Ôð& Sð &¨Tð &ð &ð &ñ Ôð&ð !˜  °ÀÑ!NÔ!NÑOÔOÐØQàð& #ð &ð &ð &ñ „Xð&ð Ôð' cð '¨dð 'ð 'ð 'ñ Ôð'ð !˜  °ÀÑ!NÔ!NÑOÔOÐðð ð1 #ð 1ð 1ð 1ñ „Xð1ð Ôð' cð '¨dð 'ð 'ð 'ñ Ôð'ð ð' 4¨¨S¨¤>ð 'ð 'ð 'ñ „Xð'ð 'ð 'r   )0rú   r<   r8   ÚreÚtypingr   r   r   r   r   r   r	   r
   r   Úxml.dom.minidomr   r   rü   r   Úxml.parsers.expatr   Ú_utilsr   r   r   Úerrorsr   Úgenericr   r   rV   rþ   r  r  r  rï   ÚcompileÚVERBOSEr4   r   r   rb   rG   rd   rl   rs   rz   rJ   r   r   r   ú<module>r     s^  ððð ð €€€Ø €€€Ø 	€	€	€	ð
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð %Ð $Ð $Ð $Ð $Ð $Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø (Ð (Ð (Ð (Ð (Ð (ðð ð ð ð ð ð ð ð ð ð
 !Ð  Ð  Ð  Ð  Ð  Ø -Ð -Ð -Ð -Ð -Ð -Ð -Ð -à=€Ø1€Ø.€Ø.€Ø3€ð( 1€à
ˆ"Œ*ðð „Jñ!ô €ð( €GˆC�L„L€ð�Qð ˜1ð ð ð ð ð˜3ð  8Ô#4ð ð ð ð ð6ØðØðàÐÐ  (¨4°¬9Ô"5Ð5Ô6ðð ð ð ð. BKðð ØðØðØ*2°C°5¸#°:Ô*>ðàÐÐ  (¨4°¬9Ô"5Ð5Ô6ðð ð ð ð4ØðØðàÐÐ  (¨4°°S°¬>Ô":Ð:Ô;ðð ð ð ð2 BKðð ØðØðØ*2°C°5¸#°:Ô*>ðàÐÐ  (¨3¤-Ð/Ô0ðð ð ð ð.]'ð ]'ð ]'ð ]'ð ]'�Yñ ]'ô ]'ð ]'ð ]'ð ]'r   