§
    ¢”jH  ã                   ó„   — 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S )é    )Úis_Default_Ignorable)ÚDecomposingRecordingPenNzfontTools.mergec                 óT  — i }|D ]z}t          |¦  «        D ]h\  }}||v rZ||         }|dz   t          |¦  «        z   |v r|dz  }|dz   t          |¦  «        z   |v °|||<   |dt          |¦  «        z   z  }|||<   d||<   ŒiŒ{t          |                     ¦   «         ¦  «        x| _        }dS )zXModifies passed-in glyphOrders to reflect new glyph names.
    Stores merger.glyphOrder.ú.é   N)Ú	enumerateÚreprÚlistÚkeysÚ
glyphOrder)ÚmergerÚglyphOrdersÚ	megaOrderr   ÚiÚ	glyphNameÚns          úc/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/fontTools/merge/cmap.pyÚcomputeMegaGlyphOrderr      så   € ð €IØ!ð 	%ð 	%ˆ
Ý% jÑ1Ô1ð 	%ð 	%‰LˆAˆyØ˜IÐ%Ð%Ø˜iÔ(�Ø  3‘­¨a©¬Ñ0°YÐ>Ð>Ø˜‘F�Að ! 3‘­¨a©¬Ñ0°YÐ>Ð>à'(�	˜)Ñ$Ø˜S¥4¨¡7¤7™]Ñ*�	Ø )�
˜1‘Ø#$ˆI�iÑ Ð ð	%õ %)¨¯ªÑ)9Ô)9Ñ$:Ô$:Ð:€FÔ˜	˜	˜	ó    çš™™™™™©?çš™™™™™É?c                 óÆ  — t          | ¦  «        }t          |¦  «        }| |         }||         }	|                     |¦  «         |	                     |¦  «         |j        |j        k    rdS |j        r|n|}
t          |j        |	j        z
  ¦  «        |j        |
z  k    rdS t          |d¦  «        r1|j        �*t          |j        |	j        z
  ¦  «        |j        |
z  k    rdS dS )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„M€MØ‡G‚GˆD�M„M€MØ„z�T”ZÒÐØˆuà$(¤JÐIÐ Ð Ð4I€Iå
ˆ2Œ8�b”hÑÑÔ "¤(¨YÑ"6Ò6Ð6ØˆuÝˆr�8ÑÔð  ¤Ð!6ÝˆrŒy˜2œ9Ñ$Ñ%Ô%¨¬	°IÑ(=Ò=Ð=Ø�5Øˆ4r   c                 ó*  — i }| j         }|D ]b}|j                             ¦   «         D ]F\  }}||vri ||<   |D ]5\  }}|                     |¦  «        |k    rd}|||         vr|||         |<   Œ6ŒGŒc|D ]!}g ||                              ¦   «         ¢||<   Œ"|S )z-Returns merged UVS subtable (cmap format=14).N)ÚcmapÚuvsDictÚitemsÚget)	r   Ú	uvsTablesr-   r,   ÚtableÚvariationSelectorÚ
uvsMappingÚunicodeValuer   s	            r   ÚcomputeMegaUvsr5   9   sø   € à€GØŒ;€DØð 
Ið 
IˆØ-2¬]×-@Ò-@Ñ-BÔ-Bð 		Ið 		IÑ)Ð˜zØ ¨Ð/Ð/Ø-/�Ð)Ñ*Ø+5ð Ið IÑ'�˜iØ—8’8˜LÑ)Ô)¨YÒ6Ð6à $�Ià wÐ/@Ô'AÐAÐAØ?H�GÐ-Ô.¨|Ñ<øðIð		Ið %ð Kð KÐØ%J wÐ/@Ô'A×'GÒ'GÑ'IÔ'IÐ%JˆÐ!Ñ"Ð"à€Nr   c                   ó$   — e Zd Zh d£Zh d£ZdhZdS )Ú_CmapUnicodePlatEncodings>   ©é   r   r9   ©r9   r   é   ©r9   r   é   ©r9   r;   r   >   ©é   r   r9   ©r@   r   r=   ©r@   r;   é
   )é   r   é   N)Ú__name__Ú
__module__Ú__qualname__ÚBMPÚFullRepertoireÚUVS© r   r   r7   r7   S   s+   € € € € € Ø
6Ð
6Ð
6€CØ:Ð:Ð:€NØˆ,€C€C€Cr   r7   c           	      ód  — g }g }t          |¦  «        D ]Ó\  }}d}d}d}|j        D ]v}	|	j        |	j        |	j        f}
|
t
          j        v r|	}Œ'|
t
          j        v r|	}Œ8|
