Ë
    ^ãj!  ã                   óŒ   — d dl mZ d dlmZ d dlZ ej
                  d«      Zd„ Z	 	 dd„Zd„ Z	 G d„ d	«      Z
d
„ Zd„ Zd„ Zd„ Zy)é    )Úis_Default_Ignorable)ÚDecomposingRecordingPenNzfontTools.mergec                 ó&  — i }|D ]j  }t        |«      D ]Z  \  }}||v rL||   }|dz   t        |«      z   |v r|dz  }|dz   t        |«      z   |v rŒ|||<   |dt        |«      z   z  }|||<   d||<   Œ\ Œl t        |j                  «       «      x| _        }y)zXModifies passed-in glyphOrders to reflect new glyph names.
    Stores merger.glyphOrder.ú.é   N)Ú	enumerateÚreprÚlistÚkeysÚ
glyphOrder)ÚmergerÚglyphOrdersÚ	megaOrderr   ÚiÚ	glyphNameÚns          úV/var/www/html/metafoliadorv2/venv/lib/python3.12/site-packages/fontTools/merge/cmap.pyÚcomputeMegaGlyphOrderr      sÁ   € ð €IØ!ò 	%ˆ
Ü% jÓ1ò 	%‰LˆAˆyØ˜IÑ%Ø˜iÑ(�Ø  3‘¬¨a«Ñ0°YÑ>Ø˜‘F�Að ! 3‘¬¨a«Ñ0°YÒ>à'(�	˜)Ñ$Ø˜S¤4¨£7™]Ñ*�	Ø )�
˜1‘Ø#$ˆI�iÒ ñ	%ð	%ô %)¨¯©Ó)9Ó$:Ð:€FÔ™	ó    c                 óØ  — t        | «      }t        |«      }| |   }||   }	|j                  |«       |	j                  |«       |j                  |j                  k7  ry|j                  r|n|}
t        |j                  |	j                  z
  «      |j                  |
z  kD  ryt        |d«      r?|j                  �3t        |j                  |	j                  z
  «      |j                  |
z  kD  ryy)NFÚheightT)r   ÚdrawÚvalueÚabsÚwidthÚhasattrr   )Ú	glyphSet1Ú	glyphSet2Úglyph1Úglyph2ÚadvanceToleranceÚadvanceToleranceEmptyÚpen1Úpen2Úg1Úg2Ú	tolerances              r   Ú_glyphsAreSamer(      sÆ   € ô # 9Ó-€DÜ" 9Ó-€DØ	�6Ñ	€BØ	�6Ñ	€BØ‡G�GˆD„MØ‡G�GˆD„MØ‡z�z�T—Z‘ZÒØà$(§J¢JÑ Ð4I€Iä
ˆ2�8‰8�b—h‘hÑÓ "§(¡(¨YÑ"6Ò6ØÜˆr�8Ô §¡Ð!6Üˆr�y‰y˜2Ÿ9™9Ñ$Ó%¨¯	©	°IÑ(=Ò=ØØr   c                 ó$  — i }| j                   }|D ]]  }|j                  j                  «       D ]>  \  }}||vri ||<   |D ]+  \  }}|j                  |«      |k(  rd}|||   vsŒ$|||   |<   Œ- Œ@ Œ_ |D ]  }g ||   j                  «       ¢||<   Œ |S )z5Returns merged UVS mappings (cmap formats 14 and 15).N)ÚcmapÚuvsDictÚitemsÚget)	r   Ú	uvsTablesr+   r*   ÚtableÚvariationSelectorÚ
uvsMappingÚunicodeValuer   s	            r   ÚcomputeMegaUvsr3   8   sÜ   € à€GØ�;‰;€DØò 
IˆØ-2¯]©]×-@Ñ-@Ó-Bò 		IÑ)Ð˜zØ ¨Ñ/Ø-/�Ð)Ñ*Ø+5ò IÑ'�˜iØ—8‘8˜LÓ)¨YÒ6à $�Ià wÐ/@Ñ'AÒAØ?H�GÐ-Ñ.¨|Ò<ñIñ		Ið
Ið %ò KÐØ%J wÐ/@Ñ'A×'GÑ'GÓ'IÐ%JˆÐ!Ò"ðKð €Nr   c                   ó$   — e Zd Zh d£Zh d£ZddhZy)Ú_CmapUnicodePlatEncodings>   ©é   r   r7   ©r7   r   é   ©r7   r   é   ©r7   r9   r   >   ©é   r   r7   ©r>   r   r;   ©r>   r9   é
   )é   r   é   )é   r   rC   N)Ú__name__Ú
