+
    f7i-  c                   s    ^ RI Ht ^ RIHt ^ RIHt ^ RIHtHtH	t	H
t
HtHt ^RIHt ^ RIt^ RIt^ RIt^ RIt]P&                  ! ]4      tRt]P.                  ! ]4      t ! R R	]P                  4      tR
 tR tR# )    )ttLib)standardGlyphOrder)sstruct)bytechrbyteordtobytestostrsafeEvalreadHex)DefaultTableNa  
	>
	formatType:			16.16F
	italicAngle:		16.16F		# italic angle in degrees
	underlinePosition:	h
	underlineThickness:	h
	isFixedPitch:		L
	minMemType42:		L			# minimum memory if TrueType font is downloaded
	maxMemType42:		L			# maximum memory if TrueType font is downloaded
	minMemType1:		L			# minimum memory if Type1 font is downloaded
	maxMemType1:		L			# maximum memory if Type1 font is downloaded
c                   sl   a  ] tR t^t o RtR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tRtV tR# )table__p_o_s_ta&  PostScript table

The ``post`` table contains information needed to use the font on
PostScript printers, including the PostScript names of glyphs and
data that was stored in the ``FontInfo`` dictionary for Type 1 fonts.

See also https://learn.microsoft.com/en-us/typography/opentype/spec/post
c                s   \         P                  ! \        VR \         V 4       V\        R  pV P                  R8X  d   V P                  W4       R # V P                  R8X  d   V P                  W4       R # V P                  R8X  d   V P                  W4       R # V P                  R8X  d   V P                  W4       R # \        P                  ! RV P                  ,          4      h)N      ?       @      @      @$'post' table format %f not supported)r   unpack
postFormatpostFormatSize
formatTypedecode_format_1_0decode_format_2_0decode_format_3_0decode_format_4_0r   
TTLibErrorselfdatattFont   &&&F/usr/lib64/python3.14/site-packages/fontTools/ttLib/tables/_p_o_s_t.py	decompileZtable__p_o_s_t.decompile'   s    z4#8$?NO$??c!""40__#""40__#""40__#""40 ""6H     c                s~   \         P                  ! \        V 4      pV P                  R 8X  d    V# V P                  R8X  d   W P	                  V4      ,           pV# V P                  R8X  d    V# V P                  R8X  d   W P                  V4      ,           pV# \        P                  ! RV P                  ,          4      h)r   r   r   r   r   )r   packr   r   encode_format_2_0encode_format_4_0r   r   )r   r   r   s   && r   compileZtable__p_o_s_t.compile8   s    ||J-??c!  __#0088D  __#  __#0088D  ""6H r!   c                sr    \        V R4      '       g   \        P                  ! R4      hV P                  pV =V# )zThis function will get called by a ttLib.TTFont instance.
Do not call this function yourself, use TTFont().getGlyphOrder()
or its relatives instead!

glyphOrderzillegal use of getGlyphOrder())hasattrr   r   r&   )r   r&   s   & r   getGlyphOrderZtable__p_o_s_t.getGlyphOrderI   s7    
 t\**""#CDD__
Or!   c                sD    \         R VR,          P                   V n        R # )Nmaxp)r   	numGlyphsr&   r   r   r   r   Z table__p_o_s_t.decode_format_1_0T   s    ,-Gvf~/G/GHr!   c                s   \         P                  ! R VR,          4      w  p\        V4      pW2R,          P                  8  d   VR,          P                  pVR,          p\        P                  ! R4      pVP                  VR^V,           4       \        P                  R8w  d   VP                  4        V^V,          R p\        V4      p\        WR,
          4      ;V n        pR.\        VR,          P                  4      ,          ;V n        p\        V4       F4  pWH,          p	V	R8  d    WiR	,
          ,          p
M\        V	,          p
WV&   K6  	  V P!                  V4       R#   \         d    Rp
 L*i ; i)
