+
    ÂHàj0œ  ã                  ó  € ^ RI Ht 0 RNmt^ RIt^ RIt^ RIt^ RIt^ RIt^ RIt^ RI	t	^ RI
t
^ RIt^ RIHtHt ^RIHt Rt]'       d&   ^ RIHtHt ]P(                  ]],          ]3,          tM]P(                  tR R lt/ ^R	b^R
b^Rb^Rb^Rb^Rb^Rb^Rb^Rb^€Rb^�Rb^‚Rb^ƒRb^„Rb^…Rb^†Rb^‡Rb/ ^ˆRb^‰Rb^ŠRb^‹Rb^ŒRb^�Rb^ŽR b^�R!b^�R"b^‘R#b^’R$b^“R%b^”R&b^•R'b^–R(b^—R)b^˜R*bC^™R+^šR,^›R-^œR.^�R/^žR0^ R1/CtR2 R3 lt ! R4 R5]4      tR6 R7 lt ! R8 R9]4      t ! R: R;]4      t ! R< R=]4      t  ! R> R?4      t! ! R@ RA4      t" ! RB RC]#],          4      t$ ! RD RE]4      t% ! RF RG4      t& ! RH RI4      t'RJ RK lt( ! RL RM4      t)R# )Oé    )ÚannotationsN)ÚAnyÚ
NamedTuple)Ú	ImageFileF)ÚIOÚSelfc               ó    € V ^8„  d   QhRRRR/# )é   ÚsÚstrÚreturnÚbytes© )Úformats   "Ú�/home/ubuntu/.hermes/installs/5f0a1ff4045d044e/environments/88679baa1dc64374a0cd943b62eeefb9/venv/lib/python3.14/site-packages/PIL/PdfParser.pyÚ__annotate__r      s   € ÷ 7ñ 7�3ð 7˜5ñ 7ó    c                óN   € \         P                  V P                  R 4      ,           # )Ú	utf_16_be)ÚcodecsÚBOM_UTF16_BEÚencode)r   s   &r   Úencode_textr      s   € Ü×Ñ §¡¨+Ó!6Õ6Ð6r   Úu   Ë˜u   Ë‡u   Ë†u   Ë™u   Ë�u   Ë›u   Ëšu   Ëœu   â€¢u   â€ u   â€¡u   â€¦u   â€”u   â€“u   Æ’u   â�„u   â€¹u   â€ºu   âˆ’u   â€°u   â€žu   â€œu   â€�u   â€˜u   â€™u   â€šu   â„¢u   ï¬�u   ï¬‚u   Å�u   Å’u   Å u   Å¸u   Å½u   Ä±u   Å‚u   Å“u   Å¡u   Å¾u   â‚¬c               ó    € V ^8„  d   QhRRRR/# )r
   Úbr   r   r   r   )r   s   "r   r   r   N   s   € ÷ Jñ J�5ð J˜Sñ Jr   c                óæ   € V R \        \        P                  4       \        P                  8X  d,   V \        \        P                  4      R  P                  R4      # RP	                  R V  4       4      # )Nr   Ú c              3  ó`   "  € T F$  p\         P                  V\        V4      4      x € K&  	  R # 5i©N)ÚPDFDocEncodingÚgetÚchr)Ú.0Úbytes   & r   Ú	<genexpr>Údecode_text.<locals>.<genexpr>R   s$   é € ÐIÁq¸t”~×)Ñ)¨$´°D³	×:Ð:Ãqùs   ‚,.)Úlenr   r   ÚdecodeÚjoin)r   s   &r   Údecode_textr+   N   s\   € ØÐ	#Œ3Œv×"Ñ"Ó#Ð$¬×(;Ñ(;Ô;Ø””V×(Ñ(Ó)Ð+Ð,×3Ñ3°KÓ@Ð@à�w‰wÑIÁqÓIÓIÐIr   c                  ó   € ] tR t^UtRtRtR# )ÚPdfFormatErrorzXAn error that probably indicates a syntactic or semantic error in the
PDF file structurer   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__Ú__static_attributes__r   r   r   r-   r-   U   s   † ñó 	r   r-   c               ó$   € V ^8„  d   QhRRRRRR/# )r
   Ú	conditionÚboolÚerror_messager   r   ÚNoner   )r   s   "r   r   r   \   s!   € ÷ ,ñ , dð ,¸3ð ,À4ñ ,r   c                ó,   € V '       g   \        V4      hR # r    )r-   )r5   r7   s   &&r   Úcheck_format_conditionr:   \   s   € ßÜ˜]Ó+Ð+ñ r   c                  ó,   € ] tR t^at$ R]R&   R]R&   RtR# )ÚIndirectReferenceTupleÚintÚ	object_idÚ
generationr   N)r.   r/   r0   r1   Ú__annotations__r3   r   r   r   r<   r<   a   s   ‡ ØƒNØ‡Or   r<   c                  óR   € ] tR t^ftR R ltR R ltR R ltR R ltR	 R
 ltRt	R# )ÚIndirectReferencec               ó   € V ^8„  d   QhRR/# ©r
   r   r   r   )r   s   "r   r   ÚIndirectReference.__annotate__g   s   € ÷ 7ñ 7˜ñ 7r   c                	ó:   € V P                    R V P                   R2# )Ú z R©r>   r?   ©Úselfs   &r   Ú__str__ÚIndirectReference.__str__g   s   € Ø—.‘.Ð!  4§?¡?Ð"3°2Ð6Ð6r   c               ó   € V ^8„  d   QhRR/# ©r
   r   r   r   )r   s   "r   r   rE   j   s   € ÷ 1ñ 1˜5ñ 1r   c                	ó@   € V P                  4       P                  R 4      # ©úus-ascii)rK   r   rI   s   &r   Ú	__bytes__ÚIndirectReference.__bytes__j   s   € Ø�|‰|‹~×$Ñ$ ZÓ0Ð0r   c               ó    € V ^8„  d   QhRRRR/# ©r
   ÚotherÚobjectr   r6   r   )r   s   "r   r   rE   m   s   € ÷ Yñ Y˜Fð Y tñ Yr   c                	óÞ   € V P                   VP                   Jd   R # \        V\        4      '       g   Q hVP                  V P                  8H  ;'       d    VP                  V P                  8H  # ©F)Ú	__class__Ú
isinstancerB   r>   r?   ©rJ   rV   s   &&r   Ú__eq__ÚIndirectReference.__eq__m   sS   € Ø�>‰> §¡Ó0ÙÜ˜%Ô!2×3Ò3Ð3Ð3Ø�‰ $§.¡.Ñ0×XÐX°U×5EÑ5EÈÏÉÑ5XÐXr   c               ó    € V ^8„  d   QhRRRR/# rU   r   )r   s   "r   r   rE   s   s   € ÷ #ñ #˜Fð # tñ #r   c                	ó   € W8X  * # r    r   r\   s   &&r   Ú__ne__ÚIndirectReference.__ne__s   s   € ØÒ"Ð"r   c               ó   € V ^8„  d   QhRR/# ©r
   r   r=   r   )r   s   "r   r   rE   v   s   € ÷ 7ñ 7˜#ñ 7r   c                	óD   € \        V P                  V P                  34      # r    )Úhashr>   r?   rI   s   &r   Ú__hash__ÚIndirectReference.__hash__v   s   € Ü�T—^‘^ T§_¡_Ð5Ó6Ð6r   r   N)
r.   r/   r0   r1   rK   rR   r]   ra   rg   r3   r   r   r   rB   rB   f   s!   † õ7õ1õYõ#÷7ñ 7r   rB   c                  ó"   € ] tR t^ztR R ltRtR# )ÚIndirectObjectDefc               ó   € V ^8„  d   QhRR/# rD   r   )r   s   "r   r   ÚIndirectObjectDef.__annotate__{   s   € ÷ 9ñ 9˜ñ 9r   c                	ó:   € V P                    R V P                   R2# )rG   z objrH   rI   s   &r   rK   ÚIndirectObjectDef.__str__{   s   € Ø—.‘.Ð!  4§?¡?Ð"3°4Ð8Ð8r   r   N)r.   r/   r0   r1   rK   r3   r   r   r   rj   rj   z   s   † ÷9ñ 9r   rj   c                  óv   € ] tR t^tR R ltR R ltR R ltR R ltR	 R
 ltR R lt	R R lt
R R ltRtR# )Ú	XrefTablec               ó   € V ^8„  d   QhRR/# ©r
   r   r8   r   )r   s   "r   r   ÚXrefTable.__annotate__€   s   € ÷ 	 ñ 	 ˜$ñ 	 r   c                	óP   € / V n         / V n        ^ R/V n        RV n        ^ V n        R# )r   i   FN)Úexisting_entriesÚnew_entriesÚdeleted_entriesÚreading_finishedÚ_max_object_idrI   s   &r   Ú__init__ÚXrefTable.__init__€   s8   € àð 	Ôð ð 	Ôð !" 5˜zˆÔØ %ˆÔØˆÖr   c               ó$   € V ^8„  d   QhRRRRRR/# )r
   Úkeyr=   Úvalueútuple[int, int]r   r8   r   )r   s   "r   r   rs   ‹   s!   € ÷ *ñ *˜sð *¨?ð *¸tñ *r   c                	óÎ   € V P                   '       d   W P                  V&   MW P                  V&   WP                  8”  d   Wn        WP                  9   d   V P                  V R # R # r    )rx   rv   ru   ry   rw   ©rJ   r}   r~   s   &&&r   Ú__setitem__ÚXrefTable.__setitem__‹   s[   € Ø× × Ð Ø$)×Ñ˜SÒ!à).×!Ñ! #Ñ&Ø×$Ñ$Ô$Ø"%ÔØ×&Ñ&Ô&Ø×$Ñ$ SÒ)ñ 'r   c               ó    € V ^8„  d   QhRRRR/# )r
   r}   r=   r   r   r   )r   s   "r   r   rs   •   s   € ÷ .ñ .˜sð . ñ .r   c                	ór   €  V P                   V,          #   \         d    T P                  T,          u # i ; ir    )rv   ÚKeyErrorru   ©rJ   r}   s   &&r   Ú__getitem__ÚXrefTable.__getitem__•   s8   € ð	.Ø×#Ñ# CÕ(Ð(øÜô 	.Ø×(Ñ(¨Õ-Ò-ð	.ús   ‚ •6µ6c               ó    € V ^8„  d   QhRRRR/# )r
   r}   r=   r   r8   r   )r   s   "r   r   rs   ›   s   € ÷ "ñ "˜sð " tñ "r   c                	óŒ  € WP                   9   d?   V P                   V,          ^,          ^,           pV P                   V W P                  V&   R# WP                  9   d2   V P                  V,          ^,          ^,           pW P                  V&   R# WP                  9   d   V P                  V,          pR# RV R2p\        V4      h)é   z
