+
    ŽvjÜ’  ã                   óF  € ^ RI t ^ RIt^ RIt^ RIt^ RIHtHtHtHtH	t	 ^ RI
HtHtHtHt ^ RIHtHtHt ^ RIHt ^ RIHtHtHt ^ RIHt ^ RIHt ^ R	IHt ^ R
IH t  ^ RI!H"t"H#t#H$t$H%t% ^ RI&H't'H(t(H)t) ^ RI*H+t+H,t,H-t-H.t.H/t/H0t0H1t1H2t2H3t3 ^ RI4H5t5 ^ RI6H7t7H8t8H9t9 ^ RI:H;t;H<t<H=t=H>t>H?t?H@t@ ]P‚                  ! ]B4      tC ! R R])4      tD ! R R]E4      tF ! R R]"4      tG ! R R]"4      tH ! R R]"4      tI ! R R]"4      tJ ! R R]J4      tK ! R R ]L4      tM ! R! R"]L4      tN ! R# R$]J4      tO]8! R%4      tP]8! R&4      tQ]8! R'4      tR ! R( R)4      tS ! R* R+]S4      tT ! R, R-]T4      tU ! R. R/]S4      tV ! R0 R14      tW ! R2 R3]W4      tX ! R4 R5]X4      tY ! R6 R74      tZ ! R8 R9] 4      t[R# ):é    N)ÚCallableÚIterableÚIteratorÚKeysViewÚSequence)Úmd5Úsha256Úsha384Úsha512)ÚAnyÚClassVarÚcast)Údefault_backend)ÚCipherÚ
algorithmsÚmodes)Úsettings)ÚArcfour)Úsafe_int)Ú
NumberTree)ÚPDFExceptionÚPDFKeyErrorÚPDFObjectNotFoundÚPDFTypeError)Ú	PDFParserÚPDFStreamParserÚPDFSyntaxError)	ÚDecipherCallableÚ	PDFStreamÚdecipher_allÚ
dict_valueÚ	int_valueÚ
list_valueÚ	str_valueÚstream_valueÚ
uint_value)ÚPSEOF)ÚKWDÚLITÚliteral_name)ÚchoplistÚdecode_textÚformat_int_alphaÚformat_int_romanÚnunpackÚ	unpad_aesc                   ó   € ] tR t^4tRtR# )ÚPDFNoValidXRef© N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__static_attributes__r3   ó    ÚX/var/www/html/daimler-pipeline/venv/lib/python3.14/site-packages/pdfminer/pdfdocument.pyr2   r2   4   ó   † Ûr:   r2   c                   ó   € ] tR t^8tRtRtR# )ÚPDFNoValidXRefWarningzlLegacy warning for missing xref.

Not used anymore because warnings.warn is replaced by logger.Logger.warn.
r3   N©r5   r6   r7   r8   Ú__doc__r9   r3   r:   r;   r>   r>   8   ó   † õr:   r>   c                   ó   € ] tR t^?tRtR# )ÚPDFNoOutlinesr3   Nr4   r3   r:   r;   rC   rC   ?   r<   r:   rC   c                   ó   € ] tR t^CtRtR# )ÚPDFNoPageLabelsr3   Nr4   r3   r:   r;   rE   rE   C   r<   r:   rE   c                   ó   € ] tR t^GtRtR# )ÚPDFDestinationNotFoundr3   Nr4   r3   r:   r;   rG   rG   G   r<   r:   rG   c                   ó   € ] tR t^KtRtR# )ÚPDFEncryptionErrorr3   Nr4   r3   r:   r;   rI   rI   K   r<   r:   rI   c                   ó   € ] tR t^OtRtR# )ÚPDFPasswordIncorrectr3   Nr4   r3   r:   r;   rK   rK   O   r<   r:   rK   c                   ó   € ] tR t^StRtRtR# )ÚPDFEncryptionWarningzqLegacy warning for failed decryption.

Not used anymore because warnings.warn is replaced by logger.Logger.warn.
r3   Nr?   r3   r:   r;   rM   rM   S   rA   r:   rM   c                   ó   € ] tR t^ZtRtRtR# )Ú"PDFTextExtractionNotAllowedWarningz‚Legacy warning for PDF that does not allow extraction.

