Ë
    o]j¥D  ã                   óÔ   — d Z ddlZddlZddlmZ ddlmZ ddlmZm	Z	 ddl
Z
ddlmZ ddlmZ dd	lmZmZmZ dd
lmZ ddlmZ  ej.                  «       Zd„ Zdd„Zd„ Zd„ Zd„ Zd„ Zy)z4Insert anchors, links, bookmarks and inputs in PDFs.é    N)Úmd5)Úbasename)ÚunquoteÚurlsplité   )Ú
Attachment)ÚLOGGER)ÚffiÚgobjectÚpango)Úget_font_description)ÚURLFetchingErrorc                 ó’  — | \  }}|D �]e  \  }}	}
} |j                   |
dd Ž \  }} |j                   |
dd Ž \  }}|dv sŒ8t        j                  ddt        j                  ||||g«      t        j                  ddi«      dœ«      |_        |�"t        j
                  |	«      |j                  d	<   |d
k(  r#t        j
                  |	«      |j                  d<   n9t        j                  ddt        j
                  |	«      dœ«      |j                  d<   |j                  |j                  «       d|vrt        j                  «       |d<   |d   j                  |j                  j                  «       �Œh |D ]R  }|\  }}}|j                  ||«      \  }}|j                  |t        j                  |j                  d||dg«      g«       ŒT y)z%Include hyperlinks in given PDF page.Nr   )ÚinternalÚexternalú/Annotz/LinkÚWr   )ÚTypeÚSubtypeÚRectÚBSÚContentsr   ÚDestú/Actionz/URI)r   ÚSÚURIÚAÚAnnotsú/XYZ)	Útransform_pointÚpydyfÚ
DictionaryÚArrayÚlink_annotationÚStringÚ
add_objectÚappendÚ	reference)Úlinks_and_anchorsÚmatrixÚpdfÚpageÚnamesÚtagsÚlinksÚanchorsÚ	link_typeÚlink_targetÚ	rectangleÚboxÚx1Úy1Úx2Úy2ÚanchorÚanchor_nameÚxÚys                       úM/var/www/zogu/zoguvenv/lib/python3.12/site-packages/weasyprint/pdf/anchors.pyÚ	add_linksr>      sÍ  € à&�N€Eˆ7à27ó AÑ.ˆ	�; 	¨3Ø'�×'Ñ'¨°2°A¨Ð7‰ˆˆBØ'�×'Ñ'¨°1°2¨Ð7‰ˆˆBØÐ0Ò0Ü"'×"2Ñ"2Ø Ø"ÜŸ™ R¨¨R°Ð$4Ó5Ü×&Ñ&¨¨Q xÓ0ñ	4ó #ˆCÔð ÐÜ27·,±,¸{Ó2K�×#Ñ# JÑ/Ø˜JÒ&Ü.3¯l©l¸;Ó.G�×#Ñ# FÒ+ä+0×+;Ñ+;Ø%ØÜ Ÿ<™<¨Ó4ñ=ó ,�×#Ñ# CÑ(ð
 �N‰N˜3×.Ñ.Ô/Ø˜tÑ#Ü!&§¡£��X‘Ø�‰N×!Ñ! #×"5Ñ"5×"?Ñ"?Ö@ð/Að2 ò JˆØ"Ñˆ�Q˜Ø×%Ñ% a¨Ó+‰ˆˆ1Ø�‰ØœŸ™ d§n¡n°f¸aÀÀAÐ%FÓGðIõ 	JñJó    c                 ó4  — t        |«      }g }|D �]  \  }\  }}}}	}
t        j                  | j                  |   d||df«      }t        j                  t        j
                  |«      |dœ«      }| j                  |«       t        | |	|¬«      \  }}||d<   |