object ID z+ cannot be deleted because it doesn't existN)rv   rw   ru   Ú
IndexError)rJ   r}   r?   Úmsgs   &&  r   Ú__delitem__ÚXrefTable.__delitem__›   s­   € Ø×"Ñ"Ô"Ø×)Ñ)¨#Õ.¨qÕ1°AÕ5ˆJØ× Ñ  Ð%Ø(2× Ñ  Ó%Ø×)Ñ)Ô)Ø×.Ñ.¨sÕ3°AÕ6¸Õ:ˆJØ(2× Ñ  Ó%Ø×(Ñ(Ô(Ø×-Ñ-¨cÕ2ŠJà˜s˜eÐ#NÐOˆCÜ˜S“/Ð!r   c               ó    € V ^8„  d   QhRRRR/# )r
   r}   r=   r   r6   r   )r   s   "r   r   rs   ©   s   € ÷ Gñ G ð G¨ñ Gr   c                	óJ   € WP                   9   ;'       g    WP                  9   # r    )ru   rv   r‡   s   &&r   Ú__contains__ÚXrefTable.__contains__©   s"   € Ø×+Ñ+Ñ+×FÐF¨s×6FÑ6FÑ/FÐFr   c               ó   € V ^8„  d   QhRR/# rd   r   )r   s   "r   r   rs   ¬   s   € ÷ 
ñ 
˜ñ 
r   c                	óú   € \        \        V P                  P                  4       4      \        V P                  P                  4       4      ,          \        V P
                  P                  4       4      ,          4      # r    )r(   Úsetru   Úkeysrv   rw   rI   s   &r   Ú__len__ÚXrefTable.__len__¬   s^   € ÜÜ�×%Ñ%×*Ñ*Ó,Ó-Ü�$×"Ñ"×'Ñ'Ó)Ó*õ+ä�$×&Ñ&×+Ñ+Ó-Ó.õ/ó
ð 	
r   c               ó   € V ^8„  d   QhRR/# )r
   r   zset[int]r   )r   s   "r   r   rs   ³   s   € ÷ )ñ )�hñ )r   c                	óè   € \        V P                  P                  4       4      \        V P                  P                  4       4      ,
          \        V P                  P                  4       4      ,          # r    )r—   ru   r˜   rw   rv   rI   s   &r   r˜   ÚXrefTable.keys³   sS   € ä�×%Ñ%×*Ñ*Ó,Ó-´°D×4HÑ4H×4MÑ4MÓ4OÓ0PÕPÜ�× Ñ ×%Ñ%Ó'Ó(õ)ð 	)r   c               ó    € V ^8„  d   QhRRRR/# )r
   Úfú	IO[bytes]r   r=   r   )r   s   "r   r   rs   ¸   s   € ÷ %ñ %�yð % Sñ %r   c                	óX  € \        \        V P                  P                  4       4      \        V P                  P                  4       4      ,          4      p\        V P                  4      pVP                  4       pVP                  R 4       V'       Ed   Rp\        V4       F$  w  rgVe   V^,           V8X  d   TpK  VRV pW&R p M	  Tp. pVP                  RV^ ,          \        V4      3,          4       V F—  p	W�P                  9   d,   VP                  RV P                  V	,          ,          4       K>  VP                  ^ 4      p
\        Wš8H  RV	 RV
 24        V^ ,          pVP                  RW°P                  V	,          3,          4       K™  	  EK  V#   \         d    ^ p LBi ; i)s   xref
Ns   %d %d
s   %010d %05d n 
z*expected the next deleted object ID to be z, instead found s   %010d %05d f 
)Úsortedr—   rv   r˜   rw   ÚtellÚwriteÚ	enumerater(   Úpopr:   r�   )rJ   rŸ   r˜   Údeleted_keysÚ	startxrefÚprevÚindexr}   Úcontiguous_keysr>   Úthis_deleted_object_idÚnext_in_linked_lists   &&          r   r¤   ÚXrefTable.write¸   s’  € Ü”c˜$×*Ñ*×/Ñ/Ó1Ó2´S¸×9MÑ9M×9RÑ9RÓ9TÓ5UÕUÓVˆÜ˜d×2Ñ2Ó3ˆØ—F‘F“Hˆ	Ø	�‰�	Ôßˆdà#ˆDÜ'¨žo‘
�Ø’< 4¨!¥8¨s¤?Ø’Dà&*¨6¨E l�OØ ˜<�DÙñ .ð #'�Ø�Ø�G‰G�J /°!Õ"4´c¸/Ó6JÐ!KÕKÔLÛ,�	Ø× 0Ñ 0Ô0Ø—G‘GÐ.°×1AÑ1AÀ)Õ1LÕLÖMà-9×-=Ñ-=¸aÓ-@Ð*Ü*Ø!Ñ;ØDÀYÀKð P)Ø)?Ð(@ðBôð
0Ø.:¸1­oÐ+ð —G‘GØ*Ø.×0DÑ0DÀYÕ0OÐPõQöô -ð$ Ðøô &ô 0Ø./Ò+ð0ús   Å	FÆF)Æ(F))ry   rw   ru   rv   rx   N)r.   r/   r0   r1   rz   r‚   rˆ   r�   r“   r™   r˜   r¤   r3   r   r   r   rp   rp      s0   † õ	 õ*õ.õ"õGõ
õ)÷
%ñ %r   rp   c                  óè   € ] tR t^àt$ R]R&   R R ltR R ltR R ltR	 R
 ltR R lt	]
R R l4       t]! ]! ^!^4      4      R U u0 uF  p \        V 4      kK  	  up ,
          tR R ltRtR# u up i )ÚPdfNamer   Únamec               ó    € V ^8„  d   QhRRRR/# )r
   r±   zPdfName | bytes | strr   r8   r   )r   s   "r   r   ÚPdfName.__annotate__ã   s   € ÷ 0ñ 0Ð2ð 0°tñ 0r   c                	óÀ   € \        V\        4      '       d   VP                  V n        R# \        V\        4      '       d	   Wn        R# VP	                  R 4      V n        R# )rQ   N)r[   r°   r±   r   r   )rJ   r±   s   &&r   rz   ÚPdfName.__init__ã   s<   € Ü�dœG×$Ò$ØŸ	™	ˆDŽIÜ˜œe×$Ò$ØŽIàŸ™ JÓ/ˆDŽIr   c               ó   € V ^8„  d   QhRR/# rD   r   )r   s   "r   r   r³   ë   s   € ÷ ,ñ ,˜Sñ ,r   c                	ó8   € V P                   P                  R 4      # rP   )r±   r)   rI   s   &r   Úname_as_strÚPdfName.name_as_strë   s   € Ø�y‰y×Ñ 
Ó+Ð+r   c               ó    € V ^8„  d   QhRRRR/# rU   r   )r   s   "r   r   r³   î   s   € ÷  ñ  ˜Fð   tñ  r   c                	ó�   € \        V\        4      ;'       d"    VP                  V P                  8H  ;'       g    WP                  8H  # r    )r[   r°   r±   r\   s   &&r   r]   ÚPdfName.__eq__î   s:   € ä�uœgÓ&×BÐB¨5¯:©:¸¿¹Ñ+B÷ ð  à—i‘iÑð	 r   c               ó   € V ^8„  d   QhRR/# rd   r   )r   s   "r   r   r³   ó   s   € ÷ ñ ˜#ñ r   c                	ó,   € \        V P                  4      # r    )rf   r±   rI   s   &r   rg   ÚPdfName.__hash__ó   s   € Ü�D—I‘I‹Ðr   c               ó   € V ^8„  d   QhRR/# rD   r   )r   s   "r   r   r³   ö   s   € ÷ ?ñ ?˜#ñ ?r   c                	ó`   € V P                   P                   R \        V P                  4       R2# )Ú(Ú))rZ   r.   Úreprr±   rI   s   &r   Ú__repr__ÚPdfName.__repr__ö   s)   € Ø—.‘.×)Ñ)Ð*¨!¬D°·±«OÐ+<¸AÐ>Ð>r   c               ó    € V ^8„  d   QhRRRR/# )r
   Údatar   r   r°   r   )r   s   "r   r   r³   ú   s   € ÷ 3ñ 3 5ð 3¨Wñ 3r   c                	ó8   € V ! \         P                  V4      4      # r    )Ú	PdfParserÚinterpret_name)ÚclsrÈ   s   &&r   Úfrom_pdf_streamÚPdfName.from_pdf_streamù   s   € á”9×+Ñ+¨DÓ1Ó2Ð2r   z#%/()<>[]{}c               ó   € V ^8„  d   QhRR/# rN   r   )r   s   "r   r   r³   ÿ   s   € ÷ ñ ˜5ñ r   c                	óÊ   € \        R 4      pV P                   F>  pW P                  9   d   VP                  V4       K&  VP	                  RV,          4       K@  	  \        V4      # )ó   /s   #%02X)Ú	bytearrayr±   Úallowed_charsÚappendÚextendr   )rJ   Úresultr   s   &  r   rR   ÚPdfName.__bytes__ÿ   sM   € Ü˜4“ˆØ—”ˆAØ×&Ñ&Ô&Ø—‘˜aÖ à—‘˜h¨�lÖ+ñ	 ô
 �V‹}Ðr   )r±   N)r.   r/   r0   r1   r@   rz   r¸   r]   rg   rÅ   ÚclassmethodrÍ   r—   ÚrangeÚordrÓ   rR   r3   )Úcs   0r   r°   r°   à   sn   ‡ Ø
