+
    5i[7                        R t ^ RIHtHt ^RIHtHtHtHtH	t	 ^RI
Ht ^RIHtHtHtHtHt ^RIHt  ^ RIHt ]'       d   ^RIHt R	tR
tRtRt ! R R]4      t ! R R]4      t ! R R]4      t  ! R R]4      t!R#   ] d    Rt LOi ; i)z
This module is in work-in-progress state.
Hint tables / hint streams have not been implemented yet,
and there are a few "TODO" comment remaining.
cf. https://github.com/py-pdf/fpdf2/issues/62
)TYPE_CHECKINGOptional)ContentWithoutIDOutputProducer
PDFCatalog	PDFHeaderPDFInfo)sign_content)DestinationXYZPDFArrayPDFContentStream	PDFObjectiobj_ref)buffer_subst)signerN)StandardSecurityHandlerz0%1%2%3%4%5%6%7%8%9%a%b%c%dz1%2%3%4%5%6%z2%3%4%5%6%7%z3%4%5%6%7%8%c                   >   a a ] tR t^%t oV3R lV 3R lltRtVtV ;t# )PDFLinearizationc                $   < V ^8  d   QhRS[ RR/# )   pages_countreturnN)int)format__classdict__s   "X/Users/agent/.openclaw/workspace/venv/lib/python3.14/site-packages/fpdf/linearization.py__annotate__PDFLinearization.__annotate__&   s     
) 
)C 
)D 
)    c                   < \         SV `  4        R V n        Wn        \        V n        RV n        \        V n        \        V n
        \        V n        R# )1N)super__init__
linearizedn%HINT_STREAM_OFFSET_LENGTH_PLACEHOLDERho!FIRST_PAGE_END_OFFSET_PLACEHOLDERe&MAIN_XREF_1ST_ENTRY_OFFSET_PLACEHOLDERtFILE_LENGTH_PLACEHOLDERl)selfr   	__class__s   &&r   r"   PDFLinearization.__init__&   s=    627(r   )r)   r&   r-   r#   r$   r'   r+   __name__
__module____qualname____firstlineno__r"   __static_attributes____classdictcell____classcell__r/   r   s   @@r   r   r   %   s     
) 
) 
)r   r   c                      a  ] tR t^3t o RtV 3R lR lt]V 3R lR l4       t]V 3R lR l4       tRV 3R	 lR
 llt	Rt
V tR# )PDFXrefAndTrailerz0%1*2+3-2/1^c                $   < V ^8  d   QhRS[ RR/# )r   output_builderr   N)r   )r   r   s   "r   r   PDFXrefAndTrailer.__annotate__6   s     
- 
-~ 
-$ 
-r   c                    Wn         VP                  ^,           V n        ^V n        RV n        RV n        RV n        RV n        RV n        R# )   N)	r=   obj_idcountstart_obj_idcatalog_objinfo_obj
first_xref	main_xref	startxref)r.   r=   s   &&r   r"   PDFXrefAndTrailer.__init__6   sF    ,#**Q.
15+/9=8<(,r   c                    < V ^8  d   QhRS[ /# r   r   bool)r   r   s   "r   r   r>   C   s     $ $t $r   c                ,    \        V P                  4      # N)rM   rG   r.   s   &r   is_first_xrefPDFXrefAndTrailer.is_first_xrefB   s    DNN##r   c                    < V ^8  d   QhRS[ /# rK   rL   )r   r   s   "r   r   r>   G   s     % %d %r   c                ,    \        V P                  4      # rO   )rM   rF   rP   s   &r   is_main_xrefPDFXrefAndTrailer.is_main_xrefF   s    DOO$$r   Nc                4   < V ^8  d   QhRS[ R,          RS[/# )r   _security_handlerr   r   )r   str)r   r   s   "r   r   r>   J   s#     9 9!)*C!D9	9r   c                Z   V P                   pVf   Q hVP                  f   Q h. p\        \        VP                  4      4      V n        V P
                  '       dA   \        VP                  V P                  V P                  P                  ^R4      4      Vn        VP                  R4       TP                  V P                  ^8X  d   ^ MV P                   RV P                   24       V P                  '       g   VP                  R4       \        VP                  4      ^8  g   Q R4       h\        V P                  V P                  V P                  ,           4       F)  pVP                  VP                  V,          R R24       K+  	  VP                  R4       VP                  R4       V P
                  '       dL   V P                  f   Q hVP                  R	V P                  V P                  P                  ,
           24       EMdV P                  '       dX   V P                   f   Q hVP                  R	V P                   P                   24       VP                  R
V P                   24       MVP                  R	V P                   24       V P"                  f   Q hV P$                  f   Q hVP                  R\'        V P"                  P(                  4       24       VP                  R\'        V P$                  P(                  4       24       VP*                  pVP-                  4       pVR8X  d   VP/                  VP                  4      pV'       d   VP                  RV R24       VP                  R4       VP                  R4       V P                  pV P
                  '       d:   V P                  f   Q h\        V P                  P                  ;'       g    R4      pV P                  '       d   RpVP                  V4       VP                  R4       RP1                  V4      # )N xrefz0000000000 65535 f z<TODO: how to know the offsets in the 1st xref at this stage?010z	 00000 n trailerz<<z/Size z/Prev z/Root z/Info z/ID []z>>rH   0z%%EOF
)r=   bufferrY   lenrH   rU   r    PREV_MAIN_XREF_START_PLACEHOLDERrjustappendrC   rB   rQ   offsetsrangerF   rG   rD   rE   pdf_refidfpdffile_id_default_file_idjoin)r.   rX   builderoutrA   rl   rm   rH   s   &&      r   	serializePDFXrefAndTrailer.serializeJ   sN    %%"""~~)))S01)55$$R-GN
 	

6

4,,1at7H7HI4::,WX!!!JJ,- 1$	JI	J$D--t/@/@4::/MNFJJ'//&1#6i@A O

9

4??...JJ

T__-B-B BCDE!!!~~111

VDNN$8$8#9:;

VD$I$I#JKL

VDJJ<01##///==,,,JJ(8(8(;(; <=>?JJ(8(8 9:;<<<DllnG"}//NN 

U7)1-.

4

;NN	??...DOO55<<=II

9

7yy~r   )rD   rB   rF   rE   rG   r=   rC   rH   rO   )r2   r3   r4   r5   re   r"   propertyrQ   rU   rr   r6   r7   r   s   @r   r;   r;   3   sL     '5$
- 
- $ $ % %9 9 9r   r;   c                   B   a a ] tR t^t oRV3R lV 3R llltRtVtV ;t# )PDFHintStreamc                *   < V ^8  d   QhRS[ RS[RR/# )r   contentscompressr   N)bytesrM   )r   r   s   "r   r   PDFHintStream.__annotate__   s"       $ 4 r   c                   < \         SV `  WR 7       RV n        RV n        RV n        RV n        RV n        RV n        RV n        RV n	        RV n
        RV n        RV n        R# ))ry   rz   N)r!   r"   sr+   r'   ar)   vicr-   rb)r.   ry   rz   r/   s   &&&r   r"   PDFHintStream.__init__   s`    (>r   )r   r   r   r)   r   r-   r'   r   r~   r+   r   )Fr1   r9   s   @@r   rw   rw      s       r   rw   c                   2   a  ] tR t^t o V 3R lR ltRtV tR# )LinearizedOutputProducerc                    < V ^8  d   QhRS[ /# rK   )	bytearray)r   r   s   "r   r   %LinearizedOutputProducer.__annotate__   s     r r9 rr   c           
        V P                   pV P                  P                  \        VP                  4      4       \        VP                  4      pV P                  V4       \        V 4      pV P                  P                  V4       V P                  4       p\        R P                  R4      4      pV P                  P                  V4       V P                  \        ^ ^4      4      pV P                  ^,           Vn        \!        V P                  4      p^ V n        VP#                  V P                  \        ^R4      4      4       V P%                  4       pV P'                  4       p	V P)                  4       p