Not used anymore because warnings.warn is replaced by logger.Logger.warn.
r3   Nr?   r3   r:   r;   rO   rO   Z   rA   r:   rO   c                   ó   € ] tR t^atRtR# )ÚPDFTextExtractionNotAllowedr3   Nr4   r3   r:   r;   rQ   rQ   a   r<   r:   rQ   ÚObjStmÚXRefÚCatalogc                   óh   a € ] tR t^kt o V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltR	tV t	R
# )ÚPDFBaseXRefc                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# ©é   Úreturn©ÚdictÚstrr   )ÚformatÚ__classdict__s   "€r;   Ú__annotate__ÚPDFBaseXRef.__annotate__l   s   ø€ ÷ "ñ "™T¡#¡s (�^ñ "r:   c                ó   € \         h©N©ÚNotImplementedError©Úselfs   &r;   Úget_trailerÚPDFBaseXRef.get_trailerl   ó   € Ü!Ð!r:   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rX   )r   Úint)r^   r_   s   "€r;   r`   ra   o   s   ø€ ÷ ñ ™H¡S�Mñ r:   c                ó   € . # rc   r3   rf   s   &r;   Ú
get_objidsÚPDFBaseXRef.get_objidso   s   € Øˆ	r:   c                óN   <€ V ^8„  d   QhRS[ RS[S[ R,          S[ S[ 3,          /# ©rY   ÚobjidrZ   N©rl   Útuple)r^   r_   s   "€r;   r`   ra   u   s+   ø€ ÷ !ñ !™Sð !¡U©3°­:±s¹CÐ+?Õ%@ñ !r:   c                ó   € \        V4      hrc   )r   ©rg   rr   s   &&r;   Úget_posÚPDFBaseXRef.get_posu   s   € Ü˜%Ó Ð r:   c                ó$   <€ V ^8„  d   QhRS[ RR/# ©rY   ÚparserrZ   N©r   )r^   r_   s   "€r;   r`   ra   x   s   ø€ ÷ "ñ "™9ð "¨ñ "r:   c                ó   € \         hrc   rd   )rg   r{   s   &&r;   ÚloadÚPDFBaseXRef.loadx   rj   r:   r3   N)
r5   r6   r7   r8   rh   rn   rw   r~   r9   Ú__classdictcell__©r_   s   @r;   rV   rV   k   s-   ø‡ € ÷"ð "÷ð ÷!ð !÷"ö "r:   rV   c                   óž   a € ] tR t^|t o V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R	 lR
 ltV 3R lR lt	V 3R lR lt
RtV tR# )ÚPDFXRefc                ó   <€ V ^8„  d   QhRR/# ©rY   rZ   Nr3   )r^   r_   s   "€r;   r`   ÚPDFXRef.__annotate__}   s   ø€ ÷ *ñ *˜$ñ *r:   c                ó"   € / V n         / V n        R # rc   ©ÚoffsetsÚtrailerrf   s   &r;   Ú__init__ÚPDFXRef.__init__}   s   € Ø?AˆŒØ')ˆŽr:   c                ó    <€ V ^8„  d   QhRS[ /# rX   ©r]   )r^   r_   s   "€r;   r`   r†   �   s   ø€ ÷ =ñ =™#ñ =r:   c                ó@   € R V P                   P                  4       : R2# )z<PDFXRef: offsets=Ú>©r‰   Úkeysrf   s   &r;   Ú__repr__ÚPDFXRef.__repr__�   s   € Ø# D§L¡L×$5Ñ$5Ó$7Ñ#:¸!Ð<Ð<r:   c                ó$   <€ V ^8„  d   QhRS[ RR/# rz   r|   )r^   r_   s   "€r;   r`   r†   „   s   ø€ ÷ ."ñ ."™9ð ."¨ñ ."r:   c           
     ó$  €   VP                  4       w  r#VP                  4       pV'       g   K.   TP	                  R4      '       d   TP                  T4       EMTP                  R4      p\        T4      ^8w  d   RT: RT: 2p\        T4      h \        \        T4      w  rx\        YwT,           4       F¼  p	 TP                  4       w  r£TP                  4       pTP                  R4      p\        T4      ^8w  d   RT: R	T: 2p\        T4      hTw  r¼pTR
8w  d   Kj  \        T4      p\        T4      pTe   Te   RYï3T P                  T	&   K›  \        P                  RT	 RT: RT: R24       K¾  	  EKw  \        P!                  RT P                  4       T P#                  T4       R#   \         d   p\        R4      ThRp?ii ; i  \         d   pRT: RT: 2p\        T4      ThRp?ii ; i  \         d   p\        R4      ThRp?ii ; i)Tz Unexpected EOF - file corrupted?Nó   traileró    zTrailer not found: z: line=zInvalid line: zInvalid XRef format: z, line=ó   nzNot adding object z to xref because position z or generation number z cannot be parsed as an intzxref objects: %r)ÚnextlineÚstripr'   r2   Ú
startswithÚseekÚsplitÚlenÚmaprl   Ú
ValueErrorÚranger   r‰   ÚlogÚwarningÚdebugÚload_trailer)rg   r{   ÚposÚlineÚerrÚfÚ	error_msgÚstartÚnobjsrr   Ú_Úpos_bÚgenno_bÚuse_bÚpos_iÚgenno_is   &&              r;   r~   ÚPDFXRef.load„   s  € ØðRØ$Ÿo™oÓ/‘�Ø—z‘z“|�ßÙð ð �‰˜z×*Ò*Ø—‘˜CÔ ÙØ—
‘
˜4Ó ˆAÜ�1‹v˜Œ{Ø1°&±¸7À4Á(ÐK�	Ü$ YÓ/Ð/ð9Ü!$¤S¨!£‘�ô ˜u¨e¥mÖ4�ðVØ &§¡Ó 1‘I�QØŸ:™:›<�Dð —J‘J˜tÓ$�Ü�q“6˜Q”;Ø"7¸±zÀÈÉÐ Q�IÜ(¨Ó3Ð3Ø*+Ñ'� Ø˜D”=Ùä  ›�Ü" 7Ó+�ØÒ$¨Ò)<Ø+/°Ð*@�D—L‘L Ó'ä—K‘KØ,¨U¨GÐ3MÈeÉYð W0Ø07©{Ð:UðWöô' 5ô0 	�	‰	Ð$ d§l¡lÔ3Ø×Ñ˜&Ö!øôO ô RÜ$Ð%GÓHÈcÐQûðRûô ô 9Ø,¨V©J°g¸d¹XÐF�	Ü$ YÓ/°SÐ8ûð9ûô ô VÜ(Ð)KÓLÐRUÐUûðVúsG   ƒ*F+ ÂG
 Â9"G3Æ+GÆ6GÇGÇ
G0ÇG+Ç+G0Ç3HÇ>H
È
Hc                ó$   <€ V ^8„  d   QhRS[ RR/# rz   r|   )r^   r_   s   "€r;   r`   r†   ´   s   ø€ ÷ .ñ .¡9ð .°ñ .r:   c                ó˜  €  VP                  4       w  r#V\        R 4      J g   Q \        V4      4       hVP                  4       w  r$V P                  P                  \        V4      4       \        P                  RV P                  4       R#   \         d4    TP                  ^4      pT'       g   \        R4      RhT^ ,          w  r$ Lƒi ; i)r—   zUnexpected EOF - file corruptedNz
trailer=%r)Ú	nexttokenr(   r]   Ú
nextobjectr'   Úpopr2   rŠ   Úupdater!   r£   r¥   )rg   r{   r®   ÚkwdÚdicÚxs   &&    r;   r¦   ÚPDFXRef.load_trailer´   s¨   € ð	Ø×'Ñ'Ó)‰HˆQØœ#˜j›/Ó)Ð3¬3¨s«8Ó3Ð)Ø×(Ñ(Ó*‰HˆQð 	�‰×ÑœJ s›OÔ,Ü�	‰	�, §¡Ö-øô ô 	Ø—
‘
˜1“ˆAßÜ$Ð%FÓGÈTÐQØ˜•t‰HˆQ‘ð		ús   ‚AB Â#C	Â/C	ÃC	c                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# rX   r[   )r^   r_   s   "€r;   r`   r†   Á   ó   ø€ ÷ ñ ™T¡#¡s (�^ñ r:   c                ó   € V P                   # rc   ©rŠ   rf   s   &r;   rh   ÚPDFXRef.get_trailerÁ   ó   € Ø�|‰|Ðr:   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rX   )r   rl   )r^   r_   s   "€r;   r`   r†   Ä   s   ø€ ÷ #ñ #™H¡S�Mñ #r:   c                ó6   € V P                   P                  4       # rc   r‘   rf   s   &r;   rn   ÚPDFXRef.get_objidsÄ   s   € Ø�|‰|× Ñ Ó"Ð"r:   c                óN   <€ V ^8„  d   QhRS[ RS[S[ R,          S[ S[ 3,          /# rq   rs   )r^   r_   s   "€r;   r`   r†   Ç   s+   ø€ ÷ #ñ #™Sð #¡U©3°­:±s¹CÐ+?Õ%@ñ #r:   c                ó(   € V P                   V,          # rc   )r‰   rv   s   &&r;   rw   ÚPDFXRef.get_posÇ   s   € Ø�|‰|˜EÕ"Ð"r:   rˆ   N)r5   r6   r7   r8   r‹   r“   r~   r¦   rh   rn   rw   r9   r€   r�   s   @r;   rƒ   rƒ   |   sL   ø‡ € ÷*ð *÷=ð =÷."ð ."÷`.ð .÷ð ÷#ð #÷#ö #r:   rƒ   c                   óh   a € ] tR t^Ët o V 3R lR lt]P                  ! R4      tV 3R lR ltRt	V t
R# )ÚPDFXRefFallbackc                ó    <€ V ^8„  d   QhRS[ /# rX   rŽ   )r^   r_   s   "€r;   r`   ÚPDFXRefFallback.__annotate__Ì   s   ø€ ÷ Eñ E™#ñ Er:   c                ó@   € R V P                   P                  4       : R2# )z<PDFXRefFallback: offsets=r�   r‘   rf   s   &r;   r“   ÚPDFXRefFallback.__repr__Ì   s   € Ø+¨D¯L©L×,=Ñ,=Ó,?Ñ+BÀ!ÐDÐDr:   z^(\d+)\s+(\d+)\s+obj\bc                ó$   <€ V ^8„  d   QhRS[ RR/# rz   r|   )r^   r_   s   "€r;   r`   rÎ   Ñ   s   ø€ ÷ *=ñ *=™9ð *=¨ñ *=r:   c                ó¸  € VP                  ^ 4         VP                  4       w  r#TP                  R4      '       dE   TP                  T4       T P	                  T4       \
        P                  RT P                  4       R# TP                  R4      pT P                  P                  T4      pT'       g   K¥  TP                  4       w  rg\        T4      p\        T4      p	RY)3T P                  T&   TP                  T4       TP                  4       w  r«\        T\         4      '       g   EK  TP#                  R4      \$        J g   EK6  \'        T4      p TR,          p\1        TP3                  4       4      p. p  TP                  4       w  r«TP5                  \7        \        T4      4       K4    \         d     R# i ; i  \(         d,    \*        P,                  '       d   \/        RT: 24      Rh^ p L—i ; i  \         d     Mi ; i\9        T\;        T4      ^,          4      p\=        T4       F%  pTT^,          ,          pTT^ 3T P                  T&   K'  	  EKJ  )r   r—   útrailer: %rzlatin-1NÚTypeÚNúN is not defined: )r�   rš   r'   rœ   r¦   r£   r¥   rŠ   ÚdecodeÚ
PDFOBJ_CUEÚmatchÚgroupsrl   r‰   r¸   Ú
isinstancer   ÚgetÚLITERAL_OBJSTMr%   ÚKeyErrorr   ÚSTRICTr   r   Úget_dataÚappendr   ÚminrŸ   r¢   )rg   r{   r§   Ú
line_bytesr¨   ÚmÚobjid_sÚgenno_srr   Úgennor®   ÚobjÚstreamÚnÚparser1ÚobjsÚindexÚobjid1s   &&                r;   r~   ÚPDFXRefFallback.loadÑ   sô  € Ø�‰�AŒØðØ$*§O¡OÓ$5Ñ!�ð ×$Ñ$ Z×0Ò0Ø—‘˜CÔ Ø×!Ñ! &Ô)Ü—	‘	˜-¨¯©Ô6ÙØ×$Ñ$ YÓ/ˆDØ—‘×%Ñ% dÓ+ˆAßÙØ!"§¡£ÑˆWÜ˜“LˆEÜ˜“LˆEØ#'¨Ð"4ˆD�L‰L˜Ñà�K‰K˜ÔØ×(Ñ(Ó*‰HˆQÜ˜#œy×)Õ)¨c¯g©g°f«oÄÖ.OÜ% cÓ*�ðØ˜s��Aô
 *¨&¯/©/Ó*;Ó<�Ø"$�ðØØ#*×#5Ñ#5Ó#7™˜ØŸ™¤D¬¨c£NÖ3øô? ô Úðûô,  ô Ü——�Ü,Ð/AÀ&ÁÐ-LÓMÐSWÐWØ’Aðûô ô Ùðúä˜œ3˜t›9¨�>Ó*�Ü" 1žX�EØ! %¨!¥)�_�FØ,1°5¸!Ð+<�D—L‘L Ó(ô &s;   ”F- Å	F? Å94G8 Æ-F<Æ;F<Æ? G5Ç G5Ç4G5Ç8HÈHr3   N)r5   r6   r7   r8   r“   ÚreÚcompilerØ   r~   r9   r€   r�   s   @r;   rÌ   rÌ   Ë   s,   ø‡ € ÷Eð Eð —’Ð5Ó6€J÷*=ö *=r:   rÌ   c                   óŒ   a € ] tR t^þt o V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R	 lR
 ltV 3R lR lt	Rt
V tR# )ÚPDFXRefStreamc                ó   <€ V ^8„  d   QhRR/# r…   r3   )r^   r_   s   "€r;   r`   ÚPDFXRefStream.__annotate__ÿ   s   ø€ ÷ 0ñ 0˜$ñ 0r:   c                óZ   € R V n         R V n        R V n        R V n        R V n        . V n        R # rc   )ÚdataÚentlenÚfl1Úfl2Úfl3Úrangesrf   s   &r;   r‹   ÚPDFXRefStream.__init__ÿ   s,   € Ø"&ˆŒ	Ø"&ˆŒØ#ˆŒØ#ˆŒØ#ˆŒØ-/ˆŽr:   c                ó    <€ V ^8„  d   QhRS[ /# rX   rŽ   )r^   r_   s   "€r;   r`   rõ     s   ø€ ÷ :ñ :™#ñ :r:   c                ó$   € R V P                   : R2# )z<PDFXRefStream: ranges=r�   )rü   rf   s   &r;   r“   ÚPDFXRefStream.__repr__  s   € Ø(¨¯©©°qÐ9Ð9r:   c                ó$   <€ V ^8„  d   QhRS[ RR/# rz   r|   )r^   r_   s   "€r;   r`   rõ   
  s   ø€ ÷ 
ñ 
™9ð 
¨ñ 
r:   c           	     ó$  € VP                  4       w  r#VP                  4       w  r$VP                  4       w  r%VP                  4       w  r&\        V\        4      '       d   VP	                  R 4      \
        Jd   \        R4      hVR,          pVP	                  R^ V34      p\        V4      ^,          ^ 8w  d   \        R4      hV P                  P                  \        \        \        \        \        3,          ,          \        ^V4      4      4       VR,          w  V n        V n        V n        V P                   e   V P"                  e   V P$                  f   Q hVP'                  4       V n        V P                   V P"                  ,           V P$                  ,           V n        VP,                  V n        \0        P3                  RRP5                  \7        \8        V P                  4      4      V P                   V P"                  V P$                  4       R# )	rÔ   zInvalid PDF stream spec.ÚSizeÚIndexzInvalid index numberÚWNz&xref stream: objid=%s, fields=%d,%d,%dz, )r·   r¸   rÛ   r   rÜ   ÚLITERAL_XREFr2   rŸ   r   rü   Úextendr   r   rt   rl   r+   rù   rú   rû   rà   r÷   rø   ÚattrsrŠ   r£   r¥   Újoinr    Úrepr)	rg   r{   r®   Ú_objidÚ_gennoÚ_kwdré   ÚsizeÚindex_arrays	   &&       r;   r~   ÚPDFXRefStream.load
  s|  € Ø×&Ñ&Ó(‰ˆØ×&Ñ&Ó(‰ˆØ×$Ñ$Ó&‰	ˆØ×'Ñ'Ó)‰ˆÜ˜&¤)×,Ò,°·
±
¸6Ó0BÌ,Ó0VÜ Ð!;Ó<Ð<Ø�f�~ˆØ—j‘j ¨1¨d¨)Ó4ˆÜˆ{Ó˜aÕ 1Ô$Ü Ð!7Ó8Ð8Ø�‰×Ñœ4¤¬¬s´C¨x­Õ 9¼8ÀAÀ{Ó;SÓTÔUØ)/°­Ñ&ˆŒ�4”8˜TœXØ�x‰xÒ#¨¯©Ò(<ÀÇÁÒAUÐUÐUØ—O‘OÓ%ˆŒ	Ø—h‘h §¡Õ)¨D¯H©HÕ4ˆŒØ—|‘|ˆŒÜ�	‰	Ø4Ø�I‰I”cœ$ §¡Ó,Ó-Ø�H‰HØ�H‰HØ�H‰Hö	
r:   c                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# rX   r[   )r^   r_   s   "€r;   r`   rõ   #  rÀ   r:   c                ó   € V P                   # rc   rÂ   rf   s   &r;   rh   ÚPDFXRefStream.get_trailer#  rÄ   r:   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rX   )r   rl   )r^   r_   s   "€r;   r`   rõ   &  s   ø€ ÷ 	$ñ 	$™H¡S�Mñ 	$r:   c              #  óf  "  € V P                    Fœ  w  r\        V4       Fˆ  pV P                  f   Q hV P                  f   Q hV P                  V,          pV P                  WDV P                  ,            p\	        VR V P
                   ^4      pV^8X  g
   V^8X  g   K~  W,           x € KŠ  	  Kž  	  R # 5irc   )rü   r¢   rø   r÷   r/   rù   )rg   r¬   r­   ÚiÚoffsetÚentÚf1s   &      r;   rn   ÚPDFXRefStream.get_objids&  s‘   é € Ø ŸKœK‰LˆEÜ˜5–\�Ø—{‘{Ò.Ð.Ð.Ø—y‘yÒ,Ð,Ð,ØŸ™ q��Ø—i‘i °$·+±+Õ)=Ð>�Ü˜S  4§8¡8˜_¨aÓ0�Ø˜”7˜b AžgØ�)”Oó "ó (ùs   ‚BB1ÂB1c                óN   <€ V ^8„  d   QhRS[ RS[S[ R,          S[ S[ 3,          /# rq   rs   )r^   r_   s   "€r;   r`   rõ   1  s+   ø€ ÷ %ñ %™Sð %¡U©3°­:±s¹CÐ+?Õ%@ñ %r:   c                óÂ  € ^ pV P                    F1  w  r4W18:  d   WV,           8  d   W!V,
          ,          p MW$,          pK3  	  \        V4      hV P                  f   Q hV P                  f   Q hV P                  e   V P
                  e   V P                  f   Q hV P                  V,          pV P                  WUV P                  ,            p\        VRV P                   ^4      p\        W`P                  V P                  V P
                  ,            4      p\        W`P                  V P
                  ,           R 4      p	V^8X  d   RW‰3# V^8X  d   W‰^ 3# \        V4      h)r   N)rü   r   rø   r÷   rù   rú   rû   r/   )
rg   rr   rí   r¬   r­   r  r  r  Úf2Úf3s
   &&        r;   rw   ÚPDFXRefStream.get_pos1  s1  € ØˆØ ŸKœK‰LˆEØŒ~ %°%­-Ô"7Ø �Õ&�Ùà•’ñ (ô ˜eÓ$Ð$Ø�{‰{Ò&Ð&Ð&Ø�y‰yÒ$Ð$Ð$Ø�x‰xÒ#¨¯©Ò(<ÀÇÁÒAUÐUÐUØ—‘˜uÕ$ˆØ�i‰i˜¨$¯+©+Õ!5Ð6ˆÜ�S˜˜4Ÿ8™8�_ aÓ(ˆÜ�SŸ™ D§H¡H¨t¯x©xÕ$7Ð8Ó9ˆÜ�SŸ™ D§H¡HÕ,Ð.Ð/Ó0ˆØ�Œ7Ø˜"�>Ð!Ø�1ŒWØ˜A�;Ðô ˜eÓ$Ð$r:   )r÷   rø   rù   rú   rû   rü   rŠ   N)r5   r6   r7   r8   r‹   r“   r~   rh   rn   rw   r9   r€   r�   s   @r;   ró   ró   þ   sA   ø‡ € ÷0ð 0÷:ð :÷
ð 
÷2ð ÷	$ð 	$÷%ö %r:   ró   c                   óJ  a € ] tR tRt o RtR$tR%V 3R lR lltV 3R lR ltV 3R lR ltV 3R	 lR
 lt	V 3R lR lt
V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltR&V 3R lR lltV 3R  lR! ltV 3R" ltR#tV tR# )'ÚPDFStandardSecurityHandleriL  s    (¿N^NuŠAd NVÿú.. ¶Ðh>€/©þdSizc                óV   <€ V ^8„  d   QhRS[ S[,          RS[S[S[3,          RS[RR/# )rY   ÚdocidÚparamÚpasswordrZ   N)r   Úbytesr\   r]   r   )r^   r_   s   "€r;   r`   Ú'PDFStandardSecurityHandler.__annotate__R  s?   ø€ ÷ 	ñ 	á™�ð	ñ ‘C™�H�~ð	ñ ð		ð
 
ñ	r:   c                óJ   € Wn         W n        W0n        V P                  4        R # rc   )r#  r$  r%  Úinit)rg   r#  r$  r%  s   &&&&r;   r‹   Ú#PDFStandardSecurityHandler.__init__R  s   € ð Œ
ØŒ
Ø ŒØ�	‰	Žr:   c                ó   <€ V ^8„  d   QhRR/# r…   r3   )r^   r_   s   "€r;   r`   r'  ]  s   ø€ ÷ ñ �dñ r:   c                ó²   € V P                  4        V P                  V P                  9  d   R V P                  : 2p\	        V4      hV P                  4        R# )zUnsupported revision: param=N)Úinit_paramsÚrÚsupported_revisionsr$  rI   Úinit_key)rg   r«   s   & r;   r)  ÚPDFStandardSecurityHandler.init]  sD   € Ø×ÑÔØ�6‰6˜×1Ñ1Ô1Ø6°t·z±z±nÐEˆIÜ$ YÓ/Ð/Ø�‰Žr:   c                ó   <€ V ^8„  d   QhRR/# r…   r3   )r^   r_   s   "€r;   r`   r'  d  s   ø€ ÷ >ñ >˜Tñ >r:   c                ó¸  € \        V P                  P                  R ^ 4      4      V n        \        V P                  R,          4      V n        \        V P                  R,          ^ 4      V n        \        V P                  R,          4      V n        \        V P                  R,          4      V n	        \        V P                  P                  R^(4      4      V n
        R# )ÚVÚRÚPÚOÚUÚLengthN)r"   r$  rÜ   Úvr.  r&   Úpr$   ÚoÚuÚlengthrf   s   &r;   r-  Ú&PDFStandardSecurityHandler.init_paramsd  sŠ   € Ü˜4Ÿ:™:Ÿ>™>¨#¨qÓ1Ó2ˆŒÜ˜4Ÿ:™: c�?Ó+ˆŒÜ˜DŸJ™J s�O¨RÓ0ˆŒÜ˜4Ÿ:™: c�?Ó+ˆŒÜ˜4Ÿ:™: c�?Ó+ˆŒÜ §
¡
§¡¨x¸Ó <Ó=ˆŽr:   c                ó   <€ V ^8„  d   QhRR/# r…   r3   )r^   r_   s   "€r;   r`   r'  l  s   ø€ ÷ 'ñ '˜$ñ 'r:   c                ón   € V P                  V P                  4      V n        V P                  f   \        hR # rc   )Úauthenticater%  ÚkeyrK   rf   s   &r;   r0  Ú#PDFStandardSecurityHandler.init_keyl  s-   € Ø×$Ñ$ T§]¡]Ó3ˆŒØ�8‰8ÒÜ&Ð&ñ r:   c                ó    <€ V ^8„  d   QhRS[ /# rX   ©Úbool)r^   r_   s   "€r;   r`   r'  q  s   ø€ ÷  ñ  ™dñ  r:   c                ó:   € \        V P                  ^,          4      # ©é   ©rG  r;  rf   s   &r;   Úis_printableÚ'PDFStandardSecurityHandler.is_printableq  ó   € Ü�D—F‘F˜Q•JÓÐr:   c                ó    <€ V ^8„  d   QhRS[ /# rX   rF  )r^   r_   s   "€r;   r`   r'  t  s   ø€ ÷  ñ  ™tñ  r:   c                ó:   € \        V P                  ^,          4      # )é   rK  rf   s   &r;   Úis_modifiableÚ(PDFStandardSecurityHandler.is_modifiablet  rN  r:   c                ó    <€ V ^8„  d   QhRS[ /# rX   rF  )r^   r_   s   "€r;   r`   r'  w  s   ø€ ÷ !ñ !¡ñ !r:   c                ó:   € \        V P                  ^,          4      # )é   rK  rf   s   &r;   Úis_extractableÚ)PDFStandardSecurityHandler.is_extractablew  s   € Ü�D—F‘F˜R•KÓ Ð r:   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# ©rY   rC  rZ   ©r&  )r^   r_   s   "€r;   r`   r'  z  s   ø€ ÷ ñ ™Uð ¡uñ r:   c                óâ  a€ V P                   ^8X  d%   \        V4      P                  V P                  4      # \	        V P                  4      pVP                  V P                  ^ ,          4       \        V4      P                  VP                  4       4      p\        ^^4       FA  oRP                  V3R l\        V4       4       4      p\        V4      P                  V4      pKC  	  W3,          pV# )rY   r:   c              3   óJ   <"  € T F  p\        VS,          34      x € K  	  R # 5irc   r[  ©Ú.0Úcr  s   & €r;   Ú	<genexpr>Ú7PDFStandardSecurityHandler.compute_u.<locals>.<genexpr>„  ó   øé € Ð@±i°œU A¨¥E 8Ÿ_˜_³iùó   ƒ #)r.  r   ÚencryptÚPASSWORD_PADDINGr   rº   r#  Údigestr¢   r	  Úiter)rg   rC  ÚhashÚresultÚkr  s   &&   @r;   Ú	compute_uÚ$PDFStandardSecurityHandler.compute_uz  s´   ø€ Ø�6‰6�QŒ;ä˜3“<×'Ñ'¨×(=Ñ(=Ó>Ð>ô �t×,Ñ,Ó-ˆDØ�K‰K˜Ÿ
™
 1�Ô&Ü˜S“\×)Ñ)¨$¯+©+«-Ó8ˆFÜ˜1˜b–\�Ø—H‘HÔ@´d¸3´iÓ@Ó@�Ü  ›×+Ñ+¨FÓ3’ñ "ð ÕˆFØˆMr:   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# ©rY   r%  rZ   r[  )r^   r_   s   "€r;   r`   r'  ‰  s   ø€ ÷ ñ ©uð ¹ñ r:   c                óz  € WP                   ,           R ,          p\        V4      pVP                  V P                  4       VP                  \        P
                  ! RV P                  4      4       VP                  V P                  ^ ,          4       V P                  ^8¼  d2   \        \        V 4      P                  '       g   VP                  R4       VP                  4       p^pV P                  ^8¼  dB   V P                  ^,          p\        ^24       F  p\        VRV 4      P                  4       pK!  	  VRV # )ºNé    Nú<Ls   ÿÿÿÿN)rf  r   rº   r<  ÚstructÚpackr;  r#  r.  r   ÚPDFStandardSecurityHandlerV4Úencrypt_metadatarg  r>  r¢   )rg   r%  ri  rj  rê   r®   s   &&    r;   Úcompute_encryption_keyÚ1PDFStandardSecurityHandler.compute_encryption_key‰  sä   € à×4Ñ4Õ4°cÕ:ˆÜ�8‹}ˆØ�‰�D—F‘FÔà�‰”F—K’K  d§f¡fÓ-Ô.Ø�‰�D—J‘J˜q•MÔ"à�F‰F�aŒKÜÔ5°tÓ<×M×MÐMà�K‰KÐ+Ô,Ø—‘“ˆØˆØ�6‰6�QŒ;Ø—‘˜qÕ ˆAÜ˜2–Y�Ü˜V B Q˜Z›×/Ñ/Ó1’ñ à�b�qˆzÐr:   c                ó4   <€ V ^8„  d   QhRS[ RS[R,          /# ©rY   r%  rZ   N©r]   r&  )r^   r_   s   "€r;   r`   r'  ž  s   ø€ ÷ ñ ¡Sð ©U°T­\ñ r:   c                ót   € VP                  R 4      pV P                  V4      pVf   V P                  V4      pV# )Úlatin1)ÚencodeÚauthenticate_user_passwordÚauthenticate_owner_password)rg   r%  Úpassword_bytesrC  s   &&  r;   rB  Ú'PDFStandardSecurityHandler.authenticatež  s:   € Ø!Ÿ™¨Ó2ˆØ×-Ñ-¨nÓ=ˆØŠ;Ø×2Ñ2°>ÓBˆCØˆ