>H:N   Nr)   :r,   NNHNbigi     )structr   intr*   array	frombytessys	byteorderbyteswapZmaxunpackPStrings
extraNamesr&   rangeZ
IndexErrorr   build_psNameMapping)r   r   r   r*   indicesZmaxIndexr9   r&   glyphIDindexnames   &&&        r   r   Z table__p_o_s_t.decode_format_2_0W   sC   }}T484	N	f~///
 v00IBx++c"$Y/0==E!A	MO$w<'5dsN'KK*(*tc&.2J2J.K'KK*Y'G$Es{%ck2D
 *%0"&w ( 	  ( " Ds   .E&&E65E6c                s|   / p/ p\        V P                  4      p\        VR ,          P                  4       F|  pV P                  V,          ;rgVR8X  d
   RV,          pWc9   d2   W6,          pV RV 2V9   d   V^,          pK  V^,           W6&   V RV 2p^W6&   Wg8w  g   Kj  W`P                  V&   WrV&   K~  	  W n        R# )r)   r/   z	glyph%.5dZ.N)Zsetr&   r:   r*   mapping)	r   r   r@   ZallNamesZglyphOrderNamesi	glyphNamepsNamens	   &&       r   r;   Z"table__p_o_s_t.build_psNameMappingv   s    doo.vf~//0A!%!33IB'!O	$'"1QC(O;FA&'!e#(k1#.	"#H"%."%+	"# 1& r!   c                s    R V n         R # )N)r&   r   r   r   r   Z table__p_o_s_t.decode_format_3_0   s     r!   c                sb   ^ RI Hp VR,          P                  p\        P                  ! R4      pVP	                  V4       \
        P                  R8w  d   VP                  4        R.\        V4      ,          ;V n	        p\        \        \        V4      V4      4       F|  pWW,          R8X  d   RV P                  V&   K!  WW,          VP                  9   d)   VP                  WW,          ,          V P                  V&   K`  RWW,          ,          V P                  V&   K~  	  V P                  V4       R# )	r    aglr)   r-   r.   r/     zuni%04XN)	fontToolsrF   r*   r3   r4   r5   r6   r7   r2   r&   r:   ZminlenZUV2AGLr;   )r   r   r   rF   r*   r<   r&   rA   s   &&&     r   r   Z table__p_o_s_t.decode_format_4_0   s    !6N,,	++c"$==E! )+tc)n'<<*s3w<34AzV#%'"szz)%(ZZ
