+
    i                     @   ^ RI t ^ RIt^ RIt^ RIt^ RI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 ]P$                  R,          R%8  d   ^ RIHt M^ RIHt ]P$                  R&8  d   ^ RIHt M^ RIHt ^R	IHt ^R
IHtHt ^RIHtHtHtHtH t H!t!H"t" ^RI#H$t$H%t%H&t& Rt'Rt( ! R R]4      t) ! R R])4      t* ! R R])4      t+ ! R R])4      t,^t- ! R R].])4      t/ ! R R]0])4      t1 ! R R]2])4      t3 ! R R]4])4      t5 ! R R ]4])4      t6R! R" lt7R# R$ lt8R# )'    N)Sequence)log10)iter_unpack)AnyCallableClassVarOptionalUnioncastN   N)	TypeGuard)Self)_pdfdoc_encoding_rev)PdfObjectProtocolPdfWriterProtocol)
StreamTypeclasspropertydeprecation_no_replacementdeprecation_with_replacementlogger_warningread_non_whitespaceread_until_regex)STREAM_TRUNCATED_PREMATURELYPdfReadErrorPdfStreamErrorzMathieu Fenniakzbiziqe@mathieu.fenniak.netc                      a  ] tR t^@t o ]P
                  tV 3R lR ltV 3R lR ltV 3R lR lt	V 3R lR lt
RV 3R	 lR
 lltRV 3R lR lltV 3R lR ltRV 3R lR lltV 3R ltRtV tR# )	PdfObjectc                    < V ^8  d   QhRS[ /# r   returnint)format__classdict__s   "Y/Users/agent/.openclaw/workspace/venv/lib/python3.14/site-packages/pypdf/generic/_base.py__annotate__PdfObject.__annotate__E   s     

 

# 

    c                F    \        V P                  P                   R24      h)Q
Used to detect modified object.

Returns:
    Hash considering type and value.

z& does not implement .hash_bin() so farNotImplementedError	__class____name__selfs   &r&   hash_binPdfObject.hash_binE   s'     "~~&&''MN
 	