ƒKõ0õ,õ õ
õ?ð ô3ó ð3ñ ™˜b #›Ó'¹=Ó*I¹=°a¬3¨q®6¹=Ñ*IÕI€M÷ñ ùò +Js   ÁA/r°   c                  ó"   € ] tR tRtR R ltRtR# )ÚPdfArrayi	  c               ó   € V ^8„  d   QhRR/# rN   r   )r   s   "r   r   ÚPdfArray.__annotate__
  s   € ÷ Dñ D˜5ñ Dr   c                	óN   € R RP                  R V  4       4      ,           R,           # )s   [ ó    c              3  ó8   "  € T F  p\        V4      x € K  	  R # 5ir    )Úpdf_repr)r$   Úxs   & r   r&   Ú%PdfArray.__bytes__.<locals>.<genexpr>  s   é € Ð ;±d°¤¨!§ ³dùs   ‚s    ])r*   rI   s   &r   rR   ÚPdfArray.__bytes__
  s!   € Ø�t—y‘yÑ ;±dÓ ;Ó;Õ;¸eÕCÐCr   r   N)r.   r/   r0   r1   rR   r3   r   r   r   rÝ   rÝ   	  s   † ÷Dñ Dr   rÝ   c                  ó:   € ] tR tRtR R ltR R ltR R ltRtR	# )
ÚPdfDicti  c               ó$   € V ^8„  d   QhRRRRRR/# )r
   r}   r   r~   r   r   r8   r   )r   s   "r   r   ÚPdfDict.__annotate__  s!   € ÷ 1ñ 1˜sð 1¨3ð 1°4ñ 1r   c                	ó~   € VR 8X  d#   \         P                  P                  WV4       R# W VP                  R4      &   R# )rÈ   rQ   N)ÚcollectionsÚUserDictÚ__setattr__r   r�   s   &&&r   rî   ÚPdfDict.__setattr__  s0   € Ø�&Œ=Ü× Ñ ×,Ñ,¨T¸Ö>à+0�—‘˜JÓ'Ó(r   c               ó    € V ^8„  d   QhRRRR/# )r
   r}   r   r   zstr | time.struct_timer   )r   s   "r   r   rê     s   € ÷ ñ ˜sð Ð'=ñ r   c                	ó   €  WP                  R 4      ,          p\        T\        4      '       d   \        T4      pTP                  R4      '       Ed   TP                  R4      '       d
   TR,          pRp\        T4      ^8”  dL   T^,          p\        TR,          4      ^<,          p\        T4      ^8”  d   T\        TR,          4      ,          pRR\        T4      ^,
           p\        P                  ! TR\        T4      ^,            T4      pTR
9   dK   X^<,          pTR	8X  d
   TR,          p\        P                  ! \        P                  ! T4      T,           4      pT#   \         d   p\        T4      ThRp?ii ; i)rQ   NÚDatezD::r
   NNÚZ:é   é   N:é   é   Nz%Y%m%d%H%M%SÚ+)rø   Ú-éÿÿÿÿ)r   r†   ÚAttributeErrorr[   r   r+   ÚendswithÚ
startswithr(   r=   ÚtimeÚstrptimeÚgmtimeÚcalendarÚtimegm)rJ   r}   r~   ÚeÚrelationshipÚoffsetr   s   &&     r   Ú__getattr__ÚPdfDict.__getattr__  s;  € ð	-ØŸ™ JÓ/Õ0ˆEô �eœU×#Ò#Ü Ó&ˆEØ�<‰<˜×ÓØ×Ñ ×%Ò%Ø˜b�	�àˆLÜ�5‹z˜BŒØ$ R�y�Ü˜U 5�\Ó*¨RÕ/�Ü�u“: ”?Øœc %¨¥,Ó/Õ/�Fà#Ð$4¤c¨%£j°1¥nÐ5ˆFÜ—M’M %Ð(9¬#¨f«+¸­/Ð":¸FÓCˆEØ˜zÔ)Ø˜"•�Ø 3Ô&Ø˜b•L�FÜŸš¤H§O¢O°EÓ$:¸VÕ$CÓD�Øˆøô- ô 	-Ü  Ó%¨1Ð,ûð	-ús   ‚E! Å!E=Å,E8Å8E=c               ó   € V ^8„  d   QhRR/# rN   r   )r   s   "r   r   rê   0  s   € ÷ ñ ˜5ñ r   c                	óP  € \        R 4      pV P                  4        Fl  w  r#Vf   K  \        V4      pVP                  R4       VP                  \	        \        V4      4      4       VP                  R4       VP                  V4       Kn  	  VP                  R4       \	        V4      # )ó   <<ó   
rá   s   
>>)rÒ   Úitemsrã   rÕ   r   r°   )rJ   Úoutr}   r~   s   &   r   rR   ÚPdfDict.__bytes__0  s€   € Ü˜ÓˆØŸ*™*ž,‰JˆCØŠ}ÙÜ˜U“OˆEØ�J‰J�uÔØ�J‰J”uœW S›\Ó*Ô+Ø�J‰J�tÔØ�J‰J�uÖñ 'ð 	�
‰
�7ÔÜ�S‹zÐr   r   N)r.   r/   r0   r1   rî   r  rR   r3   r   r   r   rè   rè     s   † õ1õ÷6ñ r   rè   c                  ó.   € ] tR tRtR R ltR R ltRtR# )Ú	PdfBinaryi>  c               ó    € V ^8„  d   QhRRRR/# )r
   rÈ   zlist[int] | bytesr   r8   r   )r   s   "r   r   ÚPdfBinary.__annotate__?  s   € ÷ ñ Ð.ð °4ñ r   c                	ó   € Wn         R # r    ©rÈ   )rJ   rÈ   s   &&r   rz   ÚPdfBinary.__init__?  s   € ØŽ	r   c               ó   € V ^8„  d   QhRR/# rN   r   )r   s   "r   r   r  B  s   € ÷ Bñ B˜5ñ Br   c                	óT   € R RP                  R V P                   4       4      ,          # )s   <%s>r   c              3  ó4   "  € T F  pR V,          x € K  	  R# 5i)s   %02XNr   ©r$   r   s   & r   r&   Ú&PdfBinary.__bytes__.<locals>.<genexpr>C  s   é € Ð!A±y°! '¨A§+¢+³yùs   ‚)r*   rÈ   rI   s   &r   rR   ÚPdfBinary.__bytes__B  s    € Ø˜Ÿ™Ñ!A°t·y²yÓ!AÓAÕAÐAr   r  N)r.   r/   r0   r1   rz   rR   r3   r   r   r   r  r  >  s   † õ÷Bñ Br   r  c                  óH   € ] tR tRtR R lt]P                  3R R lltRtR# )Ú	PdfStreamiF  c               ó$   € V ^8„  d   QhRRRRRR/# )r
   Ú
dictionaryrè   Úbufr   r   r8   r   )r   s   "r   r   ÚPdfStream.__annotate__G  s!   € ÷ ñ  7ð °ð ¸4ñ r   c                	ó   € Wn         W n        R # r    )r  r   )rJ   r  r   s   &&&r   rz   ÚPdfStream.__init__G  s   € Ø$ŒØŽr   c               ó    € V ^8„  d   QhRRRR/# )r
   Ú
max_lengthr=   r   r   r   )r   s   "r   r   r!  K  s   € ÷ +ñ + ð +¸uñ +r   c                	óJ  €  V P                   R ,          pTR8X  dS   \        P                  ! 4       pTP                  T P                  T4      pTP                  '       d   Rp\        T4      hT# R\        T4       R2p\        T4      h  \         d    T P                  u # i ; i)s   Filters   FlateDecodezDecompressed data too largezstream filter z unknown/unsupported)
r  r†   r   ÚzlibÚdecompressobjÚ
decompressÚunconsumed_tailÚ
ValueErrorrÄ   ÚNotImplementedError)rJ   r%  ÚfilterÚdobjÚ	plaintextrŽ   s   &&    r   r)   ÚPdfStream.decodeK  sš   € ð	Ø—_‘_ YÕ/ˆFð �^Ô#Ü×%Ò%Ó'ˆDØŸ™¨¯©°*Ó=ˆIØ×#×#Ð#Ø3�Ü  “oÐ%ØÐà"¤4¨£< .Ð0DÐEˆCÜ% cÓ*Ð*øô ô 	Ø—8‘8ŠOð	ús   ‚B ÂB"Â!B")r   r  N)	r.   r/   r0   r1   rz   r   Ú	SAFEBLOCKr)   r3   r   r   r   r  r  F  s   † õð (1×':Ñ':÷ +ó +r   r  c               ó    € V ^8„  d   QhRRRR/# )r
   rä   r   r   r   r   )r   s   "r   r   r   \  s   € ÷ ñ �ð ˜ñ r   c                ón  € V R J d   R# V RJ d   R# V f   R# \        V \        \        \        \        34      '       d   \        V 4      # \        V \        \        34      '       d   \        V 4      P                  R4      # \        V \        P                  4      '       d5   R\        P                  ! RV 4      P                  R4      ,           R,           # \        V \        4      '       d   \        \        V 4      4      # \        V \        4      '       d   \        \        V 4      4      # \        V \        4      '       d   \        \!        V 4      4      # \        V \
        4      '       dG   V P#                  R	R
