Ë
    £eh  ã                   ót  — d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZmZ  G d„ dej                  «      Z e ej                  d	«      «      d
„ «       Zdd„Z e ej                  d	«      «      d„ «       Z e ej                  d	«      «      d„ «       Z e ej                  d	«      «      d„ «       Z e	de¬«       e ej                  d	«      «      d„ «       «       Z e	de¬«       e ej                  d	«      «      d„ «       «       Z e	de¬«       e ej                  d	«      «      d„ «       «       Zy)é    )ÚpsCharStrings)ÚttLib)ÚNullPen)ÚotRound)ÚdeprecateFunction)Ú_add_methodÚ
_uniq_sortc                   ó   — e Zd Zd„ Zd„ Zy)Ú_ClosureGlyphsT2Decompilerc                 óT   — t         j                  j                  | ||«       || _        y ©N)r   ÚSimpleT2DecompilerÚ__init__Ú
components)Úselfr   Ú
localSubrsÚglobalSubrss       úR/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/fontTools/subset/cff.pyr   z#_ClosureGlyphsT2Decompiler.__init__
   s!   € Ü×(Ñ(×1Ñ1°$¸
ÀKÔPØ$ˆ�ó    c                 óâ   — | j                  «       }t        |«      dk\  rQddlm} |dd  \  }}}}||   }||   }	| j                  j                  |«       | j                  j                  |	«       y y )Né   r   )ÚStandardEncodingéüÿÿÿ)ÚpopallÚlenÚ$fontTools.encodings.StandardEncodingr   r   Úadd)
r   ÚindexÚargsr   ÚadxÚadyÚbcharÚacharÚ	baseGlyphÚaccentGlyphs
             r   Ú
op_endcharz%_ClosureGlyphsT2Decompiler.op_endchar   sn   € Ø�{‰{‹}ˆÜˆt‹9˜Š>ÝMð &*¨"¨# YÑ"ˆC��e˜UØ(¨Ñ/ˆIØ*¨5Ñ1ˆKØ�O‰O×Ñ 	Ô*Ø�O‰O×Ñ Õ,ð r   N)Ú__name__Ú
__module__Ú__qualname__r   r&   © r   r   r   r   	   s   „ ò%ó-r   r   zCFF c                 ó°  — | j                   }t        |«      dk(  sJ ‚||j                  «       d      }|j                  }|j                  }|rŠt        «       }|D ]K  }||vrŒ||   }t        |j                  dg «      }	t        ||	|j                  «      }
|
j                  |«       ŒM ||j                  z  }|j                  j                  |«       |}|rŒ‰y y )Né   r   ÚSubrs)Úcffr   ÚkeysÚCharStringsÚglyphsÚsetÚgetattrÚprivater   r   ÚexecuteÚupdate)r   Úsr.   ÚfontÚglyphSetÚ	decomposer   ÚgÚglÚsubrsÚ
decompilers              r   Úclosure_glyphsr?      sÌ   € à
�(‰(€CÜˆs‹8�qŠ=Ðˆ=Øˆs�x‰x‹z˜!‰}Ñ€DØ×Ñ€Hà—‘€IÙ
Ü“Uˆ
Øò 	#ˆAØ˜Ñ ØØ˜!‘ˆBä˜BŸJ™J¨°Ó4ˆEÜ3°JÀÀrÇ~Á~ÓVˆJØ×Ñ˜rÕ"ð	#ð 	�a—h‘hÑˆ
Ø	�‰�‰˜
Ô#Øˆ	ô r   c                 ó¾  — | j                   j                  |«      \  }}|s|r|j                  |rg «       y dg«       y t        | d«      r&| j                  �| j                  |   j
                  }n| j
                  }|j                  }|j                  }t        «       }	|j                  |	«       |j                  |k7  r|j                  |z
  dg|_        y dg|_        y )NÚendcharÚFDArray)r0   ÚgetItemAndSelectorÚ
