
    F jP                     .   S r SSKrSSKJr  SSKJrJrJrJrJr  SSK	J
r
  SSKJrJrJrJr  SSKJrJrJrJrJrJrJrJrJrJr  \(       a  SS	KJr  \R@                  4r! " S
 S5      r" " S S\"\5      r# " S S\"5      r$ " S S\5      r% " S S\5      r&g)zK
Usage documentation at: <https://py-pdf.github.io/fpdf2/Annotations.html>
    N)datetime)TYPE_CHECKINGAnyOptionalSequenceUnion   )Action)AnnotationFlagAnnotationNameAssociatedFileRelationshipFileAttachmentAnnotationName)
DestinationNamePDFContentStreamPDFDate	PDFObject	PDFStringbuild_obj_dictcreate_dictionary_stringcreate_list_stringiobj_ref)StandardSecurityHandlerc            +       $   \ rS rSr\SSSSSSSSSSSSSS4S\S\S\S\S\S	\\\-  S
4   S\	\   S\	\
\-     S\	\   S\	\\\\4      S\	\   S\	\   S\	\\      S\S\\\S4   S\	\\S
4      S\	\S\4      S\	\   S\	\   S\	\   SS4*S jjrSrg)AnnotationMixin$   Nr   subtypexywidthheightflags.contentsdestactioncolormodification_timetitlequad_pointsborder_widthnameink_list	file_specFileSpec
field_typevaluedefault_appearancereturnc           	         [        S5      U l        [        U5      U l        SUS SX5-
  S SX$-   S SUS S3	U l        SU S3U l        U(       a  [        U5      OS U l        UU l        [        [        S U 5       5      5      U l	        U(       a
  [        USS	9OS U l        Xl        Xl        U
(       a  SU
S
    SU
S    SU
S    S3OS U l        U(       a
  [        USS	9OS U l        U(       a
  [!        USS	9OS U l        U(       a  [%        U Vs/ s H  nUS PM	     sn5      OS U l        S U l        Xl        U(       a$  S[%        U Vs/ s H  nUS PM	     sn5      -   S-   OS U l        UU l        UU l        g s  snf s  snf )NAnnot[z.2f ]z[0 0 c              3   N   #    U  H  n[         R                  " U5      v   M     g 7fN)r   coerce).0flags     a/root/GenerationalWealth/GenerationalWealth/venv/lib/python3.13/site-packages/fpdf/annotations.py	<genexpr>+AnnotationMixin.__init__.<locals>.<genexpr>B   s     I54>00665s   #%T)encryptr   r	      )r   typer   rectborderf_tvsumtuplefr   r#   ar$   ctr   mpdf_listr)   pr+   r,   f_sd_a)selfr   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r/   r0   r1   
quad_pointcoords                          r=   __init__AnnotationMixin.__init__%   s   . M	G}#wa
3/q3q3qI	l^1-'14
#tUI5IIJ=E	(D94	:?1U1XJaaz58*A6T385$/d=N*D9TX  KHKjC()KHI 	
 	  8Bc{^BCCcI 	
 % I Cs   E9	E>
)rJ   rD   rK   r#   rQ   r$   rI   rP   rE   r,   rM   r+   rO   r)   rC   r   rL   rB   rF   )__name__
__module____qualname____firstlineno__DEFAULT_ANNOT_FLAGSstrfloatrH   r   r   r   r   r
   r   r   r   r   r   rU   __static_attributes__     r=   r   r   $   s    3F"&26#'6:04#15JN046:$(#,0+1&1& 1& 	1&
 1& 1& ^c)3./1& 3-1& {Y./1&  1& eUE1231& $H-1& }1& huo.1& 1&  N$@$FG!1&" 5,-#1&$ E*c/23%1&& SM'1&( })1&* %SM+1&, 
-1& 1&r`   r   c                   <   ^  \ rS rSrSrS\S\SS4U 4S jjrSrU =r$ )	PDFAnnotationY   z?A PDF annotation that get serialized as an obj<</>>endobj blockargskwargsr2   Nc                 &   > [         TU ]  " U0 UD6  g r9   )superrU   )rR   rd   re   	__class__s      r=   rU   PDFAnnotation.__init__\   s    $)&)r`   r_   )	rW   rX   rY   rZ   __doc__r   rU   r^   __classcell__rh   s   @r=   rb   rb   Y   s%    E*c *S *T * *r`   rb   c                   T    \ rS rSrSrSr  SS\S   S\\   S\4S	 jjr	S\4S
 jr
Srg)AnnotationDict`   z@A PDF annotation that get serialized as an inline <<dictionary>>)rB   r   rC   rD   rE   rF   rI   r#   rJ   r$   rK   rL   r)   rO   r+   r,   rP   rQ   N_security_handlerr   _obj_idr2   c           
      ~    [        [        U 5       Vs0 s H  o3[        X5      _M     snUUS9n[        U5      $ s  snf )N)rp   rq   )r   dirgetattrpdf_dict)rR   rp   rq   keyobj_dicts        r=   	serializeAnnotationDict.serializex   sD    
 "03D	:	'$$$	:/

 !!	 ;s   :c                 4   [        U 5       Vs/ s H  oR                  S5      (       a  M  UPM     nnU Vs0 s H  o[        X5      _M     nnUR                  5        VVs0 s H  u  p[	        U5      (       a  M  X_M     nnnSU S3$ s  snf s  snf s  snnf )N__zAnnotationDict(**))rs   
startswithrt   itemscallable)rR   rv   keysdr0   s        r=   __repr__AnnotationDict.__repr__   s    "4yEyt0DyE045'$$$5*+'')K)JC8E?ZSZ)K"1#Q'' F5Ks   B
B
B!B;Br_   NN)rW   rX   rY   rZ   rj   	__slots__r   intr\   rx   r   r^   r_   r`   r=   rn   rn   `   sM    FI. BF!%
"#$=>
" #
" 
	
"(# (r`   rn   c                      ^  \ rS rSr       SS\S\S\S\\   S\\   S\\   S	\\   S
\	S\	4U 4S jjjr
S\	4S jrS\	SS4S jrS\4S jrSS jrSrU =r$ )PDFEmbeddedFile   Nbasenamer#   desccreation_datemodification_date	mime_typeaf_relationshipcompresschecksumc
                   > [         TU ]  X(S9  [        S5      U l        S[	        U5      0n
U(       a  [        USS9R                  5       U
S'   U(       a  [        USS9R                  5       U
S'   U	(       aI  [        R                  " SS	S
9nUR                  U R                  5        UR                  5       nSU S3U
S'   U(       a  [        U5      U l        [        U
5      U l        Xl        X0l        SU l        Xpl        S U l        g )N)r#   r   EmbeddedFilez/SizeT)with_tzz/CreationDatez/ModDatemd5F)usedforsecurity<>z	/CheckSum)rg   rU   r   rB   lenr   rx   hashlibnewupdate	_contents	hexdigestr   ru   params	_basename_desc_globally_enclosed_af_relationship
_file_spec)rR   r   r#   r   r   r   r   r   r   r   r   	file_hashhash_hexrh   s                r=   rU   PDFEmbeddedFile.__init__   s     	(>(	%,c(m$<&-mT&J&T&T&VF?#!():D!I!S!S!UF:E5AIT^^, **,H$%hZq/F;	?DLv&&
(,FU.2r`   r2   c                     U R                   $ r9   r   rR   s    r=   globally_enclosed!PDFEmbeddedFile.globally_enclosed   s    &&&r`   r0   c                     Xl         g r9   r   )rR   r0   s     r=   set_globally_enclosed%PDFEmbeddedFile.set_globally_enclosed   s    "'r`   c                     U R                   $ r9   )r   r   s    r=   r   PDFEmbeddedFile.basename   s    ~~r`   c                     U R                   (       d0  [        X R                  U R                  U R                  5      U l         U R                   $ r9   )r   r.   r   r   r   r   s    r=   r-   PDFEmbeddedFile.file_spec   s6    &nndjj$2G2GDO r`   )r   r   r   r   r   r   r   rB   ) NNNNFF)r2   r.   )rW   rX   rY   rZ   r\   bytesr   r   r   boolrU   r   r   r   r-   r^   rk   rl   s   @r=   r   r      s    
 ,004#'@D33 3 	3
  )3 $H-3 C=3 ""<=3 3 3 3B'4 '(4 (D (#  r`   r   c            
       h   ^  \ rS rSr  S
S\S\S\\   S\\   4U 4S jjjr\	S\4S j5       r
S	rU =r$ )r.      embedded_filer   r   r   c                    > [         TU ]  5         [        S5      U l        [	        U5      U l        [	        U5      U l        U(       a  [	        U5      U l        U(       a  [        UR                  5      U l	        Xl
        g )NFilespec)rg   rU   r   rB   r   rI   u_fr   r0   a_f_relationship_embedded_file)rR   r   r   r   r   rh   s        r=   rU   FileSpec.__init__   s^     	$	8$X&!$DI$()>)>$?D!+r`   r2   c                 V    [        S[        U R                  R                  5      05      $ )Nz/F)ru   pdf_refr   idr   s    r=   e_fFileSpec.e_f   s#    wt':':'='=>?@@r`   )r   r   r   rI   rB   r   r   )rW   rX   rY   rZ   r   r\   r   r   rU   propertyr   r^   rk   rl   s   @r=   r.   r.      sc     #@D,&, , sm	,
 ""<=, ," AS A Ar`   r.   )'rj   r   r   typingr   r   r   r   r   actionsr
   enumsr   r   r   r   syntaxr   r   r   r   r   r   r   r   ru   r   rN   r   r   
encryptionr   PRINTr[   r   rb   rn   r   r.   r_   r`   r=   <module>r      s      @ @     3 &++- 2& 2&j*OY *((_ ((V0& 0fAy Ar`   