4      p V P#                  RR4      p V P#                  RR4      p RV ,           R,           # \        V 4      # )Ts   trueFs   falses   nullrQ   s   (D:z%Y%m%d%H%M%SZó   )ó   \s   \\ó   (ó   \(s   \))r[   r°   rè   rÝ   r  r   r=   Úfloatr   r   rþ   Ústruct_timeÚstrftimeÚdictÚlistrã   r   Úreplace)rä   s   &r   rã   rã   \  sB  € ØˆDƒyÙØ	
ˆe‹ÙØ	
ŠÙÜ	�Aœ¤¬(´IÐ>×	?Ò	?Ü�Q‹xˆÜ	�AœœU�|×	$Ò	$Ü�1‹v�}‰}˜ZÓ(Ð(Ü	�A”t×'Ñ'×	(Ò	(ØœŸš o°qÓ9×@Ñ@ÀÓLÕLÈtÕSÐSÜ	�A”t×	Ò	Ü”W˜Q“ZÓ Ð Ü	�A”t×	Ò	Ü”X˜a“[Ó!Ð!Ü	�A”s×	Ò	Üœ A›Ó'Ð'Ü	�A”u×	Ò	à�I‰I�e˜WÓ%ˆØ�I‰I�d˜FÓ#ˆØ�I‰I�d˜FÓ#ˆØ�a�x˜$�Ðä�Q‹xˆr   c                  ó  € ] tR tRtRtRpR R lltR R ltR R	 ltR
 R ltR R lt	R R lt
R R ltR R ltR R ltR R ltR R ltRqR R lltR R ltR R ltR  R! lt]R" R# l4       tR$ R% ltRqR& R' lltR(tR)tR*tR+t]R,,           t]R-,           tR.tR/t]],           ],           t ]!PD                  ! ]R0,           ],           R1,           ] ,           R2,           ] ,           R3,           ] ,           R4,           ],           R5,           ]!PF                  4      t$]!PD                  ! ]R0,           ],           R6,           ] ,           R2,           ] ,           R3,           ] ,           R4,           ],           ]!PF                  4      t%R7 R8 lt&RqR9 R: llt']!PD                  ! ]4      t(]!PD                  ! ]R;,           ],           R<,           4      t)]!PD                  ! ]R=,           4      t*]!PD                  ! ]R>,           ],           4      t+],R? R@ l4       t-]!PD                  ! RA4      t.],RrRB RC ll4       t/]!PD                  ! ]RD,           ],           R<,           4      t0]!PD                  ! ]RE,           ],           R<,           4      t1]!PD                  ! ]RF,           ],           R<,           4      t2]!PD                  ! ]RG,           ],           R<,           4      t3]!PD                  ! ]RH,           ],           R<,           4      t4]!PD                  ! ]RI,           4      t5]!PD                  ! ]RJ,           4      t6]!PD                  ! ]RK,           ],           RL,           4      t7]!PD                  ! ]RM,           4      t8]!PD                  ! ]RN,           ],           RN,           ],           RO,           ],           R<,           4      t9]!PD                  ! ]RN,           ],           RN,           ],           RP,           ],           R<,           4      t:]!PD                  ! ]RQ,           ],           R<,           4      t;]!PD                  ! RR],           RS,           ] ,           RT,           4      t<]!PD                  ! ]RU,           4      t=]!PD                  ! ]RV,           ],           R<,           4      t>],RsRW RX ll4       t?]!PD                  ! RY4      t@/ RZR[bR\R]bR^R_bR`RabRbRcbRRRRbR<R<bRdRdb]A! RZ4      R[b]A! R\4      R]b]A! R^4      R_b]A! R`4      Rab]A! Rb4      Rcb]A! RR4      RRb]A! R<4      R<b]A! Rd4      RdbtB],Re Rf l4       tC]!PD                  ! ]Rg,           ] ,           4      tD]!PD                  ! ]R3,           ],           R3,           ],           ],           4      tE]!PD                  ! Rh4      tFRi Rj ltGRtRk Rl lltHRqRm Rn lltIRotJR# )urÊ   iy  zpBased on
https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/PDF32000_2008.pdf
Supports PDF up to 1.4
Nc               ó0   € V ^8„  d   QhRRRRRRRRR	R
RR/# )r
   Úfilenamez
str | NonerŸ   zIO[bytes] | Noner   zbytes | bytearray | NoneÚstart_offsetr=   Úmoder   r   r8   r   )r   s   "r   r   ÚPdfParser.__annotate__  sF   € ÷ 3ñ 3àð3ð ð3ð &ð	3ð
 ð3ð ð3ð 
ñ3r   c                	óX  € V'       d   V'       d   R p\        V4      hWn        W0n        W n        W@n        RV n        RV n        Ve   Vf   \        W4      ;V n        pRV n        VeI   V P                  V4      V n        RV n        V'       g$   \        VR4      '       d   VP                  V n        / V n        V  V  V  V  V P                  '       d    V P                  4        M{^ ;V n        V n        \#        4       V n        RV n        \#        4       V n        RV n        \#        4       V n        . V n        . V n        RV n        RV n        / V n        \9        4       V n        RV P:                  n        V'       d   V P?                  4        R# R#   \         d    T P                  4        h i ; i)z4specify buf or f or filename, but not both buf and fFNTr±   ) ÚRuntimeErrorr@  r   rŸ   rA  Úshould_close_bufÚshould_close_fileÚopenÚget_buf_from_fileÚhasattrr±   Úcached_objectsÚread_pdf_infor-   ÚcloseÚfile_size_totalÚfile_size_thisrè   ÚrootÚroot_refÚinfoÚinfo_refÚpage_tree_rootÚpagesÚ
orig_pagesÚ	pages_refÚlast_xref_section_offsetÚtrailer_dictrp   Ú
xref_tablerx   Úseek_end)rJ   r@  rŸ   r   rA  rB  rŽ   s   &&&&&& r   rz   ÚPdfParser.__init__  sl  € ÷ —1ØHˆCÜ˜sÓ#Ð#Ø ŒØFIŒØŒØ(ÔØ %ˆÔØ!&ˆÔØÒ A¢IÜ˜hÓ-Ð-ˆDŒF�QØ%)ˆDÔ"ØŠ=Ø×-Ñ-¨aÓ0ˆDŒHØ$(ˆDÔ!ß¤¨¨6× 2Ò 2Ø !§¡�”Ø<>ˆÔÙÙÙÙØ�8�8ˆ8ðØ×"Ñ"Õ$ð
 :;Ð:ˆDÔ  4Ô#6Ü›	ˆDŒIØ ˆDŒMÜ›	ˆDŒIØ ˆDŒMÜ")£)ˆDÔØ24ˆDŒJØ79ˆDŒOØ!ˆDŒNØ,0ˆDÔ)Ø24ˆDÔÜ'›kˆDŒOØ+/ˆ�‰Ô(ßØ�M‰MŽOñ øô# "ô Ø—
‘
”Øðús   ÃF ÆF)c               ó   € V ^8„  d   QhRR/# )r
   r   r   r   )r   s   "r   r   rC  ´  s   € ÷ ñ ˜4ñ r   c                	ó   € V # r    r   rI   s   &r   Ú	__enter__ÚPdfParser.__enter__´  s   € Øˆr   c               ó    € V ^8„  d   QhRRRR/# )r
   ÚargsrW   r   r8   r   )r   s   "r   r   rC  ·  s   € ÷ ñ ˜fð ¨ñ r   c                	ó&   € V P                  4        R # r    )rM  )rJ   rb  s   &*r   Ú__exit__ÚPdfParser.__exit__·  s   € Ø�
‰
Žr   c               ó   € V ^8„  d   QhRR/# rr   r   )r   s   "r   r   rC  º  s   € ÷ ñ ˜tñ r   c                	óF   € V P                  4        V P                  4        R # r    )Ú	close_bufr[  rI   s   &r   Ústart_writingÚPdfParser.start_writingº  s   € Ø�‰ÔØ�‰Žr   c               ó   € V ^8„  d   QhRR/# rr   r   )r   s   "r   r   rC  ¾  s   € ÷ 
ñ 
˜4ñ 
r   c                	óx  € \        V P                  \        4      '       dO   V P                  P                  4        \        P
                  P                  R 8X  d   ^ RIpVP                  4        MD\        V P                  \        P                  4      '       d   V P                  P                  4        RV n        R# )ÚpypyN)r[   r   Ú
memoryviewÚreleaseÚsysÚimplementationr±   ÚgcÚcollectÚmmaprM  )rJ   rr  s   & r   rh  ÚPdfParser.close_buf¾  sp   € Ü�d—h‘h¤
×+Ò+Ø�H‰H×ÑÔÜ×!Ñ!×&Ñ&¨&Ô0Ûð —
‘
”øÜ˜Ÿ™¤$§)¡)×,Ò,Ø�H‰H�N‰NÔØˆŽr   c               ó   € V ^8„  d   QhRR/# rr   r   )r   s   "r   r   rC  Ê  s   € ÷ ñ �tñ r   c                	óÔ   € V P                   '       d   V P                  4        V P                  e8   V P                  '       d$   V P                  P	                  4        R V n        R # R # R # r    )rF  rh  rŸ   rG  rM  rI   s   &r   rM  ÚPdfParser.closeÊ  sI   € Ø× × Ð Ø�N‰NÔØ�6‰6Ò $×"8×"8Ð"8Ø�F‰F�L‰LŒNØˆDŽFñ #9Ñr   c               ó   € V ^8„  d   QhRR/# rr   r   )r   s   "r   r   rC  Ñ  s   € ÷ $ñ $˜$ñ $r   c                	óz   € V P                   f   Q hV P                   P                  ^ \        P                  4       R # r    )rŸ   ÚseekÚosÚSEEK_ENDrI   s   &r   r[  ÚPdfParser.seek_endÑ  s(   € Ø�v‰vÒ!Ð!Ð!Ø�‰�‰�A”r—{‘{Ö#r   c               ó   € V ^8„  d   QhRR/# rr   r   )r   s   "r   r   rC  Õ  s   € ÷ $ñ $˜dñ $r   c                	ó\   € V P                   f   Q hV P                   P                  R4       R # )Ns	   %PDF-1.4
)rŸ   r¤   rI   s   &r   Úwrite_headerÚPdfParser.write_headerÕ  s"   € Ø�v‰vÒ!Ð!Ð!Ø�‰�‰�]Ö#r   c               ó    € V ^8„  d   QhRRRR/# )r
   r   r   r   r8   r   )r   s   "r   r   rC  Ù  s   € ÷ *ñ *˜sð * tñ *r   c                	ó€   € V P                   f   Q hV P                   P                  RV R2P                  4       4       R # )Nz% Ú
)rŸ   r¤   r   )rJ   r   s   &&r   Úwrite_commentÚPdfParser.write_commentÙ  s3   € Ø�v‰vÒ!Ð!Ð!Ø�‰�‰�r˜!˜˜B�Z×&Ñ&Ó(Ö)r   c               ó   € V ^8„  d   QhRR/# )r
   r   rB   r   )r   s   "r   r   rC  Ý  s   € ÷ ñ Ð0ñ r   c                	óî  € V P                   f   Q hV P                  4        V P                  V P                   P                  4       4      V n        V P                  ^ 4      V n        V P                  4        V P                  V P                  \        R4      V P
                  R7       V P                  V P
                  \        R4      \        V P                  4      V P                  R7       V P                  # )Nó   Catalog)ÚTypeÚPagesó   Pages)r‹  ÚCountÚKids)rŸ   Údel_rootÚnext_object_idr£   rQ  rW  Úrewrite_pagesÚ	write_objr°   r(   rU  rI   s   &r   Úwrite_catalogÚPdfParser.write_catalogÝ  s²   € Ø�v‰vÒ!Ð!Ð!Ø�‰ŒØ×+Ñ+¨D¯F©F¯K©K«MÓ:ˆŒØ×,Ñ,¨QÓ/ˆŒØ×ÑÔØ�‰�t—}‘}¬7°:Ó+>ÀdÇnÁnˆÔUØ�‰Ø�N‰NÜ˜Ó"Ü�d—j‘j“/Ø—‘ð	 	ô 	