r:   c                ó4   <€ V ^8„  d   QhRS[ RS[ R,          /# r{  r[  )r^   r_   s   "€r;   r`   r'  ¥  s   ø€ ÷ ñ ±5ð ¹UÀT½\ñ r:   c                óZ   € V P                  V4      pV P                  V4      '       d   V# R # rc   )rx  Úverify_encryption_key)rg   r%  rC  s   && r;   r€  Ú5PDFStandardSecurityHandler.authenticate_user_password¥  s+   € Ø×)Ñ)¨(Ó3ˆØ×%Ñ% c×*Ò*ØˆJár:   c                ó&   <€ V ^8„  d   QhRS[ RS[/# rZ  )r&  rG  )r^   r_   s   "€r;   r`   r'  ¬  s   ø€ ÷ %ñ %©ð %±4ñ %r:   c                óœ   € V P                  V4      pV P                  ^8X  d   W P                  8H  # VR,          V P                  R,          8H  # )rY   ºNrV  N)rl  r.  r=  )rg   rC  r=  s   && r;   r†  Ú0PDFStandardSecurityHandler.verify_encryption_key¬  s>   € à�N‰N˜3ÓˆØ�6‰6�QŒ;ØŸ™‘;ÐØ��v˜Ÿ™ �Ñ$Ð$r:   c                ó4   <€ V ^8„  d   QhRS[ RS[ R,          /# r{  r[  )r^   r_   s   "€r;   r`   r'  ³  s   ø€ ÷ >ñ >±Eð >¹eÀd½lñ >r:   c                ó€  a€ WP                   ,           R ,          p\        V4      pV P                  ^8¼  d,   \        ^24       F  p\        VP	                  4       4      pK  	  ^pV P                  ^8¼  d   V P
                  ^,          pVP	                  4       RV pV P                  ^8X  d&   \        V4      P                  V P                  4      pM^V P                  p\        ^RR4       FA  oRP                  V3R l\        V4       4       4      p\        V4      P                  V4      pKC  	  V P                  V4      # )rq  Nr:   c              3   óJ   <"  € T F  p\        VS,          34      x € K  	  R # 5irc   r[  r^  s   & €r;   ra  ÚIPDFStandardSecurityHandler.authenticate_owner_password.<locals>.<genexpr>Ã  rc  rd  éÿÿÿÿ)rf  r   r.  r¢   rg  r>  r   Údecryptr<  r	  rh  r€  )	rg   r%  ri  r®   rê   rC  Úuser_passwordrk  r  s	   &&      @r;   r�  Ú6PDFStandardSecurityHandler.authenticate_owner_password³  sö   ø€ à×4Ñ4Õ4°cÕ:ˆÜ�8‹}ˆØ�6‰6�QŒ;Ü˜2–Y�Ü˜4Ÿ;™;›=Ó)’ñ àˆØ�6‰6�QŒ;Ø—‘˜qÕ ˆAØ�k‰k‹m˜B˜QÐˆØ�6‰6�QŒ;Ü# C›L×0Ñ0°·±Ó8‰Mà ŸF™FˆMÜ˜2˜r 2Ö&�Ø—H‘HÔ@´d¸3´iÓ@Ó@�Ü '¨£
× 2Ñ 2°=Ó A’ñ 'ð ×.Ñ.¨}Ó=Ð=r:   Nc          
      ó\   <€ V ^8„  d   QhRS[ RS[ RS[RS[S[S[3,          R,          RS[/# )rY   rr   rç   r÷   r  NrZ   ©rl   r&  r\   r]   r   )r^   r_   s   "€r;   r`   r'  Ç  sJ   ø€ ÷ 4ñ 4áð4ñ ð4ñ ð	4ñ
 ‘C™�H�~ Õ$ð4ñ 
ñ4r:   c                ó&   € V P                  WV4      # rc   )Údecrypt_rc4)rg   rr   rç   r÷   r  s   &&&&&r;   r‘  Ú"PDFStandardSecurityHandler.decryptÇ  s   € ð ×Ñ ¨dÓ3Ð3r:   c                ó2   <€ V ^8„  d   QhRS[ RS[ RS[RS[/# ©rY   rr   rç   r÷   rZ   ©rl   r&  )r^   r_   s   "€r;   r`   r'  Ð  s)   ø€ ÷ *ñ *¡ð *©Sð *¹ð *Á%ñ *r:   c                ó\  € V P                   f   Q hV P                   \        P                  ! RV4      R,          ,           \        P                  ! RV4      R,          ,           p\        V4      pVP	                  4       R \        \        V4      ^4       p\        V4      P                  V4      # )Nrs  ºNé   NºNrY   N)	rC  rt  ru  r   rg  râ   rŸ   r   r‘  )rg   rr   rç   r÷   rC  ri  s   &&&&  r;   r—  Ú&PDFStandardSecurityHandler.decrypt_rc4Ð  s‚   € Ø�x‰xÒ#Ð#Ð#Ø�h‰hœŸš T¨5Ó1°"Õ5Õ5¼¿ºÀDÈ%Ó8PÐQSÕ8TÕTˆÜ�3‹xˆØ�k‰k‹mÐ/œc¤# c£(¨BÓ/Ð0ˆÜ�s‹|×#Ñ# DÓ)Ð)r:   c                ó:   <€ V ^8„  d   Qh/ S[ S[R3,          ;R&   # ©rY   .r/  ©rt   rl   )r^   r_   s   "€r;   r`   r'  L  s   ø‡ ‚ ñ ™s C˜x�Ñ1ò	 r:   )
r#  rC  r>  r<  r;  r$  r%  r.  r=  r:  )rY   rž  ©Ú rc   )r5   r6   r7   r8   rf  r/  r‹   r)  r-  r0  rL  rR  rW  rl  rx  rB  r€  r†  r�  r‘  r—  Ú__annotate_func__r9   r€   r�   s   @r;   r!  r!  L  s³   ø‡ € àUð ð ,2Ð÷	ò 	÷ð ÷>ð >÷'ð '÷
 ð  ÷ ð  ÷!ð !÷ð ÷ð ÷*ð ÷ð ÷%ð %÷>ð >÷(4ò 4÷*ð *÷I ƒ r:   r!  c                   óš   a a€ ] tR tRt oRtV3R lV 3R lltV3R lR ltRV3R lR lltV3R lR	 ltV3R
 lR lt	V3R lt
RtVtV ;t# )rv  iØ  c                ó   <€ V ^8„  d   QhRR/# r…   r3   )r^   r_   s   "€r;   r`   Ú)PDFStandardSecurityHandlerV4.__annotate__Û  s   ø€ ÷ 0ñ 0˜Tñ 0r:   c                óV  <€ \         SV `  4        ^€V n        \        V P                  P                  R4      4      V n        \        V P                  R,          4      V n        \        V P                  R,          4      V n	        \        V P                  P                  RR4      4      V n        V P                  V P                  8w  d   RV P                  : 2p\        V4      h/ V n        V P                  P                  4        FS  w  r#V P                  \        VR,          4      4      pVf   R	V P                  : 2p\        V4      hW@P                  V&   KU  	  V P                   V P                  R
&   V P                  V P                  9  d   RV P                  : 2p\        V4      hR# )é€   ÚCFÚStmFÚStrFÚEncryptMetadataTz Unsupported crypt filter: param=ÚCFMNz#Unknown crypt filter method: param=ÚIdentityzUndefined crypt filter: param=)Úsuperr-  r>  r!   r$  rÜ   Úcfr*   ÚstmfÚstrfrG  rw  rI   ÚcfmÚitemsÚget_cfmÚdecrypt_identity)rg   r«   rk  r:  rª   Ú	__class__s   &    €r;   r-  Ú(PDFStandardSecurityHandlerV4.init_paramsÛ  sE  ø€ Ü‰ÑÔØˆŒÜ˜TŸZ™ZŸ^™^¨DÓ1Ó2ˆŒÜ  §¡¨FÕ!3Ó4ˆŒ	Ü  §¡¨FÕ!3Ó4ˆŒ	Ü $ T§Z¡Z§^¡^Ð4EÀtÓ%LÓ MˆÔØ�9‰9˜Ÿ	™	Ô!Ø:¸4¿:¹:¹.ÐIˆIÜ$ YÓ/Ð/ØˆŒØ—G‘G—M‘M–O‰DˆAØ—‘œ\¨!¨E­(Ó3Ó4ˆAØŠyØAÀ$Ç*Á*ÁÐP�	Ü(¨Ó3Ð3Ø�H‰H�Q‹Kñ $ð  $×4Ñ4ˆ�‰�ÑØ�9‰9˜DŸH™HÔ$Ø8¸¿¹¹ÐGˆIÜ$ YÓ/Ð/ñ %r:   c                óT   <€ V ^8„  d   QhRS[ RS[S[S[S[.S[3,          R,          /# ©rY   ÚnamerZ   N©r]   r   rl   r&  )r^   r_   s   "€r;   r`   r©  ñ  s1   ø€ ÷ ñ ™Cð ¡H©c±3¹Ð->ÁÐ-EÕ$FÈÕ$Mñ r:   c                óR   € VR 8X  d   V P                   # VR8X  d   V P                  # R# )ÚV2ÚAESV2N)r—  Údecrypt_aes128©rg   r¾  s   &&r;   r¸  Ú$PDFStandardSecurityHandlerV4.get_cfmñ  s+   € Ø�4Œ<Ø×#Ñ#Ð#Ø�WŒ_Ø×&Ñ&Ð&ár:   c                óp   <€ V ^8„  d   QhRS[ RS[ RS[RS[S[S[3,          R,          RS[R,          RS[/# )rY   rr   rç   r÷   r  Nr¾  rZ   r•  )r^   r_   s   "€r;   r`   r©  ù  sX   ø€ ÷ 2ñ 2áð2ñ ð2ñ ð	2ñ
 ‘C™�H�~ Õ$ð2ñ �D�jð2ñ 
ñ2r:   c                óÐ   € V P                   '       g,   Ve(   VP                  R4      pVe   \        V4      R8X  d   V# Vf   V P                  pV P                  V,          ! WV4      # )NrÔ   ÚMetadata)rw  rÜ   r*   rµ  r¶  )rg   rr   rç   r÷   r  r¾  Úts   &&&&&& r;   r‘  Ú$PDFStandardSecurityHandlerV4.decryptù  s[   € ð ×$×$Ð$¨Ò):Ø—	‘	˜&Ó!ˆAØŠ}¤¨a£°JÔ!>Ø�ØŠ<Ø—9‘9ˆDØ�x‰x˜Ž~˜e¨DÓ1Ð1r:   c                ó2   <€ V ^8„  d   QhRS[ RS[ RS[RS[/# rš  r›  )r^   r_   s   "€r;   r`   r©  	  s)   ø€ ÷ ñ ¡cð ±#ð ¹Uð Áuñ r:   c                ó   € V# rc   r3   )rg   rr   rç   r÷   s   &&&&r;   r¹  Ú-PDFStandardSecurityHandlerV4.decrypt_identity	  s   € Øˆr:   c                ó2   <€ V ^8„  d   QhRS[ RS[ RS[RS[/# rš  r›  )r^   r_   s   "€r;   r`   r©    s)   ø€ ÷ $ñ $¡Cð $±ð $¹5ð $ÁUñ $r:   c                ó*  € V P                   f   Q hV P                   \        P                  ! RV4      R,          ,           \        P                  ! RV4      R,          ,           R,           p\        V4      pVP	                  4       R \        \        V4      ^4       pVR,          pVR,          p\        \        P                  ! V4      \        P                  ! V4      \        4       R7      pVP                  4       P                  V4      p	\        V	4      # )Nrs  r�  rŸ  s   sAlTrŠ  ºrV  NN©Úbackend)rC  rt  ru  r   rg  râ   rŸ   r   r   ÚAESr   ÚCBCr   Ú	decryptorrº   r0   )
rg   rr   rç   r÷   rC  ri  Úinitialization_vectorÚ
ciphertextÚcipherÚ	plaintexts
   &&&&      r;   rÃ  Ú+PDFStandardSecurityHandlerV4.decrypt_aes128  sã   € Ø�x‰xÒ#Ð#Ð#à�H‰HÜ�kŠk˜$ Ó& rÕ*õ+ä�kŠk˜$ Ó& rÕ*õ+ð õð 	ô �3‹xˆØ�k‰k‹mÐ/œc¤# c£(¨BÓ/Ð0ˆØ $ S¥	ÐØ˜#•Yˆ
ÜÜ�NŠN˜3ÓÜ�IŠIÐ+Ó,Ü#Ó%ô
ˆð
 ×$Ñ$Ó&×-Ñ-¨jÓ9ˆ	Ü˜Ó#Ð#r:   c                ó:   <€ V ^8„  d   Qh/ S[ S[R3,          ;R&   # r¢  r£  )r^   r_   s   "€r;   r`   r©  Ø  s   ø‡ ‚ Ù™s C˜x�Ñ/ò r:   )r³  r¶  rw  r>  r´  rµ  rI  )NN)r5   r6   r7   r8   r/  r-  r¸  r‘  r¹  rÃ  r¦  r9   r€   Ú__classcell__©rº  r_   s   @@r;   rv  rv  Ø  sE   ù‡ € Ø+/Ð÷0ó 0÷,ð ÷2ò 2÷ ð ÷$ð $÷i … r:   rv  c                   óú   a a€ ] tR tRt oRtV3R lV 3R lltV3R lR ltV3R lR ltV3R lR	 ltRV3R
 lR llt	RV3R lR llt
RV3R lR llt]V3R lR l4       tV3R lR ltV3R lR ltRtVtV ;t# )ÚPDFStandardSecurityHandlerV5i!  c                ó   <€ V ^8„  d   QhRR/# r…   r3   )r^   r_   s   "€r;   r`   Ú)PDFStandardSecurityHandlerV5.__annotate__$  s   ø€ ÷ 
&ñ 
&˜Tñ 
&r:   c                óÖ  <€ \         SV `  4        R V n        \        V P                  R,          4      V n        \        V P                  R,          4      V n        V P                  R,          V n        V P                  R,          V n	        V P                  R,          V n
        V P                  R,          V n        V P                  R,          V n        V P                  R,          V n        R# )é   ÚOEÚUErq  :rr  é(   N:ræ  NNN)r²  r-  r>  r$   r$  ÚoeÚuer<  Úo_hashÚo_validation_saltÚ
o_key_saltr=  Úu_hashÚu_validation_saltÚ
u_key_salt)rg   rº  s   &€r;   r-  Ú(PDFStandardSecurityHandlerV5.init_params$  s›   ø€ Ü‰ÑÔØˆŒÜ˜DŸJ™J tÕ,Ó-ˆŒÜ˜DŸJ™J tÕ,Ó-ˆŒØ—f‘f˜S•kˆŒØ!%§¡¨¥ˆÔØŸ&™& �+ˆŒØ—f‘f˜S•kˆŒØ!%§¡¨¥ˆÔØŸ&™& �+ˆŽr:   c                óT   <€ V ^8„  d   QhRS[ RS[S[S[S[.S[3,          R,          /# r½  r¿  )r^   r_   s   "€r;   r`   rá  0  s1   ø€ ÷ ñ ™Cð ¡H©c±3¹Ð->ÁÐ-EÕ$FÈÕ$Mñ r:   c                ó,   € VR 8X  d   V P                   # R# )ÚAESV3N)Údecrypt_aes256rÄ  s   &&r;   r¸  Ú$PDFStandardSecurityHandlerV5.get_cfm0  s   € Ø�7Œ?Ø×&Ñ&Ð&ár:   c                ó4   <€ V ^8„  d   QhRS[ RS[R,          /# r{  r|  )r^   r_   s   "€r;   r`   rá  6  s   ø€ ÷ ñ ¡Sð ©U°T­\ñ r:   c                ó  € V P                  V4      pV P                  W P                  V P                  4      pW0P                  8X  dŽ   V P                  W P
                  V P                  4      p\        \        P                  ! V4      \        P                  ! R4      \        4       R7      pVP                  4       P                  V P                  4      # V P                  W P                  4      pW0P                   8X  dƒ   V P                  W P"                  4      p\        \        P                  ! V4      \        P                  ! R4      \        4       R7      pVP                  4       P                  V P$                  4      # R# )ó    rÑ  Ns                   )Ú_normalize_passwordÚ_password_hashrê  r=  ré  rë  r   r   rÓ  r   rÔ  r   rÕ  rº   rç  rí  rì  rî  rè  )rg   r%  Ú
password_bri  rØ  s   &&   r;   rB  Ú)PDFStandardSecurityHandlerV5.authenticate6  s  € Ø×-Ñ-¨hÓ7ˆ
Ø×"Ñ" :×/EÑ/EÀtÇvÁvÓNˆØ—;‘;ÔØ×&Ñ& z·?±?ÀDÇFÁFÓKˆDÜÜ—’˜tÓ$Ü—	’	˜*Ó%Ü'Ó)ôˆFð
 ×#Ñ#Ó%×,Ñ,¨T¯W©WÓ5Ð5Ø×"Ñ" :×/EÑ/EÓFˆØ—;‘;ÔØ×&Ñ& z·?±?ÓCˆDÜÜ—’˜tÓ$Ü—	’	˜*Ó%Ü'Ó)ôˆFð
 ×#Ñ#Ó%×,Ñ,¨T¯W©WÓ5Ð5Ùr:   c                ó&   <€ V ^8„  d   QhRS[ RS[/# ro  r|  )r^   r_   s   "€r;   r`   rá  L  s   ø€ ÷ .ñ .©Cð .±Eñ .r:   c                ó„   € V P                   ^8X  d   V'       g   R# ^ RIHp V! V4      pVP                  R4      R,          # )é   r:   )Úsaslprepzutf-8:Né   N)r.  Úpdfminer._saslpreprÿ  r  )rg   r%  rÿ  s   && r;   rø  Ú0PDFStandardSecurityHandlerV5._normalize_passwordL  s4   € Ø�6‰6�QŒ;çÙÝ3á Ó)ˆHØ�‰˜wÓ'¨Õ-Ð-r:   c                ó@   <€ V ^8„  d   QhRS[ RS[ RS[ R,          RS[ /# ©rY   r%  ÚsaltÚvectorNrZ   r[  )r^   r_   s   "€r;   r`   rá  V  s7   ø€ ÷ 	>ñ 	>áð	>ñ ð	>ñ ˜•ð		>ñ
 
ñ	>r:   c                óz   € V P                   ^8X  d   V P                  WV4      # V P                  WR,          V4      # )z2Compute password hash depending on revision number:r   rQ  N)r.  Ú_r5_passwordÚ_r6_password)rg   r%  r  r  s   &&&&r;   rù  Ú+PDFStandardSecurityHandlerV5._password_hashV  s9   € ð �6‰6�QŒ;Ø×$Ñ$ X°VÓ<Ð<Ø× Ñ  °­9°fÓ=Ð=r:   c                ó@   <€ V ^8„  d   QhRS[ RS[ RS[ R,          RS[ /# r  r[  )r^   r_   s   "€r;   r`   rá  a  s7   ø€ ÷ ñ áðñ ðñ ˜•ð	ñ
 
ñr:   c                ó„   € \        V4      pVP                  V4       Ve   VP                  V4       VP                  4       # )z#Compute the password for revision 5)r	   rº   rg  )rg   r%  r  r  ri  s   &&&& r;   r  Ú)PDFStandardSecurityHandlerV5._r5_passworda  s8   € ô �hÓˆØ�‰�DÔØÒØ�K‰K˜ÔØ�{‰{‹}Ðr:   c                ó@   <€ V ^8„  d   QhRS[ RS[ RS[ R,          RS[ /# r  r[  )r^   r_   s   "€r;   r`   rá  n  s7   ø€ ÷ ñ áðñ ðñ ˜•ð	ñ
 
ñr:   c                ó  € \        V4      pVP                  V4       Ve   VP                  V4       VP                  4       p\         \        \        3p^ ;rxV^@8  g   W‡^ ,
          8”  d›   W,           T;'       g    R,           ^@,          p	V P                  VR,          VR,          V	R7      p
W`P                  V
R,          4      ,          pV! V
4      P                  4       pV
\        V
4      ^,
          ,          pV^,          pK®  VR,          # )z#Compute the password for revision 6r:   rŠ  :rV  rr  N)rC  Úivr÷   rq  )r	   rº   rg  r
   r   Ú_aes_cbc_encryptÚ_bytes_mod_3rŸ   )rg   r%  r  r  Úinitial_hashrk  ÚhashesÚround_noÚlast_byte_valÚk1ÚeÚ	next_hashs   &&&&        r;   r	  Ú)PDFStandardSecurityHandlerV5._r6_passwordn  sæ   € ô ˜hÓ'ˆØ×Ñ˜DÔ!ØÒØ×Ñ Ô'Ø×ÑÓ!ˆÜœ&¤&Ð)ˆØ#$Ð$ˆØ˜Œm˜}¸"­}Ô<Ø•, &§- -¨CÕ0°BÕ6ˆBØ×%Ñ%¨!¨C­&°Q°uµXÀBÐ%ÓGˆAð ×0Ñ0°°3µÓ8Õ9ˆIÙ˜!“×#Ñ#Ó%ˆAØœc !›f q�j�MˆMØ˜�MŠHØ��vˆr:   c                ó&   <€ V ^8„  d   QhRS[ RS[/# )rY   Úinput_bytesrZ   )r&  rl   )r^   r_   s   "€r;   r`   rá  ˆ  s   ø€ ÷ 3ñ 3¡%ð 3©Cñ 3r:   c                ó4   € \        R  V  4       4      ^,          # )c              3   ó2   "  € T F  q^,          x € K  	  R# 5i)rž  Nr3   )r_  Úbs   & r;   ra  Ú<PDFStandardSecurityHandlerV5._bytes_mod_3.<locals>.<genexpr>Š  s   é € Ð.¡+˜Q�q—5’5£+ùs   ‚)Úsum)r  s   &r;   r  Ú)PDFStandardSecurityHandlerV5._bytes_mod_3‡  s   € ô Ñ.¡+Ó.Ó.°Õ2Ð2r:   c                ó2   <€ V ^8„  d   QhRS[ RS[ RS[ RS[ /# )rY   rC  r  r÷   rZ   r[  )r^   r_   s   "€r;   r`   rá  Œ  s)   ø€ ÷ =ñ =¡Eð =©uð =¹Eð =Áeñ =r:   c                óÖ   € \        \        P                  ! V4      \        P                  ! V4      4      pVP                  4       pVP                  V4      VP                  4       ,           # rc   )r   r   rÓ  r   rÔ  Ú	encryptorrº   Úfinalize)rg   rC  r  r÷   rØ  r%  s   &&&&  r;   r  Ú-PDFStandardSecurityHandlerV5._aes_cbc_encryptŒ  sL   € Üœ
Ÿš sÓ+¬U¯YªY°r«]Ó;ˆØ×$Ñ$Ó&ˆ	Ø×Ñ Ó%¨	×(:Ñ(:Ó(<Õ<Ð<r:   c                ó2   <€ V ^8„  d   QhRS[ RS[ RS[RS[/# rš  r›  )r^   r_   s   "€r;   r`   rá  ‘  s)   ø€ ÷ 
$ñ 
$¡Cð 
$±ð 
$¹5ð 
$ÁUñ 
$r:   c                ó*  € VR ,          pVR,          pV P                   f   Q h\        \        P                  ! V P                   4      \        P
                  ! V4      \        4       R7      pVP                  4       P                  V4      p\        V4      # )rŠ  rÐ  rÑ  )
rC  r   r   rÓ  r   rÔ  r   rÕ  rº   r0   )rg   rr   rç   r÷   rÖ  r×  rØ  rÙ  s   &&&&    r;   ró  Ú+PDFStandardSecurityHandlerV5.decrypt_aes256‘  sx   € Ø $ S¥	ÐØ˜#•Yˆ
Ø�x‰xÒ#Ð#Ð#ÜÜ�NŠN˜4Ÿ8™8Ó$Ü�IŠIÐ+Ó,Ü#Ó%ô
ˆð
 ×$Ñ$Ó&×-Ñ-¨jÓ9ˆ	Ü˜Ó#Ð#r:   )	r>  ré  rë  rê  rç  rì  rî  rí  rè  )é   rþ  rc   )r5   r6   r7   r8   r/  r-  r¸  rB  rø  rù  r  r	  Ústaticmethodr  r  ró  r9   r€   rÜ  rÝ  s   @@r;   rß  rß  !  s~   ù‡ € Ø Ð÷
&ó 
&÷ð ÷ð ÷,.ð .÷	>ò 	>÷ò ÷ò ð2 ÷3ó ð3÷=ð =÷

$÷ 
$ð 
$r:   rß  c                   óP  a € ] tR tRt o Rt^]^]^]^]/tRV 3R lR llt	]
! R4      tR V 3R lR lltV 3R lR	 ltV 3R
 lR ltV 3R lR ltV 3R lR lt]]]]]]3,          tV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R ltRtV tR# )!ÚPDFDocumentiž  a4  PDFDocument object represents a PDF document.

