
    h                     t    S SK r S SKr S SKrS SKrS rS rS rS	S jrS
S jr	S r
S rg! \ a    Sr N$f = f)    Nc                    [         R                  " SU SS 5      u  nUS-	  nUS-  nUS:X  a   X4$ US:X  as  [        (       ah  [        R                  R	                  [         R
                  " SU5      U SS  -   5      n[        U5      U:w  a  [        R                  " S	5        X4$ Un  X4$ [        R                  " S
5        X4$ )N>L         r      z<LzTable decompression failed.z:Table is compressed with an unsupported compression scheme)	structunpacklz4block
decompresspacklenwarningswarn)datacompressionschemesizeress        P/var/www/html/env/lib/python3.13/site-packages/fontTools/ttLib/tables/grUtils.pyr   r      s    ]]4a3N[BF#D{ > 
1ii""6;;tT#:T!"X#EFs8tMM78
 > D > 	RS>    c                 
   US S [         R                  " SU S-  [        U5      S-  -   5      -   nU S:X  a  U$ U S:X  a/  [        (       a$  [        R                  R                  USSS	S
9nX#-   $ [        R                  " S5        U$ )Nr   r   r   r   r   r	   high_compression   F)moder   
store_sizez:Table failed to compress by unsupported compression scheme)r
   r   r   r   r   compressr   r   )r   r   hdrr   s       r   r   r      s    
r(V[["TZ9O'PQ
QC{	1ii  )re ! 
 yRSKr   c              #      #    Sn/ nSnU  H_  u  pV[        U5      (       a5  XRS-   :w  d  U(       a&  Xd:w  a!  U[        U5      -
  S-   [        U5      U4v   / nUnUR                  U5        UnMa     U[        U5      -
  S-   [        U5      U4v   g 7f)Nr   r	   )r   append)attrssamevalakvalslastvkvs          r   _entriesr*   ,   s     	
BDEt99!Av+'ajD	>A%s4y$77DA  D	>As4y$
//s   BBc                 L    [        [        U R                  5       S S9U5      nU$ )Nc                     [        U S   5      $ )Nr   )int)xs    r   <lambda>entries.<locals>.<lambda>;   s    #ad)r   )key)r*   sorteditems)
attributesr$   gs      r   entriesr6   :   s$    
((*0CDgNAHr   c                     U S:X  a  [         R                  " SSSSS5      $ SnSnX ::  a  US-  nUS-  nX ::  a  M  US-  nUS-  nX!-  nX-  U-
  n[         R                  " SXX45      $ )Nr   z>4Hr	      )r
   r   )numr   srangeselectshifts        r   bininfor=   ?   s    
ax{{5!Q1--FF
-!! - aKF
qLF
NFJE;;uc699r   c                     U S:  a  [        U 5      $ [        R                  " S[        R                  " SU 5      5      S   R	                  SS5      R                  5       $ )Ni    4sr   r       r   )strr
   r   r   replacedecodens    r   num2tagrF   N   sM    8|1v MM$D! 45a8@@#NUUW	
r   c                      [        U 5      $ ! [         a4    U S-   S S n [        R                  " SU R	                  S5      5      S   s $ f = f)Nz    r   r   asciir   )r-   
ValueErrorr
   r   encoderD   s    r   tag2numrK   W   sN    91v 9Z!}}T188G#45a889s   
 ;A
A)F)r	   )r
   r   r   	lz4.blockImportErrorr   r   r*   r6   r=   rF   rK    r   r   <module>rO      sO     
"0
:
9e  
Cs   , 77