+
    �vj/c  ã            
       óp  € ^ RI t ^ RIt^ RIHt ^ RIHtHtHtHtH	t	H
t
HtHtHtHt ^ RIHt ^ RIHt ^ RIHt ^ RIHtHtHtHtHtHtHt ^ RIHt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- ^RI.H/t/H0t0 ^RI1H2t2H3t3H4t4H5t5 ^RI&H6t6H7t7H8t8 ^RI9H:t:H;t; ^RI<H=t= ]P|                  ! R4      t?]@! . R4O4      tA]'       d   ^RIBHCtC ^RIDHEtE RRRRRRRRRR/tFR  R! ltGR" R# ltH ! R$ R%]4      tIR5R& R' lltJR( R) ltK ! R* R+]-4      tL ! R, R-]L4      tMR. R/ ltN ! R0 R1]M4      tO ! R2 R3]M4      tPR# )6é    N)Ú	lru_cache)
ÚTYPE_CHECKINGÚAnyÚCallableÚDictÚ	GeneratorÚListÚOptionalÚPatternÚTupleÚUnion)Ú	normalize)Úwarn)ÚPDFPageAggregator)ÚLTCharÚLTComponentÚLTContainerÚLTCurveÚLTItemÚLTPageÚLTTextContainer)ÚPDFPageInterpreterÚ	PDFStackT)ÚPDFPage)Ú	PSLiteral)Úutils)ÚT_bboxÚT_numÚT_objÚ
T_obj_list)Ú	Container)ÚPDFStructTreeÚStructTreeMissing)ÚT_table_settingsÚTableÚTableFinderÚTableSettings)Údecode_textÚresolve_allÚresolve_and_decode)ÚMalformedPDFExceptionÚPdfminerException)ÚTextMapz^LT)Ú	PageImage)ÚPDFs   ËÎÌåzSimSun,Regulars   ºÚÌåzSimHei,Regulars   ¿¬Ìå_GB2312zSimKai,Regulars   ·ÂËÎ_GB2312zSimFang,Regulars   Á¥ÊézSimLi,Regularc                ó0   € V ^8„  d   QhR\         R\        /# )é   ÚfontnameÚreturn)ÚbytesÚstr)Úformats   "ÚS/var/www/html/daimler-pipeline/venv/lib/python3.14/site-packages/pdfplumber/page.pyÚ__annotate__r8   \   s   € ÷ *ñ *¤ð *¬3ñ *ó    c                 óÆ   € R V 9   d"   V P                  R 4      ^,           pV RV WR r2MRT r2\        P                  V\        V4      ^R 4      p\        V4      ^R V,           # )ó   +Nr9   éÿÿÿÿ)ÚindexÚCP936_FONTNAMESÚgetr5   )r2   Úsplit_atÚprefixÚsuffixÚ
suffix_news   &    r7   Úfix_fontname_bytesrD   \   sj   € ØˆxÔØ—>‘> $Ó'¨!Õ+ˆØ! ) 8Ð,¨h°yÐ.A‘à˜h�ä ×$Ñ$ V¬S°«[¸¸2Ð->Ó?€JÜˆv‹;�q˜Ð˜zÕ)Ð)r9   c                ót   € V ^8„  d   QhR\         \        \        3,          R\         \        \        3,          /# ©r1   Úkwargsr3   )r   r5   r   )r6   s   "r7   r8   r8   g   s*   € ÷ ñ ¤¤S¬# X¥ð ´4¼¼S¸µ>ñ r9   c           	      óš   € V P                  4        UUu/ uF)  w  rT\        V\        4      '       d   \        V4      MTbK+  	  upp# u uppi ©N)ÚitemsÚ
isinstanceÚlistÚtuple)rG   ÚkeyÚvalues   &  r7   Útuplify_list_kwargsrP   g   sH   € ð !Ÿ,™,œ.ôá(‰JˆCð 	œj¨´×5Ò5Œe�EŒl¸5Ò@Ù(òð ùó s   ”/Ac                   óÀ   a a€ ] tR t^nt oRt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V 3R
 llt
V3R lV 3R lltV3R lV 3R lltV3R ltRtVtV ;t# )Ú"PDFPageAggregatorWithMarkedContentzVExtract layout from a specific page, adding marked-content IDs to
objects where found.Nc                ó:   <€ V ^8„  d   QhRS[ RS[S[,          RR/# )r1   ÚtagÚpropsr3   N)r   r
   r   )r6   Ú__classdict__s   "€r7   r8   Ú/PDFPageAggregatorWithMarkedContent.__annotate__u   s'   ø€ ÷ !ñ !™Yð !©x¹	Õ/Bð !Èdñ !r9   c                ó¢   € \        VP                  4      V n        \        V\        4      '       d   RV9   d   VR,          V n        R# RV n        R# )z5Handle beginning of tag, setting current MCID if any.ÚMCIDN)r(   ÚnameÚcur_tagrK   ÚdictÚcur_mcid)ÚselfrT   rU   s   &&&r7   Ú	begin_tagÚ,PDFPageAggregatorWithMarkedContent.begin_tagu   s7   € ä" 3§8¡8Ó,ˆŒÜ�eœT×"Ò" v°¤Ø! &�MˆDŽMà ˆDŽMr9   c                ó   <€ V ^8„  d   QhRR/# ©r1   r3   N© )r6   rV   s   "€r7   r8   rW   }   s   ø€ ÷ ñ ˜ñ r9   c                ó"   € RV n         RV n        R# )z/Handle beginning of tag, clearing current MCID.N)r[   r]   ©r^   s   &r7   Úend_tagÚ*PDFPageAggregatorWithMarkedContent.end_tag}   s   € àˆŒØˆŽr9   c                ó   <€ V ^8„  d   QhRR/# rb   rc   )r6   rV   s   "€r7   r8   rW   ‚   s   ø€ ÷ 'ñ '˜dñ 'r9   c                óÀ   € V P                   P                  '       dB   V P                   P                  R,          pV P                  Vn        V P                  Vn        R# R# )zVAdd current MCID to what we hope to be the most recent object created
by pdfminer.six.Nr<   )Úcur_itemÚ_objsr]   Úmcidr[   rT   )r^   Úcur_objs   & r7   Útag_cur_itemÚ/PDFPageAggregatorWithMarkedContent.tag_cur_item‚   sC   € ð �=‰=××ÐØ—m‘m×)Ñ)¨"Õ-ˆGØŸ=™=ˆGŒLØŸ,™,ˆGŽKñ r9   c                ó    <€ V ^8„  d   QhRS[ /# ©r1   r3   )Úfloat)r6   rV   s   "€r7   r8   rW   �   s   ø€ ÷ ñ ©eñ r9   c                óH   <€ \         SV `  ! V/ VB pV P                  4        V# )z;Hook for rendering characters, adding the `mcid` attribute.)ÚsuperÚrender_charrn   )r^   ÚargsrG   ÚadvÚ	__class__s   &*, €r7   ru   Ú.PDFPageAggregatorWithMarkedContent.render_char�   s(   ø€ ä‰gÒ! 4Ð2¨6Ñ2ˆØ×ÑÔØˆ
r9   c                ó   <€ V ^8„  d   QhRR/# rb   rc   )r6   rV   s   "€r7   r8   rW   –   s   ø€ ÷ ñ ¨tñ r9   c                óH   <€ \         SV `  ! V/ VB  V P                  4        R# )z7Hook for rendering images, adding the `mcid` attribute.N)rt   Úrender_imagern   ©r^   rv   rG   rx   s   &*,€r7   r|   Ú/PDFPageAggregatorWithMarkedContent.render_image–   s!   ø€ ä‰Ò˜dÐ- fÒ-Ø×ÑÖr9   c                ó   <€ V ^8„  d   QhRR/# rb   rc   )r6   rV   s   "€r7   r8   rW   ›   s   ø€ ÷ ñ ¨Tñ r9   c                óH   <€ \         SV `  ! V/ VB  V P                  4        R# )zAHook for rendering lines and curves, adding the `mcid` attribute.N)rt   Ú
paint_pathrn   r}   s   &*,€r7   r�   Ú-PDFPageAggregatorWithMarkedContent.paint_path›   s!   ø€ ä‰Ò˜DÐ+ FÒ+Ø×ÑÖr9   c                óR   <€ V ^8„  d   Qh/ S[ S[,          ;R&   S[ S[,          ;R&   # )r1   r]   r[   )r
   Úintr5   )r6   rV   s   "€r7   r8   rW   n   s'   ø‡ ‚ ñ ‘s�mÑ"ñ	 ñ
 ‘c�]Ñ!ò r9   )r]   r[   rI   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r]   r[   r_   rf   rn   ru   r|   r�   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__Ú__classcell__©rx   rV   s   @@r7   rR   rR   n   sZ   ù‡ € ñð #€HØ!€G÷!ò !÷ð ÷
'ð '÷ó ÷ó ÷
ó ÷[ … r9   rR   c                ó<   € V ^8„  d   QhR\         R\        R\         /# )r1   Úbox_rawÚrotationr3   ©r   r   )r6   s   "r7   r8   r8   ¡   s!   € ÷  ñ  œFð  ¬eð  ¼Fñ  r9   c                 ó$  € \         ;QJ d    R  V  4       F  '       d   K   RM	  RM! R  V  4       4      '       g   \        RV  24      h\        V ^ ,          V ^,          34      w  r#\        V ^,          V ^,          34      w  rEVR9   d   WBWS3# W$W53# )c              3   óV   "  € T F  p\        V\        P                  4      x € K!  	  R # 5irI   )rK   ÚnumbersÚNumber©Ú.0Úxs   & r7   Ú	<genexpr>Ú!_normalize_box.<locals>.<genexpr>¦   s   é € Ð>±g°Œz˜!œWŸ^™^×,Ð,³gùs   ‚')FTz0Bounding box contains non-number coordinate(s): )éZ   i  )Úallr+   Úsorted)r�   r‘   Úx0Úx1Úy0Úy1s   &&    r7   Ú_normalize_boxr£   ¡   sŽ   € ÷
 ‹3Ñ>±gÓ>�3�3Š3Ñ>±gÓ>×>Ò>Ü#Ø>¸w¸iÐHó
ð 	
ô �W˜Q•Z ¨¥Ð,Ó-�F€BÜ�W˜Q•Z ¨¥Ð,Ó-�F€BØ�9ÔØ˜ÐÐà˜ÐÐr9   c                ó<   € V ^8„  d   QhR\         R\        R\         /# )r1   r�   Ú	mb_heightr3   r’   )r6   s   "r7   r8   r8   µ   s!   € ÷ 4ñ 4œð 4¬Eð 4´fñ 4r9   c                 ó0   € V w  r#rEW!V,
          WAV,
          3# rI   rc   )r�   r¥   rŸ   r¡   r    r¢   s   &&    r7   Ú_invert_boxr§   µ   s   € Ø�N€BˆBØ˜B• °¥NÐ3Ð3r9   c                   ó  a € ] tR t^ºt o ]P
                  R.,           tRtRtRFV 3R lR lltV 3R lR lt	]
V 3R lR	 l4       t]
V 3R
 lR l4       t]