ð �}‰}Ðr   c               ó   € V ^8„  d   QhRR/# rr   r   )r   s   "r   r   rC  ì  s   € ÷ ñ ˜tñ r   c                	ó  € . p\        V P                  4       Fä  w  r#V P                  V,          pV P                  VP                   VP                  V\        R 4      ,          4       W0P                  9  d   Kb  / pVP                  4        F  w  rgWuVP                  4       &   K  	  V P                  VR&   V P                  ! R/ VB p\        V P                  4       F  w  ršW£8X  g   K  W€P                  V	&   K  	  Kæ  	  V F  p. pV'       g   K  W¼9  g   K  VP                  V4       V P                  V,          pVP                  V P                  9   d   V P                  VP                   VP                  R R4      pK|  	  . V n        R# )s   ParentÚParentNr    )r¥   rV  rK  rZ  r>   rÔ   r°   rU  r  r¸   rW  Ú
write_pager"   )rJ   Úpages_tree_nodes_to_deleteÚiÚpage_refÚ	page_infoÚstringified_page_infor}   r~   Únew_page_refÚjÚcur_page_refÚpages_tree_node_refÚprocessed_refsÚpages_tree_nodes   &             r   r’  ÚPdfParser.rewrite_pagesì  sT  € Ø%'Ð"Ü$ T§_¡_Ö5‰KˆAØ×+Ñ+¨HÕ5ˆIØ—‘ × 2Ñ 2Ð3Ø&×-Ñ-¨i¼À	Ó8JÕ.KÔLØŸz™zÔ)áà$&Ð!Ø'Ÿo™oÖ/‘
�à;@ c§o¡oÓ&7Ó8ñ 0ð /3¯n©nÐ! (Ñ+ØŸ?š?ÑIÐ3HÑIˆLÜ#,¨T¯Z©ZÖ#8‘�ØÖ+à$0—J‘J˜q“Mó $9ñ 6ó& $>ÐØˆNß%Ñ%Ð*=Ö*SØ×%Ñ%Ð&9Ô:Ø"&×"5Ñ"5Ð6IÕ"J�Ø&×0Ñ0°D·O±OÔCØŸ™Ð(;×(EÑ(EÐFØ&5×&9Ñ&9¸)ÀTÓ&JÒ#ñ $>ð ˆŽr   c               ó    € V ^8„  d   QhRRRR/# )r
   Únew_root_refúIndirectReference | Noner   r8   r   )r   s   "r   r   rC    s   € ÷ 
ñ 
Ø4ð
à	ñ
r   c                	óh  € V P                   f   Q hV'       d   V P                  4        Wn        V P                  '       d"   V P	                  R V P                  4      V n        V P                  P                  V P                   4      p\        V P                  4      pRV P                  RV/pV P                  e   V P                  VR&   V P                  '       d   V P
                  VR&   W n	        V P                   P                  R\        \        V4      4      ,           RV,          ,           4       R # )Nó   Rootó   Sizeó   Prevó   Infos   trailer
s   
startxref
%d
%%%%EOF)rŸ   r�  rQ  rR  r“  rS  rZ  r¤   r(   rX  r   rè   )rJ   r§  Ú
start_xrefÚnum_entriesrY  s   &&   r   Úwrite_xref_and_trailerÚ PdfParser.write_xref_and_trailer  sì   € ð �v‰vÒ!Ð!Ð!ßØ�M‰MŒOØ(ŒMØ�9�9ˆ9Ø ŸN™N¨4°·±Ó;ˆDŒMØ—_‘_×*Ñ*¨4¯6©6Ó2ˆ
Ü˜$Ÿ/™/Ó*ˆà�T—]‘]Ø�[ð0
ˆð ×(Ñ(Ò4Ø$(×$AÑ$AˆL˜Ñ!Ø�9�9ˆ9Ø$(§M¡MˆL˜Ñ!Ø(2Ô%Ø�‰�‰ØÜ”G˜LÓ)Ó*õ+à)¨JÕ6õ7ö	
r   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r
   Úrefzint | IndirectReference | NoneÚobjsr   Údict_objr   rB   r   )r   s   "r   r   rC  %  s,   € ÷ :ñ :Ø1ð:Ø:=ð:ØKNð:à	ñ:r   c                	óÚ   € \        V\        4      '       d   V P                  V,          MTpR V9  d   \        R4      VR &   RV9  d   V P                  VR&   V P
                  ! V.VO5/ VB # )r‹  ó   Pager˜  )r[   r=   rU  r°   rW  r“  )rJ   r³  r´  rµ  Úobj_refs   &&*, r   r™  ÚPdfParser.write_page%  se   € ô &0°´S×%9Ò%9�$—*‘*˜S–/¸sˆØ˜Ô!Ü& wÓ/ˆH�VÑØ˜8Ô#Ø!%§¡ˆH�XÑØ�~Š~˜gÐ9¨Ò9°Ñ9Ð9r   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r
   r³  r¨  r´  r   rµ  r   rB   r   )r   s   "r   r   rC  /  s,   € ÷ ñ Ø+ðØ47ðØEHðà	ñr   c                	ó�  € V P                   f   Q hV P                   pVf!   V P                  VP                  4       4      pM3VP                  4       VP                  3V P                  VP
                  &   VP                  \        \        V!  4      4       VP                  RR 4      pVe   \        V4      VR&   V'       d   VP                  \        V4      4       V F  pVP                  \        V4      4       K  	  Ve4   VP                  R4       VP                  V4       VP                  R4       VP                  R4       V# )NÚstreamÚLengths   stream
s   
endstream
s   endobj
)rŸ   r‘  r£   r?   rZ  r>   r¤   r   rj   r¦   r(   rã   )rJ   r³  r´  rµ  rŸ   r¼  Úobjs   &&*,   r   r“  ÚPdfParser.write_obj/  sý   € ð �v‰vÒ!Ð!Ð!Ø�F‰FˆØŠ;Ø×%Ñ% a§f¡f£hÓ/‰Cà./¯f©f«h¸¿¹Ð-GˆD�O‰O˜CŸM™MÑ*Ø	�‰”Ô'¨Ñ-Ó.Ô/Ø—‘˜h¨Ó-ˆØÒÜ!$ V£ˆH�XÑßØ�G‰G”H˜XÓ&Ô'ÛˆCØ�G‰G”H˜S“MÖ"ñ àÒØ�G‰G�KÔ Ø�G‰G�FŒOØ�G‰GÐ$Ô%Ø	�‰�ÔØˆ
r   c               ó   € V ^8„  d   QhRR/# rr   r   )r   s   "r   r   rC  G  s   € ÷ ;ñ ;˜$ñ ;r   c                	ó¸   € V P                   f   R # V P                  V P                   P                   V P                  V P                  R,          P                   R # )Nr�  )rQ  rZ  r>   rP  rI   s   &r   r�  ÚPdfParser.del_rootG  s@   € Ø�=‰=Ò ÙØ�O‰O˜DŸM™M×3Ñ3Ð4Ø�O‰O˜DŸI™I hÕ/×9Ñ9Ò:r   c               ó    € V ^8„  d   QhRRRR/# )r
   rŸ   r    r   zbytes | mmap.mmapr   )r   s   "r   r   rC  N  s   € ÷ 	ñ 	˜Yð 	Ð+<ñ 	r   c                	ó  € \        V R 4      '       d   V P                  4       # \        V R4      '       d   V P                  4       #  \        P                  ! V P	                  4       ^ \        P
                  R7      #   \         d     R# i ; i)Ú	getbufferÚgetvalue)Úaccessr   )rJ  rÅ  rÆ  rt  ÚfilenoÚACCESS_READr+  )rŸ   s   &r   rI  ÚPdfParser.get_buf_from_fileM  sj   € ä�1�k×"Ò"Ø—;‘;“=Ð Ü�Q˜
×#Ò#Ø—:‘:“<ÐðÜ—y’y §¡£¨Q´t×7GÑ7GÔHÐHøÜô Úðús   Á4A; Á;B
Â	B
c               ó   € V ^8„  d   QhRR/# rr   r   )r   s   "r   r   rC  Y  s   € ÷ "(ñ "(˜tñ "(r   c                	ó~  € V P                   f   Q h\        V P                   4      V n        V P                  V P                  ,
          V n        V P                  4        \        V P                  P                  R4      R JR4       V P                  R,          V n	        V P                  f   Q hV P                  P                  RR 4      V n
        \        V P                  V P                  4      4      V n        V P                  f   \        4       V n        M)\        V P                  V P                  4      4      V n        \        RV P                  9   R4       \        V P                  R,          R8H  R4       \        V P                  P                  R4      R JR	4       \        \        V P                  R,          \         4      R
4       V P                  R,          V n        V P"                  f   Q hV P                  V P"                  4      V n        V P'                  4       V n        V P(                  R,          V n        R # )Nrª  zRoot is missingr­  ó   Typez/Type missing in RootrŠ  z/Type in Root is not /Catalogr�  z/Pages missing in Rootz+/Pages in Root is not an indirect reference:NNN)r   r(   rN  rA  rO  Úread_trailerr:   rY  r"   rQ  rS  rè   Úread_indirectrP  rR  r[   rB   rW  rT  Úlinearize_page_treerU  rV  rI   s   &r   rL  ÚPdfParser.read_pdf_infoY  s¿  € Ø�x‰xÒ#Ð#Ð#Ü" 4§8¡8›}ˆÔØ"×2Ñ2°T×5FÑ5FÕFˆÔØ×ÑÔÜØ×Ñ×!Ñ! 'Ó*°$Ð6Ð8Iô	
ð ×)Ñ)¨'Õ2ˆŒØ�}‰}Ò(Ð(Ð(Ø×)Ñ)×-Ñ-¨g°tÓ<ˆŒÜ˜D×.Ñ.¨t¯}©}Ó=Ó>ˆŒ	Ø�=‰=Ò Ü›	ˆD�Iä × 2Ñ 2°4·=±=Ó AÓBˆDŒIÜ˜w¨$¯)©)Ñ3Ð5LÔMÜØ�I‰I�gÕ *Ñ,Ð.Mô	
ô 	Ø�I‰I�M‰M˜(Ó#¨4Ð/Ð1Iô	
ô 	Ü�t—y‘y Õ*Ô,=Ó>Ø9ô	
ð Ÿ™ 8Õ,ˆŒØ�~‰~Ò)Ð)Ð)Ø"×0Ñ0°·±Ó@ˆÔØ×-Ñ-Ó/ˆŒ
ð Ÿ*™* Q�-ˆŽr   c               ó    € V ^8„  d   QhRRRR/# )r
   r  z