__module__Ú__qualname__ÚBMPÚFullRepertoireÚUVS© r   r   r5   r5   R   s   „ Ú
6€CÚ:€NØ�zÐ
"�Cr   r5   c                 óÂ   — d }| �Z| j                   D ]K  }|j                  |j                  |j                  ft        j
                  vrŒ7|j                  dk(  r|c S |}ŒM |S )NrD   )ÚtablesÚformatÚ
platformIDÚ	platEncIDr5   rJ   )r*   Úformat14Úsubtables      r   Ú_getUvsTablerS   X   sp   € Ø€HØÐØŸ™ò 		 ˆHà—‘Ø×#Ñ#Ø×"Ñ"ðô /×2Ñ2ñ	3ð
 Ø�‰ "Ò$Ø’Ø‰Hð		 ð €Or   c           	      ó  ‡‡— ddl m} ddlm}  |d«      }d|_        |j                  d«      }d\  |_        |_        |_        | j                  «       xs i |_
        |g|_        | j                  «       d   Ši }dD ]n  Št        | j                  ‰«      «      }|€Œ |j                  j!                  «       D ]2  \  }}|j#                  |i «      }	|	j%                  ˆˆfd	„|D «       «       Œ4 Œp |r‰|j                  d
«      }
d\  |
_        |
_        |
_        i |
_
        |j!                  «       D ��ci c]  \  }}|t'        |j!                  «       «      “Œ! c}}|
_        |j                  j)                  d|
«       || d<   | d= yc c}}w )z3Fold DMAP overrides into cmap before merging fonts.r   )ÚnewTable)ÚCmapSubtabler*   r>   )r9   rA   r   )r*   ÚDMAPNc              3   ó@   •K  — | ]  \  }}‰d k7  s|‰k7  r||f–— Œ y­w)rW   NrK   )Ú.0Ú	codepointÚglyphÚ	glyphZeroÚtags      €€r   ú	<genexpr>z_flattenDmap.<locals>.<genexpr>}   s0   øè ø€ ò á$�I˜uØ˜&’= E¨YÒ$6ð ˜EÔ"ñùs   ƒrB   )r   rC   r   rW   )ÚfontTools.ttLibrU   ÚfontTools.ttLib.tables._c_m_a_prV   ÚtableVersionÚnewSubtablerO   rP   ÚlanguageÚgetBestCmapr*   rM   ÚgetGlyphOrderrS   r-   r+   r,   Ú
setdefaultÚupdater
   Úinsert)ÚfontrU   rV   r*   Únominalr+   ÚuvsTableÚselectorÚmappingsÚtargetÚuvsr\   r]   s              @@r   Ú_flattenDmaprp   h   sy  ù€ å(Ý<á�FÓ€DØ€DÔØ×&Ñ& rÓ*€GØ>FÑ;€GÔ˜Ô)¨7Ô+;Ø×#Ñ#Ó%Ò+¨€G„LØ�)€D„Kà×"Ñ"Ó$ QÑ'€IØ€GØò ˆÜ §¡¨£Ó.ˆØÐØØ"*×"2Ñ"2×"8Ñ"8Ó":ò 	ÑˆH�hØ×'Ñ'¨°"Ó5ˆFà�M‰Mô à(0ôõ ñ	ð	ñ Ø×&Ñ& rÓ*ˆØ6=Ñ3ˆŒ˜œ s¤|ØˆŒàGNÇ}Á}Ã÷
Ù1C°¸8ˆH”d˜8Ÿ>™>Ó+Ó,Ñ,ó
ˆŒð 	�‰×Ñ˜1˜cÔ"Ø€Dˆ�LØˆV‰ùó
s   Ä/$Fc           	      óš  — g }g }t        |«      D ]û  \  }}d}d}|j                  D ]™  }|j                  |j                  |j                  f}	|	t
        j                  v r|}Œ;|	t
        j                  v r|}ŒP|	t
        j                  v rŒct        j                  d||j                  |j                  |j                  «       Œ› |�|j                  ||f«       n|�|j                  ||f«       t        |«      }