V 3R lR l4       t]
V 3R lR l4       t]
V 3R lR l4       t]
V 3R lR l4       t]
V 3R lR l4       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RGV 3R lR lltRGV 3R  lR! lltRGV 3R" lR# lltRGV 3R$ lR% lltRGV 3R& lR' lltV 3R( lR) ltRHV 3R* lR+ lltV 3R, lR- ltV 3R. lR/ ltV 3R0 lR1 ltRIV 3R2 lR3 llt RJV 3R4 lR5 llt!RJV 3R6 lR7 llt"RJV 3R8 lR9 llt#V 3R: lR; lt$V 3R< lR= lt%RKV 3R> lR? llt&RGV 3R@ lRA llt'V 3RB lRC lt(V 3RD lt)REt*V t+R# )LÚPageÚ_layoutTNc                ó0   <€ V ^8„  d   QhRRRS[ RS[RS[/# )r1   Úpdfr/   Úpage_objÚpage_numberÚinitial_doctop)r   r„   r   )r6   rV   s   "€r7   r8   ÚPage.__annotate__¿   s3   ø€ ÷ *:ñ *:àð*:ñ ð*:ñ ð	*:ñ
 ñ*:r9   c                ól  a€ Wn         W n        SV n        W0n        W@n        RR V3R lllpV! R^ 4      pVR,          V n        \        V! R4      V P
                  4      pV^,          V^,          ,
          p\        Wx4      V n        R FV  p	V	SP                  9   g   K  \        \        V! V	4      V P
                  4      V4      p