int | Noner   rB   r   )r   s   "r   r   rC  }  s   € ÷ ñ  Zð Ð;Lñ r   c                	ó’   € \        V P                  P                  ^,           ^ 4      pVe   V^ 3V P                  VP                  &   V# )rŒ   )rB   rZ  ry   r>   )rJ   r  Ú	references   && r   r‘  ÚPdfParser.next_object_id}  sA   € ä% d§o¡o×&DÑ&DÀqÕ&HÈ!ÓLˆ	ØÒØ4:¸A°;ˆD�O‰O˜I×/Ñ/Ñ0ØÐr   s   [][()<>{}/%]s$   [][()<>{}/%\000\011\012\014\015\040]s   [\000\011\012\014\015\040]s#   [\000\011\012\014\015\0400-9a-fA-F]ó   *ó   +s   [\000\011\014\040]*s   [\r\n]+s   trailers   <<(.*>>)s	   startxrefs   ([0-9]+)s   %%EOFó   $s	   <<(.*?>>)c               ó   € V ^8„  d   QhRR/# rr   r   )r   s   "r   r   rC  ¬  s   € ÷ ?ñ ?˜dñ ?r   c                	óü  € V P                   f   Q h\        V P                   4      R,
          pWP                  8  d   V P                  pV P                  P	                  V P                   V4      p\        VR JR4       TpV'       d@   TpV P                  P	                  V P                   VP                  4       ^,           4      pKG  V'       g   TpVf   Q hVP                  ^4      p\        VP                  ^4      4      V n	        V P                  V4      V n        \        4       V n        V P                  V P                  R7       RV P                  9   d%   V P                  V P                  R,          4       R # R # )Né @  ztrailer end not found©Úxref_section_offsetr¬  )r   r(   rA  Úre_trailer_endÚsearchr:   ÚstartÚgroupr=   rX  Úinterpret_trailerrY  rp   rZ  Úread_xref_tableÚread_prev_trailer)rJ   Úsearch_start_offsetÚmÚ
last_matchÚtrailer_datas   &    r   rÎ  ÚPdfParser.read_trailer¬  s.  € Ø�x‰xÒ#Ð#Ð#Ü! $§(¡(›m¨eÕ3ÐØ×!2Ñ!2Ô2Ø"&×"3Ñ"3ÐØ×Ñ×&Ñ& t§x¡xÐ1DÓEˆÜ˜q¨˜}Ð.EÔFàˆ
ßØˆJØ×#Ñ#×*Ñ*¨4¯8©8°Q·W±W³YÀµ^ÓDŠAßØˆAØŠ}Ðˆ}Ø—w‘w˜q“zˆÜ(+¨A¯G©G°A«J«ˆÔ%Ø ×2Ñ2°<Ó@ˆÔÜ#›+ˆŒØ×Ñ°×1NÑ1NÐÔOØ�d×'Ñ'Ô'Ø×"Ñ" 4×#4Ñ#4°WÕ#=Ö>ñ (r   c               ó$   € V ^8„  d   QhRRRRRR/# )r
   rÝ  r=   Úprocessed_offsetszlist[int] | Noner   r8   r   )r   s   "r   r   rC  Ã  s$   € ÷ 8ñ 8Ø#&ð8Ø;Kð8à	ñ8r   c                	óÐ  € V P                   f   Q hVf   . p \        W9  R4       V P                  VR7      pV P                  P	                  V P                   W3R,            4      p\        VR JR4       Vf   Q hVP                  ^4      p\        \        VP                  ^4      4      V8H  R4       V P                  V4      pRV9  d   R # VP                  V4       VR,          pKÑ  )Nztrailer loop foundrÜ  rÛ  zprevious trailer not foundzGxref section offset in previous trailer doesn't match what was expectedr¬  )	r   r:   rã  Úre_trailer_prevrß  rá  r=   râ  rÔ   )rJ   rÝ  rë  Útrailer_offsetræ  rè  rY  s   &&&    r   rä  ÚPdfParser.read_prev_trailerÃ  sø   € ð �x‰xÒ#Ð#Ð#ØÒ$Ø "ÐØÜ"Ø#Ñ<Ð>Rôð "×1Ñ1Ø$7ð 2ó ˆNð ×$Ñ$×+Ñ+Ø—‘˜¸5Õ*@ÐAóˆAô # 1¨D =Ð2NÔOØ’=Ð �=ØŸ7™7 1›:ˆLÜ"Ü�A—G‘G˜A“J“Ð#6Ñ6ð2ôð
  ×1Ñ1°,Ó?ˆLØ˜lÔ*ÙØ×$Ñ$Ð%8Ô9Ø".¨wÕ"7Òr   s   /([!-$&'*-.0-;=?-Z\\^-z|~]+)(?=r4  r
  s   >>c               ó    € V ^8„  d   QhRRRR/# )r
   rè  r   r   zdict[bytes, Any]r   )r   s   "r   r   rC  ì  s   € ÷ ñ ¨Uð Ð7Gñ r   c           	     	óš  € / p^ p V P                   P                  W4      pV'       ga   V P                  P                  W4      p\        VRJ;'       d    VP	                  4       \        V4      8H  R\        WR 4      ,           4       MfV P                  VP                  ^4      4      p\        V\        4      '       g   Q hV P                  WP	                  4       4      w  rgWbV&   Vf   MTpKê  \        RV9   ;'       d    \        VR,          \        4      R4       \        RV9   ;'       d    \        VR,          \        4      R4       V# )r   Nz+name not found in trailer, remaining data: r«  z&/Size not in trailer or not an integerrª  z1/Root not in trailer or not an indirect reference)Úre_nameÚmatchÚre_dict_endr:   Úendr(   rÄ   rË   rá  r[   r   Ú	get_valuer=   rB   )rÌ   rè  Útrailerr  ræ  r}   r~   Úvalue_offsets   &&      r   râ  ÚPdfParser.interpret_trailerë  s*  € àˆØˆØØ—‘×!Ñ! ,Ó7ˆAßØ—O‘O×)Ñ)¨,Ó?�Ü&Ø˜T�M×BÐB a§e¡e£g´°\Ó1BÑ&BØAÜ˜<¨Ð0Ó1õ2ôð
 Ø×$Ñ$ Q§W¡W¨Q£ZÓ0ˆCÜ˜c¤5×)Ò)Ð)Ð)Ø"%§-¡-°¿e¹e»gÓ"FÑˆEØ �C‰LØÒ#ØØ!ŠFÜØ�wÑ×DÐD¤:¨g°gÕ.>ÄÓ#DØ4ô	