|
€Œë|j                  |
«       Œý i x| _        }i }t        | d«      r| j                  D �cg c]  }d‘Œ c}nd}|D ]ð  \  }}|j                  j!                  «       D ]Î  \  }}|j#                  |d«      }|€|||<   |||<   Œ%t%        |«      s|dv rŒ5||k7  sŒ;| j&                  |   j#                  |«      €I|�4||   }||fD ](  }||   �Œ	| j                  |   j)                  «       ||<   Œ* || j&                  |   |<   Œ¢| j&                  |   |   |k7  sŒ¸t        j                  d||«       ŒÐ Œò t+        | |«      | _        yc c}w )z$Sets merger.cmap and merger.uvsDict.NzODropped cmap subtable from font '%s':	format %2s, platformID %2s, platEncID %2sÚfonts)iÌ%  z4Dropped mapping from codepoint %#06X to glyphId '%s')r   rM   rN   rO   rP   r5   rH   rI   rJ   ÚlogÚwarningÚappendrS   r*   r   rr   r,   r-   r   ÚduplicateGlyphsPerFontÚgetGlyphSetr3   r+   )r   Ú
cmapTablesÚchosenCmapTablesÚchosenUvsTablesÚfontIdxr/   Úformat4Úformat12rR   Ú
propertiesrk   r*   ÚfontIndexForGlyphÚfÚ	glyphSetsÚuniÚgidÚoldgidÚ
oldFontIdxÚidxs                       r   ÚcomputeMegaCmapr‡   Ž   sˆ  € ð
 ÐØ€OÜ# JÓ/ò -‰ˆ�ØˆØˆØŸ™ò 	ˆHØ"Ÿ/™/¨8×+>Ñ+>À×@RÑ@RÐSˆJØÔ6×:Ñ:Ñ:Ø"‘ØÔ8×GÑGÑGØ#‘ØÔ8×<Ñ<Ñ<Øä—‘ð@àØ—O‘OØ×'Ñ'Ø×&Ñ&õð	ð" ÐØ×#Ñ# X¨wÐ$7Õ8ØÐ Ø×#Ñ# W¨gÐ$6Ô7ä Ó&ˆØÑØ×"Ñ" 8Õ,ð7-ð< Ð€F„K�$ØÐÜ07¸ÀÔ0H˜vŸ|™|Ö,˜!’Ó,Èd€Ià*ò ‰ˆˆwàŸ
™
×(Ñ(Ó*ò 	‰HˆC�Ø—X‘X˜c 4Ó(ˆFØˆ~Ø��S‘	Ø)0Ð! #Ò&Ü% cÔ*¨c°YÑ.>ØØ˜3“ð ×0Ñ0°Ñ9×=Ñ=¸fÓEÐMØ Ð,Ø%6°vÑ%>˜
Ø$+¨ZÐ#8ò Q˜CØ(¨™~Ñ5Ø17·±¸cÑ1B×1NÑ1NÓ1P 	¨#¢ðQð
 FI�F×1Ñ1°'Ñ:¸6ÒBØ×2Ñ2°7Ñ;¸FÑCÀsÓJô —K‘KØNÐPSÐUXõñ/	ðô: $ F¨OÓ<€F…Nùò? -s   Ä3	Ic                 óú   — |j                   j                  d   }i }t        |j                  j                  j                  «       «      D ]  \  }}||   }|||<   Œ ||j                  _        t        |«      |_        y)z4Rename topDictIndex charStrings based on glyphOrder.r   N)ÚcffÚtopDictIndexr   ÚCharStringsÚcharStringsÚvaluesr
   Úcharset)r   r   ÚcffTableÚtdrŒ   r   Úvr   s           r   ÚrenameCFFCharStringsr’   ×   ss   € à	�‰×	"Ñ	" 1Ñ	%€Bà€KÜ˜"Ÿ.™.×4Ñ4×;Ñ;Ó=Ó>ò #‰ˆˆ1Ø˜q‘Mˆ	Ø!"ˆ�IÒð#ð "-€B‡N�NÔä�jÓ!€B…Jr   )gš™™™™™©?gš™™™™™É?)ÚfontTools.merge.unicoder   ÚfontTools.pens.recordingPenr   ÚloggingÚ	getLoggerrs   r   r(   r3   r5   rS   rp   r‡   r’   rK   r   r   ú<module>r—      s[   ðõ
 9Ý ?Û à€g×ÑÐ)Ó*€ò;ð, Øóò6÷4#ñ #òò #òLF=óR
"r   