\        W	P                  4       V
4       KX  	  RSP                  9  d   V P                  V n        V P                  V n        \        4       ! V P                  4      V n        R # )	Nc                ó<   € V ^8„  d   QhR\         R\        R\        /# )r1   rN   Údefaultr3   )r5   r   )r6   s   "r7   r8   Ú#Page.__init__.<locals>.__annotate__Ì   s!   € ÷ 	7ñ 	7œ#ð 	7¬ð 	7´sñ 	7r9   c                 ó\   <€ \        SP                  P                  V 4      4      pVf   V# T# rI   )r)   Úattrsr?   )rN   r³   rO   r­   s   && €r7   Úget_attrÚPage.__init__.<locals>.get_attrÌ   s+   ø€ Ü §¡× 2Ñ 2°3Ó 7Ó8ˆEØ#šm�7Ð6°Ð6r9   ÚRotateih  ÚMediaBoxÚCropBoxrI   )r»   ÚTrimBoxÚBleedBoxÚArtBox)r¬   Ú	root_pager­   r®   r¯   r‘   r£   r§   Úmediaboxr¶   ÚsetattrÚlowerÚcropboxÚbboxr   Ú_get_textmapÚget_textmap)r^   r¬   r­   r®   r¯   r·   Ú	_rotationÚmb_rawr¥   Úbox_nameÚbox_normalizeds   &&f&&      r7   Ú__init__ÚPage.__init__¿   sþ   ø€ ð ŒØŒØ ˆŒØ&ÔØ,Ô÷	7ò 	7ñ ˜X qÓ)ˆ	Ø! C�ˆŒä¡¨Ó 4°d·m±mÓDˆØ˜1•I  q¥	Õ)ˆ	ä# FÓ6ˆŒãDˆHØ˜8Ÿ>™>Ö)Ü!,Ü"¡8¨HÓ#5°t·}±}ÓEÀyó"�ô ˜Ÿn™nÓ.°Ö?ñ Eð ˜HŸN™NÔ*ØŸ=™=ˆDŒLð —M‘MˆŒ	ô %œ; t×'8Ñ'8Ó9ˆÖr9   c                ó   <€ V ^8„  d   QhRR/# rb   rc   )r6   rV   s   "€r7   r8   r°   ë   s   ø€ ÷ 'ñ '�tñ 'r9   c                óZ   € V P                  4        V P                  P                  4        R # rI   )Úflush_cacherÆ   Úcache_clearre   s   &r7   ÚcloseÚ
Page.closeë   s    € Ø×ÑÔØ×Ñ×$Ñ$Ö&r9   c                ó    <€ V ^8„  d   QhRS[ /# rq   ©r   )r6   rV   s   "€r7   r8   r°   ð   s   ø€ ÷ +ñ +‘uñ +r9   c                óX   € V P                   ^,          V P                   ^ ,          ,
          # )r1   ©rÄ   re   s   &r7   ÚwidthÚ
Page.widthï   ó   € à�y‰y˜�|˜dŸi™i¨�lÕ*Ð*r9   c                ó    <€ V ^8„  d   QhRS[ /# rq   rÔ   )r6   rV   s   "€r7   r8   r°   ô   s   ø€ ÷ +ñ +™ñ +r9   c                óX   € V P                   ^,          V P                   ^,          ,
          # )é   rÖ   re   s   &r7   ÚheightÚPage.heightó   rÙ   r9   c                óF   <€ V ^8„  d   QhRS[ S[S[S[3,          ,          /# rq   )r	   r   r5   r   )r6   rV   s   "€r7   r8   r°   ø   s!   ø€ ÷ ñ ¡¡T©#©s¨(¥^Õ 4ñ r9   c                óš   €  \        V P                  V 4       Uu. uF  qP                  4       NK  	  up# u upi   \         d    . u # i ; i)z-Return the structure tree for a page, if any.)r"   r¬   Úto_dictr#   )r^   Úelems   & r7   Ústructure_treeÚPage.structure_tree÷   sD   € ð	Ü/<¸T¿X¹XÀtÔ/LÓMÑ/L t—L‘L–NÑ/LÑMÐMùÒMøÜ ô 	ØŠIð	ús   ‚: š5²: µ: ºA
Á	A
c                ó    <€ V ^8„  d   QhRS[ /# rq   )r   )r6   rV   s   "€r7   r8   r°      s   ø€ ÷ ñ ™ñ r9   c                ó´  € \        V R 4      '       d   V P                  # \        V P                  P                  V P
                  V P                  P                  R7      p\        V P                  P                  V4      p VP                  V P                  4       TP                  4       T n        T P                  #   \         d   p\        T4      hRp?ii ; i)rª   )ÚpagenoÚlaparamsN)Úhasattrrª   rR   r¬   Úrsrcmgrr®   rè   r   Úprocess_pager­   Ú	Exceptionr,   Ú
get_result)r^   ÚdeviceÚinterpreterÚes   &   r7   ÚlayoutÚPage.layoutÿ   s®   € ä�4˜×#Ò#Ø—<‘<ÐÜ3Ø�H‰H×ÑØ×#Ñ#Ø—X‘X×&Ñ&ô
ˆô
 )¨¯©×)9Ñ)9¸6ÓBˆð	'Ø×$Ñ$ T§]¡]Ô3ð  &×0Ñ0Ó2ˆŒØ�|‰|Ðøô ô 	'Ü# AÓ&Ð&ûð	'ús   Â B< Â<CÃCÃCc                ó    <€ V ^8„  d   QhRS[ /# rq   ©r    )r6   rV   s   "€r7   r8   r°     s   ø€ ÷ ?ñ ?™
ñ ?r9   c                óø   a a€ R  V 3R lloR VV 3R llp\        S P                  P                  4      ;'       g    . p\        \	        W4      4      p\        S \        4      '       d   S P                  V4      # V# )c                ó€   € V ^8„  d   QhR\         \        \        3,          R\        R\         \        \        3,          /# )r1   ÚptÚrr3   )r   rr   r„   )r6   s   "r7   r8   Ú!Page.annots.<locals>.__annotate__  s3   € ÷ 	ñ 	œU¤5¬% <Õ0ð 	´Sð 	¼UÄ5Ì%À<Õ=Pñ 	r9   c                 ó¤   <€ V^Z,          p\        V4       F6  pV w  rEW2^,          8X  d   SP                  MSP                  pWVV,
          3p K8  	  V # )rœ   )Úranger×   rÝ   )r÷   rø   ÚturnsÚir™   ÚyÚcompr^   s   &&     €r7   Úrotate_pointÚ!Page.annots.<locals>.rotate_point  sJ   ø€ Ø˜•GˆEÜ˜5–\�Ø‘�Ø%&°!­)¤^�t—z’z¸¿¹�Ø �(�_’ñ "ð ˆIr9   c                ó0   € V ^8„  d   QhR\         R\         /# )r1   Úannotr3   )r   )r6   s   "r7   r8   rù     s   € ÷ /	ñ /	œð /	¤5ñ /	r9   c                 ót  <€ V R ,          w  rr4S! W3SP                   4      pS! W43SP                   4      pSP                  P                  p\        \	        . VOVO54      V4      w  r‰r«V P                  R/ 4      pRVP                  R4      RV P                  R4      RV P                  R4      /pVP                  4        F  w  rïVf   K   VP                  R4      WÞ&   K!  	  RSP                  RRRVRW{,
          RV
RWy,
          RSP                  V	,           RV	RVRW¨,
          RW¹,
          /pVP                  V4       RV 9   d   SV R&   V VR&   V#   \         d[     TP                  R	4      YÞ&    K´    \         d5    SP                  P                  '       d   h \        R
T RT R24         Kò  i ; ii ; i)ÚRectÚAÚuriÚURIÚtitleÚTÚcontentsÚContentszutf-8zutf-16zCould not decode z of annotation. z will be missing.r®   Úobject_typer  rŸ   r¡   r    r¢   ÚdoctopÚtopÚbottomr×   rÝ   ÚPÚdata)r‘   r¿   rÝ   r§   r£   r?   rJ   ÚdecodeÚUnicodeDecodeErrorr¬   Úraise_unicode_errorsr   r®   r¯   Úupdate)r  Ú_aÚ_bÚ_cÚ_dÚpt0Úpt1ÚrhrŸ   r  r    r  ÚaÚextrasÚkÚvÚparsedr   r^   s   &                €€r7   ÚparseÚPage.annots.<locals>.parse  sÃ  ø€ Ø" 6�]‰NˆB�BÙ ˜x¨¯©Ó7ˆCÙ ˜x¨¯©Ó7ˆCØ—‘×&Ñ&ˆBÜ"-¬n¸\¸s¸\ÀS¹\Ó.JÈBÓ"OÑˆB�Rà—	‘	˜#˜rÓ"ˆAà�q—u‘u˜U“|Ø˜Ÿ™ 3›Ø˜EŸI™I jÓ1ðˆFð
 Ÿ™ž‘�Ø”=ðØ$%§H¡H¨WÓ$5˜›	ñ 'ð  ˜t×/Ñ/Ø˜wØ�bØ�b•kØ�bØ�b•hØ˜$×-Ñ-°Õ3Ø�sØ˜&Ø˜�Ø˜&�,ðˆFð �M‰M˜&Ô!ð �eŒ|Ø!��c‘