%;"%.%;" 5 	  (r!   c                sD   VR ,          P                   pVP                  4       p\        V4      V8X  g   Q h\        P                  ! R4      p/ pV P                   Uu. uF  qf\
        9  g   K  VNK  	  up;qpn        \        V4       F	  w  rWV	&   K  	  V F  p
WP                  9   d   V P                  V
,          pMT
pW9   d   RW[,          ,           pMRV\
        9   d   \
        P                  ! V4      pM0R\        V4      ,           p\        V4      W[&   VP                  V4       VP                  V4       K  	  \        P                  R8w  d   VP                  4        \        P                  ! RV4      VP                  4       ,           \!        V4      ,           # u upi )r)   r-   r0   r.   r+   )r*   r(   rI   r3   r9   r   Z	enumerater@   r>   appendr5   r6   r7   r1   r"   r   packPStrings)r   r   r*   r&   r<   Z	extraDictrD   r9   rA   r?   rB   rC   r>   s   &&           r   r#   Z table__p_o_s_t.encode_format_2_0   sY   6N,,	))+
:)+++++c"	(
&!3E*EAA(
 	

_ !,GAdO -#ILL(i0""i//--*008c*o-$'
O	!!!&)NN5! $ ==E!KKi(7??+<<|J?WW	
+(
s   F-Fc                s^   ^ RI Hp VR,          P                  pVP                  4       p\	        V4      V8X  g   Q h\
        P
                  ! R4      pV F  pVP                  R4      ^ ,          pWbP                  9   d%   VP                  VP                  V,          4       KO  \	        V4      ^8X  d3   VR,          R8X  d%   VP                  \        VR,          ^4      4       K  VP                  R4       K  	  \        P                  R	8w  d   VP                  4        VP                  4       # )
r    rE   r)   r-   Z#:N   NZuni:rL   NNrG   r.   )rH   rF   r*   r(   rI   r3   ZsplitZAGL2UVrJ   r2   r5   r6   r7   r   )r   r   rF   r*   r&   r<   r=   s   &&     r   r$   Z table__p_o_s_t.encode_format_4_0   s    !6N,,	))+
:)+++++c"!GmmC(+G**$szz'23W"wr{e';s72;34v& " ==E!  r!   c                sp   \         P                  ! \        4      w  r4pV F0  p\        W4      pVP	                  WgR 7       VP                  4        K2  	  \        V R4      '       d   VP                  R4       VP                  4        VP                  R4       VP                  4        \        V P                  P                  4       4      pV F(  w  riVP	                  RWiR7       VP                  4        K*  	  VP                  R4       VP                  4        \        V R4      '       d   VP                  R4       VP                  4        VP                  R4       VP                  4        V P                   F&  pVP	                  RVR7       VP                  4        K(  	  VP                  R4       VP                  4        \        V R	4      '       d`   VP                  R
4       VP                  4        VP                  V P                  4       VP                  R
4       VP                  4        R# R# ))valuer@   psNamesaL  This file uses unique glyph names based on the information
found in the 'post' table. Since these names might not be unique,
we have to invent artificial names in case of clashes. In order to
be able to retain the original information, we need a name to
ps name mapping for those cases where they differ. That's what
you see below.
rC   )r?   rC   r9   zKfollowing are the name that are not taken from the standard Mac glyph order)r?   r   hexdataN)r   Z	getformatr   ZgetattrZ	simpletagZnewliner'   ZbegintagZcommentZsortedr@   itemsZendtagr9   Zdumphexr   )
r   Zwriterr   ZformatstringZnamesZfixesr?   rM   rP   rC   s
   &&&       r   toXMLZtable__p_o_s_t.toXML   s   %,%6%6z%B"UDD'ET/NN  4##OOI&NNNN# NN4<<--/0E %   D  !& MM)$NN4&&OOL)NNNN] NN   5  ( MM,'NN4  OOI&NNNN499%MM)$NN !r!   c                s   VR9  d   \        W\        VR,          4      4       R# VR 8X  dV   / V n        V FF  p\        V\        4      '       g   K  Vw  rpVR8X  g   K)  VR,          V P                  VR,          &   KH  	  R# VR8X  d[   . V n        V FK  p\        V\        4      '       g   K  Vw  rpVR8X  g   K)  V P
                  P                  VR,          4       KM  	  R# \        V4      V n        R# )rN   r9   rM   rC   r?   N)rN   r9   rO   )	Zsetattrr   r@   Z
isinstanceZtupler9   rJ   r	   r   )r   r?   ZattrsZcontentr   Zelements   &&&&& r   fromXMLZtable__p_o_s_t.fromXML  s    ;;Dw 89YDL"!'511'.$W8#27/DLLv/ # \! DO"!'511'.$W8#OO**5=9 #  (DIr!   )r   r9   r&   r@   N)__name__Z
__module__Z__qualname__Z__firstlineno__Z__doc__r    r%   r(   r   r   r;   r   r   r#   r$   rQ   rR   Z__static_attributes__Z__classdictcell__)Z__classdict__s   @r   r   r      sM     ""	I)>2
)(
>!&)V) )r!   r   c                 s   . p^ p\        V 4      p\        V4       Fk  pWC8:  d   ^ pM\        W,          4      pV^,          pWCV,           ^,
          8:  d   RpM\        WW6,            RR7      pVP	                  V4       W6,          pKm  	  W48  d   \
        P                  RWC,
          4       V# WC8  d   \
        P                  R4       V# )r    r/   latin1Zencodingz'%d extra bytes in post.stringData arrayz(not enough data in post.stringData array)rI   r:   r   r   rJ   logZwarning)r   rD   stringsr>   ZdataLenZ_Zlengthr?   s   &&      r   r8   r8     s     GE$iG1XFT[)F
fnq((Den5IDt  =wO
 N 
>?Nr!   c                 sv    R pV  F0  pV\        \        V4      4      ,           \        VRR7      ,           pK2  	  V# )r!   rT   rU   )r   rI   r   )rW   r   Zss   &  r   rK   rK   ;  s4    Dgc!fo%H(EE Kr!   )rH   r   Z"fontTools.ttLib.standardGlyphOrderr   ZfontTools.miscr   ZfontTools.misc.textToolsr   r   r   r   r   r	   r/   r
   r5   r1   r3   ZloggingZ	getLoggerrS   rV   r   Zcalcsizer   r   r8   rK   ) r!   r   <module>rX      sk     A " X X  
   !
 !!*-|)\.. |)~>r!   