r)   c                    < V ^8  d   QhRS[ /# r    bytes)r$   r%   s   "r&   r'   r(   Q   s     " " "r)   c                $    V  P                  4       # Nencoder0   s   &r&   hash_value_dataPdfObject.hash_value_dataQ   s    !!r)   c                    < V ^8  d   QhRS[ /# r    r5   )r$   r%   s   "r&   r'   r(   T   s      E r)   c                    V P                   P                   R V P                  V P                  4       4      P	                  4        2P                  4       # ):)r.   r/   	hash_funcr;   	hexdigestr:   r0   s   &r&   
hash_valuePdfObject.hash_valueT   sG    ~~&&'q~~d2245??ABD
&(	r)   c                $   < V ^8  d   QhRS[ RR/# r   pdf_destr!   r   r   )r$   r%   s   "r&   r'   r(   Z   s     $ $#$ 
$r)   c                $    V P                  V4      # )z
Clone object into pdf_dest (PdfWriterProtocol which is an interface for PdfWriter)
without ensuring links. This is used in clone_document_from_root with incremental = True.

Args:
  pdf_dest: Target to clone to.

Returns:
  The cloned PdfObject

)cloner1   rF   s   &&r&   	replicatePdfObject.replicateZ   s     zz(##r)   c          
      f   < V ^8  d   QhRS[ RS[RS[S[S[S[S[3,          ,          ,          RR/# )r   rF   force_duplicateignore_fieldsr!   r   r   boolr	   r   r
   strr#   )r$   r%   s   "r&   r'   r(   k   sE     
 
#
 
  sCx 9:	

 

r)   c                F    \        V P                  P                   R24      h)a#  
Clone object into pdf_dest (PdfWriterProtocol which is an interface for PdfWriter).

By default, this method will call ``_reference_clone`` (see ``_reference``).


Args:
  pdf_dest: Target to clone to.
  force_duplicate: By default, if the object has already been cloned and referenced,
    the copy will be returned; when ``True``, a new copy will be created.
    (Default value = ``False``)
  ignore_fields: List/tuple of field names (for dictionaries) that will be ignored
    during cloning (applies to children duplication as well). If fields are to be
    considered for a limited number of levels, you have to add it as integer, for
    example ``[1,"/B","/TOTO"]`` means that ``"/B"`` will be ignored at the first
    level only but ``"/TOTO"`` on all levels.

Returns:
  The cloned PdfObject

z! does not implement .clone so farr,   r1   rF   rN   rO   s   &&&&r&   rI   PdfObject.clonek   s'    6 "~~&&''HI
 	
r)   c                2   < V ^8  d   QhRS[ RS[RS[RS[/# )r   rI   rF   rN   r!   )r   r   rQ   r   )r$   r%   s   "r&   r'   r(      s-     8 88$58HL8	8r)   c                    V'       g   VP                   P                  V8X  d   V#  T P                   pTP                  '       dQ   TeM   TP                  TP
                  8X  d2   TP                  \        TP                  4      8:  d   TP                  pM\        TP                  4      ^,           pTEe7   \        TP                  4      TP                  9  dV   / TP                  \        TP                  4      &   TP                  TP                  \        TP                  4      ,          R&   T'       g   TP                  TP                  \        TP                  4      ,          9   dO   TP                  TP                  \        TP                  4      ,          TP                  ,          4      pTf   Q hT# YRP                  \        TP                  4      ,          TP                  &    YP                  T^,
          &   \        T^ T4      Tn         T#   \         d     ELi ; i  \         d    Tu # i ; i  \         d4    TP                  P                  T4       \        TP                  4      p Lvi ; i)a  
Reference the object within the _objects of pdf_dest only if
indirect_reference attribute exists (which means the objects was
already identified in xref/xobjstm) if object has been already
referenced do nothing.

Args:
  clone:
  pdf_dest:

Returns:
  The clone

	PreventGC)indirect_referencepdf	ExceptionAttributeErrorincremental_readeridnumlen_objectsid_id_translated
get_object
IndexErrorappendIndirectObject)r1   rI   rF   rN   indiobjs   &&&&   r&   _reference_clonePdfObject._reference_clone   s   "	"u'?'?'C'Cx'O	))C    8+++		S!2!233		AH%%&*A?#''{("9"9979''3774DGGG''3774[A#II!8!8CGG!EE))++BswwK8C &
>?##BswwK0;	'',a!e$ $2!Q#A I  		
  	L	6  	'$$U+H%%&A	's9   H H H) .H< H&%H&)H98H9<;I:9I:c                .   < V ^8  d   QhRS[ R,          /# r   r!   r   r	   )r$   r%   s   "r&   r'   r(      s      H[1 r)   c                    V # )zResolve indirect references. r0   s   &r&   rd   PdfObject.get_object       r)   Nc                B   < V ^8  d   QhRS[ RS[RS[S[3,          RR/# r   streamencryption_keyNr!   r   r
   rR   r6   )r$   r%   s   "r&   r'   r(      s1     " " "27c58H2I"	"r)   c                    \         hr8   )r-   r1   rv   rw   s   &&&r&   write_to_streamPdfObject.write_to_stream   s
     "!r)   c                N   < V ^8  d   Qh/ S[ R,          ;R&   S[R,          ;R&   # )r   r@   rg   rY   ).zhashlib._Hash)r   r	   )r$   r%   s   "r&   r'   r(   @   s)     ,-<  !!122 r)   rq   Frq   Fr8   )r/   
__module____qualname____firstlineno__hashlibsha1r@   r2   r;   rB   rK   rI   rk   rd   r{   __annotate_func____static_attributes____classdictcell__r%   s   @r&   r   r   @   sg     07I

 

" " $ $"
 
>8 8t " "Q  r)   r   c                      a  ] tR t^t o RV 3R lR lltV 3R lR ltRV 3R lR llt]V 3R lR	 l4       tV 3R
 lR lt	V 3R lR lt
V 3R lR ltRtV tR# )
NullObjectc          
      f   < V ^8  d   QhRS[ RS[RS[S[S[S[S[3,          ,          ,          RR/# )r   rF   rN   rO   r!   r   rP   )r$   r%   s   "r&   r'   NullObject.__annotate__   sE     	
 	
#	
 	
  sCx 9:		

 
	
r)   c                J    \        RV P                  \        4       W4      4      # )Clone object into pdf_dest.r   )r   rk   r   rT   s   &&&&r&   rI   NullObject.clone   s%     $//
hX
 	
r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r      s     ' '# 'r)   c                .    \        V P                  34      # r+   hashr.   r0   s   &r&   r2   NullObject.hash_bin   s     T^^%&&r)   Nc                B   < V ^8  d   QhRS[ RS[RS[S[3,          RR/# ru   rx   )r$   r%   s   "r&   r'   r      s1       27c58H2I	r)   c                H    Ve   \        RR4       VP                  R4       R # )N/the encryption_key parameter of write_to_stream5.0.0   null)r   writerz   s   &&&r&   r{   NullObject.write_to_stream   s%     %&A7 	Wr)   c                $   < V ^8  d   QhRS[ RR/# )r   rv   r!   r   r   )r$   r%   s   "r&   r'   r      s        r)   c                \    V P                  ^4      pVR8w  d   \        R4      h\        4       # )   r   zCould not read Null object)readr   r   )rv   nulltxts   & r&   read_from_streamNullObject.read_from_stream   s+    ++a.g;<<|r)   c                    < V ^8  d   QhRS[ /# r    rR   )r$   r%   s   "r&   r'   r      s      # r)   c                    R # )r   rq   r0   s   &r&   __repr__NullObject.__repr__   s    r)   c                &   < V ^8  d   QhRS[ RS[/# r   otherr!   objectrQ   )r$   r%   s   "r&   r'   r      s     - -F -t -r)   c                "    \        V\        4      # r8   )
isinstancer   r1   r   s   &&r&   __eq__NullObject.__eq__   s    %,,r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r            # r)   c                "    V P                  4       # r8   r2   r0   s   &r&   __hash__NullObject.__hash__       }}r)   rq   r~   r8   )r/   r   r   r   rI   r2   r{   staticmethodr   r   r   r   r   r   r   s   @r&   r   r      sU     	
 	
' '    - - r)   r   c                      a  ] tR t^t o V 3R lR ltRV 3R lR lltV 3R lR ltV 3R lR ltV 3R	 lR
 ltV 3R lR lt	RV 3R lR llt
]V 3R lR l4       tRtV tR# )BooleanObjectc                $   < V ^8  d   QhRS[ RR/# )r   valuer!   Nr   )r$   r%   s   "r&   r'   BooleanObject.__annotate__   s      c d r)   c                    Wn         R # r8   r   )r1   r   s   &&r&   __init__BooleanObject.__init__   s    
r)   c          
      f   < V ^8  d   QhRS[ RS[RS[S[S[S[S[3,          ,          ,          RR/# )r   rF   rN   rO   r!   r   rP   )r$   r%   s   "r&   r'   r     sE     

 

#

 

  sCx 9:	


 


r)   c                `    \        RV P                  \        V P                  4      W4      4      # )r   r   )r   rk   r   r   rT   s   &&&&r&   rI   BooleanObject.clone  s-     !!-

";XW
 	
r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r     s     2 2# 2r)   c                D    \        V P                  V P                  34      # r   )r   r.   r   r0   s   &r&   r2   BooleanObject.hash_bin  s     T^^TZZ011r)   c                &   < V ^8  d   QhRS[ RS[/# )r   or!   r   )r$   r%   s   "r&   r'   r     s       d r)   c                   \        V\        4      '       d   V P                  VP                  8H  # \        V\        4      '       d   V P                  V8H  # R # r   )r   r   r   rQ   r1   r   s   ""r&   r   BooleanObject.__eq__  s@    a''::((a::?"r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r     r   r)   c                "    V P                  4       # r8   r   r0   s   &r&   r   BooleanObject.__hash__  r   r)   c                    < V ^8  d   QhRS[ /# r    r   )r$   r%   s   "r&   r'   r   "  s     1 1# 1r)   c                .    V P                   '       d   R # R# )TrueFalser   r0   s   &r&   r   BooleanObject.__repr__"  s    v00r)   Nc                B   < V ^8  d   QhRS[ RS[RS[S[3,          RR/# ru   rx   )r$   r%   s   "r&   r'   r   %  s1     
# 
# 
#27c58H2I
#	
#r)   c                    Ve   \        RR4       V P                  '       d   VP                  R4       R # VP                  R4       R # )Nr   r      trues   false)r   r   r   rz   s   &&&r&   r{   BooleanObject.write_to_stream%  s:     %&A7 :::LL!LL"r)   c                $   < V ^8  d   QhRS[ RR/# )r   rv   r!   r   r   )r$   r%   s   "r&   r'   r   2  s     < < < <r)   c                    V P                  ^4      pVR8X  d   \        R4      # VR8X  d   V P                  ^4       \        R4      # \        R4      h)r   r   Ts   falsFzCould not read Boolean object)r   r   r   )rv   words   & r&   r   BooleanObject.read_from_stream1  sJ    {{1~7? &&7?KKN '':;;r)   r   r~   r8   )r/   r   r   r   r   rI   r2   r   r   r   r{   r   r   r   r   r   s   @r&   r   r      s_      

 

2 2  1 1
# 
# < <r)   r   c                     a  ] tR tRt o V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR	 ltR.V 3R
 lR llt]	V 3R lR l4       t
V 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR ltV 3R  lR! ltV 3R" lR# ltV 3R$ lR% ltV 3R& lR' ltR/V 3R) lR* llt]V 3R+ lR, l4       tR-tV tR(# )0rg   i<  c                0   < V ^8  d   QhRS[ RS[ RS[RR/# )r   r_   
generationrZ   r!   N)r#   r   )r$   r%   s   "r&   r'   IndirectObject.__annotate__=  s)      c s   r)   c                *    Wn         W n        W0n        R # r8   )r_   r   rZ   )r1   r_   r   rZ   s   &&&&r&   r   IndirectObject.__init__=  s    
$r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r   B  s     A A# Ar)   c                l    \        V P                  V P                  \        V P                  4      34      # r8   )r   r_   r   rb   rZ   r0   s   &r&   r   IndirectObject.__hash__B  s$    TZZ"TXX,?@@r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r   E  s     Q Q# Qr)   c                    \        V P                  V P                  V P                  \	        V P
                  4      34      # r   )r   r.   r_   r   rb   rZ   r0   s   &r&   r2   IndirectObject.hash_binE  s,     T^^TZZ"TXX,OPPr)   c                $   < V ^8  d   QhRS[ RR/# rE   rG   )r$   r%   s   "r&   r'   r   O  s#     E E#E 
Er)   c                D    \        V P                  V P                  V4      # r8   )rg   r_   r   rJ   s   &&r&   rK   IndirectObject.replicateO  s     djj$//8DDr)   c          
      f   < V ^8  d   QhRS[ RS[RS[S[S[S[S[3,          ,          ,          RR/# )r   rF   rN   rO   r!   rg   rP   )r$   r%   s   "r&   r'   r   U  sE     "& "&#"& "&  sCx 9:	"&
 
"&r)   c                   V P                   V8X  d   V'       g   V # \        V P                   4      VP                  9  dV   / VP                  \        V P                   4      &   V P                   VP                  \        V P                   4      ,          R&   V P                  VP                  \        V P                   4      ,          9   d   VP	                  VP                  \        V P                   4      ,          V P                  ,          4      pV'       dN   Vf   Q hVP
                  f   Q hVP
                  p\        VP                  VP                  VP                   4      # M^V P	                  4       pVf*   \        4       p\        V \        34      '       g   Q hWn        VP                  VP                  WV4      4      pVf   Q R4       hVP
                  f   Q R4       hVP
                  # )r   rX   mypy)rZ   rb   rc   r_   rd   rY   rg   r   r   r   _add_objectrI   )r1   rF   rN   rO   dupidrefrj   s   &&&&   r&   rI   IndirectObject.cloneU  s    88xKdhh<x66646H##BtxxL1AEH##BtxxL1+>::00DHH>>%%h&=&=bl&KDJJ&WXC&--999..%ekk53C3CUYYOO	  //#C{ l!$(9::::)-&&&		(]CC &&%%19691%%%r)   c                   < V ^8  d   QhRR/# )r   r!   rg   rq   )r$   r%   s   "r&   r'   r   z  s      $4 r)   c                    V # r8   rq   r0   s   &r&   rY   !IndirectObject.indirect_referencey  rs   r)   c                .   < V ^8  d   QhRS[ R,          /# rn   ro   )r$   r%   s   "r&   r'   r   }  s     ) )H[1 )r)   c                8    V P                   P                  V 4      # r8   )rZ   rd   r0   s   &r&   rd   IndirectObject.get_object}  s    xx""4((r)   c                $   < V ^8  d   QhRS[ RR/# )r   memor!   rg   r   )r$   r%   s   "r&   r'   r     s      E E E)9 Er)   c                X    \        V P                  V P                  V P                  4      # r8   )rg   r_   r   rZ   )r1   r   s   &&r&   __deepcopy__IndirectObject.__deepcopy__  s    djj$//488DDr)   c                .   < V ^8  d   QhRS[ R,          /# rn   ro   )r$   r%   s   "r&   r'   r     s      (= r)   c                    V P                  4       p\        V\        4      '       d-   \        V P	                  4        R VP	                  4        24      hV# )z references an IndirectObject )rd   r   rg   r   r   r   s   & r&   _get_object_with_check%IndirectObject._get_object_with_check  sK    OOa(( ==?##A!**,P  r)   c                &   < V ^8  d   QhRS[ RS[/# )r   namer!   )rR   r   )r$   r%   s   "r&   r'   r     s        r)   c                t     \        V P                  4       V4      #   \         d    \        R T R24      hi ; i)zNo attribute z* found in IndirectObject or pointed object)getattrr  r\   r1   r  s   &&r&   __getattr__IndirectObject.__getattr__  sF    	4668$?? 	 v%OP 	s    7c                &   < V ^8  d   QhRS[ RS[ /# r   keyr!   r   )r$   r%   s   "r&   r'   r     s     2 2s 2s 2r)   c                0    V P                  4       V,          # r8   r  r1   r  s   &&r&   __getitem__IndirectObject.__getitem__  s    **,S11r)   c                &   < V ^8  d   QhRS[ RS[/# r  )r   rQ   )r$   r%   s   "r&   r'   r     s     4 4 4 4r)   c                &    WP                  4       9   # r8   r  r  s   &&r&   __contains__IndirectObject.__contains__  s    11333r)   c                    < V ^8  d   QhRS[ /# r    r   )r$   r%   s   "r&   r'   r     s     8 8# 8r)   c                >    V P                  4       P                  4       # r8   )r  __iter__r0   s   &r&   r  IndirectObject.__iter__  s    **,5577r)   c                    < V ^8  d   QhRS[ /# r    r   )r$   r%   s   "r&   r'   r     s     - -3 -r)   c                >    V P                  4       P                  4       # r8   )rd   	__float__r0   s   &r&   r  IndirectObject.__float__  s     **,,r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r          + + +r)   c                >    V P                  4       P                  4       # r8   )rd   __int__r0   s   &r&   r$  IndirectObject.__int__       ((**r)   c                    < V ^8  d   QhRS[ /# r    r   )r$   r%   s   "r&   r'   r     r"  r)   c                >    V P                  4       P                  4       # r8   )rd   __str__r0   s   &r&   r)  IndirectObject.__str__  r&  r)   c                    < V ^8  d   QhRS[ /# r    r   )r$   r%   s   "r&   r'   r     s     V V# Vr)   c                l    R V P                   : RV P                  : R\        V P                  4       R2# )zIndirectObject(z, ))r_   r   rb   rZ   r0   s   &r&   r   IndirectObject.__repr__  s/     b0C2bl^STUUr)   c                &   < V ^8  d   QhRS[ RS[/# r   r   )r$   r%   s   "r&   r'   r     s     
 
F 
t 
r)   c                    VR J;'       ds    \        V\        4      ;'       d[    V P                  VP                  8H  ;'       d:    V P                  VP                  8H  ;'       d    V P                  VP                  J # r8   )r   rg   r_   r   rZ   r   s   &&r&   r   IndirectObject.__eq__  sw     & &5.1& &

ekk)& & 5#3#33& & EII%	
r)   c                &   < V ^8  d   QhRS[ RS[/# r   r   )r$   r%   s   "r&   r'   r     s     & &F &t &r)   c                .    V P                  V4      '       * # r8   )r   r   s   &&r&   __ne__IndirectObject.__ne__  s    ;;u%%%r)   Nc                B   < V ^8  d   QhRS[ RS[RS[S[3,          RR/# ru   rx   )r$   r%   s   "r&   r'   r     s6     C C C27c58H2IC	Cr)   c                    Ve   \        RR4       VP                  V P                   RV P                   R2P	                  4       4       R # )Nr   r    z R)r   r   r_   r   r:   rz   s   &&&r&   r{   IndirectObject.write_to_stream  sD     %&A7 	

|1T__$5R8??ABr)   c                *   < V ^8  d   QhRS[ RS[RR/# )r   rv   rZ   r!   rg   r   r   )r$   r%   s   "r&   r'   r     s(     @ @ @# @:J @r)   c                   R p V P                  ^4      pV'       g   \        \        4      hVP                  4       '       d   M
W#,          pKJ  R p V P                  ^4      pV'       g   \        \        4      hVP                  4       '       d   V'       g   KI  M
WC,          pKT  \	        V 4      pVR8w  d&   \        R\        V P                  4       4       24      h\        \        V4      \        V4      V4      # )r)      Rz0Error reading indirect object reference at byte )
r   r   r   isspacer   r   hextellrg   r#   )rv   rZ   r_   tokr   rs   &&    r&   r   IndirectObject.read_from_stream  s    ++a.C$%ABB{{}}LE
++a.C$%ABB{{}}!J'9B3v{{}CUBVW  c%j#j/3??r)   )r   r_   rZ   r~   r8   )r/   r   r   r   r   r   r2   rK   rI   propertyrY   rd   r   r  r  r  r  r  r  r$  r)  r   r   r4  r{   r   r   r   r   r   s   @r&   rg   rg   <  s      
A AQ QE E"& "&H  ) )E E  2 24 48 8- -+ ++ +V V
 
& &C C @ @r)   rg   c                      a  ] tR tRt o RV 3R lR lltRV 3R lR lltV 3R lR ltV 3R	 lR
 ltV 3R lR ltV 3R lR lt	RV 3R lR llt
RtV tR# )FloatObjecti  Nc                <   < V ^8  d   QhRS[ RS[S[ ,          RS[/# )r   r   contextr!   )r   r	   r   )r$   r%   s   "r&   r'   FloatObject.__annotate__  s)     + ++*23-+	+r)   c                     \        V4      p\         P                  W4      #   \         d7   p\        T R T R2\        4       \         P                  T R4      u Rp?# Rp?ii ; i)z : FloatObject (z) invalid; use 0.0 insteadg        N)float__new__r[   r   r/   )clsr   rH  es   &&& r&   rL  FloatObject.__new__  s`    		+%LE==,, 	+ #%eW,FG ==c**	+s   " A#+AA#A#c          
      f   < V ^8  d   QhRS[ RS[RS[S[S[S[S[3,          ,          ,          RR/# )r   rF   rN   rO   r!   rF  r   rQ   r	   r   r
   rR   r#   )r$   r%   s   "r&   r'   rI    sE     

 



 

  sCx 9:	


 


r)   c                L    \        RV P                  \        V 4      W4      4      # )r   rF  )r   rk   rF  rT   s   &&&&r&   rI   FloatObject.clone  s)     !!+d"3XO
 	
r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   rI    s     7 7# 7r)   c                D    \        V P                  V P                  34      # r   r   r.   
as_numericr0   s   &r&   r2   FloatObject.hash_bin  s     T^^T__566r)   c                    < V ^8  d   QhRS[ /# r    r   )r$   r%   s   "r&   r'   rI    s     @ @ @r)   c                    V ^ 8X  d   R# \         \        \        \        V 4      4      4      ,
          pV R\	        ^V4       R2 P                  R4      P                  R4      # )r   0.0.f0)FLOAT_WRITE_PRECISIONr#   r   absmaxrstrip)r1   nbs   & r&   myreprFloatObject.myrepr  sS    19"Ss4y)9%::qQAo&..s3::3??r)   c                    < V ^8  d   QhRS[ /# r    r   )r$   r%   s   "r&   r'   rI    s      # r)   c                "    V P                  4       # r8   )rd  r0   s   &r&   r   FloatObject.__repr__  s    {{}r)   c                    < V ^8  d   QhRS[ /# r    rK  )r$   r%   s   "r&   r'   rI    s      E r)   c                    \        V 4      # r8   rj  r0   s   &r&   rW  FloatObject.as_numeric  s    T{r)   c                B   < V ^8  d   QhRS[ RS[RS[S[3,          RR/# ru   rx   )r$   r%   s   "r&   r'   rI    s1     3 3 327c58H2I3	3r)   c                    Ve   \        RR4       VP                  V P                  4       P                  R4      4       R # Nr   r   utf8)r   r   rd  r:   rz   s   &&&r&   r{   FloatObject.write_to_stream  s6     %&A7 	T[[]))&12r)   rq   )r[  Nr~   r8   )r/   r   r   r   rL  rI   r2   rd  r   rW  r{   r   r   r   s   @r&   rF  rF    sR     + +

 

7 7@ @  3 3 3r)   rF  c                      a  ] tR tRt o ]P
                  ! R4      tV 3R lR ltRV 3R lR lltV 3R lR lt	V 3R	 lR
 lt
RV 3R lR llt]V 3R lR l4       tRtV tR# )NumberObjecti  s	   [^+-.0-9]c                &   < V ^8  d   QhRS[ RS[/# r   r   r!   r   r   )r$   r%   s   "r&   r'   NumberObject.__annotate__   s     ' 'C 'D 'r)   c                     \         P                  V \        V4      4      #   \         d.    \        R T R2\        4       \         P                  T ^ 4      u # i ; i)zNumberObject(z) invalid; use 0 instead)r#   rL  
ValueErrorr   r/   )rM  r   s   &&r&   rL  NumberObject.__new__   sP    	';;sCJ// 	']5'1IJHU;;sA&&	's   ! 5AAc          
      f   < V ^8  d   QhRS[ RS[RS[S[S[S[S[3,          ,          ,          RR/# )r   rF   rN   rO   r!   rs  rQ  )r$   r%   s   "r&   r'   rw  '  sE     

 



 

  sCx 9:	


 


r)   c                L    \        RV P                  \        V 4      W4      4      # )r   rs  )r   rk   rs  rT   s   &&&&r&   rI   NumberObject.clone'  s)     !!,t"4hP
 	
r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   rw  3  s     9 9# 9r)   c                L    \        V P                  V P                  4       34      # r   rV  r0   s   &r&   r2   NumberObject.hash_bin3  s     T^^T__%6788r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   rw  =  s     . .C .r)   c                H    \        \        V 4      P                  R 4      4      # )rp  )r#   reprr:   r0   s   &r&   rW  NumberObject.as_numeric=  s    4:$$V,--r)   Nc                B   < V ^8  d   QhRS[ RS[RS[S[3,          RR/# ru   rx   )r$   r%   s   "r&   r'   rw  @  s1     0 0 027c58H2I0	0r)   c                x    Ve   \        RR4       VP                  \        V 4      P                  R4      4       R # ro  )r   r   r  r:   rz   s   &&&r&   r{   NumberObject.write_to_stream@  s4     %&A7 	T$Z&&v./r)   c                4   < V ^8  d   QhRS[ RS[R,          /# )r   rv   r!   )rs  rF  )r   r
   )r$   r%   s   "r&   r'   rw  J  s!     ! ! !6S0T !r)   c                p    \        V \        P                  4      pR V9   d   \        V4      # \        V4      # )   .)r   rs  NumberPatternrF  )rv   nums   & r&   r   NumberObject.read_from_streamI  s1    v|'A'AB3;s##C  r)   rq   r~   r8   )r/   r   r   r   recompiler  rL  rI   r2   rW  r{   r   r   r   r   r   s   @r&   rs  rs    sY     JJ|,M' '

 

9 9. .0 0 ! !r)   rs  c                      a  ] tR tRt o RtRV 3R lR lltV 3R lR lt]V 3R lR l4       tRV 3R
 lR llt	V 3R lR lt
RtV tR	# )ByteStringObjectiQ  a*  
Represents a string object where the text encoding could not be determined.

This occurs quite often, as the PDF spec doesn't provide an alternate way to
represent strings -- for example, the encryption data stored in files (like
/O) is clearly not text, but is still stored in a "String" object.
c          
      f   < V ^8  d   QhRS[ RS[RS[S[S[S[S[3,          ,          ,          RR/# )r   rF   rN   rO   r!   r  rQ  )r$   r%   s   "r&   r'   ByteStringObject.__annotate__Z  sE     
 

 
  sCx 9:	

 

r)   c           
     ^    \        RV P                  \        \        V 4      4      W4      4      # )r   r  )r   rk   r  r6   rT   s   &&&&r&   rI   ByteStringObject.cloneZ  s0     !! t-x
 	
r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r  h  s     3 3# 3r)   c                B    \        V P                  \        V 4      34      # r   )r   r.   r6   r0   s   &r&   r2   ByteStringObject.hash_binh  s     T^^U4[122r)   c                    < V ^8  d   QhRS[ /# r    r5   )r$   r%   s   "r&   r'   r  s  s       r)   c                    V # )z7For compatibility with TextStringObject.original_bytes.rq   r0   s   &r&   original_bytesByteStringObject.original_bytesr  s	     r)   Nc                B   < V ^8  d   QhRS[ RS[RS[S[3,          RR/# ru   rx   )r$   r%   s   "r&   r'   r  w  s1     	 	 	27c58H2I			r)   c                    Ve   \        RR4       VP                  R4       VP                  \        P                  ! V 4      4       VP                  R4       R # )Nr   r      <   >)r   r   binasciihexlifyrz   s   &&&r&   r{    ByteStringObject.write_to_streamw  sH     %&A7 	TX%%d+,Tr)   c                    < V ^8  d   QhRS[ /# r    r   )r$   r%   s   "r&   r'   r    s     > > >r)   c                    R .\        \        P                  4      OpV F  p V P                  V4      u # 	  \        R4      h  \         d     K2  i ; i)utf-16zCannot decode ByteStringObject.)list
NameObjectCHARSETSdecodeUnicodeDecodeErrorr   )r1   charset_to_tryencs   &  r&   r)  ByteStringObject.__str__  sZ    "?T**=*=%>?!C{{3'' "
 <== & s   AAArq   r~   r8   )r/   r   r   r   __doc__rI   r2   rD  r  r{   r)  r   r   r   s   @r&   r  r  Q  sF     
 
3 3  	 	> >r)   r  c                      a  ] tR tRt o RtRtV 3R lR ltRV 3R lR lltV 3R lR	 lt]	V 3R
 lR l4       t
V 3R lR ltV 3R lR ltRV 3R lR lltV 3R ltRtV tR# )TextStringObjecti  z
A string object that has been decoded into a real unicode string.

If read from a PDF document, this string appeared to match the
PDFDocEncoding, or contained a UTF-16BE BOM mark to cause UTF-16 decoding
to occur.
Nc                &   < V ^8  d   QhRS[ RS[/# ru  rv  )r$   r%   s   "r&   r'   TextStringObject.__annotate__  s     !" !"C !"D !"r)   c                
   R p\        V\        4      '       d   TpVP                  R4      p\        P	                  W4      pW#n        RVn        RVn        RVn        Veo   VR,          \        P                  \        P                  09   dC    \        P	                  WP                  R4      4      pW#n        RVn        VR,          Vn        V#  \#        V4       RVn        V#   \         dg   p\        T: RTP                  : 2\        4       \        P	                  YP                  R TP                    P                  R4      4      p R p?LR p?ii ; i  \$         d!    RTn        \        P                  Tn         T# i ; i)NcharmapFr)   r   r  z
initial string:T)r   r6   r  rR   rL  _original_bytesautodetect_utf16autodetect_pdfdocencoding	utf16_bomcodecsBOM_UTF16_LEBOM_UTF16_BEr  r   r   r/   startencode_pdfdocencodingUnicodeEncodeError)rM  r   r  text_string_object	exceptions   &&   r&   rL  TextStringObject.__new__  sw   eU##"NLL+E [[4-;*.3+7<4'*$%.*<ATATV\ViVi@j*j
l%([[6K6KH6U%V" 2@.26/+9"+=( "!C%&89?C"< "!! & l m#4Y5E5E4HI &)[[6F6FGX6Y6`6`ai6j%k"l & C6:"3/5/B/B",!!Cs+   $C# E #E.AEE'FFc          
      f   < V ^8  d   QhRS[ RS[RS[S[S[S[S[3,          ,          ,          RR/# )r   rF   rN   rO   r!   r  rQ  )r$   r%   s   "r&   r'   r    sE     
 

 
  sCx 9:	

 

r)   c                    \        V 4      pV P                  Vn        V P                  Vn        V P                  Vn        V P                  Vn        \        RV P                  WAV4      4      # )r   r  )r  r  r  r  r  r   rk   )r1   rF   rN   rO   rj   s   &&&& r&   rI   TextStringObject.clone  sb     t$"22(,(F(F%#44 5 5c_ U
 	
r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r    s     ; ;# ;r)   c                D    \        V P                  V P                  34      # r   )r   r.   r  r0   s   &r&   r2   TextStringObject.hash_bin  s     T^^T%8%89::r)   c                    < V ^8  d   QhRS[ /# r    r5   )r$   r%   s   "r&   r'   r    s     	) 	) 	)r)   c                V    V P                   e   V P                   # V P                  4       # )a  
It is occasionally possible that a text string object gets created where
a byte string object was expected due to the autodetection mechanism --
if that occurs, this "original_bytes" property can be used to
back-calculate what the original encoded bytes were.
)r  get_original_bytesr0   s   &r&   r  TextStringObject.original_bytes  s+     +'''&&((r)   c                    < V ^8  d   QhRS[ /# r    r5   )r$   r%   s   "r&   r'   r    s     ? ?E ?r)   c                   V P                   '       d   V P                  \        P                  8X  d'   \        P                  V P	                  R 4      ,           # V P                  \        P
                  8X  d'   \        P
                  V P	                  R4      ,           # V P	                  R4      # V P                  '       d   \        V 4      # \        R4      h)utf-16leutf-16bez#no information about original bytes)	r  r  r  r  r:   r  r  r  r[   r0   s   &r&   r  #TextStringObject.get_original_bytes  s        ~~!4!44**T[[-DDD~~!4!44**T[[-DDD;;z**)))(..=>>r)   c                    < V ^8  d   QhRS[ /# r    r5   )r$   r%   s   "r&   r'   r    s      5 r)   c                    V P                   e   V P                   # V P                  '       d   \        RRRRR4      h\        V 4      pV#   \         d    T P                  \
        P                  8X  d*   \
        P                  T P                  R4      ,           p T# T P                  \
        P                  8X  d*   \
        P                  T P                  R4      ,           p T# T P                  R4      p T# i ; i)N forcedr  r  )	r  r  r  r  r  r  r  r:   r  )r1   bytearrs   & r&   get_encoded_bytes"TextStringObject.get_encoded_bytes  s    	2##/+++$$$(Xr2rBB+D1G  " 	2~~!4!44 --J0GG
 	 6#6#66 --J0GG  ++j1	2s)   A
 A
 A
 
AC:AC:%C:9C:c                B   < V ^8  d   QhRS[ RS[RS[S[3,          RR/# ru   rx   )r$   r%   s   "r&   r'   r    s1       27c58H2I	r)   c                   Ve   \        RR4       V P                  4       pVP                  R4       \        RV4       Fk  p\	        \
        V^ ,          4      pVP                  4       '       g+   VR8w  d$   VP                  R\        V4      ,          4       KZ  VP                  V4       Km  	  VP                  R4       R # )Nr   r      (c    s   \%03o   ))r   r  r   r   r   r6   isalnumord)r1   rv   rw   r  c_r  s   &&&   r&   r{    TextStringObject.write_to_stream  s     %&A7 ((*Tc7+BUBqE"A99;;19
 YQ/0Q , 	Tr)   c                Z   < V ^8  d   Qh/ S[ ;R&   S[ ;R&   S[;R&   S[S[,          ;R&   # )r   r  r  r  r  )rQ   r6   r	   )r$   r%   s   "r&   r'   r    s=       $#      e_+ r)   rq   r~   r8   )r/   r   r   r   r  r  rL  rI   r2   rD  r  r  r  r{   r   r   r   r   s   @r&   r  r    sj      (,O!" !"F
 
 ; ; 	) 	)? ?  & u  r)   r  c                     a ] tR tRt o]P
                  ! R4      tRt/ R U u/ uF!  p \        V 4      RV R 2P                  4       bK#  	  up C]
! ^!4       U u/ uF!  p \        V 4      RV R 2P                  4       bK#  	  up CtRV3R lR lltV3R	 lR
 ltRV3R lR lltV3R lR ltV3R lR lt]V3R lR l4       t]V3R lR l4       tRt]V3R lR l4       tV3R ltRtVtR# u up i u up i )r  i  s   \s+|[\(\)<>\[\]{}/%]   /s   #()<>[]{}/%#02Xc          
      f   < V ^8  d   QhRS[ RS[RS[S[S[S[S[3,          ,          ,          RR/# )r   rF   rN   rO   r!   r  rQ  )r$   r%   s   "r&   r'   NameObject.__annotate__$  sE     

 



 

  sCx 9:	


 


r)   c                L    \        RV P                  \        V 4      W4      4      # )r   r  )r   rk   r  rT   s   &&&&r&   rI   NameObject.clone$  s)     !!*T"2HN
 	
r)   c                    < V ^8  d   QhRS[ /# r    r"   )r$   r%   s   "r&   r'   r  0  s     , ,# ,r)   c                0    \        V P                  V 34      # r   r   r0   s   &r&   r2   NameObject.hash_bin0  s     T^^T*++r)   Nc                B   < V ^8  d   QhRS[ RS[RS[S[3,          RR/# ru   rx   )r$   r%   s   "r&   r'   r  :  s1     & & &27c58H2I&	&r)   c                d    Ve   \        RR4       VP                  V P                  4       4       R # )Nr   r   )r   r   renumberrz   s   &&&r&   r{   NameObject.write_to_stream:  s+     %&A7 	T]]_%r)   c                    < V ^8  d   QhRS[ /# r    r5   )r$   r%   s   "r&   r'   r  C  s      % r)   c                   V ^ ,          P                  R4      pVR8w  d   \        RV  R2R4       V.pV R,           FV  pVR8  d*   VP                  R VP                  R4       4       4       K3   VP                  V P                  V,          4       KX  	  R	P                  V4      #   \
         d%    TP                  TP                  R4      4        K  i ; i)
r   utf-8r  z<Incorrect first char in NameObject, should start with '/': (r-  r   :   NN~c              3   J   "   T F  pR VR 2P                  4       x  K  	  R# 5i)r  r  Nr9   ).0xs   & r&   	<genexpr>&NameObject.renumber.<locals>.<genexpr>M  s&     M;Laq3[//11;Ls   !#r)   )r:   r   extendrf   renumber_tableKeyErrorjoin)r1   outpartsr  s   &   r&   r  NameObject.renumberC  s    1gnnW%$;&NtfTUV bA3wM188G;LMM4LL!4!4Q!78  xx   4LL'!234s   0"B''+CCc                   < V ^8  d   QhRR/# )r   r!   r  rq   )r$   r%   s   "r&   r'   r  U  s     & &< &r)   c                    \        V 4      P                  R4      p\        P                  ! RRV4      p\        P                  ! RRV4      p\	        RV,           4      # )z
Sanitize the NameObject's name to be a valid PDF name part
(alphanumeric, underscore, hyphen). The _sanitize method replaces
spaces and any non-alphanumeric/non-underscore/non-hyphen with
underscores.

Returns:
    NameObject with sanitized name.
/z\ _z[^a-zA-Z0-9_-])rR   removeprefixr  subr  r
  s   & r&   	_sanitizeNameObject._sanitizeU  sL     4y%%c*vveS$'vv'd3#*%%r)   c                    < V ^8  d   QhRS[ /# r    r5   )r$   r%   s   "r&   r'   r  e  s      u r)   c                     \        R RR4       R# )surfixprefixr   r  )r   )rM  s   &r&   r  NameObject.surfixd  s    $XxAr)   c                &   < V ^8  d   QhRS[ RS[ /# )r   sinr!   r5   )r$   r%   s   "r&   r'   r  j  s      e  r)   c                P   \        4       p^ pV\        V 4      8  dj   WV^,            R8X  d8    VP                  \        W^,           V^,            ^4      4       V^,          pKW  VP                  W,          4       V^,          pKy  \        V4      #   \        \
        3 d     L@i ; i)r      #)	bytearrayr`   rf   r#   ry  re   r6   )r  resultri   s   &  r&   unnumberNameObject.unnumberi  s    #c(lQU|t#MM#ca%!a%&8""=>FA
 MM#&!FAV} #J/  s   4B B%$B%c                *   < V ^8  d   QhRS[ RS[RR/# )r   rv   rZ   r!   r  r;  )r$   r%   s   "r&   r'   r  ~  s"       # , r)   c                \   V P                  ^4      pV\        P                  8w  d   \        R4      hV\	        V \        P
                  4      ,          p \        P                  V4      p\        P                   F   p VP                  V4      p\        V4      u # 	  \        RV^ ^ R4      h  \         d     KA  i ; i  \        \        3 d]   pTP                  '       g5   \        RT: R2\        4       \        TP                  R4      4      u Rp?# \        RT: R24      ThRp?ii ; i)	r  zName read errorr  zCode Not Foundz!Illegal character in NameObject (z-), you may need to adjust NameObject.CHARSETSr  Nz.). You may need to adjust NameObject.CHARSETS.)r   r  r  r   r   delimiter_patternr  r  r  r[   r  r  strictr   r/   )rv   rZ   r  r  retrN  s   &&    r&   r   NameObject.read_from_stream}  s'   {{1~:$$$011 )E)EFF	 &&t,D!**++c*C%c?* + %Rq!5EFF !  #$67 	:::7x @A A
 "$++i"8993D8 <> > 	sO   (B> =B,B> B> ,B;7B> :B;;B> >D+A D&D+D&&D+c                L   < V ^8  d   Qh/ S[ S[S[S[3,          ,          ;R&   # )r   r  )r   dictrR   r6   )r$   r%   s   "r&   r'   r    s"      T#u*-.  r)   rq   r~   r8   )r  gbklatin1)r/   r   r   r   r  r  r  r  chrr:   ranger  rI   r2   r{   r  r  r   r  r   r  r  r   r   r   r   )ri   r%   s   0@r&   r  r    s    

#;<F21?
@A3q6Qqg;%%''
@216r
;A3q6Qqg;%%''
;2N


 

, ,& & $& &    " *H E   A
;s   'C+'C0r  c                0    V ^8  d   QhR\         R\        /# )r   unicode_stringr!   )rR   r6   )r$   s   "r&   r'   r'     s     

 

# 

% 

r)   c                      \        V  Uu. uF  p\        V,          NK  	  up4      # u upi   \         d    \        R T RRR4      hi ; i)pdfdocencodingz#does not exist in translation tabler  )r6   r   r   r  )r'  ks   & r&   r  r    sX    	
~F~!*1--~FGGF 
 1
 	

s   	- (- - Ac                j    V ^8  d   QhR\         R\        \        R\        \        3,          ,          /# )r   r  r!   N)r   r   r
   r   rg   )r$   s   "r&   r'   r'     s+     	 	s 	ytZ/O)PQ 	r)   c                    V RJ ;'       gQ    \        V \        4      ;'       d9    V P                  4       RJ ;'       g    \        V P                  4       \        4      # )z0
Returns:
    True if x is None or NullObject.

N)r   r   rd   r   )r  s   &r&   is_null_or_noner-    sS     9  1i  	O 	O\\^t#MMz!,,.*'Mr)   )   
   )r.     )9r  r  r   r  syscollections.abcr   mathr   structr   typingr   r   r   r	   r
   r   version_infor   typing_extensionsr   _codecsr   
_protocolsr   r   _utilsr   r   r   r   r   r   r   errorsr   r   r   
__author____author_email__r   r   r   rg   r_  rK  rF  r#   rs  r6   r  rR   r  r  r  r-  rq   r)   r&   <module>r>     s  6    	 
 $   A AB7" +w& * =   P O
/ K"! K"\- -`;<I ;<|`@Y `@F  83% 83v1!3	 1!h8>ui 8>vMsI M`}i }@

	r)   