ô 	Ø�wÑ×RÐR¤:¨g°gÕ.>Ô@QÓ#RØ?ô	
ð ˆr   s   ([^#]*)(#([0-9a-fA-F]{2}))?c               ó$   € V ^8„  d   QhRRRRRR/# )r
   Úrawr   Úas_textr6   r   zstr | bytesr   )r   s   "r   r   rC    s!   € ÷ 
ñ 
 ð 
°ð 
À+ñ 
r   c                	ó�  € R pV P                   P                  V4       F‚  pVP                  ^4      '       dR   W4P                  ^4      \        P	                  VP                  ^4      P                  R4      4      ,           ,          pKk  W4P                  ^4      ,          pK„  	  V'       d   VP                  R4      # \        V4      # )r   rQ   zutf-8)Úre_hashes_in_nameÚfinditerrá  rÒ   Úfromhexr)   r   )rÌ   rû  rü  r±   ræ  s   &&&  r   rË   ÚPdfParser.interpret_name  s�   € àˆØ×&Ñ&×/Ñ/°Ö4ˆAØ�w‰w�q�zŠzØŸ™ ›
¤Y×%6Ñ%6°q·w±w¸q³z×7HÑ7HÈÓ7TÓ%UÕUÕU’àŸ™ ›
Õ"’ñ	 5÷
 Ø—;‘;˜wÓ'Ð'ä˜“;Ðr   s   null(?=s   true(?=s   false(?=s   ([-+]?[0-9]+)(?=s)   ([-+]?([0-9]+\.[0-9]*|[0-9]*\.[0-9]+))(?=s   \[ó   ]s   <(s   *)>r7  s   ([-+]?[0-9]+)s   R(?=s   obj(?=s	   endobj(?=r6  s	   %[^\r\n]*s   )*s   stream\r?\ns   endstream(?=c          
     ó,   € V ^8„  d   QhRRRRRRRRRR	/# )
r
   rÈ   ú*bytes | bytearray | memoryview | mmap.mmapr  r=   Úexpect_indirectr¨  Úmax_nestingr   ztuple[Any, int | None]r   )r   s   "r   r   rC  K  sC   € ÷ I"ñ I"à8ðI"ð ðI"ð 2ð	I"ð
 ðI"ð 
 ñI"r   c                	óš  € V^ 8X  d   R# V P                   P                  W4      pV'       d   VP                  4       pV P                  P                  W4      pV'       Ed   \	        \        VP                  ^4      4      ^ 8„  R4       \	        \        VP                  ^4      4      ^ 8¬  R4       \	        VRJ ;'       g@    V\        \        VP                  ^4      4      \        VP                  ^4      4      4      8H  R4       V P                  WP                  4       V^,
          R7      w  rgVf   VR3# V P                  P                  W4      p\	        VRJR4       Vf   Q hWeP                  4       3# \	        V'       * R4       V P                  P                  W4      pV'       d›   \	        \        VP                  ^4      4      ^ 8„  R4       \	        \        VP                  ^4      4      ^ 8¬  R	4       \        \        VP                  ^4      4      \        VP                  ^4      4      4      VP                  4       3# V P                  P                  W4      pV'       Ed   VP                  4       p/ pV P                  P                  W4      pTp	V'       g³   V	f   Q hV P                  P                  W4      pV'       g   R
p
\        V
4      h\        V P!                  VP                  ^4      4      4      pV P                  WP                  4       V^,
          R7      w  rÉWÈV&   V	f   VR3# V P                  P                  W4      pKº  VP                  4       p	V P"                  P                  W4      pV'       dØ   VP%                  R4      pVe   \'        V\
        4      '       g   RV R2p
\        V
4      h\)        WP                  4       VP                  4       V,            4      pV P*                  P                  WP                  4       V,           4      p\	        VRJR4       Vf   Q hVP                  4       p	\-        \/        V4      V4      V	3# \/        V4      V	3# V P0                  P                  W4      pV'       d¡   VP                  4       p. pV P2                  P                  W4      pTp	V'       gY   V	f   Q hV P                  WV^,
          R7      w  rÉVP5                  V4       V	f   VR3# V P2                  P                  W4      pK`  WõP                  4       3# V P6                  P                  W4      pV'       d   RVP                  4       3# V P8                  P                  W4      pV'       d   RVP                  4       3# V P:                  P                  W4      pV'       d   RVP                  4       3# V P                  P                  W4      pV'       d:   \        V P!                  VP                  ^4      4      4      VP                  4       3# V P<                  P                  W4      pV'       d+   \        VP                  ^4      4      VP                  4       3# V P>                  P                  W4      pV'       d+   \A        VP                  ^4      4      VP                  4       3# V PB                  P                  W4      pV'       d‡   \E        R VP                  ^4       4       4      p\G        V4      ^,          ^8X  d   VP5                  \I        R4      4       \D        PK                  VPM                  R4      4      VP                  4       3# V PN                  P                  W4      pV'       d    V PQ                  WP                  4       4      # R\S        WV^ ,            4       2p
\        V
4      h)r   Nz<indirect object definition: object ID must be greater than 0z;indirect object definition: generation must be non-negativez2indirect object definition different than expected)r  z(indirect object definition end not foundz$indirect object definition not foundz;indirect object reference: object ID must be greater than 0z:indirect object reference: generation must be non-negativezkey must be a names   Lengthz&bad or missing Length in stream dict (rÃ   zstream end not foundTFc              3  ó6   "  € T F  qR 9   g   K  Vx € K  	  R# 5i)s   0123456789abcdefABCDEFNr   r  s   & r   r&   Ú&PdfParser.get_value.<locals>.<genexpr>È  s   é € ð #Ù%�aÐ.GÑ)G—’›:ùs   ‚�
ó   0rQ   zunrecognized object: )NN)*Ú
re_commentró  rõ  Úre_indirect_def_startr:   r=   rá  rB   rö  Úre_indirect_def_endÚre_indirect_referenceÚre_dict_startrô  rò  r-   r°   rË   Úre_stream_startr"   r[   r   Úre_stream_endr  rè   Úre_array_startÚre_array_endrÔ   Úre_nullÚre_trueÚre_falseÚre_intÚre_realr8  Úre_string_hexrÒ   r(   rÚ   r   r)   Úre_string_litÚget_literal_stringrÄ   )rÌ   rÈ   r  r  r  ræ  rW   Úobject_offsetrÖ   Úcurrent_offsetrŽ   r}   r~   Ú
stream_lenÚstream_dataÚresultsÚ
hex_strings   &&&&&            r   rö  ÚPdfParser.get_valueJ  sq  € ð ˜!ÔØÐØ�N‰N× Ñ  Ó.ˆßØ—U‘U“WˆFØ×%Ñ%×+Ñ+¨DÓ9ˆßˆ1Ü"Ü�A—G‘G˜A“J“ !Ñ#ØNôô #Ü�A—G‘G˜A“J“ 1Ñ$ØMôô #Ø 4Ð'÷ Gð GØ"Ü$¤S¨¯©°«£_´c¸!¿'¹'À!»*³oÓFñGàDô	ð %(§M¡MØ—e‘e“g¨;¸­?ð %2ó %Ñ!ˆFð Ò$Ø˜t�|Ð#Ø×'Ñ'×-Ñ-¨dÓBˆAÜ"Ø˜�ÐIôð ’=Ð �=ØŸ5™5›7�?Ð"ÜØÔÐ!Gô	
ð ×%Ñ%×+Ñ+¨DÓ9ˆßÜ"Ü�A—G‘G˜A“J“ !Ñ#ØMôô #Ü�A—G‘G˜A“J“ 1Ñ$ØLôô %¤S¨¯©°«£_´c¸!¿'¹'À!»*³oÓFÈÏÉËÐOÐOØ×Ñ×#Ñ# DÓ1ˆßˆ1Ø—U‘U“WˆFØ%'ˆFØ—‘×%Ñ% dÓ3ˆAØ)/ˆNßØ%Ò1Ð1Ð1Ø—K‘K×%Ñ% dÓ;�ßØ.�CÜ(¨Ó-Ð-Ü˜c×0Ñ0°·±¸³Ó<Ó=�Ø(+¯©ØŸ%™%›'¨{¸Q­ð )6ó )Ñ%�ð $�s‘Ø!Ò)Ø! 4˜<Ð'Ø—O‘O×)Ñ)¨$Ó?’ØŸU™U›WˆNØ×#Ñ#×)Ñ)¨$Ó?ˆAßØ#ŸZ™Z¨	Ó2�
ØÒ%¬Z¸
ÄC×-HÒ-HØBÀ:À,ÈaÐP�CÜ(¨Ó-Ð-Ü# D¯©«°1·5±5³7¸ZÕ3GÐ$HÓI�Ø×%Ñ%×+Ñ+¨D·%±%³'¸JÕ2FÓG�Ü& q° }Ð6LÔMØ’}Ð$�}Ø!"§¡£�Ü ¤¨£°+Ó>ÀÐNÐNÜ˜6“? NÐ2Ð2Ø×Ñ×$Ñ$ TÓ2ˆßØ—U‘U“WˆFØˆGØ× Ñ ×&Ñ& tÓ4ˆAØ#ˆNßØ%Ò1Ð1Ð1Ø(+¯©Ø°kÀAµoð )6ó )Ñ%�ð —‘˜uÔ%Ø!Ò)Ø" D˜=Ð(Ø×$Ñ$×*Ñ*¨4Ó@’ØŸE™E›GÐ#Ð#Ø�K‰K×Ñ˜dÓ+ˆßØ˜Ÿ™›�=Ð Ø�K‰K×Ñ˜dÓ+ˆßØ˜Ÿ™›�=Ð Ø�L‰L×Ñ˜tÓ,ˆßØ˜!Ÿ%™%›'�>Ð!Ø�K‰K×Ñ˜dÓ+ˆßÜ˜3×-Ñ-¨a¯g©g°a«jÓ9Ó:¸A¿E¹E»GÐCÐCØ�J‰J×Ñ˜TÓ*ˆßÜ�q—w‘w˜q“z“? A§E¡E£GÐ+Ð+Ø�K‰K×Ñ˜dÓ+ˆßä˜Ÿ™ ›Ó$ a§e¡e£gÐ-Ð-Ø×Ñ×#Ñ# DÓ1ˆßä"ñ #ØŸ7™7 1œ:ó#ó ˆJô �:‹ Õ" aÔ'à×!Ñ!¤# d£)Ô,Ü×$Ñ$ Z×%6Ñ%6°zÓ%BÓCÀQÇUÁUÃWÐLÐLØ×Ñ×#Ñ# DÓ1ˆßØ×)Ñ)¨$·±³Ó8Ð8à%¤d¨4¸À"½Ð+EÓ&FÐ%GÐHˆÜ˜SÓ!Ð!r   sF   (\\[nrtbf()\\])|(\\[0-9]{1,3})|(\\(\r\n|\r|\n))|(\r\n|\r|\n)|(\()|(\))ó   nr  ó   ró   ó   tó   	ó   bó   ó   fó   r5  c               ó$   € V ^8„  d   QhRRRRRR/# )r
   rÈ   r  r  r=   r   ztuple[bytes, int]r   )r   s   "r   r   rC  í  s$   € ÷ "ñ "Ø=ð"ØGJð"à	ñ"r   c                	ó¢  € ^ p\        4       pV P                  P                  W4       EF—  pVP                  WVP	                  4        4       VP                  ^4      '       d;   VP                  V P                  VP                  ^4      ^,          ,          4       EMVP                  ^4      '       d3   VP                  \        VP                  ^4      R,          ^4      4       MÈVP                  ^4      '       d   M°VP                  ^4      '       d   VP                  R4       M‡VP                  ^4      '       d   VP                  R4       V^,          pMUVP                  ^4      '       d?   V^ 8X  d   \        V4      VP                  4       3u # VP                  R4       V^,          pVP                  4       pEKš  	  Rp\        V4      h)r   :rŒ   NNr  r6  r4  zunfinished literal string)rÒ   Úre_lit_str_tokenrÿ  rÕ   rà  rá  Úescaped_charsrÔ   r=   r   rõ  r-   )rÌ   rÈ   r  Únesting_depthrÖ   ræ  rŽ   s   &&&    r   r  ÚPdfParser.get_literal_stringì  sG  € ð ˆÜ“ˆØ×%Ñ%×.Ñ.¨t×<ˆAØ�M‰M˜$¨¯©«	Ð2Ô3Ø�w‰w�q�zŠzØ—‘˜c×/Ñ/°·±¸³
¸1µÕ>Ö?Ø—‘˜—’Ø—‘œc !§'¡'¨!£*¨R¥.°!Ó4Õ5Ø—‘˜—’ØØ—‘˜—’Ø—‘˜eÕ$Ø—‘˜—’Ø—‘˜dÔ#Ø Õ"‘Ø—‘˜—’Ø  AÔ%Ü  ›=¨!¯%©%«'Ð1Ò1Ø—‘˜dÔ#Ø Õ"�Ø—U‘U“W‹Fñ% =ð& *ˆÜ˜SÓ!Ð!r   s   xrefs+   ([0-9]{10}) ([0-9]{5}) ([fn])( \r| \n|\r\n)c               ó    € V ^8„  d   QhRRRR/# )r
   rÝ  r=   r   r   )r   s   "r   r   rC    s   € ÷ ñ °3ð ¸3ñ r   c                	ó–  € V P                   f   Q hRpV P                  P                  V P                   WP                  ,           4      p\	        VR JR4       Vf   Q hVP                  4       p V P                  P                  V P                   V4      pV'       g   \	        VR4        V# RpVP                  4       p\        VP                  ^4      4      p\        VP                  ^4      4      p\        WUV,           4       FÁ  pV P                  P                  V P                   V4      p\	        VR JR4       Vf   Q hVP                  4       pVP                  ^4      R8H  pV'       d   Kk  \        VP                  ^4      4      p	\        VP                  ^4      4      V	3p
WpP                  9  g   K³  W P                  V&   KÃ  	  EK^  )NFzxref section start not foundTzxref subsection start not foundzxref entry not foundr*  )r   Úre_xref_section_startró  rA  r:   rõ  Úre_xref_subsection_startr=   rá  rÙ   Úre_xref_entryrZ  )rJ   rÝ  Úsubsection_foundræ  r  Úfirst_objectÚnum_objectsr›  Úis_freer?   Ú	new_entrys   &&         r   rã  ÚPdfParser.read_xref_table  s�  € Ø�x‰xÒ#Ð#Ð#Ø ÐØ×&Ñ&×,Ñ,Ø�H‰HÐ)×,=Ñ,=Õ=ó
ˆô 	˜q¨˜}Ð.LÔMØŠ}Ðˆ}Ø—‘“ˆØØ×-Ñ-×3Ñ3°D·H±H¸fÓEˆAßÜ&Ø$Ð&Gôð ð  ˆð  $ÐØ—U‘U“WˆFÜ˜qŸw™w q›z›?ˆLÜ˜aŸg™g a›j›/ˆKÜ˜<¸Õ)CÖD�Ø×&Ñ&×,Ñ,¨T¯X©X°vÓ>�Ü& q° }Ð6LÔMØ’}Ð$�}ØŸ™›�ØŸ'™' !›*¨Ñ,�ß‘wÜ!$ Q§W¡W¨Q£Z£�JÜ!$ Q§W¡W¨Q£Z£°*Ð =�IØ§¡Ö/Ø-6Ÿ™¨Ó*ô Er   c               ó$   € V ^8„  d   QhRRRRRR/# )r
   r³  rB   r  r=   r   r   r   )r   s   "r   r   rC  4  s"   € ÷ ñ Ð!2ð Àð Èsñ r   c                	óR  € V P                   V^ ,          ,          w  r4\        WA^,          8H  RV^,           RV^ ,           RV RV 24       V P                  f   Q hV P                  V P                  W0P                  ,           \        V!  VR7      ^ ,          pWPP                  V&   V# )r   zexpected to find generation z for object ID z) in xref table, instead found generation z at offset )r  r  )rZ  r:   r   rö  rA  rB   rK  )rJ   r³  r  r  r?   r~   s   &&&   r   rÏ  ÚPdfParser.read_indirect4  s·   € Ø!Ÿ_™_¨S°­VÕ4ÑˆÜØ˜a�&Ñ Ø*¨3¨q­6¨(°/À#ÀaÅ&Àð J/Ø/9¨l¸+ÀfÀXðOô	