dk(  r|dxx   dz  cc<   n||z  }|r$|d   j                  |d<   |j                  |d   d	<   |r$|d   j                  |d
<   |d   j                  |d<   |�|j                  |d<   |j                  |«       �Œ |€u|rst        j                  ||d   j                  |d   j                  dœ«      }| j                  |«       |D ]  }|j                  |d<   Œ |j                  | j                  d<   ||fS )z!Include bookmark outlines in PDF.r   r   )ÚTitler   )ÚparentÚCountÚclosedéÿÿÿÿÚPrevÚNextÚFirstÚLastÚParent)rC   rH   rI   ÚOutlines)Úlenr!   r#   Úpage_referencesr"   r%   r&   Úadd_outlinesr(   r'   Úcatalog)r+   Ú	bookmarksrB   ÚcountÚoutlinesÚtitler,   r;   r<   ÚchildrenÚstateÚdestinationÚoutlineÚchildren_outlinesÚchildren_countÚoutlines_dictionarys                   r=   rN   rN   9   sÅ  € ä�	‹N€EØ€HØ09ó !Ñ,ˆ‰|��a˜˜X uÜ—k‘k 3×#6Ñ#6°tÑ#<¸fÀaÈÈAÐ"NÓOˆÜ×"Ñ"Ü—\‘\ %Ó(°+ñ$?ó @ˆà�‰�wÔÜ,8Ø� 'ô-+Ñ)Ð˜>à)ˆ�ÑØ�HÒØ�GÓ Ñ"Ôà�^Ñ#ˆEÙØ& r™l×4Ñ4ˆG�F‰OØ#*×#4Ñ#4ˆH�R‰L˜Ñ ÙØ0°Ñ3×=Ñ=ˆG�GÑØ/°Ñ3×=Ñ=ˆG�F‰OØÐØ &× 0Ñ 0ˆG�HÑØ�‰˜Ö ð)!ð, €~™(Ü#×.Ñ.ØØ˜a‘[×*Ñ*Ø˜R‘L×*Ñ*ñ0
ó Ðð
 	�‰Ð*Ô+Øò 	>ˆGØ 3× =Ñ =ˆG�HÒð	>à"5×"?Ñ"?ˆ�‰�JÑà�Uˆ?Ðr?   c                 ór  — | rt        | j                  «       «      syd|vrt        j                  «       |d<   d|j                  vrBt        j
                  t        j                  «       |j                  ddœ«      |j                  d<   |d   j                  «       d   }t        j                  t        j                  |«      t        j                  «      }| j                  «       D �	�
