ó
    oñ:ig  ã                   ó&   • S /r S rS rSS jrS rg)Ú
maxCtxFontc           	      óú   • SnS Hr  nX ;  a  M
  X   R                   nUR                  (       d  M+  UR                  R                   H-  nUR                   H  n[	        XUR
                  U5      nM     M/     Mt     U$ )z4Calculate the usMaxContext value for an entire font.é    )ÚGSUBÚGPOS)ÚtableÚ
LookupListÚLookupÚSubTableÚmaxCtxSubtableÚ
LookupType)ÚfontÚmaxCtxÚtagr   ÚlookupÚsts         Úb/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/fontTools/otlLib/maxContextCalc.pyr   r      sq   € ð €FÛˆØ‹?ÙØ‘	—‘ˆØ××ÙØ×&Ñ&×-Ô-ˆFØ—o”o�Ü'¨°V×5FÑ5FÈÓK’ó &ó .ñ  ð €Mó    c                 ó€  • US:X  a  US:X  d  US:X  a  US;   a  [        U S5      n U $ US:X  a  US:X  a  [        U S5      n U $ US:X  aG  US:X  aA  UR                  R                  5        H!  nU H  n[        XR                  5      n M     M#     U $ US:X  a  US:X  d  US:X  a  US:X  a  [	        XUS:X  a  S	OS
5      n U $ US:X  a  US:X  d  US:X  a  US:X  a  [	        XUS:X  a  S	OS
S5      n U $ US:X  a  US:X  d  US:X  a)  US:X  a#  [        XUR                  UR                  5      n U $ US:X  a  US:X  a  [        XS5      n U $ )zSCalculate usMaxContext based on a single lookup table (and an existing
max value).
r   é   r   )r   é   é   r   é   é   é   ÚPosÚSubé   é   ÚChainé	   ÚReverse)	ÚmaxÚ	ligaturesÚvaluesÚ	CompCountÚmaxCtxContextualSubtabler   ÚExtensionLookupTypeÚExtSubTableÚmaxCtxContextualRule)r   r   Ú
lookupTyper   r#   Úligatures         r   r   r      sh  € ð 	ˆv‹˜*¨›/Øˆv‹˜*¨	Ó1ä�V˜Q“ˆð< €Mð7 
�‹˜:¨›?Ü�V˜Q“ˆð4 €Mð/ 
�‹˜:¨›?ØŸ™×,Ñ,Ö.ˆIÛ%�Ü˜V×%7Ñ%7Ó8’ó &ñ /ð, €Mð# �‹-˜J¨!›O°¸³À:ÐQRÃ?Ü)¨&¸sÀf»}±eÐRWÓXˆð  €Mð �‹-˜J¨!›O°¸³À:ÐQRÃ?Ü)Ø ¨£™°E¸7ó
ˆð €Mð �‹-˜J¨!›O°¸³À:ÐQRÃ?Ü ¨R×-CÑ-CÀRÇ^Á^ÓTˆð €Mð 
�‹˜:¨›?Ü% f°)Ó<ˆà€Mr   c                 ó¦  • UR                   S:X  aJ  [        X< U< S35       H2  nUc  M  [        XC< U< S35       H  nUc  M  [        XU5      n M     M4     U $ UR                   S:X  aJ  [        X< U< S35       H2  nUc  M  [        XC< U< S35       H  nUc  M  [        XU5      n M     M4     U $ UR                   S:X  a  [        XU5      n U $ )z>Calculate usMaxContext based on a contextual feature subtable.r   ÚRuleSetÚRuler   ÚClassSetÚ	ClassRuler   )ÚFormatÚgetattrr)   )r   r   ÚruleTypeÚchainÚrulesetÚrules         r   r&   r&   >   sÜ   € ð 
‡y�y�Aƒ~Ü˜r±E»8Ð#DÖEˆGØ‰ÙÜ ±u»hÐ)GÖH�Ø‘<ÙÜ-¨f¸EÓB’ó Iñ Fð( €Mð 
�‰�a‹Ü˜r±U»HÐ#EÖFˆGØ‰ÙÜ ¹EÃ8Ð)LÖM�Ø‘<ÙÜ-¨f¸EÓB’ó Nñ Gð €Mð 
�‰�a‹Ü% f°%Ó8ˆà€Mr   c                 ó¼   • U(       d  [        XR                  5      $ US:X  a  [        U SUR                  -   5      $ [        XR                  UR                  -   5      $ )z:Calculate usMaxContext based on a contextual feature rule.r!   r   )r"   Ú
GlyphCountÚLookAheadGlyphCountÚInputGlyphCount)r   r   r4   s      r   r)   r)   Y   sR   € ö Ü�6Ÿ=™=Ó)Ð)Ø	�)Ó	Ü�6˜1˜r×5Ñ5Ñ5Ó6Ð6Üˆv×)Ñ)¨B×,BÑ,BÑBÓCÐCr   N)Ú )Ú__all__r   r   r&   r)   © r   r   Ú<module>r>      s"   ðØˆ.€òò 'ôTó6Dr   