ð
 �x‰xÒ#Ð#Ð#Ø—‘Ø�H‰HØ×&Ñ&Õ&Ü-¨sÑ3Ø#ð	 ó 
ð
 õˆð $)×Ñ˜CÑ Øˆr   c               ó    € V ^8„  d   QhRRRR/# )r
   ÚnodezPdfDict | Noner   zlist[IndirectReference]r   )r   s   "r   r   rC  E  s   € ÷ $ñ $Ø"ð$à	 ñ$r   c                	ó¢  € \        4       pVe   TpM?V P                  pV P                  e&   VP                  V P                  P                  4       \        VR,          R8H  R4       . p\        VR,          4      .pV'       dÌ   \        VR,          R 4      pVf   VP                  4        K1  \        VP                  V9  RV 24       VP                  VP                  4       V P                  V4      pVR,          R8X  d   VP                  V4       Kš  \        VR,          R8H  R4       VP                  \        VR,          4      4       KÓ  V# )NrÍ  r�  z%/Type of page tree node is not /Pagess   Kidsz6page tree contains a cyclic or duplicate reference to r·  rú   )r—   rT  rW  Úaddr>   r:   ÚiterÚnextr¦   rÏ  rÔ   )rJ   rA  Úprocessed_idsÚ	page_noderU  ÚstackÚkidÚ
kid_objects   &&      r   rÐ  ÚPdfParser.linearize_page_treeE  s*  € ô ›ˆØÒØ‰Ià×+Ñ+ˆIØ�~‰~Ò)Ø×!Ñ! $§.¡.×":Ñ":Ô;ÜØ�gÕ (Ñ*Ð,Sô	
ð ˆô �i Õ(Ó)Ð*ˆßÜ�u˜R•y $Ó'ˆCØŠ{Ø—	‘	”ÙÜ"Ø—‘ ]Ñ2ØHÈÈÐNôð ×Ñ˜cŸm™mÔ,Ø×+Ñ+¨CÓ0ˆJØ˜'Õ" gÔ-Ø—‘˜SÖ!ä&Ø˜wÕ'¨8Ñ3Ø;ôð —‘œT *¨WÕ"5Ó6Ö7Øˆr   )r   rK  rŸ   rO  rN  r@  rR  rS  rX  rV  rT  rU  rW  rP  rQ  rF  rG  rA  rY  rZ  )NNNr   Úrbr    rY   )Né„  )rM  )Kr.   r/   r0   r1   r2   rz   r_  rd  ri  rh  rM  r[  r�  r†  r”  r’  r°  r™  r“  r�  ÚstaticmethodrI  rL  r‘  Ú	delimiterÚdelimiter_or_wsÚ
whitespaceÚwhitespace_or_hexÚwhitespace_optionalÚwhitespace_mandatoryÚwhitespace_optional_no_nlÚnewline_onlyÚnewlineÚreÚcompileÚDOTALLrÞ  rí  rÎ  rä  Úre_whitespace_optionalrò  r  rô  rØ   râ  rþ  rË   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  rö  r.  rÚ   r/  r  r4  r5  r6  rã  rÏ  rÐ  r3   r   r   r   rÊ   rÊ   y  sC  † ñ÷
3õjõõõ
õõ$õ$õ*õõ÷>
õ4:õõ0;ð ô	ó ð	õ"(÷Hð !€IØ>€OØ/€JØ?ÐØ$ tÕ+ÐØ%¨Õ,Ðà 7ÐØ€LØ'¨,Õ6Ð9RÕR€GØ—Z’ZØØ
õ	à
õ	ð õ	ð õ		ð
 õ	ð õ	ð õ	ð õ	ð õ		ð õ
	ð õ	ð 	�	‰	ó€Nð —j’jØØ
õ	à
õ	ð õ	ð õ		ð
 õ	ð õ	ð õ	ð õ	ð õ		ð õ
	ð 	�	‰	ó€Oõ?÷.8ð<  ŸZšZÐ(;Ó<ÐØ�jŠjØØ
-õ	.à
õ	ð õ	ó€Gð —J’JÐ2°VÕ;Ó<€MØ—*’*Ð0°6Õ9Ð<OÕOÓP€Kàôó ðð< Ÿ
š
Ð#BÓCÐàö
ó ð
ð �jŠjÐ,¨{Õ:¸_ÕLÈuÕTÓU€GØ�jŠjÐ,¨{Õ:¸_ÕLÈuÕTÓU€GØ�zŠzÐ-°Õ<¸ÕNÐQVÕVÓW€HØ�ZŠZØÐ2Õ2°_ÕDÀuÕLó€Fð �jŠjØØ
7õ	8à
õ	ð õ	ó€Gð —Z’ZÐ 3°fÕ <Ó=€NØ—:’:Ð1°EÕ9Ó:€LØ—J’JØ˜fÕ$Ð'8Õ8¸7ÕBó€Mð —J’JÐ2°VÕ;Ó<€MØŸJšJØØ
õ	à
õ	ð õ	ð õ		ð
 õ	ð õ	ð õ	ó	Ðð ŸJšJØØ
õ	à
õ	ð õ	ð õ		ð
 õ	ð õ	ð õ	ó	Ðð Ÿ*š*Ø˜mÕ+¨oÕ=ÀÕEóÐð —’ØÐ#Õ# mÕ3°gÕ=ÀÕFó€Jð —j’jÐ!4°Õ!FÓG€OØ—J’JØÐ.Õ.°Õ@À5ÕHó€Mð öI"ó ðI"ðV —z’zØRóÐðØˆeðàˆeðð 	ˆeðð 	ˆeð	ð
 	ˆeðð 	ˆdðð 	ˆdðð 	ˆuðñ 	ˆD‹	�5ðñ 	ˆD‹	�5ðñ 	ˆD‹	�5ðñ 	ˆD‹	�5ðñ 	ˆD‹	�5ðñ 	ˆD‹	�4ðñ 	ˆD‹	�4ðñ  	ˆE‹
�Eð!€Mð& ô"ó ð"ð6 ŸJšJÐ':¸XÕ'EÈÕ'OÓPÐØ!ŸzšzØØ
õ	à
õ	ð õ	ð õ		ð
 õ	ó Ðð —J’JÐNÓO€Mõ÷B÷"$ó $r   rÊ   >   rt  r'  r  )*Ú
__future__r   Ú__lazy_modules__r  r   rì   rt  r|  rX  rp  rþ   r'  Útypingr   r   r   r   ÚTYPE_CHECKINGr   r   rí   r   r   Ú	_DictBaser   r!   r+   rE  r-   r:   r<   rB   rj   rp   r°   r<  rÝ   rè   r  r  rã   rÊ   r   r   r   Ú<module>ra     sÌ  ðÝ "â/Ð ã Û Û Û Û 	Û 	Û 
Û Û ß "å à€ßßà×$Ñ$ S¨5¥[°#Ð%5Õ6�Ià×$Ñ$€Iõ
7ð*Øˆ(ð*àˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð	*ð
 	ˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð*ð 	ˆ(ð*ð  	ˆ(ð!*ð" 	ˆ(ñ#*ð$ 	ˆ(ð%*ð& 	ˆ(ð'*ð( 	ˆ(ð)*ð* 	ˆ(ð+*ð, 	ˆ(ð-*ð. 	ˆ(ð/*ð0 	ˆ(ð1*ð2 	ˆ(ð3*ð4 	ˆ(ð5*ð6 	ˆ(ð7*ð8 	ˆ(ð9*ð: 	ˆ(ð;*ð< 	ˆ(ð=*ð> 	ˆ(ð?*ð@ 	ˆ(ðA*ðB 	ˆ(ðC*ðD 	ˆ(ñE*ðF 	ˆ(Øˆ(Øˆ(Øˆ(Øˆ(Øˆ(Øˆ(ñS*€õZJô	�\ô 	õ,ô
˜Zô ô
7Ð.ô 7ô(9Ð)ô 9÷
^ñ ^÷B&ñ &ôRDˆt�C�yô Dô
-ˆiô -÷`Bñ B÷+ñ +õ,÷:pó pr   