Ø"ˆF�6‰NØˆMøô= .ô 	ðØ()¯©°Ó(:˜FœIøÜ1ô Ø#Ÿx™x×<×<Ð<Ø %Ü Ø"3°A°3ð 7$Ø$% 3Ð&7ð!9÷ð ðúð	ús0   ÃEÅF7ÅE4Å4&F3ÆF3Æ.F7Æ2F3Æ3F7)r)   r­   ÚannotsrL   ÚmaprK   ÚCroppedPageÚ_crop_fn)r^   r#  Úrawr"  r   s   f   @r7   r%  ÚPage.annots  se   ù€ ÷	ð 	÷/	ñ /	ôb ˜$Ÿ-™-×.Ñ.Ó/×5Ð5°2ˆÜ”c˜%“oÓ&ˆÜ�dœK×(Ò(Ø—=‘= Ó(Ð(àˆMr9   c                ó    <€ V ^8„  d   QhRS[ /# rq   rô   )r6   rV   s   "€r7   r8   r°   S  s   ø€ ÷ @ñ @™Jñ @r9   c                ó\   € V P                    Uu. uF  qR ,          f   K  VNK  	  up# u upi )r  )r%  )r^   r  s   & r7   Ú
hyperlinksÚPage.hyperlinksR  s$   € àŸ;š;Ó?™;�a¨E­(—�™;Ñ?Ð?ùÒ?s   �) )c                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# rq   ©r   r5   r    )r6   rV   s   "€r7   r8   r°   W  s   ø€ ÷ ñ ™™c¡:˜oÕ.ñ r9   c                ó€   € \        V R 4      '       d   V P                  # V P                  4       V n        V P                  # ©Ú_objects)ré   r3  Úparse_objectsre   s   &r7   ÚobjectsÚPage.objectsV  s3   € ä�4˜×$Ò$Ø—=‘=Ð Ø/3×/AÑ/AÓ/CˆŒØ�}‰}Ðr9   c                óR   <€ V ^8„  d   QhRS[ S[S[3,          RS[ S[S[3,          /# )r1   r÷   r3   )r   r   )r6   rV   s   "€r7   r8   r°   ]  s1   ø€ ÷ Rñ R™e¡E©5 LÕ1ð R±e¹EÁ5¸LÕ6Iñ Rr9   c                ó¨   € V P                   ^ ,          V^ ,          ,           V P                   ^,          V P                  ,           V^,          ,
          3# ©r   )rÀ   rÝ   )r^   r÷   s   &&r7   Úpoint2coordÚPage.point2coord]  s:   € à—‘˜aÕ  2 a¥5Õ(¨$¯-©-¸Õ*:¸T¿[¹[Õ*HÈ2ÈaÍ5Õ*PÐQÐQr9   c                ó&   <€ V ^8„  d   QhRS[ RS[/# )r1   Úobjr3   )r   r   )r6   rV   s   "€r7   r8   r°   a  s   ø€ ÷ Hñ H¡&ð H©Uñ Hr9   c           
     óŒ  € \         P                  ! \        R VP                  P                  4      P                  4       pR R lp\        \        R\        W1P                  P                  4       4      4      4      pW$R&   V P                  VR&   R F6  p\        W4      '       g   K  \        \        W4      P                  4      WE&   K8  	  \!        V\"        \$        34      '       dN   VP'                  4       pV P(                  P*                  e!   \-        V P(                  P*                  V4      MTVR&   \!        V\"        4      '       d¸   VP.                  p\!        VP0                  \2        4      '       d   VP0                  MVP0                  3VR&   \!        VP4                  \2        4      '       d   VP4                  MVP4                  3VR&   \!        VR	,          \6        4      '       d   \9        VR	,          4      VR	&   M‰\!        V\:        34      '       ds   \=        \        V P>                  VR
,          4      4      VR
&   VP@                   UU	u. uF  vr‰V.\        V P>                  V	4      O5NK   	  up	pVR&   VPB                  VR&   V PD                  R,          w  r«RV9   df   V PF                  VR,          ,
          V,           VR&   V PF                  VR,          ,
          V,           VR&   V PH                  VR,          ,           VR&   RV9   d.   V
