
    jke|                     ^    d dl mZ ddlmZ d dlZdZdZdZdZ G d d	ej                        Z	y)
    )safeEval   )DefaultTableN         c                   $    e Zd Zd Zd Zd Zd Zy)table__g_a_s_pc                 j   t        j                  d|d d       \  | _        }d| j                  cxk  rdk  sn J d| j                  z         |dd  }i | _        t	        |      D ]D  }t        j                  d|d d       \  }}t        |      | j                  t        |      <   |dd  }F |rJ d       y )N>HHr   r   r   zunknown 'gasp' format: %sztoo much data)structunpackversion	gaspRangerangeint)selfdatattFont	numRangesirangeMaxPPEMrangeGaspBehaviors          A/usr/lib/python3/dist-packages/fontTools/ttLib/tables/_g_a_s_p.py	decompileztable__g_a_s_p.decompile   s    "(--tBQx"@iDLL%A%Q'BT\\'QQ%ABxy! 	A.4mmE48.L+L+034E0FDNN3|,-8D	 ((x4    c                 "   d}t        | j                        }d}t        | j                  j                               }|D ]3  \  }}|t	        j
                  d||      z   }|t        t        z   z  s2d}5 t	        j
                  d||      |z   }|S )Nr   r   r   r   )lenr   sorteditemsr   packGASP_GRIDFITGASP_DOGRAY)r   r   r   r   r   r    r   r   s           r   compileztable__g_a_s_p.compile   s    '	t~~++-./4 	+L+&++e\;LMMD \K%?#@@	 {{5'95<r   c                     t        | j                  j                               }|D ]-  \  }}|j                  dd|fd|fg       |j	                          / y )Nr   r   r   )r   r   r    	simpletagnewline)r   writerr   r    r   r   s         r   toXMLztable__g_a_s_p.toXML$   sa    t~~++-./4 	+L+#\2(*;< NN	r   c                     |dk7  ry t        | d      si | _        t        |d         | j                  t        |d         <   y )Nr   r   r   )hasattrr   r   )r   nameattrscontentr   s        r   fromXMLztable__g_a_s_p.fromXML0   sD    ;t[)DN:B%&;
xn 567r   N)__name__
__module____qualname__r   r$   r)   r/    r   r   r
   r
      s    	)


r   r
   )
fontTools.misc.textToolsr    r   r   GASP_SYMMETRIC_GRIDFITGASP_SYMMETRIC_SMOOTHINGr#   r"   r
   r3   r   r   <module>r8      s8    -     ! +
\.. +
r   