V P+                  4       pV P-                  4       pV P/                  4       pV P1                  V
VV4      pV P3                  VV
VVV4      pVP4                   F  pV P                  VR4       K  	  V P7                  4       pV P9                  4       w  ppV P;                  4       pV P=                  4       p\        V 4      pV P                  P                  V4       V P                  ^,           Vn        V FM  p\A        V\B        4      '       d   K  VVJg   K#  V ;P                  ^,          un        V P                  Vn"        KO  	  V ;P                  ^,          un        V P                  Vn"        V^ ,          PD                  Vn#        \I        V4      Vn%        V PM                  VVV^ ,          V	VVVR7       . pV F  pVVn'        VVn(        VPR                  f   Q hVPR                   F  pVPT                  '       d   VP                  VPT                  4       VPV                  '       g   KD  \Y        VPV                  R4      '       g   Kb  VP                  VPV                  PT                  4       K  	  VPR                  '       d   K  RVn)        K  	  V F.  pVPT                  f   K  VP                  VPT                  4       K0  	  V F5  p\[        VVP\                  ^,
          ,          PD                  4      Vn/        K7  	  VP`                  Pb                  Pd                   F&  pVVP]                  4       ^,
          ,          Vn3        K(  	  VVn4        VVn5        VV3 F  pVVn6        VVn7        K  	  V Pp                  '       d   Q RV Pp                   24       hV Pr                  '       d   Q R\u        V Pr                  4       24       hV P                   F  p\A        V\B        4      '       d   RpMQ\u        V Pp                  4      V Pr                  VPD                  &   V Pv                  Py                  VPD                  4      pV'       dD   V P{                  V4      ;_uu_ 4        V P}                  VP                  4       4       RRR4       K  V P}                  VP                  4       4       K  	  V P                  4        V Pr                  VPD                  ,          p \u        VP                  4       4      p!\        V Pp                  \        RV R	 R
V!R	 R24      V n8        \        V Pp                  \        V Pr                  V^ ,          PD                  ^,           ,          R	 4      V n8        \        V Pp                  \        V Pr                  VP>                  ,          R	 4      V n8        \        V Pp                  \        \u        V Pp                  4      R	 4      V n8        VP                  '       dW   \        \        V Pp                  VP                  VP                  VP                  VP                  VP                  4      V n8        V Pp                  #   + '       g   i     EK  ; i) zlatin-1Nembedded_files)pages_root_objfirst_page_objsig_annotation_objxmp_metadata_objstruct_tree_root_objoutline_dict_objdestz@Nothing should have been appended to the .buffer at this stage: z.No offset should have been set at this stage: [z 12dr[   r_   )Mrl   pdf_objsrg   r   pdf_versionr   r   _add_pdf_objr;   _add_catalogrw   encode
_add_pagesslicerA   rB   listextend_add_pages_root_add_annotations_as_objects_add_images_add_gfxstates_add_shadings_add_patterns
_add_fonts_add_resources_dictr   _add_structure_tree_add_document_outline_add_xmp_metadata	_add_inforC   
isinstancer   rk   r'   r   kids_finalize_catalogparent	resourcesannotsr   r   hasattrrj   page_numberpage_refstruct_builderdoc_struct_elemkpgrF   rG   rD   rE   rc   rh   rd   trace_labels_per_obj_idget_trace_size_outrr   _log_final_sections_sizesr   r%   r(   r*   r,   	_sign_keyr	   r   
_sign_cert_sign_extra_certs_sign_hashalgo
_sign_time)"r.   rl   linearization_objrF   rD   hint_stream_obj	page_objsfirst_xref_pdf_objsr   r   img_objs_per_indexgfxstate_objs_per_nameshading_objs_per_namepattern_objs_per_namefont_objs_per_indexresources_dict_objembedded_filer   r   outline_itemsr   rE   rG   pdf_objdestspage_objannotoutline_itemr   struct_elemr\   trace_label
hs1_offset
hs1_lengths"   &                                 r   	bufferize"LinearizedOutputProducer.bufferize   s[   yy 	Yt'7'789,T-=-=>+,&t,
Z('')'		)(<=_-OOE!QK0	  ;;?
"4==1 	q$89 --/!==?!--/!%!4!4!6 $ 2 2 4 $ 2 2 4"oo"!

 "55"!!
 "00Mm-=> 1#779*.*D*D*F'-113>>#%d+	Y' #'++/
*Gw(899?2q ![[
 + 	q![[ (loo&y1)$Q<1-!5- 	 	
 ')!H,HO!3H??...!:::LL,777wuww77LL.	 )
 ???"& " *L  ,\../ * D#$$q("DM   ..>>@@K&{'>'>'@1'DEKN A)	(

+D*D$DM , 	\Mdkk][	\ 	P;C<M;NO	P}}G'#344"+.t{{+;WZZ("::>>wzzJ%%k22IIg//12 32 		'++-. % 	&&( \\/"4"45
2245
"KK1
4 *T!2!4

 #KK-||IaLOOa/06

 #KK2||I223D9

 #KK#4;;%
 >>>&&&##DK {{U 322s   ! __ )rc   rA   N)r2   r3   r4   r5   r   r6   r7   ru   s   @r   r   r      s     r rr   r   )"__doc__typingr   r   outputr   r   r   r   r   signr	   syntaxr
   r   r   r   r   rj   utilr   endesiver   ImportError
encryptionr   r%   r(   r*   r,   r   r;   rw   r    r   r   <module>r      s    + T T    3(E %$2 !)7 &( )y )P( Pf$  s~ s{  Fs   A> >	B
	B