^ 8w  d'   VR,          V
,           VR&   VR,          V
,           VR&   V# u up	pi )Ú c                óŠ   € V ^8„  d   QhR\         \        \        3,          R\        \         \        \        3,          ,          /# )r1   Úitemr3   )r   r5   r   r
   )r6   s   "r7   r8   Ú)Page.process_object.<locals>.__annotate__d  s/   € ÷ 	ñ 	œu¤S¬# X�ð 	´8¼EÄ#ÄsÀ(½OÕ3Lñ 	r9   c                 ó@   € V w  rV\         9   d   \        V4      pW3# R # rI   )Ú	ALL_ATTRSr)   )rA  r   r!  Úress   &   r7   Úprocess_attrÚ)Page.process_object.<locals>.process_attrd  s#   € Ø‰DˆAØ”IŒ~Ü! !“n�Ø�x�ár9   Nr  r®   ÚtextÚstroking_colorÚnon_stroking_colorr2   ÚptsÚpathÚdash:Nr1   Nr¡   r¢   r  r  r  rŸ   r    )ÚncsÚscs)%ÚreÚsubÚlt_patrx   r…   rÂ   r\   Úfilterr&  Ú__dict__rJ   r®   ré   r*   ÚgetattrrZ   rK   r   r   Úget_textr¬   Úunicode_normÚnormalize_unicodeÚgraphicstateÚscolorrM   Úncolorr4   rD   r   rL   r:  Úoriginal_pathÚdashing_stylerÀ   rÝ   r¯   )r^   r=  ÚkindrF  ÚattrÚcsrH  ÚgsÚcmdrK  Úmb_x0Úmb_tops   &&          r7   Úprocess_objectÚPage.process_objecta  s   € Ü�vŠv”f˜b #§-¡-×"8Ñ"8Ó9×?Ñ?ÓAˆõ	ô ”F˜4¤ \·<±<×3EÑ3EÓ3GÓ!HÓIÓJˆà"ˆ]ÑØ"×.Ñ.ˆˆ]Ñã ˆBô �s×ÔÜ-¬g°cÓ.>×.CÑ.CÓD�“ñ !ô �cœF¤OÐ4×5Ò5Ø—<‘<“>ˆDð —8‘8×(Ñ(Ò4ô " $§(¡(×"7Ñ"7¸Ô>àð �‰Lô �cœ6×"Ò"ð ×!Ñ!ˆBä'¨¯	©	´5×9Ò9�—	’	ÀÇ	Á	¸|ð Ð!Ñ"ô (¨¯	©	´5×9Ò9�—	’	ÀÇ	Á	¸|ð Ð%Ñ&ô
 ˜$˜zÕ*¬E×2Ò2Ü#5°d¸:Õ6FÓ#G��ZÑ øä˜œg˜Z×(Ò(Üœs 4×#3Ñ#3°T¸%µ[ÓAÓBˆD�‰Kð QT×PaÒPaÔbÑPaÀ9À3˜SÐ>¤3 t×'7Ñ'7¸Ó#=Ô>ÑPaÒbˆD�‰Là×,Ñ,ˆD�‰Lð
 Ÿ™ bÕ)‰ˆà�4Œ<ØŸ;™;¨¨d­Õ3°vÕ=ˆD�‰KØ"Ÿk™k¨D°­JÕ6¸&Õ@ˆD�‰NØ!×0Ñ0°4¸µ;Õ>ˆD�‰Nà�4Œ<˜E QœJØ˜d� eÕ+ˆD�‰JØ˜d� eÕ+ˆD�‰Jàˆùó% cs   É$M c                óL   <€ V ^8„  d   QhRS[ S[,          RS[S[RR3,          /# )r1   Úlayout_objectsr3   N)r	   r   r   r   )r6   rV   s   "€r7   r8   r°   «  s.   ø€ ÷ /ñ /Ù"¡;Õ/ð/á	‘5˜$ Ð$Õ	%ñ/r9   c              #  ó  "  € V F|  p\        V\        4      '       dQ   V P                  P                  e   V P	                  V4      x € V P                  VP                  4       R j  x€L
  Ki  V P	                  V4      x € K~  	  R #  L5irI   )rK   r   r¬   rè   re  Úiter_layout_objectsrk   )r^   rh  r=  s   && r7   rj  ÚPage.iter_layout_objects«  sm   é € ó "ˆCä˜#œ{×+Ò+à—8‘8×$Ñ$Ò0Ø×-Ñ-¨cÓ2Ò2à×3Ñ3°C·I±IÓ>×>Ò>à×)Ñ)¨#Ó.Ô.ó "ñ ?ùs   ‚A%B	Á'BÁ( B	c                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# rq   r0  )r6   rV   s   "€r7   r8   r°   ¹  s   ø€ ÷ 	ñ 	™t¡C© OÕ4ñ 	r9   c                óâ   € / pV P                  V P                  P                  4       FC  pVR ,          pVR9   d   K  VP                  V4      f   . W&   W,          P	                  V4       KE  	  V# )r  )Úanno)rj  rñ   rk   r?   Úappend)r^   r5  r=  r^  s   &   r7   r4  ÚPage.parse_objects¹  sh   € Ø)+ˆØ×+Ñ+¨D¯K©K×,=Ñ,=Ö>ˆCØ�}Õ%ˆDØ�xÔÙØ�{‰{˜4Ó Ò(Ø "�‘Ø�M× Ñ  Ö%ñ ?ð ˆr9   c                ó6   <€ V ^8„  d   QhRS[ S[,          RS[/# ©r1   Útable_settingsr3   )r
   r$   r&   )r6   rV   s   "€r7   r8   r°   Ä  s#   ø€ ÷ 'ñ 'Ù&Ñ'7Õ8ð'á	ñ'r9   c                óD   € \         P                  ! V4      p\        W4      # rI   )r'   Úresolver&   ©r^   rs  Útsets   && r7   Údebug_tablefinderÚPage.debug_tablefinderÄ  s   € ô ×$Ò$ ^Ó4ˆÜ˜4Ó&Ð&r9   c                óF   <€ V ^8„  d   QhRS[ S[,          RS[S[,          /# rr  )r
   r$   r	   r%   )r6   rV   s   "€r7   r8   r°   Ê  s'   ø€ ÷ .ñ .Ù&Ñ'7Õ8ð.á	‰e�ñ.r9   c                óX   € \         P                  ! V4      p\        W4      P                  # rI   )r'   ru  r&   Útablesrv  s   && r7   Úfind_tablesÚPage.find_tablesÊ  s%   € ô ×$Ò$ ^Ó4ˆÜ˜4Ó&×-Ñ-Ð-r9   c                óF   <€ V ^8„  d   QhRS[ S[,          RS[ S[,          /# rr  )r
   r$   r%   )r6   rV   s   "€r7   r8   r°   Ð  s'   ø€ ÷ ñ Ù&Ñ'7Õ8ðá	‘%�ñr9   c                ó¼   € \         P                  ! V4      pV P                  V4      p\        V4      ^ 8X  d   R# R R lp\	        \        W4R7      4      ^ ,          pV# )r   Nc                ó\   € V ^8„  d   QhR\         R\        \        \        \        3,          /# )r1   r™   r3   )r%   r   r„   r   )r6   s   "r7   r8   Ú%Page.find_table.<locals>.__annotate__Ú  s&   € ÷ 	9ñ 	9”eð 	9¤¤c¬5´%Ð&7Õ 8ñ 	9r9   c                 óx   € \        V P                  4      ) V P                  ^,          V P                  ^ ,          3# )é   )ÚlenÚcellsrÄ   ©r™   s   &r7   ÚsorterÚPage.find_table.<locals>.sorterÚ  s)   € Ü˜Ÿ™“\�M 1§6¡6¨!¥9¨a¯f©f°Q­iÐ8Ð8r9   )rN   )r'   ru  r}  r…  rL   rž   )r^   rs  rw  r|  rˆ  Úlargests   &&    r7   Ú
find_tableÚPage.find_tableÐ  sS   € ô ×$Ò$ ^Ó4ˆØ×!Ñ! $Ó'ˆäˆv‹;˜!ÔÙõ	9ô ”v˜fÔ1Ó2°1Õ5ˆàˆr9   c                óv   <€ V ^8„  d   QhRS[ S[,          RS[S[S[S[ S[,          ,          ,          ,          /# rr  ©r
   r$   r	   r5   )r6   rV   s   "€r7   r8   r°   á  s:   ø€ ÷ Qñ QÙ&Ñ'7Õ8ðQá	‰d‘4™¡�Õ&Õ'Õ	(ñQr9   c           	     óÄ   € \         P                  ! V4      pV P                  V4      pV Uu. uF(  qDP                  ! R/ VP                  ;'       g    / B NK*  	  up# u upi ©Nrc   )r'   ru  r}  ÚextractÚtext_settings)r^   rs  rw  r|  Útables   &&   r7   Úextract_tablesÚPage.extract_tablesá  sT   € ô ×$Ò$ ^Ó4ˆØ×!Ñ! $Ó'ˆÙIOÓPÉÀ—’Ñ; ×!3Ñ!3×!9Ð!9°rÔ;ÉÑPÐPùÒPs   ¬$AÁ	Ac                óv   <€ V ^8„  d   QhRS[ S[,          RS[ S[S[S[ S[,          ,          ,          ,          /# rr  rŽ  )r6   rV   s   "€r7   r8   r°   è  s6   ø€ ÷ ?ñ ?Ù&Ñ'7Õ8ð?á	‘$‘t™H¡S�MÕ*Õ+Õ	,ñ?r9   c                ó¨   € \         P                  ! V4      pV P                  V4      pVf   R # VP                  ! R/ VP                  ;'       g    / B # r�  )r'   ru  r‹  r‘  r’  )r^   rs  rw  r“  s   &&  r7   Úextract_tableÚPage.extract_tableè  sJ   € ô ×$Ò$ ^Ó4ˆØ—‘ Ó%ˆØŠ=Ùà—=’=Ñ> D×$6Ñ$6×$<Ð$<¸"Ñ>Ð>r9   c                ó&   <€ V ^8„  d   QhRS[ RS[/# rF   )r   r-   )r6   rV   s   "€r7   r8   r°   ò  s   ø€ ÷ 	Añ 	A¡Sð 	A©Wñ 	Ar9   c                ó  € \        V P                  R 7      pRV9  d   VP                  RV P                  /4       RV9  d   VP                  RV P                  /4       / VCVCp\
        P                  ! V P                  3/ VB # ))Úlayout_bboxÚlayout_width_charsÚlayout_widthÚlayout_height_charsÚlayout_height)r\   rÄ   r  r×   rÝ   r   Úchars_to_textmapÚchars)r^   rG   ÚdefaultsÚfull_kwargss   &,  r7   rÅ   ÚPage._get_textmapò  sx   € Ü#'ØŸ	™	ô$