���cg c]  \  }	}
|
D ]  \  }}}|	|||f‘Œ Œ }}}}
}	}t        j                   t"        «      }t        j                   t"        «      } t%        |«      D �]â  \  }\  }	}}}g  |j&                  |dd Ž ¢ |j&                  |dd Ž ¢­}|j(                  j+                  d	«      }|j(                  j+                  d
d«      }d|j-                  «       › d|› �}|j(                  j+                  d|«      }|d   dz  }|j/                  «       }|j1                  |d   «       t        j
                  ddt        j                  |«      |j                  dt        j2                  |«      dœ«      }|dv �r-|dk(  r±|||	   vr—t        j
                  ddt        j2                  |«      dt        j                  «       t        j                  «       dœ«      x||	   |<   }|j5                  |«       |j                  d   d   j7                  |j                  «       ||	   |   }|d   dz  }d}nd}|d   |d   z
  }|d    |d!   z
  }|j/                  |j                  d"d#t        j                  dd||f«      d$œ¬%«      }|j9                  «        |j;                  «        |j1                  |d   «       |j=                  d&|«       ||dz  z
  dz  }||dz  z
  dz  }|j?                  ||«       |jA                  |«       |jC                  «        |jE                  «        |j5                  |«       |j=                  d&|«       d'|j(                  v }|dk(  rtG        d(   «      nd)} t        j
                  | |j                  i«      }!d|d*<   t        j2                  d+jI                  |jJ                  «      «      |d,<   |rd-| › �nd|d.<   t        j
                  d/|!i«      |d0<   t        j
                  d1t        j2                  |«      i«      |d2<   |j5                  |«       |dk(  r`j                  |d3<   |rd-| › �|d4<   |d(   j7                  |j                  «       |d5   j7                  t        j2                  |«      «       �nht        j2                  |«      |d6<   |d.   |d4<   �nF|jL                  d7k(  �r­tO        |«      }"t        jP                  |||"«      }#|jS                  |#«      \  }#}$d8|#_*        |j=                  |#jV                  |«       g }%g }&|D ]š  }'t        j2                  |'j(                  j+                  d
d9«      «      }(t        j2                  |'jX                  xs d9«      })|%j7                  t        j                  |(|)g«      «       d:|'j(                  v sŒŠ|&j7                  |(«       Œœ d;|d*<   t        j2                  d+jI                  |jJ                  «      «      |d,<   t        j                  |%«      |d5<   d<|j(                  v rd=|d><   t        j                  |&«      |d4<   n$d?|d><   |&r|&d@   nt        j2                  d9«      |d4<   |j5                  |«       �n‰|dAk(  s|jL                  dBk(  �r+d}*|	j(                  j+                  dCd9«      j[                  «       dDk7  r|*dEz  }*t        j                  dF„ | |	   j                  «       D «       «      }+d|d*<   t        j2                  d+jI                  |jJ                  «      «      |d,<   t        j2                  |	j(                  j+                  d
d9«      «      |d4<   dG|d><   t        j
                  dHdIt        j2                  |	j(                  j+                  dJ«      «      |+|*dKœ«      |dL<   |j5                  |«       �nItO        |«      }"t        jP                  |||"«      }#|jS                  |#«      \  }#}$d8|#_*        |j=                  |#jV                  |«       dM|d*<   t        j2                  d+jI                  |jJ                  «      «      |d,<   t        j2                  |j(                  j+                  d
d9«      «      |d4<   |jL                  dNk(  r,dO|d><   t        j2                  |jX                  xs d9«      |d4<   n|dPk(  rdQ|d><   n
|dRk(  rdS|d><   |j+                  dTd9«      x},j]                  «       r|,|dU<   |j5                  |«       |d   j7                  |j                  «       |j                  d   d   j7                  |j                  «       || vs�ŒÛ|| |	   |<   �Œå yc c}}}}
}	w )VzInclude form inputs in PDF.Nr   ÚAcroFormÚtrue)ÚFieldsÚDRÚNeedAppearancesr   r   r   ÚtypeÚvalueÚYeszunknown-ú-ÚnameÚ	font_sizeg      è?Úcolorr   z/Widgeté   )r   r   r   ÚPÚFÚT)ÚradioÚcheckboxrl   z/Btni À  z/Off)ÚFTÚFfrk   ÚVÚKidsÚOptr^   g      à?ÚlÚ4é   é   ú/XObjectú/Form)Ú	Resourcesr   r   ÚBBox)ÚextraÚZaDbÚcheckedrq   Úonrn   ó    ÚDAú/ÚASÚNÚAPÚCAÚMKrJ   rp   rr   rk   ÚselectTÚ Úselectedz/ChÚmultiplei    ro   i   rE   ÚsubmitÚbuttonÚmethodÚposté   c              3   ó4   K  — | ]  }|j                   –— Œ y ­w©N)r(   )Ú.0Úfields     r=   ú	<genexpr>zadd_forms.<locals>.<genexpr>î   s   è ø€ Ò S°U §¥Ñ Sùs   ‚i   r   z/SubmitFormÚaction)r   r   rj   r^   ÚFlagsr   z/TxÚtextareai   Úpasswordi    Úfilei   Ú	maxlengthÚMaxLen)/ÚanyÚvaluesr!   r#   rO   r"   r(   Úsplitr
   Úgcr   Úpango_font_map_create_contextr   Úg_object_unrefÚitemsÚcollectionsÚdefaultdictÚdictÚ	enumerater    ÚattribÚgetÚdecodeÚcloneÚ	set_colorr%   r&   r'   Ú
push_stateÚ
begin_textÚset_font_sizeÚmove_text_toÚshow_text_stringÚend_textÚ	pop_staterL   ÚjoinÚstreamÚtagr   Úpango_font_map_load_fontÚadd_fontÚused_in_formsÚhashÚtextÚlowerÚisdigit)-Úformsr*   r+   r,   Ú	resourcesr´   Úfont_mapÚpage_referenceÚcontextÚformÚinputsÚelementÚstyler3   Úinputs_with_formsÚradio_groupsÚiÚ
input_typeÚinput_valueÚdefault_nameÚ
input_namerf   Úfield_streamr“   ÚgroupÚ	characterÚwidthÚheightÚchecked_streamr;   r<   r}   ÚkeyÚ
appearanceÚfont_descriptionÚfontÚ_ÚoptionsÚselected_valuesÚoptionrb   rº   ÚflagsÚfieldsÚ
max_lengths-                                                r=   Ú	add_formsrÞ   a   sN	  € áœ˜EŸL™L›NÔ+Øà�tÑÜŸ™›ˆˆX‰Ø˜Ÿ™Ñ$Ü"'×"2Ñ"2Ü—k‘k“mØ×%Ñ%Ø%ñ4
ó #ˆ�‰�JÑð
 ˜*Ñ%×+Ñ+Ó-¨aÑ0€NÜ�f‰fÜ×+Ñ+¨HÓ5Ü×Ñó €Gð
 "ŸK™K›M÷ò áˆD�&Ø)/òñ &ˆG�U˜Ið 
ˆw˜˜yÒ)ðØ)ðÐô ô
 ×*Ñ*¬4Ó0€LÜ×#Ñ#¤DÓ)€EÜ09Ð:KÓ0Ló ],Ñ,ˆÑ,ˆD�'˜5 )ð5Ø#ˆV×#Ñ# Y¨r° ]Ð3ð5à#ˆV×#Ñ# Y¨q¨r ]Ð3ñ5ˆ	ð —^‘^×'Ñ'¨Ó/ˆ
Ø—n‘n×(Ñ(¨°%Ó8ˆØ! .×"7Ñ"7Ó"9Ð!:¸!¸A¸3Ð?ˆØ—^‘^×'Ñ'¨°Ó=ˆ
à˜+Ñ&¨Ñ-ˆ	Ø—|‘|“~ˆØ×Ñ˜u W™~Ô.Ü× Ñ ØØ Ü—K‘K 	Ó*Ø—‘ØÜ—‘˜jÓ)ñ"
ó ˆð Ð.Ò.Ø˜WÒ$Ø \°$Ñ%7Ñ7Ü=B×=MÑ=MØ$Ø?Ü"Ÿ\™\¨*Ó5Ø#Ü %§¡£Ü$Ÿ{™{›}ñOó >ð �L Ñ& zÑ2°Uð —N‘N 5Ô)Ø—K‘K 
Ñ+¨HÑ5×<Ñ<¸U¿_¹_ÔMØ$ TÑ*¨:Ñ6�Ø! +Ñ.°Ñ4�	Ø‘	à�	ð ˜a‘L 9¨Q¡<Ñ/ˆEØ˜q‘\ I¨a¡LÑ0ˆFØ#Ÿ\™\Ø&×0Ñ0Ø"Ø"ÜŸ™ Q¨¨5°&Ð$9Ó:ñ	1˜\ó ˆNð ×%Ñ%Ô'Ø×%Ñ%Ô'Ø×$Ñ$ U¨7¡^Ô4Ø×(Ñ(¨°Ô;à˜ TÑ)Ñ)¨QÑ.ˆAØ˜) dÑ*Ñ*¨aÑ/ˆAØ×'Ñ'¨¨1Ô-Ø×+Ñ+¨IÔ6Ø×#Ñ#Ô%Ø×$Ñ$Ô&Ø�N‰N˜>Ô*à×&Ñ& v¨yÔ9à 7§>¡>Ð1ˆGØ(2°gÒ(=”#�e˜F‘mÔ$À4ˆCÜ×)Ñ)¨3°×0HÑ0HÐ*IÓJˆJØ ˆE�$‰KÜŸ,™, t§y¡y°×1DÑ1DÓ'EÓFˆE�$‰KÙ'.˜A˜c˜U™)°FˆE�$‰KÜ×*Ñ*¨C°Ð+<Ó=ˆE�$‰KÜ×*Ñ*¨D´%·,±,¸yÓ2IÐ+JÓKˆE�$‰KØ�N‰N˜5Ô!Ø˜WÒ$Ø"'§/¡/��h‘ÙØ#$ S E �E˜#‘JØ�f‘×$Ñ$ U§_¡_Ô5Ø�e‘×#Ñ#¤E§L¡L°Ó$=Ö>ä"Ÿ\™\¨*Ó5��c‘
Ø" 4™[��c“
à�[‰[˜HÓ$Ü3°EÓ:ÐÜ×1Ñ1Ø˜'Ð#3ó5ˆDà—o‘o dÓ+‰GˆD�!Ø!%ˆDÔà×&Ñ& t§y¡y°)Ô<ØˆGØ ˆOØ!ò 2�ÜŸ™ V§]¡]×%6Ñ%6°wÀÓ%CÓD�Ü—|‘| F§K¡KÒ$5°2Ó6�Ø—‘œuŸ{™{¨E°4¨=Ó9Ô:Ø §¡Ò.Ø#×*Ñ*¨5Õ1ð2ð  ˆE�$‰KÜŸ,™, t§y¡y°×1DÑ1DÓ'EÓFˆE�$‰KÜ Ÿ;™; wÓ/ˆE�%‰LØ˜WŸ^™^Ñ+Ø+��d‘Ü"Ÿ[™[¨Ó9��c’
à+��d‘á+:�O BÒ'ÜŸ™ bÓ)ð �c‘
ð �N‰N˜5Ö!à˜8Ò# w§{¡{°hÓ'>Ø ˆEØ�{‰{�‰˜x¨Ó,×2Ñ2Ó4¸Ò>Ø˜Ñ%�Ü—[‘[Ñ S¸eÀD¹k×>PÑ>PÓ>RÔ SÓSˆFØ ˆE�$‰KÜŸ,™, t§y¡y°×1DÑ1DÓ'EÓFˆE�$‰KÜŸ™ d§k¡k§o¡o°g¸rÓ&BÓCˆE�#‰JØ'ˆE�$‰KÜ×)Ñ)Ø!Ø"Ü—\‘\ $§+¡+§/¡/°(Ó";Ó<Ø Øñ+ó ˆE�#‰Jð �N‰N˜5Ö!ô  4°EÓ:ÐÜ×1Ñ1Ø˜'Ð#3ó5ˆDà—o‘o dÓ+‰GˆD�!Ø!%ˆDÔà×&Ñ& t§y¡y°)Ô<ØˆE�$‰KÜŸ,™, t§y¡y°×1DÑ1DÓ'EÓFˆE�$‰KÜŸ™ g§n¡n×&8Ñ&8¸À"Ó&EÓFˆE�#‰JØ�{‰{˜jÒ(Ø+��d‘Ü"Ÿ\™\¨'¯,©,Ò*<¸"Ó=��c’
Ø˜zÒ)Ø+��d’Ø˜vÒ%Ø+��d‘Ø%Ÿk™k¨+°rÓ:Ð:�
×CÑCÔEØ",��h‘Ø�N‰N˜5Ô!àˆX‰×Ñ˜eŸo™oÔ.Ø�‰�JÑ Ñ)×0Ñ0°·±ÔAØ˜UÓ"Ø&+ˆE�$‰K˜
Ó#ñ{],ùös   Ã+h0c                 óÈ  — | D �]\  \  }}}	}
|dk7  rŒ||vr't        ||j                  ¬«      }t        |||«      ||<   ||   }|€ŒBg  |j                  |	dd Ž ¢ |j                  |	dd Ž ¢­}	t	        j
                  g ddt	        j                  |	«      dœ|«      }|j                  |«       t	        j                  dt	        j                  |	«      d	t	        j                  «       |j                  t	        j                  d
|j                  i«      ddœ«      }|j                  |«       d|vrt	        j                  «       |d<   |d   j                  |j                  «       �Œ_ y)zInclude annotations in PDF.Ú
attachment)ÚurlÚurl_fetcherNr   rw   rx   )r   r   rz   r   z/FileAttachmentrƒ   z/N)r   r   r   rk   ÚFSr„   r‚   r   )r   râ   Úwrite_pdf_attachmentr    r!   ÚStreamr#   r&   r"   r%   r(   r'   )r/   r*   Údocumentr+   r,   Úannot_filesÚcompressr1   Úannot_targetr3   r×   rà   Ú
annot_filer´   Úannots                  r=   Úadd_annotationsrì     sz  € ð 27ó &/Ñ-ˆ	�< ¨AØ˜Ò$ØØ˜{Ñ*ô $Ø ¨h×.BÑ.BôDˆJä(<Ø�Z ó)+ˆK˜Ñ%à  Ñ.ˆ
ØÐØð5Ø#ˆV×#Ñ# Y¨r° ]Ð3ð5à#ˆV×#Ñ# Y¨q¨r ]Ð3ñ5ˆ	ô —‘˜bØØÜ—K‘K 	Ó*ñ#
ð ó	ˆð
 	�‰�vÔÜ× Ñ ØÜ—K‘K 	Ó*Ø(Ü—‘“Ø×&Ñ&Ü×"Ñ" C¨×)9Ñ)9Ð#:Ó;Øñ"
ó ˆð 	�‰�uÔØ˜4ÑÜ"Ÿ[™[›]ˆD�‰NØˆX‰×Ñ˜eŸo™oÖ.ñM&/r?   c                 óº  — dx}}	 |j                   5 \  }}}}|j                  «       }t        |t        «      r|j	                  «       }ddd«       t        d¬«      j                  «       |_	        |j                  r|j                  }	nA|r=t        |«      j                  r(t        t        t        |«      j                  «      «      }	nd}	|xs: t         j#                  |	d¬«      d	   xs t%        j"                  |	d¬«      d	   xs d
}t'        j(                  |j*                  j-                  d«      «      }
t'        j(                  |j.                  j-                  d«      «      }t'        j0                  dd|j3                  dd«      › �t'        j0                  d|j                  › d�t5        |«      |
|dœ«      dœ«      }t'        j6                  |g||¬«      }| j9                  |«       t'        j0                  dt'        j(                  |	j	                  d¬«      «      t'        j(                  |	«      t'        j0                  d|j:                  i«      t'        j(                  |j<                  xs d«      dœ«      }| j9                  |«       |S # 1 sw Y   �ŒGxY w# t
        $ r7}t        j                  d|«       t        j                  d|¬«       Y d}~yd}~ww xY w)z&Write an attachment to the PDF stream.NzFailed to load attachment: %szError while loading attachment:)Úexc_infoF)Úusedforsecurityzattachment.bin)Ústrictr   zapplication/octet-streamzD:%Y%m%d%H%M%SZz/EmbeddedFiler�   z#2fú<ú>)ÚCheckSumÚSizeÚCreationDateÚModDate)r   r   ÚParams)rè   z	/FilespecÚignore)Úerrorsrj   rˆ   )r   rj   ÚUFÚEFÚDesc)ÚsourceÚreadÚ
isinstanceÚstrÚencoder   r	   ÚerrorÚdebugr   Ú	hexdigestre   r   Úpathr   r   Ú	MIMETYPESÚ
guess_typeÚ	mimetypesr!   r%   ÚcreatedÚstrftimeÚmodifiedr"   ÚreplacerL   rå   r&   r(   Údescription)r+   rà   rè   rá   Ú	mime_typeÚfile_objr×   r´   Ú	exceptionÚfilenameÚcreationÚmodÚ
file_extraÚfile_streamÚpdf_attachments                  r=   rä   rä   K  sx  € ð Ð€Cˆ)ðØ×Ñð 	)Ñ"? 8¨S°!°YØ—]‘]“_ˆFÜ˜&¤#Ô&ØŸ™›�÷	)ô ˜°Ô7×AÑAÓC€J„Nð ‡‚Ø—?‘?‰Ù	”˜#“×#Ò#ÜœG¤H¨S£M×$6Ñ$6Ó7Ó8‰à#ˆàò 	#ô
 	×Ñ˜X¨eÐÓ4°QÑ7ò	#ô 	×Ñ˜X¨eÔ4°QÑ7ò	#ð 	#ð ô �|‰|˜J×.Ñ.×7Ñ7Ð8IÓJÓK€HÜ
�,‰,�z×*Ñ*×3Ñ3Ð4EÓFÓ
G€CÜ×!Ñ!ØØ�y×(Ñ(¨¨eÓ4Ð5Ð6Ü×"Ñ"Ø˜JŸN™NÐ+¨1Ð-Ü˜“KØ$Øñ	$
ó ñ	#ó 	€Jô —,‘, ˜x¨¸hÔG€KØ‡N�N�;Ôä×%Ñ%ØÜ�\‰\˜(Ÿ/™/°˜/Ó:Ó;Ü�l‰l˜8Ó$Ü×Ñ  [×%:Ñ%:Ð;Ó<Ü—‘˜Z×3Ñ3Ò9°rÓ:ñ'ó €Nð ‡N�N�>Ô"ØÐ÷g	)ñ 	)ûô ò Ü�‰Ð4°iÔ@Ü�‰Ð6ÀÕKÜûðús.   †J ’6JÁJ ÊJÊJ Ê	KÊ#-KËKc              #   ó  K  — t        «       }g }t        | «      D ]j  \  }}|j                  g «       |j                  j	                  «       D ]7  \  }\  }}}}||vsŒ|d   j                  |||f«       |j                  |«       Œ9 Œl | D ]t  }g }	|j                  D ]L  }
|
\  }}}}|dk(  r-||vrt        j                  d|«       Œ*|	j                  |
«       Œ<|	j                  |
«       ŒN |	|j                  d«      f–— Œv y­w)aþ  Resolve internal hyperlinks.

    Links to a missing anchor are removed with a warning.

    If multiple anchors have the same name, the first one is used.

    :returns:
        A generator yielding lists (one per page) like :attr:`Page.links`,
        except that ``target`` for internal hyperlinks is
        ``(page_number, x, y)`` instead of an anchor name.
        The page number is a 0-based index into the :attr:`pages` list,
        and ``x, y`` are in CSS pixels from the top-left of the page.

    rE   r   z(No anchor #%s for internal URI referencer   N)
Úsetr¦   r'   r0   r¢   Úaddr/   r	   r  Úpop)Úpagesr0   Úpaged_anchorsrÈ   r,   r:   Úpoint_xÚpoint_yr×   Ú
page_linksÚlinkr1   s               r=   Úresolve_linksr!  ‡  s#  è ø€ ô ‹e€GØ€MÜ˜UÓ#ò )‰ˆˆ4Ø×Ñ˜RÔ Ø59·\±\×5GÑ5GÓ5Iò 	)Ñ1ˆKÑ1˜' 7¨A¨qØ 'Ò)Ø˜bÑ!×(Ñ(¨+°wÀÐ)HÔIØ—‘˜KÕ(ñ	)ð)ð ò /ˆØˆ
Ø—J‘Jò 	(ˆDØ+/Ñ(ˆI�{ A qØ˜JÒ&Ø gÑ-Ü—L‘LØBØ#õ%ð ×%Ñ% dÕ+ð ×!Ñ! $Õ'ð	(ð ˜-×+Ñ+¨AÓ.Ð.Ó.ñ/ùs   ‚ADÁB&Dr‘   )Ú__doc__r£   r  Úhashlibr   Úos.pathr   Úurllib.parser   r   r!   rˆ   r   Úloggerr	   Útext.ffir
   r   r   Ú
text.fontsr   Úurlsr   Ú	MimeTypesr  r>   rN   rÞ   rì   rä   r!  © r?   r=   ú<module>r,     sc   ðÙ :ã Û Ý Ý ß *ã å Ý ß *Ñ *Ý -Ý #ð  ˆI×ÑÓ!€	ò!JóH%òPu,òp//òd9óx%/r?   