ó
    oñ:iE  ã            
       óT  • S SK r S SKrS SKJrJr  S SKJr  S SKJrJ	r	  S SK
Jr  S SKJr  S SKJrJrJrJrJrJr  S SKJr  S S	KJrJr  S S
KJr  S SKJrJr  \ R>                  " \ 5      r!\\  S3   r"Sr#\$" \"RJ                  5      r&S\'4S jr(S\S\'S\4S jr)S\S\'S\RT                  SS4S jr+S\S\'S\RT                  SS4S jr,S\S\'S\\RZ                     S\\RZ                     4S jr.S\S\'S\RZ                  S\\RZ                     4S jr/S\R`                  S\14S jr2\\\\$S4   \\$S4   4   \\Rf                  \Rf                  4   4   r4S\\'   4S jr5 S)S\\\\\'\'4      \'\'4      S \\'   4S! jjr6\" S"/ S#Q5      r7\ " S$ S%5      5       r8 S*S\S&\4S'\'S\\4   4S( jjr9g)+é    N)ÚdefaultdictÚ
namedtuple)Ú	dataclass)Úcached_propertyÚreduce)Úchain)Úlog2)ÚDefaultDictÚDictÚIterableÚListÚSequenceÚTuple)ÚOPTIONS)Ú	bit_countÚbit_indices)ÚTTFont)ÚotBaseÚotTablesz:COMPRESSION_LEVELÚFONTTOOLS_GPOS_COMPACT_MODEÚreturnc                  ó  • [         n [        [        R                  ;   a9  SS KnUR                  S[         S3[        5        [        R                  [           n [        U 5      S:X  a  U S;   a  [        U 5      $ [        S[         SU  35      e)Nr   Ú'z}' environment variable is deprecated. Please set the 'fontTools.otlLib.optimize.gpos:COMPRESSION_LEVEL' option in TTFont.cfg.é   Ú
0123456789zBad Ú=)
ÚGPOS_COMPACT_MODE_DEFAULTÚGPOS_COMPACT_MODE_ENV_KEYÚosÚenvironÚwarningsÚwarnÚDeprecationWarningÚlenÚintÚ
ValueError)Ú	env_levelr!   s     Úa/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/fontTools/otlLib/optimize/gpos.pyÚ_compression_level_from_envr)      s‚   € Ü)€IÜ ¤B§J¡JÓ.Ûà�‰ØÔ)Ð*ð +ð ô ô		
ô —J‘JÔ8Ñ9ˆ	Ü
ˆ9ƒ~˜Ó˜y¨LÓ8Ü�9‹~ÐÜ
�tÔ5Ð6°a¸	°{ÐCÓ
DÐDó    ÚfontÚlevelc                 ó6  • U R                  S5      nUc  U $ UR                  R                  R                   H^  nUR                  S:X  a  [        XU5        M!  UR                  S:X  d  M3  UR                  S   R                  S:X  d  MR  [        XU5        M`     U $ )NÚGPOSé   é	   r   )	ÚgetÚtableÚ
LookupListÚLookupÚ
LookupTypeÚcompact_lookupÚSubTableÚExtensionLookupTypeÚcompact_ext_lookup)r+   r,   ÚgposÚlookups       r(   Úcompactr<   +   s†   € ð �8‰8�FÓ€Dð �|Øˆà—*‘*×'Ñ'×.Ô.ˆØ×Ñ Ó!Ü˜4¨Ö/Ø×Ñ !Õ#¨¯©¸Ñ(:×(NÑ(NÐRSÕ(SÜ˜t¨FÖ3ñ	 /ð €Kr*   r;   c                 ó\   • [        XUR                  5      nX2l        [        U5      Ul        g ©N)Úcompact_pair_posr7   r$   ÚSubTableCount)r+   r,   r;   Únew_subtabless       r(   r6   r6   H   s$   € Ü$ T°&·/±/ÓB€MØ#„OÜ˜}Ó-€FÕr*   c                 ó  • [        XUR                   Vs/ s H  o3R                  PM     sn5      n/ nU H6  n[        R                  " 5       nSUl        Xcl        UR                  U5        M8     XRl        [        U5      Ul        g s  snf ©Nr   )	r?   r7   ÚExtSubTabler   ÚExtensionPosÚFormatÚappendr$   r@   )r+   r,   r;   Úext_subtablerA   Únew_ext_subtablesÚsubtables          r(   r9   r9   N   s   € Ü$ØÀ6Ç?Â?ÓSÂ?°<×.Ô.Á?ÑSó€Mð ÐÛ!ˆÜ×,Ò,Ó.ˆØˆÔØ#+Ô Ø× Ñ  Ö.ñ	 "ð
 („OÜÐ0Ó1€FÕùò Ts   •BÚ	subtablesc                 ó¼   • / nU HS  nUR                   S:X  a  UR                  U5        M&  UR                   S:X  d  M8  UR                  [        XU5      5        MU     U$ )Nr   r/   )rF   rG   ÚextendÚcompact_class_pairs)r+   r,   rK   rA   rJ   s        r(   r?   r?   \   sW   € ð €MÛˆØ�?‰?˜aÓà× Ñ  Ö*Ø�_‰_ Õ!Ø× Ñ Ô!4°TÀ(Ó!KÖLñ ð Ðr*   rJ   c                 ó  • SSK Jn  / n[        [        5      nUR                  R
                   H:  nXRR                  R                  R                  US5         R                  U5        M<     [        [        5      nUR                  R                  R                  5        H  u  phXx   R                  U5        M     0 n	[        UR                  5       H|  u  pŠ[        U
R                  5       H^  u  p¼[        U5      (       a  M  [!        USS 5      [!        USS 5      4U	[#        [%        XX   5      5      [#        [%        X{   5      5      4'   M`     M~     ['        X	U5      nU H(  nUR                  U" XàR)                  5       5      5        M*     U$ )Nr   )ÚbuildPairPosClassesSubtableÚValue1ÚValue2)ÚfontTools.otlLib.builderrP   r   ÚlistÚCoverageÚglyphsÚ	ClassDef1Ú	classDefsr1   rG   Ú	ClassDef2ÚitemsÚ	enumerateÚClass1RecordÚClass2RecordÚis_really_zeroÚgetattrÚtupleÚsortedÚ,cluster_pairs_by_class2_coverage_custom_costÚgetReverseGlyphMap)r+   r,   rJ   rP   rK   Úclasses1ÚgÚclasses2ÚiÚ	all_pairsÚclass1ÚjÚclass2Úgrouped_pairsÚpairss                  r(   rN   rN   i   sR  € õ Eà€IÜ,7¼Ó,=€HØ×Ñ×%Ô%ˆØ×#Ñ#×-Ñ-×1Ñ1°!°QÓ7Ñ8×?Ñ?ÀÖBñ &ä,7¼Ó,=€HØ×"Ñ"×,Ñ,×2Ñ2Ö4‰ˆØ‰×Ñ˜1Öñ 5à€IÜ˜x×4Ñ4Ö5‰	ˆÜ" 6×#6Ñ#6Ö7‰IˆAÜ˜f×%Ñ%Ùä˜ ¨$Ó/Ü˜ ¨$Ó/ðSˆI”uœV H¡KÓ0Ó1´5¼ÀÁÓ9LÓ3MÐNÓOó 8ñ 6ô AÀÐRWÓX€MÛˆØ×ÑÑ4°U×<SÑ<SÓ<UÓVÖWñ àÐr*   rk   c                 ó¼   • [        U SS 5      n[        U SS 5      nUS L =(       d    UR                  5       S:H  =(       a    US L =(       d    UR                  5       S:H  $ )NrQ   rR   r   )r_   ÚgetEffectiveFormat)rk   Úv1Úv2s      r(   r^   r^   „   s\   € Ü	�˜ 4Ó	(€BÜ	�˜ 4Ó	(€BØ�$ˆJ×6˜"×/Ñ/Ó1°QÑ6÷ Ø
ˆdˆ
×2�b×+Ñ+Ó-°Ñ2ðr*   .ÚglyphIDsc                 óÞ   • [        U 5      n U S   nU//nU SS   H3  nX1S-   :w  a&  US   R                  U5        UR                  U/5        UnM5     US   R                  U5        X S   U S   4$ )Nr   r   éÿÿÿÿ)ra   rG   )rr   ÚlastÚrangesÚglyphIDs       r(   Ú_getClassRangesrx   “   s„   € Ü�hÓ€HØ�A‰;€DØˆfˆX€FØ˜A˜B“<ˆØ˜Q‘hÓØ�2‰J×Ñ˜dÔ#Ø�M‰M˜7˜)Ô$ØŠñ	  ð
 ˆ2�J×Ñ�dÔØ˜A‘; ¨¡Ð,Ð,r*   Ú
class_dataÚ	class_idsc                 óú   • U(       d  gXS      u  p4n[        U5      nUSS   H4  nX   nU[        US   5      -  n[        XHS   5      n[        XXS   5      nM6     XT-
  S-   n	SU	S-  -   n
SUS-  -   n[        X«5      $ )Nr   r   r/   é   é   )r$   ÚminÚmax)ry   rz   ÚcoverageÚfirst_rangesÚmin_glyph_idÚmax_glyph_idÚrange_countrg   ÚdataÚ
glyphCountÚformat1_bytesÚformat2_bytess               r(   Ú_classDef_bytesr‰   ¡   s    € ö
 ØØ/9ÀA¹,Ñ/GÑ,€L Ü�lÓ#€KØ�q�r‹]ˆØ‰}ˆØ”s˜4 ™7“|Ñ#ˆÜ˜<¨a©Ó1ˆÜ˜<¨a©Ó1Šñ	 ð
 Ñ,¨qÑ0€Jà˜
 Q™Ñ&€Mà˜ a™Ñ'€MÜˆ}Ó,Ð,r*   ÚClusteringContext)ÚlinesÚ
all_class1Úall_class1_dataÚall_class2_dataÚvalueFormat1_bytesÚvalueFormat2_bytesc                   óš   • \ rS rSr% \\S'   \\S'   \S 5       r\S 5       r	\
S 5       r\S 5       r\
S 5       r\
S	 5       r\
S
 5       rSrg)ÚClusteréÄ   ÚctxÚindices_bitmaskc                 ó,   • [        U R                  5      $ r>   )r   r•   ©Úselfs    r(   ÚindicesÚCluster.indicesÉ   s   € ä˜4×/Ñ/Ó0Ð0r*   c                 óv   ^ • [        [        R                  U 4S jT R                   5       5      n[	        U5      $ )Nc              3   óV   >#   • U  H  nTR                   R                  U   v •  M      g 7fr>   )r”   r‹   ©Ú.0rg   r˜   s     €r(   Ú	<genexpr>Ú)Cluster.column_indices.<locals>.<genexpr>Ñ   s   øé € Ð%NÂ¸A d§h¡h§n¡n°QÖ&7Âùs   ƒ&))r   r%   Ú__or__r™   r   )r˜   Úbitmasks   ` r(   Úcolumn_indicesÚCluster.column_indicesÍ   s*   ø€ ô œŸ™Ô%NÀÇÂÓ%NÓOˆÜ˜7Ó#Ð#r*   c                 ó2   • [        U R                  5      S-   $ rC   )r$   r£   r—   s    r(   ÚwidthÚCluster.widthÔ   s   € ô �4×&Ñ&Ó'¨!Ñ+Ð+r*   c                 ó  • SU R                   -   S-   S-   S-   U R                  -   S-   U R                  -   S-   S-   U R                  R                  U R                  R
                  -   [        U R                  5      -  U R                  -  -   $ )Nr|   r/   )	Úcoverage_bytesÚclassDef1_bytesÚclassDef2_bytesr”   r�   r�   r$   r™   r¦   r—   s    r(   ÚcostÚCluster.costÙ   s¸   € ðð ×!Ñ!ñ"ð ñ	ð ñð ñð ×"Ñ"ñ#ð  ñ!ð" ×"Ñ"ñ##ð& ñ'ð* ñ+ð. �x‰x×*Ñ*¨T¯X©X×-HÑ-HÑHÜ�$—,‘,Óñ à�j‰jññ/ð	
r*   c                 ó  ^ • S[        U 4S jT R                   5       5      S-  -   n[        [        R                  " U 4S jT R                   5       5      5      nSnS nU H  u  pVUb  XTS-   :w  a  US-  nUnM     SUS-  -   n[        X5      $ )Nr}   c              3   óh   >#   • U  H'  n[        TR                  R                  U   5      v •  M)     g 7fr>   ©r$   r”   rŒ   r�   s     €r(   rŸ   Ú)Cluster.coverage_bytes.<locals>.<genexpr>  s(   øé € ÐD²|°!”#�d—h‘h×)Ñ)¨!Ñ,×-Ð-²|ùs   ƒ/2r/   c              3   ó\   >#   • U  H!  nTR                   R                  U   S    v •  M#     g7f©r   N)r”   r�   r�   s     €r(   rŸ   r±     s%   øé € ÐUÊÀ1 §¡× 8Ñ 8¸Ñ ;¸AÖ >Êùs   ƒ),r   r   r|   )Úsumr™   ra   r   Úfrom_iterabler~   )r˜   r‡   rv   Úmerged_range_countru   ÚstartÚendrˆ   s   `       r(   r©   ÚCluster.coverage_bytesù   s¬   ø€ ð äÔD°t·|²|ÓDÓDÀqÑHñIð	 	ô Ü×ÒÔUÈÏÊÓUÓUó
ˆð ÐØˆÛ ‰JˆEØÑ E°A©XÓ$5Ø" aÑ'Ð"ØŠDñ !ð ð
 ! 1Ñ$ñ%ð	 	ô �=Ó0Ð0r*   c                 óÂ   ^ • [        T R                  U 4S jS9n[        T R                  R                  T R                   Vs/ s H  o"U:w  d  M
  UPM     sn5      $ s  snf )Nc                 óH   >• [        TR                  R                  U    5      $ r>   r°   )rg   r˜   s    €r(   Ú<lambda>Ú)Cluster.classDef1_bytes.<locals>.<lambda>   s   ø€ ¼¸D¿H¹H×<OÑ<OÐPQÑ<RÔ8Sr*   )Úkey)r   r™   r‰   r”   r�   )r˜   Úbiggest_indexrg   s   `  r(   rª   ÚCluster.classDef1_bytes  sM   ø€ ô ˜DŸL™LÔ.SÑTˆÜØ�H‰H×$Ñ$°$·,²,Ó&U²,¨QÀ}ÑBT§q±,Ñ&Uó
ð 	
ùÚ&Us   Á	A
ÁA
c                 óV   • [        U R                  R                  U R                  5      $ r>   )r‰   r”   rŽ   r£   r—   s    r(   r«   ÚCluster.classDef2_bytes%  s!   € ô ˜tŸx™x×7Ñ7¸×9LÑ9LÓMÐMr*   © N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rŠ   Ú__annotations__r%   r   r™   r£   Úpropertyr¦   r¬   r©   rª   r«   Ú__static_attributes__rÃ   r*   r(   r’   r’   Ä   sš   ‡ à	ÓØÓàñ1ó ð1ð ñ$ó ð$ð ñ,ó ð,ð ñ
ó ð
ð> ñ1ó ð1ð> ñ	
ó ð	
ð ñNó óNr*   r’   rm   Úcompressionc           	      óª  ^^^$^%^&^'• T(       d  T/$ [        [        S T 5       5      5      n[        [        S T 5       5      5      nU V^s/ s H"  m[        UU4S j[        U5       5       5      PM$     nnU R	                  5       m'U Vs/ s H  n[        U'4S jU 5       5      PM     nnU Vs/ s H  n[        U'4S jU 5       5      PM     n	nSn
SnTR                  5        HG  u  pÍX­S   (       a  US   R                  5       OS-  n
X½S   (       a  US   R                  5       OS-  nMI     [        U
5      S-  n[        U5      S-  n[        UUUU	UU5      m%0 m$S	[        S
[        4U$U%4S jjm&S[        S[        S
[        4U&4S jjn[        [        U5      5       Vs/ s H  nT&" SU-  5      PM     nnT&" S[        U5      -  S-
  5      R                  n[        R!                  S[        U5       35        [        U5      S:”  Ga-  S nS nS nS n[        U5       Hi  u  nn[        UUS-   S  5       HN  u  nnU" UU5      nUR                  UR                  -
  UR                  -
  nUb  UU:  d  M@  UnUnUS-   U-   nUnMP     Mk     Uc   eUc   eUc   eUc   eUS:”  ay  [        S U 5       5      nSUU-  -
  n[#        SU-
  5      * U-  n[        R!                  S[        U5      S SUS SU 35        US:X  a  [        U5      n[        U5      US-   ::  a  OUU	 UUU'   [        U5      S:”  a  GM-  [%        [&        5      n TR                  5        H  u  nn!U!U US      U'   M     / n"U HJ  n['        5       n#UR(                   H  nUU   mU#R+                  U T   5        M     U"R-                  U#5        ML     U"$ s  snf s  snf s  snf s  snf )Nc              3   ó*   #   • U  H	  oS    v •  M     g7fr³   rÃ   ©rž   Úpairs     r(   rŸ   Ú?cluster_pairs_by_class2_coverage_custom_cost.<locals>.<genexpr>5  ó   é € Ð6²¨ žG²ùó   ‚c              3   ó*   #   • U  H	  oS    v •  M     g7f)r   NrÃ   rÎ   s     r(   rŸ   rÐ   6  rÑ   rÒ   c              3   óF   >#   • U  H  u  pTU4T;   a  S U-  OSv •  M     g7f)r   r   NrÃ   )rž   rg   rk   ri   rm   s      €€r(   rŸ   rÐ   :  s/   øé € ð 
â2‘	�ð ˜vÐ&¨%Ó/ˆA�ŠF°QÔ6Ú2ùs   ƒ!c              3   ó.   >#   • U  H
  nTU   v •  M     g 7fr>   rÃ   ©rž   ÚnameÚ
name_to_ids     €r(   rŸ   rÐ   E  ó   øé € Ð9²S¨T˜
 4Ö(²Sùó   ƒc              3   ó.   >#   • U  H
  nTU   v •  M     g 7fr>   rÃ   rÖ   s     €r(   rŸ   rÐ   H  rÙ   rÚ   r   r   r/   r™   r   c                 óX   >• TR                  U S 5      nUb  U$ [        TU 5      nUTU '   U$ r>   )r1   r’   )r™   ÚclusterÚcluster_cacher”   s     €€r(   Úmake_clusterÚBcluster_pairs_by_class2_coverage_custom_cost.<locals>.make_cluster^  s;   ø€ Ø×#Ñ# G¨TÓ2ˆØÑØˆNÜ˜#˜wÓ'ˆØ!(ˆ�gÑØˆr*   rÝ   Úotherc                 óB   >• T" U R                   UR                   -  5      $ r>   )r•   )rÝ   rá   rß   s     €r(   ÚmergeÚ;cluster_pairs_by_class2_coverage_custom_cost.<locals>.mergef  s   ø€ Ù˜G×3Ñ3°e×6KÑ6KÑKÓLÐLr*   z        len(clusters) = c              3   ó8   #   • U  H  oR                   v •  M     g 7fr>   )r¬   )rž   Úcs     r(   rŸ   rÐ   �  s   é € Ð&@²x°!§v¦v²xùs   ‚z            len(clusters) = Ú3dz    size_reduction=z5.2fz    max_new_subtables=r0   )ra   Úsetr´   r[   rc   rx   rZ   ro   r   rŠ   r%   r’   Úranger$   r¬   ÚlogÚdebugr	   r   Údictr™   ÚupdaterG   )(r+   rm   rË   rŒ   Ú
all_class2ri   r‹   Úclsr�   rŽ   Úformat1Úformat2rÏ   Úvaluer�   r�   rã   rg   ÚclustersÚcost_before_splittingÚlowest_cost_changeÚbest_cluster_indexÚbest_other_indexÚbest_mergedrÝ   rj   rá   ÚmergedÚcost_changeÚcost_after_splittingÚsize_reductionÚmax_new_subtablesÚpairs_by_class1ÚvaluesÚpairs_groupsÚpairs_grouprÞ   r”   rß   rØ   s(    `   `                              @@@@r(   rb   rb   +  sh  ý€ ö
 àˆwˆô œÑ6±Ó6Ó6Ó7€JÜœÑ6±Ó6Ó6Ó7€Jñ !ôò
 !ˆFô	 	õ 
ä& zÔ2ó
ö 	
ñ !ð 
ð ð ×(Ñ(Ó*€Jñ FPóÚEO¸cŒÔ9±SÓ9Ö9ÁZð ð ñ FPóÚEO¸cŒÔ9±SÓ9Ö9ÁZð ð ð €GØ€GØ—{‘{–}‰ˆØ¸!·H�5˜‘8×.Ñ.Ô0À!ÑCˆØ¸!·H�5˜‘8×.Ñ.Ô0À!ÑCŠñ %ô # 7Ó+¨aÑ/ÐÜ" 7Ó+¨aÑ/Ðä
ØØØØØØó€Cð )+€Mðœcð ¤g÷ ð ðM”wð M¤wð M´7÷ Mô /4´C¸³JÔ.?Ó@Ò.?¨‘˜Q !™VÖ$Ñ.?€HÐ@ñ )¨!¬s°5«z©/¸QÑ)>Ó?×DÑDÐÜ‡I�IÐ(¬¨X«¨Ð8Ô9ä
ˆh‹-˜!Ô
Ø!ÐØ!ÐØÐØˆÜ# HÖ-‰JˆAˆwÜ% h¨q°1©u¨wÐ&7Ö8‘��5Ù˜w¨Ó.�Ø$Ÿk™k¨G¯L©LÑ8¸5¿:¹:ÑE�Ø%Ñ-°Ð?QÕ1QØ)4Ð&Ø)*Ð&Ø'(¨1¡u¨q¡yÐ$Ø"(’Kó 9ñ .ð "Ñ-Ð-Ð-Ø!Ñ-Ð-Ð-ØÑ+Ð+Ð+ØÑ&Ð&Ð&ð  Ó!ô $'Ñ&@±xÓ&@Ó#@Ð ð Ð!5Ð8MÑ!MÑMˆNô "& a¨.Ñ&8Ó!9Ð 9¸KÑ GÐÜ�I‰IØ.¬s°8«}¸RÐ.@Ð@SÐTbÐcgÐShÐh~ð  @Qð  Rð  Sôð ˜aÓä$'¨£MÐ!ô �8‹}Ð 1°AÑ 5Ó5Øð Ð%Ð&Ø'2ˆÐ#Ñ$ôm ˆh‹-˜!Ö
ôr 5@ÄÓ4E€OØŸ™ž‰ˆˆfØ)/ˆ˜˜Q™Ñ  Ó&ñ &à "€LÛˆÜ!›VˆØ—”ˆAØ ‘]ˆFØ×Ñ˜¨vÑ6Ö7ñ !ð 	×Ñ˜KÖ(ñ ð Ðùò}ùòùòùòL As   Á)OÂOÂ0OÆ#O)F)é   ):Úloggingr   Úcollectionsr   r   Údataclassesr   Ú	functoolsr   r   Ú	itertoolsr   Úmathr	   Útypingr
   r   r   r   r   r   ÚfontTools.configr   ÚfontTools.misc.intToolsr   r   ÚfontTools.ttLibr   ÚfontTools.ttLib.tablesr   r   Ú	getLoggerrÄ   rê   ÚCOMPRESSION_LEVELr   ÚstrÚdefaultr   r%   r)   r<   r4   r6   r9   ÚPairPosr?   rN   r]   Úboolr^   ÚValueRecordÚPairsrx   r‰   rŠ   r’   rb   rÃ   r*   r(   Ú<module>r     sd  ðÛ Û 	ß /Ý !ß -Ý Ý ß E× Eå $ß :Ý "ß 3à×Ò˜Ó!€à˜x˜jÐ(:Ð;Ñ<Ð ð :Ð ÙÐ 1× 9Ñ 9Ó:Ð ðE Sô Eð$�&ð  ð ¨ô ð:.˜ð .¨ð .°X·_±_ð .Èô .ð2˜Vð 2¨Cð 2¸¿¹ð 2ÈTô 2ð
Ø
ð
Øð
Ø)1°(×2BÑ2BÑ)Cð
àˆh×ÑÑô
ðØ
ðØðØ(0×(8Ñ(8ðà	ˆ(×
Ñ
Ñôð6˜8×0Ñ0ð °Tô ð 	Ø	ˆ%��S�‰/˜5  c ™?Ð
*Ñ+Ø	ˆ&×
Ñ
˜f×0Ñ0Ð
0Ñ1ð3ñ	€ð
-˜h s™mô 
-ð" ñ-Ø�U˜4  c¨3 h¡Ñ0°#°sÐ:Ñ;Ñ<ð-à�C‰yõ-ñ, Øòó
Ð ð ÷cNð cNó ðcNðR ñLØ
ðLàðLð ðLð 
ˆ%�[ö	Lr*   