setProgramÚhasattrrB   ÚPrivateÚdefaultWidthXÚnominalWidthXr   ÚdrawÚwidthÚprogram)
r8   Ú	glyphNameÚisCFF2ÚignoreWidthÚcÚfdSelectIndexr4   ÚdfltWdXÚnmnlWdXÚpens
             r   Ú_empty_charstringrT   3   s¹   € Ø×'Ñ'×:Ñ:¸9ÓEÑ€A€}Ù‘à	�‰™6�RÕ3¨	 {Õ3ä�4˜Ô#¨¯©Ð(@Ø—l‘l =Ñ1×9Ñ9‰Gà—l‘lˆGØ×'Ñ'ˆØ×'Ñ'ˆÜ‹iˆØ	�‰ˆsŒØ�7‰7�gÒØŸ™ 7Ñ*¨IÐ6ˆA�Ià"˜ˆA�Ir   c                 ó$  — | j                   }|j                  d d |_        |j                  rC|j                  s7|j                  dkD  }|j                  «       D ]  }||   }t        |d|¬«       Œ |j                  «       D ]  }||   }d|_        Œ y)Nr,   z.notdef)rM   r   T)r.   Ú	fontNamesÚnotdef_glyphÚnotdef_outlineÚmajorr/   rT   ÚEncoding)r   r8   Úoptionsr.   rM   Úfontnames         r   Úprune_pre_subsetr]   G   s‘   € à
�(‰(€Cà—M‘M " 1Ð%€C„Mà×Ò G×$:Ò$:Ø—‘˜Q‘ˆØŸ™›
ò 	>ˆHØ�x‘=ˆDÜ˜d I°fÖ=ð	>ð
 —H‘H“Jò +ˆØ�8‰}ˆà*ˆ�ð+ð
 r   c                 ó�  — | j                   }|j                  «       D �]  }||   }|j                  }|j                  j	                  |j
                  «      }|j                  D ]  }||vrŒ|j                  |«      \  }}	Œ |j                  rßt        |j                  «      D �
�cg c]  \  }
}||v sŒ|
‘Œ }}
}|j                  }|D �
cg c]  }
|j                  |
   ‘Œ c}
|_        |`|`t        |d«      r5|j                  }d |_        |D �
cg c]  }
|j"                  |
   ‘Œ c}
|_        i }t        |«      D ](  \  }}|j                  |   }||j$                  v sŒ$|||<   Œ* ||_        n8|j$                  j                  «       D ��ci c]  \  }}||v sŒ||“Œ c}}|_        |j                  D �cg c]	  }||v sŒ|‘Œ c}|_        t'        |j                  «      |_        |j*                  j,                  s�ŒÝ|j.                  dkD  }|j
                  D ]  }t1        |||d¬«       Œ �Œ yc c}}
w c c}
w c c}
w c c}}w c c}w )NÚFDSelectr,   T)rM   rN   )r.   r/   r0   r1   ÚunionÚglyphs_emptiedÚcharsetrC   ÚcharStringsAreIndexedÚ	enumerateÚcharStringsIndexÚitemsÚfileÚoffsetsrE   r_   ÚformatÚgidArrayÚcharStringsr   Ú	numGlyphsr[   Úretain_gidsrY   rT   )r   r7   r.   r\   r8   Úcsr1   r;   rO   Ú_ÚiÚindicesÚcsiÚselÚnewCharStringsÚ
indicesIdxÚ
charsetIdxÚvrM   s                      r   Úsubset_glyphsrx   \   s  € à
�(‰(€CØ—H‘H“Jó #LˆØ�8‰}ˆØ×Ñˆà—‘—‘ × 0Ñ 0Ó1ˆð —‘ò 	,ˆAØ˜‰ØØ×(Ñ(¨Ó+‰DˆA‰qð	,ð
 ×#Ò#Ü%.¨t¯|©|Ó%<×L™T˜Q ÀÀVÂ’qÐLˆGÑLØ×%Ñ%ˆCØ/6Ö7¨!˜Ÿ™ 1›Ò7ˆCŒIØ�˜#˜+Ü�t˜ZÔ(Ø—m‘m�Ø!�”
Ø9@ÖA°A §¡¨Q£ÒA�”ØˆNÜ*3°GÓ*<ò 3Ñ&�
˜JØ—L‘L Ñ,�Ø˜Ÿ™Ò&Ø(2�N 1Ò%ð3ð ,ˆB�Nà/1¯~©~×/CÑ/CÓ/E×U¡t q¨!ÈÈfÊ˜a ™dÓUˆBŒNØ#'§<¡<Ö?˜a°1¸²;šÒ?ˆŒÜ˜TŸ\™\Ó*ˆŒà�9‰9× Ô Ø—Y‘Y ‘]ˆFØ×%Ñ%ò L�Ü! $¨°&ÀdÖKòLðE#LðJ ùó1 Mùâ7ùò
  Bùó VùÚ?s0   Â%H-Â2H-Ã	H3ÄH8Æ	H=ÆH=Æ2	IÆ<Ic                 ó.  — | j                   }|j                  «       D ]—  }||   }|j                  }t        |d«      sŒ!|j                  }t        |j                  «      }|j                  D �	cg c]  }	|j                  |	«      ‘Œ c}	|_        |j                  }