ˆð   vÔ-Ø�O‰O˜^¨T¯Z©ZÐ8Ô9Ø ¨Ô.Ø�O‰O˜_¨d¯k©kÐ:Ô;Ø&<¨Ð&<°VÐ&<ˆÜ×%Ò% d§j¡jÑ@°KÑ@Ð@r9   c                ó–   <€ V ^8„  d   QhRS[ S[S[S[,          3,          RS[RS[RS[RS[RS[RS[RS[S[S[S[3,          ,          /# )	r1   ÚpatternÚregexÚcaseÚ
main_groupÚreturn_charsÚreturn_groupsrG   r3   )r   r5   r   Úboolr„   r   r	   r   )r6   rV   s   "€r7   r8   r°   ý  sv   ø€ ÷ 
ñ 
á‘s™G¡C�LÐ(Õ)ð
ñ ð
ñ ð	
ñ
 ð
ñ ð
ñ ð
ñ ð
ñ 
‰d‘3™�8�nÕ	ñ
r9   c           	     óf   € V P                   ! R/ \        V4      B pVP                  VVVVVVR 7      # ))r¨  r©  rª  r«  r¬  rc   )rÆ   rP   Úsearch)	r^   r§  r¨  r©  rª  r«  r¬  rG   Útextmaps	   &&&&&&&, r7   r¯  ÚPage.searchý  sE   € ð ×"Ò"ÑAÔ%8¸Ó%@ÑAˆØ�~‰~ØØØØ!Ø%Ø'ð ó 
ð 	
r9   c                ó&   <€ V ^8„  d   QhRS[ RS[/# rF   ©r   r5   )r6   rV   s   "€r7   r8   r°     s   ø€ ÷ Iñ I¡Sð I©Sñ Ir9   c                óL   € V P                   ! R/ \        V4      B P                  # r�  )rÆ   rP   Ú	as_string©r^   rG   s   &,r7   Úextract_textÚPage.extract_text  s"   € Ø×ÒÑ>Ô"5°fÓ"=Ñ>×HÑHÐHr9   c                ó&   <€ V ^8„  d   QhRS[ RS[/# rF   r³  )r6   rV   s   "€r7   r8   r°     s   ø€ ÷ ?ñ ?©Cð ?±Cñ ?r9   c                óD   € \         P                  ! V P                  3/ VB # rI   )r   Úextract_text_simpler¢  r¶  s   &,r7   r»  ÚPage.extract_text_simple  s   € Ü×(Ò(¨¯©Ñ>°vÑ>Ð>r9   c                ó&   <€ V ^8„  d   QhRS[ RS[/# rF   )r   r    )r6   rV   s   "€r7   r8   r°     s   ø€ ÷ 9ñ 9¡cð 9©jñ 9r9   c                óD   € \         P                  ! V P                  3/ VB # rI   )r   Úextract_wordsr¢  r¶  s   &,r7   r¿  ÚPage.extract_words  s   € Ü×"Ò" 4§:¡:Ñ8°Ñ8Ð8r9   c                ó2   <€ V ^8„  d   QhRS[ RS[ RS[RS[/# )r1   Ústripr«  rG   r3   )r­  r   r    )r6   rV   s   "€r7   r8   r°     s-   ø€ ÷ 
ñ 
Ùð
Ù04ð
ÙGJð
á	ñ
r9   c                óX   € V P                   ! R/ \        V4      B P                  WR 7      # ))rÂ  r«  rc   )rÆ   rP   Úextract_text_lines)r^   rÂ  r«  rG   s   &&&,r7   rÄ  ÚPage.extract_text_lines  s4   € ð ×ÒÑ>Ô"5°fÓ"=Ñ>×QÑQØð Ró 
ð 	
r9   c                ó0   <€ V ^8„  d   QhRS[ RS[RS[RR/# ©r1   rÄ   ÚrelativeÚstrictr3   r'  ©r   r­  )r6   rV   s   "€r7   r8   r°   !  s3   ø€ ÷ Iñ IÙðIÙ&*ðIÙ<@ðIà	ñIr9   c                ó   € \        WW#R 7      # ))rÈ  rÉ  )r'  ©r^   rÄ   rÈ  rÉ  s   &&&&r7   ÚcropÚ	Page.crop!  s   € ô ˜4°ÔHÐHr9   c                ó0   <€ V ^8„  d   QhRS[ RS[RS[RR/# rÇ  rÊ  )r6   rV   s   "€r7   r8   r°   &  ó-   ø€ ÷ 
ñ 
Ùð
Ù&*ð
Ù<@ð
à	ñ
r9   c                ó:   € \        WW#\        P                  R7      # ©zC
Same as .crop, except only includes objects fully within the bbox
)rÈ  rÉ  Úcrop_fn)r'  r   Úwithin_bboxrÌ  s   &&&&r7   rÔ  ÚPage.within_bbox&  s   € ô Ø Ä%×BSÑBSô
ð 	
r9   c                ó0   <€ V ^8„  d   QhRS[ RS[RS[RR/# rÇ  rÊ  )r6   rV   s   "€r7   r8   r°   0  rÐ  r9   c                ó:   € \        WW#\        P                  R7      # rÒ  )r'  r   Úoutside_bboxrÌ  s   &&&&r7   rØ  ÚPage.outside_bbox0  s   € ô Ø Ä%×BTÑBTô
ð 	
r9   c                ó<   <€ V ^8„  d   QhRS[ S[.S[3,          RR/# )r1   Útest_functionr3   ÚFilteredPage)r   r   r­  )r6   rV   s   "€r7   r8   r°   :  s&   ø€ ÷ 1ñ 1¡H©e¨W±d¨]Õ$;ð 1Àñ 1r9   c                ó   € \        W4      # rI   )rÜ  )r^   rÛ  s   &&r7   rS  ÚPage.filter:  s   € Ü˜DÓ0Ð0r9   c                ó$   <€ V ^8„  d   QhRS[ RR/# )r1   rG   r3   rÜ  )r   )r6   rV   s   "€r7   r8   r°   =  s   ø€ ÷ 	ñ 	¡Sð 	¨^ñ 	r9   c                óî   € \        V R 4      pV P                  P                  4        UUu/ uF  w  r4W4bK	  	  uppVn        \        P
                  ! V P                  3/ VB VP                  R&   V# u uppi )uÊ   
Removes duplicate chars â€”Â those sharing the same text and positioning
(within `tolerance`) as other characters in the set. Adjust extra_args
to be more/less restrictive with the properties checked.
c                 ó   € R # )Trc   r‡  s   &r7   Ú<lambda>Ú#Page.dedupe_chars.<locals>.<lambda>C  s   € ©r9   Úchar)rÜ  r5  rJ   r3  r   Údedupe_charsr¢  )r^   rG   Úpr^  Úobjss   &,   r7   rå  ÚPage.dedupe_chars=  sf   € ô ˜™~Ó.ˆØ37·<±<×3EÑ3EÔ3GÔHÑ3G¡Z T�d’jÑ3GÒHˆŒ
Ü"×/Ò/°·
±
ÑE¸fÑEˆ�
‰
�6ÑØˆùó Is   «A1c                ó®   <€ V ^8„  d   QhRS[ S[S[S[3,          ,          RS[ S[S[S[3,          ,          RS[ S[S[S[3,          ,          RS[RS[RR/# )r1   Ú
resolutionr×   rÝ   Ú	antialiasÚforce_mediaboxr3   r.   )r
   r   r„   rr   r­  )r6   rV   s   "€r7   r8   r°   H  sq   ø€ ÷ 
ñ 
á™U¡3© :Õ.Õ/ð
ñ ™™c¡5˜jÕ)Õ*ð
ñ ™™s¡E˜zÕ*Õ+ð	
ñ
 ð
ñ ð
ð 
ñ
r9   c                ó
  € ^RI HpHp \        R WV3 4       4      pV^8”  d   \	        RV 24      hVe   ^HV,          V P
                  ,          pMVe   ^HV,          V P                  ,          pT! T T;'       g    TVVR7      # )zÊ
You can pass a maximum of 1 of the following:
- resolution: The desired number pixels per inch. Defaults to 72.
- width: The desired image width in pixels.
- height: The desired image width in pixels.
)ÚDEFAULT_RESOLUTIONr.   c              3   ó(   "  € T F  qR Jx € K
  	  R # 5irI   rc   r—   s   & r7   rš   Ú Page.to_image.<locals>.<genexpr>X  s   é € ÐKÑ/J¨! �Ó/Jùs   ‚zUOnly one of these arguments can be provided: resolution, width, height. You provided )rê  rë  rì  )Údisplayrî  r.   ÚsumÚ
ValueErrorr×   rÝ   )	r^   rê  r×   rÝ   rë  rì  rî  r.   Ú	num_specss	   &&&&&&   r7   Úto_imageÚPage.to_imageH  s�   € ÷ 	;äÑK°
À6Ñ/JÓKÓKˆ	Ø�qŒ=ÜØgÐhqÐgrÐsóð ð ÒØ˜e� d§j¡jÕ0‰JØÒØ˜f� t§{¡{Õ2ˆJáØØ!×7Ð7Ð%7ØØ)ô	
ð 	
r9   c                ó\   <€ V ^8„  d   QhRS[ S[S[,          ,          RS[S[S[3,          /# )r1   Úobject_typesr3   )r
   r	   r5   r   r   )r6   rV   s   "€r7   r8   r°   i  s,   ø€ ÷ ñ ¡H©T±#­YÕ$7ð Á4ÉÉSÈÅ>ñ r9   c                óv  € Vf-   \        V P                  P                  4       4      R.,           pMTpRV P                  RV P                  RV P
                  RV P                  RV P                  RV P                  RV P                  R	V P                  /pV F  p\        WR
,           4      W4R
,           &   K   	  V# )Nr  r®   r¯   r‘   rÃ   rÀ   rÄ   r×   rÝ   Ús)rL   r5  Úkeysr®   r¯   r‘   rÃ   rÀ   rÄ   r×   rÝ   rU  )r^   rø  Ú_object_typesÚdÚts   &&   r7   rá   ÚPage.to_dicti  s£   € ØÒÜ  §¡×!2Ñ!2Ó!4Ó5¸¸	ÕA‰Mà(ˆMà˜4×+Ñ+Ø˜d×1Ñ1Ø˜Ÿ™Ø�t—|‘|Ø˜Ÿ™Ø�D—I‘IØ�T—Z‘ZØ�d—k‘kð	
ˆó ˆAÜ  ¨3¥wÓ/ˆA�#�g‹Jñ àˆr9   c                ó    <€ V ^8„  d   QhRS[ /# rq   )r5   )r6   rV   s   "€r7   r8   r°   |  s   ø€ ÷ ,ñ ,™#ñ ,r9   c                ó"   € R V P                    R2# )z<Page:Ú>)r®   re   s   &r7   Ú__repr__ÚPage.__repr__|  s   € Ø˜×(Ñ(Ð)¨Ð+Ð+r9   c                óB   <€ V ^8„  d   Qh/ S[ S[,          ;R&   S[;R&   # )r1   Úcached_propertiesÚis_original)r	   r5   r­  )r6   rV   s   "€r7   r8   r°   º   s   ø‡ ‚ Ù™C•yÑLñ áÑò r9   )rª   r3  rÄ   rÃ   rÆ   r¯   rÀ   r®   r­   r¬   r¿   r‘   r9  rI   )TTr   TT)TT)FT)NNNFF),r…   r†   r‡   rˆ   r!   r  r  ÚpagesrË   rÑ   Úpropertyr×   rÝ   rã   rñ   r%  r-  r5  r:  re  rj  r4  rx  r}  r‹  r”  r˜  rÅ   r¯  r·  r»  r¿  rÄ  rÍ  rÔ  rØ  rS  rå  rõ  rá   r  rŠ   r‹   rŒ   ©rV   s   @r7   r©   r©   º   sÂ  ø‡ € Ø#,×#>Ñ#>À)ÀÕ#LÐØ€KØ€E÷*:ò *:÷X'ð 'ð ÷+ó ð+ð ÷+ó ð+ð ÷ó ðð ÷ó ðð  ÷?ó ð?ðB ÷@ó ð@ð ÷ó ð÷Rð R÷Hð H÷T/ð /÷	ð 	÷'ò '÷.ò .÷ò ÷"Qò Q÷?ò ?÷	Að 	A÷
ò 
÷(Ið I÷?ð ?÷9ð 9÷
ò 
÷Iò I÷

ò 
÷
ò 
÷1ð 1÷	ð 	÷
ò 
÷Bò ÷&,ð ,÷E ƒ r9   r©   c                   óB   a € ] tR tRt o RtV 3R lR ltV 3R ltRtV tR# )ÚDerivedPagei€  Fc                ó    <€ V ^8„  d   QhRS[ /# )r1   Úparent_page)r©   )r6   rV   s   "€r7   r8   ÚDerivedPage.__annotate__ƒ  s   ø€ ÷ :ñ :¡Dñ :r9   c                óž  € Wn         VP                  V n        VP                  V n        VP                  V n        VP                  V n        VP
                  V n        VP                  V n        VP                  V n        VP                  V n        V P                  \        P                  4       \        4       ! V P                  4      V n        R # rI   )r  r¿   r¬   r­   r®   r¯   r‘   rÀ   rÃ   rÏ   r!   r  r   rÅ   rÆ   )r^   r  s   &&r7   rË   ÚDerivedPage.__init__ƒ  s™   € Ø&ÔØ$×.Ñ.ˆŒØ—?‘?ˆŒØ#×,Ñ,ˆŒØ&×2Ñ2ˆÔØ)×8Ñ8ˆÔØ#×,Ñ,ˆŒØ#×,Ñ,ˆŒØ"×*Ñ*ˆŒØ×Ñœ×4Ñ4Ô5Ü$œ; t×'8Ñ'8Ó9ˆÖr9   c                ó&   <€ V ^8„  d   Qh/ S[ ;R&   # )r1   r  )r­  )r6   rV   s   "€r7   r8   r  €  s   ø‡ ‚ ÙÑò r9   )
rÃ   rÆ   r¯   rÀ   r®   r­   r  r¬   r¿   r‘   N)	r…   r†   r‡   rˆ   r  rË   rŠ   r‹   rŒ   r
  s   @r7   r  r  €  s   ø‡ € Ø€K÷:ð :÷ ƒ r9   r  c                ó4   € V ^8„  d   QhR\         R\         RR/# )r1   rÄ   Úparent_bboxr3   N)r   )r6   s   "r7   r8   r8   ‘  s!   € ÷ 
ñ 
œVð 
´&ð 
¸Tñ 
r9   c                 ó  € \         P                  ! V 4      pV^ 8X  d   \        RV  R24      h\         P                  ! W4      pVf   \        RV  RV 24      h\         P                  ! V4      pWB8  d   \        RV  RV 24      hR# )r   zBounding box z has an area of zero.Nz. is entirely outside parent page bounding box z. is not fully within parent page bounding box )r   Úcalculate_arearó  Úget_bbox_overlap)rÄ   r  Ú	bbox_areaÚoverlapÚoverlap_areas   &&   r7   Útest_proposed_bboxr  ‘  s¦   € Ü×$Ò$ TÓ*€IØ�A„~Ü˜=¨¨Ð.CÐDÓEÐEä×$Ò$ TÓ7€GØ‚ÜØ˜D˜6ð "(Ø(3 }ð6ó
ð 	
ô
 ×'Ò'¨Ó0€LØÔÜØ˜D˜6ð "(Ø(3 }ð6ó
ð 	
ñ  r9   c                   óx   a a€ ] tR tRt o]P
                  RR3V3R lV 3R lllt]V3R lR l4       tRt	Vt
V ;t# )	r'  i¥  FTc          
      óT   <€ V ^8„  d   QhRS[ RS[RS[S[S[.S[3,          RS[RS[/# )r1   r  Ú	crop_bboxrÓ  rÈ  rÉ  )r©   r   r   r    r­  )r6   rV   s   "€r7   r8   ÚCroppedPage.__annotate__¦  sL   ø€ ÷ "ñ "áð"ñ ð"ñ ™:¡vÐ.±
Ð:Õ;ð	"ñ
 ð"ñ ñ"r9   c                óX  <aa€ V'       d4   VP                   w  rg pSw  ršr¼W–,           W§,           W¶,           WÇ,           3oV'       d   \        SVP                   4       R  VV3R llp\        SV `  V4       WÐn        S\
        P                  J d   VP                   V n         R# SV n         R# )c                ó0   € V ^8„  d   QhR\         R\         /# )r1   rç  r3   rô   )r6   s   "r7   r8   Ú*CroppedPage.__init__.<locals>.__annotate__¶  s   € ÷ 	,ñ 	,œ:ð 	,¬*ñ 	,r9   c                 ó   <€ S! V S4      # rI   rc   )rç  r  rÓ  s   &€€r7   r(  Ú&CroppedPage.__init__.<locals>._crop_fn¶  s   ø€ Ù˜4 Ó+Ð+r9   N)rÄ   r  rt   rË   r(  r   rØ  )r^   r  r  rÓ  rÈ  rÉ  Úo_x0Úo_topÚ_rŸ   r  r    r  r(  rx   s   &&ff&&        €r7   rË   ÚCroppedPage.__init__¦  s�   ú€ ÷ Ø +× 0Ñ 0ÑˆD˜˜AØ"+ÑˆB�RØ� C¥K°µ¸F½NÐKˆIçÜ˜y¨+×*:Ñ*:Ô;÷	,ñ 	,ô 	‰Ñ˜Ô%à Œð ”e×(Ñ(Ó(Ø#×(Ñ(ˆDŽIà!ˆDŽIr9   c                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# rq   r0  )r6   rV   s   "€r7   r8   r  Ä  s   ø€ ÷ ñ ™™c¡:˜oÕ.ñ r9   c                óú   € \        V R 4      '       d   V P                  # V P                  P                  P	                  4        UUu/ uF  w  rWP                  V4      bK  	  uppV n        V P                  # u uppi r2  )ré   r3  r  r5  rJ   r(  ©r^   r   r!  s   &  r7   r5  ÚCroppedPage.objectsÃ  si   € ä�4˜×$Ò$Ø—=‘=Ð à,0×,<Ñ,<×,DÑ,D×,JÑ,JÔ,Lô0
Ù,L¡D AˆA�}‰}˜QÓÒÑ,Lò0
ˆŒð �}‰}Ðùó0
s   ÁA7)r(  r3  rÄ   )r…   r†   r‡   rˆ   r   Úcrop_to_bboxrË   r	  r5  r‹   rŒ   r�   rŽ   s   @@r7   r'  r'  ¥  s:   ù‡ € ð
 ?D×>PÑ>PØØ÷"õ "ð: ÷ó ÷ð r9   r'  c                   óZ   a a€ ] tR tRt oV3R lV 3R llt]V3R lR l4       tRtVtV ;t	# )rÜ  iÍ  c                ó>   <€ V ^8„  d   QhRS[ RS[S[.S[3,          /# )r1   r  Ú	filter_fn)r©   r   r   r­  )r6   rV   s   "€r7   r8   ÚFilteredPage.__annotate__Î  s&   ø€ ÷ &ñ &¡Dð &±X¹u¸gÁt¸mÕ5Lñ &r9   c                óT   <€ VP                   V n         W n        \        SV `  V4       R # rI   )rÄ   r0  rt   rË   )r^   r  r0  rx   s   &&&€r7   rË   ÚFilteredPage.__init__Î  s"   ø€ Ø×$Ñ$ˆŒ	Ø"ŒÜ‰Ñ˜Ö%r9   c                ó6   <€ V ^8„  d   QhRS[ S[S[3,          /# rq   r0  )r6   rV   s   "€r7   r8   r1  Ô  s   ø€ ÷ ñ ™™c¡:˜oÕ.ñ r9   c                ó  € \        V R 4      '       d   V P                  # V P                  P                  P	                  4        UUu/ uF%  w  rV\        \        V P                  V4      4      bK'  	  uppV n        V P                  # u uppi r2  )ré   r3  r  r5  rJ   rL   rS  r0  r+  s   &  r7   r5  ÚFilteredPage.objectsÓ  sw   € ä�4˜×$Ò$Ø—=‘=Ð ð ×(Ñ(×0Ñ0×6Ñ6Ô8ô0
á8‘�ð Œt”F˜4Ÿ>™>¨1Ó-Ó.Ò.Ù8ò0
ˆŒð �}‰}Ðùó	0
s   Á+B)r3  rÄ   r0  )
r…   r†   r‡   rˆ   rË   r	  r5  r‹   rŒ   r�   rŽ   s   @@r7   rÜ  rÜ  Í  s(   ù‡ € ÷&ó &ð
 ÷ó ÷ð r9   rÜ  )rw   rÝ   Ú	linewidthrK  ÚsizeÚsrcsizer×   rŸ   r    r¡   r¢   ÚbitsÚmatrixÚuprightr2   rH  Ú	imagemaskÚ
colorspaceÚevenoddÚfillrJ  ÚstrokerI  ÚstreamrZ   rl   rT   r9  )Qr•   rP  Ú	functoolsr   Útypingr   r   r   r   r   r	   r
   r   r   r   Úunicodedatar   rX  Úwarningsr   Úpdfminer.converterr   Úpdfminer.layoutr   r   r   r   r   r   r   Úpdfminer.pdfinterpr   r   Úpdfminer.pdfpager   Úpdfminer.psparserr   r?  r   Ú_typingr   r   r   r    Ú	containerr!   Ú	structurer"   r#   r“  r$   r%   r&   r'   r(   r)   r*   Úutils.exceptionsr+   r,   Ú
utils.textr-   ÚcompilerR  ÚsetrD  rñ  r.   r¬   r/   r>   rD   rP   rR   r£   r§   r©   r  r  r'  rÜ  rc   r9   r7   Ú<module>rS     s  ðÛ Û 	Ý ÷÷ ÷ õ 7Ý å 0÷÷ ñ ÷ =Ý $Ý 'å ß 5Ó 5Ý  ß 7ß FÓ Fß ?Ñ ?ß FÝ à	�Š�FÓ	€áòó€	÷B Ý"Ýð
 Ð)ØÐ)ØÐ 0ØÐ 1Ø˜ð€õ*õô0Ð):ô 0÷f õ(4ô
C,ˆ9ô C,ôL:�$ô :õ"
ô(%�+ô %ôP�;ö r9   