+
    f7i  c                   sx   ^ RI Ht ^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 ^ RI
HtHt  ! R R]P                  4      t]! ]P                  ! R	4      4      R
 4       tRR lt]! ]P                  ! R	4      4      R 4       t]! ]P                  ! R	4      4      R 4       t]! ]P                  ! R	4      4      R 4       t]	! R]R7      ]! ]P                  ! R	4      4      R 4       4       t]	! R]R7      ]! ]P                  ! R	4      4      R 4       4       t]	! R]R7      ]! ]P                  ! R	4      4      R 4       4       tR# )    )psCharStrings)ttLib)NullPen)otRound)deprecateFunction)_add_method
_uniq_sortc                   s,   a  ] tR t^	t o R tR tRtV tR# )_ClosureGlyphsT2Decompilerc                sR    \         P                  P                  WV4       Wn        R # N)r   SimpleT2Decompiler__init__
components)selfr   Z
localSubrsglobalSubrss   &&&&;/usr/lib64/python3.14/site-packages/fontTools/subset/cff.pyr   Z#_ClosureGlyphsT2Decompiler.__init__
   s    ((11$KP$    c                s    V P                  4       p\        V4      ^8  dW   ^ RIHp VRR w  rErgW6,          pW7,          p	V P                  P                  V4       V P                  P                  V	4       R# R# )i   )StandardEncodingNi)ZpopalllenZ$fontTools.encodings.StandardEncodingr   r   Zadd)
r   indexZargsr   ZadxZadyZbcharZacharZ	baseGlyphZaccentGlyphs
   &&        r   
op_endcharZ%_ClosureGlyphsT2Decompiler.op_endchar   sf    {{}t9>M &*"#Y"Ce(/I*1KOO	*OO, r   )r   N)Z__name__Z
__module__Z__qualname__Z__firstlineno__r   r   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r   r   	   s     %- -r   r   zCFF c                 s   V P                   pW"P                  4       ^ ,          ,          pVP                  pVP                  pV'       d   \	        4       pV FQ  pWt9  d   K  WG,          p\        VP                  R. 4      p	\        WiVP                  4      p
V
P                  V4       KS  	  WaP                  ,          pVP                  P                  V4       TpK  R# )r    ZSubrsN)cffkeysCharStringsglyphsZsetZgetattrprivater   r   ZexecuteZupdate)r   sr   fontZglyphSetZ	decomposer   gZglZsubrsZ
decompilers   &&         r   closure_glyphsr      s    
((Cxxz!}DHI
U
A BBJJ4E3Jr~~VJr"  	hh
	
#	 r   c                 s    V P                   P                  V4      w  rEV'       g	   V'       d   TP                  V'       d   . MR .4       R# \        V R4      '       d-   V P                  e   V P                  V,          P
                  pMV P
                  pVP                  pVP                  p\        4       p	VP                  V	4       VP                  V8w  d   VP                  V,
          R .Vn        R# R .Vn        R# )ZendcharFDArrayN)r   getItemAndSelectorZ
setProgramhasattrr   ZPrivateZdefaultWidthXZnominalWidthXr   ZdrawZwidthZprogram)
r   Z	glyphNameisCFF2ignoreWidthcZfdSelectIndexr   ZdfltWdXZnmnlWdXZpens
   &&&&      r   _empty_charstringr$   3   s    ''::9EA	6R	{34##(@ll=199GllG''''i	s77g7*I6AI"AIr   c                 sZ   V P                   pVP                  R ,          Vn        VP                  '       dO   VP                  '       g=   VP                  ^8  pVP                  4        F  pW5,          p\        VRVR7       K  	  VP                  4        F  pW5,          pRVn        K  	  R# ):Ni   Nz.notdef)r!   r   T)r   Z	fontNamesZnotdef_glyphZnotdef_outlinemajorr   r$   ZEncoding)r   r   optionsr   r!   fontnames   &&&   r   prune_pre_subsetr(   G   s    
((CMM"%CMG$:$:$:Q
H=DdIf= #
 HHJ}* 
 r   c           	      s
   V P                   pVP                  4        EFF  pW#,          pVP                  pVP                  P	                  VP
                  4      pVP                   F  pWv9  d   K  VP                  V4      w  rK   	  VP                  '       d   \        VP                  4       U
Uu. uF  w  rWv9   g   K  V
NK  	  pp
pVP                  pV U
u. uF  qP                  V
,          NK  	  up
Vn        V=V=\        VR 4      '       d;   VP                  pRVn        V U
u. uF  qP"                  V
,          NK  	  up
Vn        / p\        V4       F/  w  ppVP                  V,          pWuP$                  9   g   K+  WV&   K1  	  Wn        M=VP$                  P                  4        UUu/ uF  w  ppWv9   g   K  VVbK  	  uppVn        VP                   Uu. uF  qwV9   g   K  VNK  	  upVn        \'        VP                  4      Vn        VP*                  P,                  '       g   EK  VP.                  ^8  pVP
                   F  p\1        WGVRR7       K  	  EKI  	  R# u upp
i u up
i u up
i u uppi u upi )FDSelectNT)r!   r"   )r   r   r   r   ZunionZglyphs_emptiedZcharsetr   ZcharStringsAreIndexedZ	enumerateZcharStringsIndexitemsfileoffsetsr    r)   ZformatgidArrayZcharStringsr   Z	numGlyphsr&   Zretain_gidsr%   r$   )r   r   r   r'   r   csr   r   r#   Z_iindicesZcsiselZnewCharStringsZ
indicesIdxZ
charsetIdxZvr!   s   &&                 r   subset_glyphsr2   \   s   
((CHHJ} 0 01 A((+DAq 
 ###%.t||%<L%<TQqq%<GL%%C/67w!1w7CI#+tZ((mm!
9@AAQAN*3G*<&
JLL,&(21% += ,N/1~~/C/C/EU/Etq!dad/EUBN#'<<?<a;<?T\\*99   YY]F%%!$&dK &E J 1 M7
  B V?s0   2
I*I*I0*I51I:I:J ,J c                 sz   V P                   pVP                  4        F  pW4,          pVP                  p\        VR 4      '       g   K+  VP                  p\        VP                  4      pVP                   U	u. uF  qP                  V	4      NK  	  up	Vn        VP                  p
V Uu. uF  qV,          NK  	  upV
n	        V
=
V
=K  	  VP                  '       d   VP                  4        VP                  '       g   V P                  4        R# VP                  '       g   V P                  4        R# u up	i u upi )r)   T)r   r   r   r    r)   r   r-   r   r   r*   r+   r,   desubroutinizeZhintingremove_hintsremove_unused_subroutines)r   ZttfFontr&   r   r'   r   r.   r1   r0   ZssZarrr/   s   &&&         r   prune_post_subsetr6      s    
((CHHJ} 4$$--C .G8;E"MM"-ECL,,C)01AQ1CI#+   ???  ###&&( F1s   7D3(D8z)use 'CFFFontSet.desubroutinize()' instead)Zcategoryc                 :    V P                   P                  4        R # r	   )r   r3   r      &r   r3   r3      s    
 	HHr   z'use 'CFFFontSet.remove_hints()' insteadc                 r7   r	   )r   r4   r8   r9   r   r4   r4      s    
 	HHr   z2use 'CFFFontSet.remove_unused_subroutines' insteadc                 r7   r	   )r   r5   r8   r9   r   r5   r5      s    
 	HH&&(r   N)F)ZfontTools.miscr   Z	fontToolsr   ZfontTools.pens.basePenr   ZfontTools.misc.roundToolsr   ZfontTools.misc.loggingToolsr   ZfontTools.subset.utilr   r   r
   r   ZgetTableClassr   r$   r(   r2   r6   ZDeprecationWarningr3   r4   r5   ) r   r   <module>r:      sj   (  * - 9 9-!A!A -& U  () *,$( U  () *( U  ()' *'T U  () *6 /:L U  () * -8J U  () * 8CU U  ()) *)r   