Since a PDF file can be very big, normally it is not loaded at
once. So PDF document has to cooperate with a PDF parser in order to
dynamically import the data as processing goes.

Typical usage:
  doc = PDFDocument(parser, password)
  obj = doc.getobj(objid)

c          
      ó6   <€ V ^8„  d   QhRS[ RS[RS[RS[RR/# )rY   r{   r%  ÚcachingÚfallbackrZ   N)r   r]   rG  )r^   r_   s   "€r;   r`   ÚPDFDocument.__annotate__²  s=   ø€ ÷ 57ñ 57áð57ñ ð57ñ ð	57ñ
 ð57ð 
ñ57r:   c                ó0  € W0n         . V n        . V n        / V n        RV n        RV n        RV n        / V n        / V n        Wn        V P                  P                  V 4       R;V n
        ;V n        V n         V P                  V4      pV P                  WV P                  4       V P                   F»  pVP)                  4       pV'       g   K  RV9   dF   RV9   d   \+        VR,          4      MR
p	V	\-        VR,          4      3V n        V P/                  V4       RV9   d,   V P                  P'                  \-        VR,          4      4       RV9   g   K¤  \-        VR,          4      V n         M	  \1        R4      hV P                  P3                  R4      \4        Jd$   \6        P8                  '       d   \1        R	4      hR# R#   \         dJ    T'       d>   RTn        \#        4       pTP%                  T4       T P                  P'                  T4        ELqi ; i)z1Set the document to use a given PDFParser object.NTÚEncryptÚIDÚInfoÚRootz(No /Root object! - Is this really a PDF?rÔ   zCatalog not found!)r:   r:   )r0  ÚxrefsÚinfoÚcatalogÚ
encryptionÚdecipherÚ_parserÚ_cached_objsÚ_parsed_objsÚset_documentrL  rR  rW  Ú	find_xrefÚread_xref_fromr2   r1  rÌ   r~   rá   rh   r#   r!   Ú_initialize_passwordr   rÜ   ÚLITERAL_CATALOGr   rß   )
rg   r{   r%  r0  r1  r§   ÚnewxrefÚxrefrŠ   Úid_values
   &&&&&     r;   r‹   ÚPDFDocument.__init__²  sÄ  € ð ŒØ(*ˆŒ
ØˆŒ	Ø')ˆŒØ26ˆŒØ15ˆŒØˆŒØ;=ˆÔØACˆÔØŒØ�‰×!Ñ! $Ô'ØGKÐKˆÔÐK˜DÔ.°Ô1Dð	+Ø—.‘. Ó(ˆCØ×Ñ ¨T¯Z©ZÔ8ð —J”JˆDØ×&Ñ&Ó(ˆGßÙà˜GÔ#ð 9=À¼œ: g¨d¥mÔ4ÈZ�Ø#+¬Z¸À	Õ8JÓ-KÐ"L�”Ø×)Ñ)¨(Ô3Ø˜Ô Ø—	‘	× Ñ ¤¨G°F­OÓ!<Ô=Ø˜Ö ä)¨'°&­/Ó:�”Ùñ# ô& !Ð!KÓLÐLØ�<‰<×Ñ˜FÓ#¬?Ó:¼x¿¿¸Ü Ð!5Ó6Ð6ñ @OÑ:øô7 ô 	+ßØ"&�”Ü)Ó+�Ø—‘˜VÔ$Ø—
‘
×!Ñ! 'Ô*úð	+ús   Á6-G ÇHÇ=HÈHó   objc                ó$   <€ V ^8„  d   QhRS[ RR/# r{  rŽ   )r^   r_   s   "€r;   r`   r2  í  s   ø€ ÷ &ñ &©Sð &¸$ñ &r:   c                ó$  € V P                   f   Q hV P                   w  r#\        VP                  R4      4      R8w  d   \        RV: 24      h\	        VP                  R^ 4      4      pV P
                  P                  V4      pVf   \        RV: 24      hV! W#V4      pVP                  V n        VP                  4       V n        VP                  4       V n	        VP                  4       V n
        V P                  f   Q hRV P                  n        R # )NÚFilterÚStandardzUnknown filter: param=r4  zUnknown algorithm: param=F)r;  r*   rÜ   rI   r"   Úsecurity_handler_registryr‘  r<  rL  rR  rW  r=  r1  )rg   r%  r#  r$  r:  ÚfactoryÚhandlers   &&     r;   rC  Ú PDFDocument._initialize_passwordí  sï   € Ø�‰Ò*Ð*Ð*ØŸ™‰ˆÜ˜Ÿ	™	 (Ó+Ó,°
Ô:Ü$Ð'=¸e¹YÐ%GÓHÐHÜ�e—i‘i  QÓ'Ó(ˆØ×0Ñ0×4Ñ4°QÓ7ˆØŠ?Ü$Ð'@ÀÁ	Ð%JÓKÐKÙ˜%¨Ó1ˆØŸ™ˆŒØ#×0Ñ0Ó2ˆÔØ$×2Ñ2Ó4ˆÔØ%×4Ñ4Ó6ˆÔØ�|‰|Ò'Ð'Ð'Ø %ˆ�‰Ör:   c                ó2   <€ V ^8„  d   QhRS[ RS[RS[RS[/# )rY   ré   rí   rr   rZ   )r   rl   Úobject)r^   r_   s   "€r;   r`   r2  þ  s)   ø€ ÷ ñ ¡Yð ±sð Á3ð É6ñ r:   c                ó’  € VP                   V P                  9   d!   V P                  VP                   ,          w  rEMOV P                  V4      w  rEV P                  '       d+   VP                   f   Q hWE3V P                  VP                   &   V^,          V,           p WF,          pV#   \         d   p\        RT: 24      ThR p?ii ; i)Nzindex too big: )rr   r?  Ú_get_objectsr0  Ú
IndexErrorr   )	rg   ré   rí   rr   rì   rê   r  rè   r©   s	   &&&&     r;   Ú_getobj_objstmÚPDFDocument._getobj_objstmþ  s¶   € Ø�<‰<˜4×,Ñ,Ô,Ø×)Ñ)¨&¯,©,Õ7‰IˆT�1à×)Ñ)¨&Ó1‰IˆTØ�|�|ˆ|Ø—|‘|Ò/Ð/Ð/Ø37°)�×!Ñ! &§,¡,Ñ/Ø��E�E�Mˆð	GØ•'ˆCð ˆ
øô ô 	GÜ  ?°5±)Ð!<Ó=À3ÐFûð	Gús   ÂB& Â&CÂ1CÃCc                óL   <€ V ^8„  d   QhRS[ RS[S[S[,          S[3,          /# )rY   ré   rZ   )r   rt   ÚlistrS  rl   )r^   r_   s   "€r;   r`   r2    s)   ø€ ÷ ñ ¡9ð ±±t¹Fµ|ÁSÐ7HÕ1Iñ r:   c                óì  € VP                  R 4      \        Jd&   \        P                  '       d   \	        RV: 24      h \        \        VR,          4      p\        VP                  4       4      pVP                  V 4       . p  VP                  4       w  rVVP                  V4       K&    \         d,    \        P                  '       d   \	        RT: 24      Rh^ p Lˆi ; i  \         d     YB3# i ; i)rÔ   zNot a stream object: rÕ   rÖ   N)rÜ   rÝ   r   rß   r   r   rl   rÞ   r   rà   r@  r¸   rá   r'   )rg   ré   rê   r{   rì   r®   rè   s   &&     r;   rU  ÚPDFDocument._get_objects  sÜ   € Ø�:‰:�fÓ¤^Ó3¼¿¿¸Ü Ð#8¸¹
Ð!CÓDÐDð	Ü”S˜& �+Ó&ˆAô
 ! §¡Ó!2Ó3ˆØ×Ñ˜DÔ!Øˆð	ØØ!×,Ñ,Ó.‘�Ø—‘˜CÖ øô ô 	Ü��ˆÜ$Ð'9¸&¹Ð%DÓEÈ4ÐOØŠAð	ûô ô 	ØØˆyÐð	ús*   Á B* Â&C# Â* C ÃC ÃC Ã#C3Ã2C3c                ó,   <€ V ^8„  d   QhRS[ RS[ RS[/# )rY   r§   rr   rZ   ©rl   rS  )r^   r_   s   "€r;   r`   r2  !  s"   ø€ ÷ ñ ¡ð ©Sð ±Vñ r:   c                ój  € V P                   f   Q hV P                   P                  V4       V P                   P                  4       w  r4V P                   P                  4       w  r5V P                   P                  4       w  r6WB8w  dZ   . pW`P                  Jd0   V P                   P                  4       w  r6VP	                  V4       K>  \        V4      ^8¼  d
   VR,          pWB8w  d   \        RV: RV: 24      hV\        R4      8w  d   \        RV: 24      hV P                   P                  4       w  r8V# )Nzobjid mismatch: Ú=rI  zInvalid object spec: offset=éþÿÿÿ)	r=  r�   r·   ÚKEYWORD_OBJrá   rŸ   r   r(   r¸   )	rg   r§   rr   r®   rî   r  r»   r½   rè   s	   &&&      r;   Ú_getobj_parseÚPDFDocument._getobj_parse!  s  € Ø�|‰|Ò'Ð'Ð'Ø�‰×Ñ˜#ÔØ—l‘l×,Ñ,Ó.‰ˆØ—l‘l×,Ñ,Ó.‰ˆØ—<‘<×)Ñ)Ó+‰ˆð Œ?ØˆAØ×-Ñ-Ó-ØŸ<™<×1Ñ1Ó3‘�Ø—‘˜–Ü�1‹v˜Œ{Ø˜2��àŒ?Ü Ð#3°F±:¸Q¸u¹iÐ!HÓIÐIà”#�f“+ÔÜ Ð#?À¹wÐ!GÓHÐHØ—<‘<×*Ñ*Ó,‰ˆØˆ
r:   c                ó&   <€ V ^8„  d   QhRS[ RS[/# )rY   rr   rZ   r^  )r^   r_   s   "€r;   r`   r2  =  s   ø€ ÷ &ñ &™Cð &¡Fñ &r:   c                ó  € V P                   '       g   \        R4      h\        P                  RV4       WP                  9   d   V P                  V,          w  r#V# V P                    F«  p VP                  V4      w  rVp Te.   \        T P                  T4      4      pT P                  YvT4      pM:T P                  Ya4      pT P                  '       d   \        T P                  YT4      p\        T\        4      '       d   TP                  Y4        M	  \%        V4      h\        P                  RY4       T P&                  '       d   Y#3T P                  T&   T#   \         d     EK  i ; i  \         \"        3 d     EK  i ; i)z…Get object from PDF

:raises PDFException if PDFDocument is not initialized
:raises PDFObjectNotFound if objid does not exist in PDF
zPDFDocument is not initializedzgetobj: objid=%rzregister: objid=%r: %r)r8  r   r£   r¥   r>  rw   rÞ   r%   ÚgetobjrW  rc  r<  r    rÛ   r   Ú	set_objidr'   r   r   r0  )rg   rr   rè   rç   rF  Ústrmidrí   ré   s   &&      r;   rg  ÚPDFDocument.getobj=  sV  € ð �z�zˆzÜÐ?Ó@Ð@Ü�	‰	Ð$ eÔ,ð ×%Ñ%Ô%Ø×,Ñ,¨UÕ3‰LˆSð4 ˆ
ð1 Ÿ
œ
�ðØ-1¯\©\¸%Ó-@Ñ*�V EðØÒ)Ü!-¨d¯k©k¸&Ó.AÓ!B˜Ø"×1Ñ1°&ÀÓG™à"×0Ñ0°Ó>˜ØŸ=Ÿ=˜=Ü".¨t¯}©}¸eÈCÓ"P˜Cä! #¤y×1Ò1ØŸ™ eÔ3Ùñ! #ô( (¨Ó.Ð.Ü�I‰IÐ.°Ô;Ø�|�|ˆ|Ø,/¨<�×!Ñ! %Ñ(Øˆ
øô+  ô Ûðûô œ~Ð.ô Ûðús%   Á+EÂ BE.ÅE+Å*E+Å.FÆFc                ó0   <€ V ^8„  d   QhRS[ S[,          /# rX   )r   ÚOutlineType)r^   r_   s   "€r;   r`   r2  g  s   ø€ ÷ 3ñ 3™h¡{Õ3ñ 3r:   c                óx   a€ R V P                   9  d   \        hR V3R lloS! V P                   R ,          ^ 4      # )ÚOutlinesc                óf   € V ^8„  d   QhR\         R\        R\        \        P                  ,          /# )rY   ÚentryÚlevelrZ   )rS  rl   r   r.  rl  )r^   s   "r;   r`   Ú.PDFDocument.get_outlines.<locals>.__annotate__k  s,   € ÷ 	8ñ 	8œ&ð 	8¬ð 	8´¼+×:QÑ:QÕ1Rñ 	8r:   c              3   óž  <"  € \        V 4      p R V 9   dd   RV 9   g   RV 9   dV   \        \        V R ,          4      4      pV P                  R4      pV P                  R4      pV P                  R4      pWW4V3x € RV 9   d'   RV 9   d    S! V R,          V^,           4       Rj  x€L
  RV 9   d   S! V R,          V4       Rj  x€L
  R# R#  L' L
5i)ÚTitleÚAÚDestÚSEÚFirstÚLastNÚNext)r!   r,   r$   rÜ   )rp  rq  ÚtitleÚdestÚactionÚseÚsearchs   &&    €r;   r  Ú(PDFDocument.get_outlines.<locals>.searchk  sº   øé € Ü˜uÓ%ˆEØ˜%Ô S¨E¤\°V¸u´_Ü#¤I¨e°G­nÓ$=Ó>�Ø—y‘y Ó(�ØŸ™ 3›�Ø—Y‘Y˜t“_�Ø T°2Ð6Ò6Ø˜%Ô F¨e¤OÙ! %¨¥.°%¸!µ)Ó<×<Ð<Ø˜ŒÙ! %¨¥-°Ó7×7Ò7ñ ñ =á7ùs$   ƒBCÂ!C	Â"CÃ CÃ	CÃC)r:  rC   )rg   r  s   &@r;   Úget_outlinesÚPDFDocument.get_outlinesg  s7   ø€ Ø˜TŸ\™\Ô)ÜÐ÷	8ð 	8ñ �d—l‘l :Õ.°Ó2Ð2r:   c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rX   ©r   r]   )r^   r_   s   "€r;   r`   r2  z  s   ø€ ÷ "ñ "¡©#¥ñ "r:   c                ó´   € V P                   f   Q h \        V P                   R,          4      pVP
                  #   \        \        3 d   p\        ThRp?ii ; i)zÁGenerate page label strings for the PDF document.

If the document includes page labels, generates strings, one per page.
If not, raises PDFNoPageLabels.

The resulting iteration is unbounded.
NÚ
PageLabels)r:  r†  r   rÞ   rE   Úlabels)rg   Úpage_labelsr©   s   &  r;   Úget_page_labelsÚPDFDocument.get_page_labelsz  sY   € ð �|‰|Ò'Ð'Ð'ð	+Ü$ T§\¡\°,Õ%?Ó@ˆKð ×!Ñ!Ð!øô œhÐ'ô 	+Ü! sÐ*ûð	+ús   ’: ºAÁAÁAc                ó<   <€ V ^8„  d   QhRS[ RS[ S[,          RS[/# )rY   ÚcatrC  rZ   ©r]   r&  r   )r^   r_   s   "€r;   r`   r2  ‹  s&   ø€ ÷ ñ ™sð ©©u­ð ¹ñ r:   c                óÚ   aaa€  \        V P                  R ,          4      p\        TS,          4      pR TTT3R lloS! T4      #   \        \        3 d   p\	        SS34      ThRp?ii ; i)ÚNamesNc                óR   € V ^8„  d   QhR\         \        \        3,          R\        /# )rY   ÚdrZ   r[   )r^   s   "r;   r`   Ú-PDFDocument.lookup_name.<locals>.__annotate__“  s"   € ÷ 	*ñ 	*”dœ3¤˜8•nð 	*¬ñ 	*r:   c           	      óÆ  <€ R V 9   d%   \        V R ,          4      w  rSV8  g   VS8  d   R# RV 9   df   \        V R,          4      p\        \        \        \        \
        \        ,          \        3,          ,          \        ^V4      4      4      pVS,          # RV 9   d7   \        V R,          4       F   pS	! \        V4      4      pV'       g   K  Vu # 	  \        SS34      h)ÚLimitsNr�  ÚKids)r#   r\   r   r   rt   r]   r&  r   r+   r!   r   )
r‘  r  Úk2rì   Únamesr`  r:  rŒ  rC  Úlookups
   &      €€€r;   r˜  Ú'PDFDocument.lookup_name.<locals>.lookup“  s¼   ø€ Ø˜1Œ}Ü% a¨¥kÓ2‘�Ø˜”8˜r CœxÙØ˜!Œ|Ü! ! G¥*Ó-�ÜÜœ¤%¬¬e­´SÐ(8Õ"9Õ:¼HÀQÈÓ<MÓNó�ð ˜S•zÐ!Ø˜Œ{Ü# A f¥IÖ.�AÙœz¨!›}Ó-�Aß‘qØ šñ /ô ˜s C˜jÓ)Ð)r:   )r!   r:  r   rÞ   r   )rg   rŒ  rC  r—  r©   Úd0r˜  s   &ff   @r;   Úlookup_nameÚPDFDocument.lookup_name‹  si   ú€ ð	3Ü˜tŸ|™|¨GÕ4Ó5ˆEô ˜˜c�
Ó#ˆ÷	*ò 	*ñ$ �b‹zÐøô/ œhÐ'ô 	3Ü˜s C˜jÓ)¨sÐ2ûð	3ús   …A ÁA*ÁA%Á%A*c                ó6   <€ V ^8„  d   QhRS[ S[,          RS[/# )rY   r¾  rZ   r�  )r^   r_   s   "€r;   r`   r2  §  s   ø€ ÷ ñ ™S¡5�[ð ©Sñ r:   c                óö   €  V P                  R V4      pV#   \         dX    R T P                  9  d   \        T4      Rh\	        T P                  R ,          4      pY9  d   \        T4      RhY1,          p T# i ; i)ÚDestsN)r›  rÞ   r:  rG   r!   )rg   r¾  rè   rš  s   &&  r;   Úget_destÚPDFDocument.get_dest§  s{   € ð
	à×"Ñ" 7¨DÓ1ˆCð ˆ
øô ô 	à˜dŸl™lÔ*Ü,¨TÓ2¸Ð<Ü˜DŸL™L¨Õ1Ó2ˆBØŒ~Ü,¨TÓ2¸Ð<Ø•(‰CØˆ
ð	ús   ‚ –AA8Á7A8c                ó&   <€ V ^8„  d   QhRS[ RS[/# )rY   r{   rZ   )r   rl   )r^   r_   s   "€r;   r`   r2  ¶  s   ø€ ÷ /ñ /¡	ð /©cñ /r:   c                óz  € RpVP                  4        F›  pVP                  4       p\        P                  RV4       VR8X  d`   \        P                  RV4       VP	                  4       '       g   \        RV: 24      h\        V4      pV^ 8¼  g   \        RV 24      hVu # V'       g   K™  TpK�  	  \        R4      h)z0Internal function used to locate the first XRef.r:   zfind_xref: %rs	   startxrefzxref found: pos=%rzInvalid xref position: z Invalid negative xref position: úUnexpected EOF)Úrevreadlinesr›   r£   r¥   Úisdigitr2   rl   )rg   r{   Úprevr¨   r¬   s   &&   r;   rA  ÚPDFDocument.find_xref¶  sª   € ð ˆØ×'Ñ'Ö)ˆDØ—:‘:“<ˆDÜ�I‰I�o tÔ,à�|Ô#Ü—	‘	Ð.°Ô5à—|‘|—~’~Ü(Ð+BÀ4Á(Ð)KÓLÐLä˜D›	�à ”zÜ(Ð+KÈEÈ7Ð)SÓTÐTà’ç‰tØ’ñ% *ô( Ð-Ó.Ð.r:   c                ó@   <€ V ^8„  d   QhRS[ RS[RS[S[,          RR/# )rY   r{   r¬   r8  rZ   N)r   rl   rZ  rV   )r^   r_   s   "€r;   r`   r2  Ñ  s8   ø€ ÷ "4ñ "4áð"4ñ ð"4ñ ‘KÕ ð	"4ð
 
ñ"4r:   c                ó  € VP                  V4       VP                  4         VP                  4       w  rE\
        P                  RY%4       \        T\        4      '       d>   TP                  T4       TP                  4        \        4       pTP                  T4       M:YQP                  J d   TP                  4        \        4       pTP                  T4       TP                  T4       TP                  4       p\
        P                  RT4       RT9   d%   \!        TR,          4      pT P#                  YT4       RT9   d'   \!        TR,          4      pT P#                  YT4       R# R#   \         d   p\	        R4      ThRp?ii ; i)z$Reads XRefs from the given location.r¤  Nz"read_xref_from: start=%d, token=%rrÓ   ÚXRefStmÚPrev)r�   Úresetr·   r'   r2   r£   r¥   rÛ   rl   ró   r~   ÚKEYWORD_XREFrš   rƒ   rá   rh   r"   rB  )	rg   r{   r¬   r8  r§   Útokenr©   rF  rŠ   s	   &&&&     r;   rB  ÚPDFDocument.read_xref_fromÑ  s7  € ð 	�‰�EÔØ�‰Œð	<Ø!×+Ñ+Ó-‰LˆSô 	�	‰	Ð6¸ÔEÜ�eœS×!Ò!à�K‰K˜ÔØ�L‰LŒNÜ -£ˆDØ�I‰I�fÕà×+Ñ+Ó+Ø—‘Ô!Ü“9ˆDØ�I‰I�fÔØ�‰�TÔØ×"Ñ"Ó$ˆÜ�	‰	�- Ô)Ø˜ÔÜ˜G IÕ.Ó/ˆCØ×Ñ ¨UÔ3Ø�WÔä˜G F�OÓ,ˆCØ×Ñ ¨UÖ3ñ øô) ô 	<Ü Ð!1Ó2¸Ð;ûð	<ús   £E) Å)FÅ4F Æ Fc                ó\   <€ V ^8„  d   Qh/ S[ S[S[S[S[,          3,          ,          ;R&   # )rY   rN  )r   r\   rl   Útyper!  )r^   r_   s   "€r;   r`   r2  ž  s)   ø‡ ‚ ñ  (©©S±$Ñ7QÕ2RÐ-RÕ(SÕTñ ò r:   )r>  r?  r=  r0  r:  r<  r;  r9  rW  rR  rL  r8  N)r¥  TTr¤  )r5   r6   r7   r8   r@   r!  rv  rß  rN  r‹   r(   rb  rC  rW  rU  rc  rg  rt   r   rl  r�  r‰  r›  r   rA  rB  r¦  r9   r€   r�   s   @r;   r.  r.  ž  sÑ   ø‡ € ñ
ð 	
Ð%Ø	Ð%Ø	Ð'Ø	Ð'ð	XÐ÷57ò 57ñn �f“+€K÷&ò &÷"ð ÷ð ÷(ð ÷8&ð &ðP ˜˜S # s¨CÐ/Õ0€K÷3ð 3÷&"ð "÷"ð ÷8ð ÷/ð /÷6"4ð "4÷g	 ƒ r:   r.  c                   ó\   a € ] tR tRt o Rt]V 3R lR l4       t]V 3R lR l4       tRt	V t
R# )	r†  iö  zOPageLabels from the document catalog.

See Section 8.3.1 in the PDF Reference.
c                ó0   <€ V ^8„  d   QhRS[ S[,          /# rX   r„  )r^   r_   s   "€r;   r`   ÚPageLabels.__annotate__ý  s   ø€ ÷ %ñ %™¡�ñ %r:   c           	   #  óž  "  € V P                   p\        V4      ^ 8X  g   V^ ,          ^ ,          ^ 8w  d6   \        P                  '       d   \	        R4      hVP                  ^ ^ / 34       \        V^4       FÒ  w  pw  r4\        V4      pVP                  R4      p\        \        VP                  RR4      4      4      p\        VP                  R^4      4      pV\        V4      8X  d   \        P                  ! V4      p	M$W,          w  r«W£,
          p\        WˆV,           4      p	V	 F  pV P                  WÖ4      pW~,           x € K   	  KÔ  	  R# 5i)r   z"PageLabels is missing page index 0ÚSr6  r:   ÚStN)ÚvaluesrŸ   r   rß   r   ÚinsertÚ	enumerater!   rÜ   r,   r$   r"   Ú	itertoolsÚcountr¢   Ú_format_page_label)rg   rü   Únextr¬   Úlabel_dict_uncheckedÚ
label_dictÚstyleÚprefixÚfirst_valuer¹  Úendr®   Úrange_lengthÚvalueÚlabels   &              r;   r‡  ÚPageLabels.labelsü  s  é € à—‘ˆô ˆv‹;˜!Ô˜v a�y¨�|¨qÔ0Ü��ˆÜ$Ð%IÓJÐJð —‘˜a ! R Ô)ä3<¸VÀQÖ3GÑ/ˆDÑ/�5Ü#Ð$8Ó9ˆJØ—N‘N 3Ó'ˆEÜ ¤¨:¯>©>¸#¸sÓ+CÓ!DÓEˆFÜ# J§N¡N°4¸Ó$;Ó<ˆKà”s˜6“{Ô"ô )2¯ª¸Ó(D‘à�‘�Ø"�{�Ü˜{¸,Õ,FÓG�ã�Ø×/Ñ/°Ó=�Ø•nÔ$ó  ó 4Hùs   ‚AEÁ
DEc                ó,   <€ V ^8„  d   QhRS[ RS[RS[/# )rY   rÇ  rÂ  rZ   )rl   r   r]   )r^   r_   s   "€r;   r`   rµ    s"   ø€ ÷ ñ ¡#ð ©cð ±cñ r:   c                ó–  € Vf   RpV# V\        R4      J d   \        V 4      pV# V\        R4      J d   \        V 4      P                  4       pV# V\        R4      J d   \        V 4      pV# V\        R4      J d   \	        V 4      P                  4       pV# V\        R4      J d   \	        V 4      pV# \
        P                  RV4       RpV# )z+Format page label value in a specific styler¥  ÚDr5  r.  ru  ÚazUnknown page label style: %r)r)   r]   r.   Úupperr-   r£   r¤   )rÇ  rÂ  rÈ  s   && r;   r¾  ÚPageLabels._format_page_label  sÜ   € ð Š=ØˆEð ˆð ”c˜#“hÓÜ˜“JˆEð ˆð ”c˜#“hÓÜ$ UÓ+×1Ñ1Ó3ˆEð ˆð ”c˜#“hÓÜ$ UÓ+ˆEð ˆð ”c˜#“hÓÜ$ UÓ+×1Ñ1Ó3ˆEð ˆð ”c˜#“hÓÜ$ UÓ+ˆEð ˆô �K‰KÐ6¸Ô>ØˆEØˆr:   r3   N)r5   r6   r7   r8   r@   Úpropertyr‡  r,  r¾  r9   r€   r�   s   @r;   r†  r†  ö  s2   ø‡ € ñð
 ÷%ó ð%ð< ÷ó ör:   r†  )\r¼  Úloggingrð   rt  Úcollections.abcr   r   r   r   r   Úhashlibr   r	   r
   r   Útypingr   r   r   Úcryptography.hazmat.backendsr   Ú&cryptography.hazmat.primitives.ciphersr   r   r   Úpdfminerr   Úpdfminer.arcfourr   Úpdfminer.castingr   Úpdfminer.data_structuresr   Úpdfminer.pdfexceptionsr   r   r   r   Úpdfminer.pdfparserr   r   r   Úpdfminer.pdftypesr   r   r    r!   r"   r#   r$   r%   r&   Úpdfminer.psexceptionsr'   Úpdfminer.psparserr(   r)   r*   Úpdfminer.utilsr+   r,   r-   r.   r/   r0   Ú	getLoggerr5   r£   r2   ÚSyntaxWarningr>   rC   rE   rG   rI   rK   ÚUserWarningrM   rO   rQ   rÝ   r  rD  rV   rƒ   rÌ   ró   r!  rv  rß  r.  r†  r3   r:   r;   Ú<module>rä     s™  ðÛ Û Û 	Û ß LÕ Lß /Ó /÷ñ õ 9ß LÑ Lå Ý $Ý %Ý /÷ó ÷ JÑ I÷
÷ 
õ 
õ (ß 4Ñ 4÷÷ ð ×Ò˜Ó!€ô	�^ô 	ô˜Mô ô	�Lô 	ô	�lô 	ô	˜\ô 	ô	˜ô 	ô	Ð-ô 	ô˜;ô ô¨ô ô	Ð"4ô 	ñ
 �X“€Ù�6‹{€Ù�i“.€÷"ñ "ô"L#ˆkô L#ô^0=�gô 0=ôfK%�Kô K%÷\I*ñ I*ôXF$Ð#=ô F$ôRz$Ð#?ô z$÷zU4ñ U4ôp
7�ö 7r:   