|D �cg c]  }|
|   ‘Œ	 c}|
_	        |
`
|
`Œ™ |j                  r|j                  «        |j                  s| j                  «        y|j                  s| j                  «        yc c}	w c c}w )Nr_   T)r.   r/   r0   rE   r_   r	   rj   r   rB   rf   rg   rh   ÚdesubroutinizeÚhintingÚremove_hintsÚremove_unused_subroutines)r   ÚttfFontr[   r.   r\   r8   rn   rs   rq   ÚssÚarrrp   s               r   Úprune_post_subsetr�   ‡   sò   € à
�(‰(€CØ—H‘H“Jò &ˆØ�8‰}ˆØ×Ñˆô �4˜Õ$Ø—-‘-ˆCÜ  §¡Ó.ˆGØ8;¿¹ÖE°"˜GŸM™M¨"Õ-ÒEˆCŒLØ—,‘,ˆCØ)0Ö1 A˜˜Q›Ò1ˆCŒIØ�˜#™+ð&ð ×ÒØ×ÑÔð �?Š?Ø×ÑÔð ð ×#Ò#Ø×&Ñ&Ô(Øùò Fùâ1s   Á-DÂDz)use 'CFFFontSet.desubroutinize()' instead)Úcategoryc                 ó8   — | j                   j                  «        y r   )r.   rz   ©r   s    r   rz   rz   £   s   € ð
 	‡H�H×ÑÕr   z'use 'CFFFontSet.remove_hints()' insteadc                 ó8   — | j                   j                  «        y r   )r.   r|   r„   s    r   r|   r|   «   s   € ð
 	‡H�H×ÑÕr   z2use 'CFFFontSet.remove_unused_subroutines' insteadc                 ó8   — | j                   j                  «        y r   )r.   r}   r„   s    r   r}   r}   ³   s   € ð
 	‡H�H×&Ñ&Õ(r   N)F)ÚfontTools.miscr   Ú	fontToolsr   ÚfontTools.pens.basePenr   ÚfontTools.misc.roundToolsr   ÚfontTools.misc.loggingToolsr   ÚfontTools.subset.utilr   r	   r   r   ÚgetTableClassr?   rT   r]   rx   r�   ÚDeprecationWarningrz   r|   r}   r*   r   r   ú<module>r�      s  ðÝ (Ý Ý *Ý -Ý 9ß 9ô- ×!AÑ!Aô -ñ& Ð ˆU× Ñ  Ó(Ó)ñó *ðó,$ñ( Ð ˆU× Ñ  Ó(Ó)ñó *ðñ( Ð ˆU× Ñ  Ó(Ó)ñ'ó *ð'ñT Ð ˆU× Ñ  Ó(Ó)ñó *ðñ6 Ø/Ð:Lôñ Ð ˆU× Ñ  Ó(Ó)ñó *óðñ Ø-Ð8Jôñ Ð ˆU× Ñ  Ó(Ó)ñó *óðñ Ø8ÐCUôñ Ð ˆU× Ñ  Ó(Ó)ñ)ó *óñ)r   