t
          j        v r|	}ŒIt           
                    d||	j        |	j        |	j        ¦  «         Œw|�|                     ||f¦  «         n|�|                     ||f¦  «         |�|                     |¦  «         ŒÔi x| _        }i }t          | d¦  «        rd„ | j        D ¦   «         nd}|D �]\  }}|j                             ¦   «         D ]á\  }}|                     |d¦  «        }|€|||<   |||<   Œ(t#          |¦  «        s|dv rŒ<||k    rŸ| j        |                              |¦  «        €L|�9||         }||fD ],}||         €"| j        |                              ¦   «         ||<   Œ-|| j        |         |<   Œ®| j        |         |         |k    rt           
                    d||¦  «         Œâ�Œt)          | |¦  «        | _        dS )z$Sets merger.cmap and merger.uvsDict.NzODropped cmap subtable from font '%s':	format %2s, platformID %2s, platEncID %2sÚfontsc                 ó   — g | ]}d ‘ŒS )NrL   )Ú.0Úfs     r   ú
<listcomp>z#computeMegaCmap.<locals>.<listcomp>�   s   € Ð,Ð,Ð,˜!�Ð,Ð,Ð,r   )iÌ%  z4Dropped mapping from codepoint %#06X to glyphId '%s')r   ÚtablesÚformatÚ
platformIDÚ	platEncIDr7   rI   rJ   rK   ÚlogÚwarningÚappendr,   r   rN   r.   r/   r   ÚduplicateGlyphsPerFontÚgetGlyphSetr5   r-   )r   Ú
cmapTablesÚchosenCmapTablesÚchosenUvsTablesÚfontIdxr1   Úformat4Úformat12Úformat14ÚsubtableÚ
propertiesr,   ÚfontIndexForGlyphÚ	glyphSetsÚuniÚgidÚoldgidÚ
oldFontIdxÚidxs                      r   ÚcomputeMegaCmaprl   Y   sÔ  € ð ÐØ€OÝ# JÑ/Ô/ð -ð -‰ˆ�ØˆØˆØˆØœð 	ð 	ˆHØ"œ/¨8Ô+>ÀÔ@RÐSˆJØÕ6Ô:Ð:Ð:Ø"��ØÕ8ÔGÐGÐGØ#��ØÕ8Ô<Ð<Ð<Ø#��å—’ð@àØ”OØÔ'ØÔ&ñô ð ð ð ÐØ×#Ò# X¨wÐ$7Ñ8Ô8Ð8Ð8ØÐ Ø×#Ò# W¨gÐ$6Ñ7Ô7Ð7àÐØ×"Ò" 8Ñ,Ô,Ð,øð Ð€F„K�$ØÐÝ07¸ÀÑ0HÔ0HÐRÐ,Ð,˜vœ|Ð,Ñ,Ô,Ð,Èd€Ià*ð ñ ‰ˆˆwàœ
×(Ò(Ñ*Ô*ð 	ð 	‰HˆC�Ø—X’X˜c 4Ñ(Ô(ˆFØˆ~Ø��S‘	Ø)0Ð! #Ñ&Ð&Ý% cÑ*Ô*ð ¨c°YÐ.>Ð.>ØØ˜3’�ð Ô0°Ô9×=Ò=¸fÑEÔEÐMØ Ð,Ø%6°vÔ%>˜
Ø$+¨ZÐ#8ð Qð Q˜CØ(¨œ~Ð5Ø17´¸cÔ1B×1NÒ1NÑ1PÔ1P 	¨#¡øð FI�FÔ1°'Ô:¸6ÑBÐBØÔ2°7Ô;¸FÔCÀsÒJÐJõ —K’KØNÐPSÐUXñô ð øñ/	õ6 $ F¨OÑ<Ô<€F„N€N€Nr   c                 óê   — |j         j        d         }i }t          |j        j                             ¦   «         ¦  «        D ]\  }}||         }|||<   Œ||j        _        t          |¦  «        |_        dS )z4Rename topDictIndex charStrings based on glyphOrder.r   N)ÚcffÚtopDictIndexr   ÚCharStringsÚcharStringsÚvaluesr
   Úcharset)r   r   ÚcffTableÚtdrq   r   Úvr   s           r   ÚrenameCFFCharStringsrw   £   su   € à	ŒÔ	" 1Ô	%€Bà€KÝ˜"œ.Ô4×;Ò;Ñ=Ô=Ñ>Ô>ð #ð #‰ˆˆ1Ø˜q”Mˆ	Ø!"ˆ�IÑÐØ!,€B„NÔå�jÑ!Ô!€B„J€J€Jr   )r   r   )ÚfontTools.merge.unicoder   ÚfontTools.pens.recordingPenr   ÚloggingÚ	getLoggerrW   r   r*   r5   r7   rl   rw   rL   r   r   ú<module>r|      s×   ðð
 9Ð 8Ð 8Ð 8Ð 8Ð 8Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ø €€€ð €gÔÐ)Ñ*Ô*€ð;ð ;ð ;ð, Øðð ð ð ð6ð ð ð4ð ð ð ð ñ ô ð ðG=ð G=ð G=ðT
"ð 
"ð 
"ð 
"ð 
"r   