ó
    oñ:ih  ã                   ó2   • S SK JrJrJr  S r " S S5      rg)é    )ÚVariationModelÚnormalizeValueÚpiecewiseLinearMapc                 óF   • [        [        U R                  5       5      5      $ ©N)ÚtupleÚsortedÚitems)Úlocs    Úb/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/fontTools/feaLib/variableScalar.pyÚLocationr      s   € Ü”˜Ÿ	™	›Ó$Ó%Ð%ó    c                   óš   • \ rS rSrSr0 4S jrS r\S 5       r\S 5       r	S r
S rS	 rS
 r\S 5       rSS jrSS jrSS jrSS jrSrg)ÚVariableScalaré   zFA scalar with different values at different points in the designspace.c                 ót   • 0 U l         0 U l        UR                  5        H  u  p#U R                  X#5        M     g r   )ÚvaluesÚaxesr
   Ú	add_value)ÚselfÚlocation_valueÚlocationÚvalues       r   Ú__init__ÚVariableScalar.__init__   s1   € ØˆŒØˆŒ	Ø-×3Ñ3Ö5‰OˆHØ�N‰N˜8Ö+ò  6r   c                 óX  • / nU R                   R                  5        Hn  u  p#SR                  U VVs/ s H5  u  pEU S[        U5      R	                  5       (       a  [        U5      OU 3PM7     snn5      nUR                  SXc4-  5        Mp     SSR                  U5      -   S-   $ s  snnf )NÚ,Ú=z%s:%iÚ(Ú Ú))r   r
   ÚjoinÚfloatÚ
is_integerÚintÚappend)r   r
   r   r   ÚaxÚcoordr   s          r   Ú__repr__ÚVariableScalar.__repr__   s¥   € ØˆØ#Ÿ{™{×0Ñ0Ö2‰OˆHØ—(‘(ñ &.ôâ%-™	˜ð �d˜!¬%°«,×*AÑ*A×*CÑ*CœC œJÈÐOÓPÙ%-òóˆCð �L‰L˜ C <Ñ/Ö0ñ  3ð �c—h‘h˜u“oÑ&¨Ñ,Ð,ùós   ²<B&c                 óz   ^• [        U R                  R                  5       5      m[        U4S jTSS   5       5      $ )Nc              3   ó2   >#   • U  H  oTS    :g  v •  M     g7f)r   N© )Ú.0Úvr   s     €r   Ú	<genexpr>Ú+VariableScalar.does_vary.<locals>.<genexpr>    s   øé € Ð6ª: a˜˜q™	–>ª:ùs   ƒé   )Úlistr   Úany)r   r   s    @r   Ú	does_varyÚVariableScalar.does_vary   s1   ø€ ä�d—k‘k×(Ñ(Ó*Ó+ˆÜÔ6¨6°!°"©:Ó6Ó6Ð6r   c                 ó’   • U R                   (       d  [        S5      eU R                    Vs0 s H  oR                  U_M     sn$ s  snf )Nz=.axes must be defined on variable scalar before interpolating)r   Ú
ValueErrorÚaxisTag)r   r'   s     r   Ú	axes_dictÚVariableScalar.axes_dict"   s=   € à�y�yÜØOóð ð *.¯ªÓ3ª 2—
‘
˜B’©Ñ3Ð3ùÒ3s   «Ac                 ó0  • U R                  U5      n0 nUR                  5        He  nX0R                  ;  a  [        SU< SU< 35      eU R                  U   n[	        X   UR
                  UR                  UR                  45      X#'   Mg     [        U5      $ )NzUnknown axis z in )	Úfix_locationÚkeysr:   r8   r   ÚminValueÚdefaultValueÚmaxValuer   )r   r   Únormalized_locationÚaxtagÚaxiss        r   Ú_normalized_locationÚ#VariableScalar._normalized_location*   sˆ   € Ø×$Ñ$ XÓ.ˆØ ÐØ—]‘]–_ˆEØŸN™NÓ*Ý »EÂ8Ð!LÓMÐMØ—>‘> %Ñ(ˆDÜ)7Ø‘ $§-¡-°×1BÑ1BÀDÇMÁMÐ!Ró*ÐÓ&ñ	 %ô Ð+Ó,Ð,r   c                 óŒ   • [        U5      nU R                  R                  5        H  u  p#X!;  d  M  UR                  X'   M     U$ r   )Údictr:   r
   r@   )r   r   ÚtagrD   s       r   r=   ÚVariableScalar.fix_location7   s>   € Ü˜“>ˆØŸ™×-Ñ-Ö/‰IˆCØÕ"Ø $× 1Ñ 1�“ñ 0ð ˆr   c                 óv   • U R                   (       a  U R                  U5      nX R                  [        U5      '   g r   )r   r=   r   r   )r   r   r   s      r   r   ÚVariableScalar.add_value>   s*   € Ø�9�9Ø×(Ñ(¨Ó2ˆHà*/�‰”H˜XÓ&Ò'r   c           	      óª   • U R                   R                  5        VVs0 s H   u  p[        U R                  U5      5      U_M"     snnU l         g s  snnf r   )r   r
   r   r=   )r   Úlr/   s      r   Úfix_all_locationsÚ VariableScalar.fix_all_locationsD   sG   € à:>¿+¹+×:KÑ:KÔ:Mô
Ú:M±$°!ŒH�T×&Ñ& qÓ)Ó*¨AÒ-Ñ:Mò
ˆ�ùó 
s   ž'Ac                 óò   • U R                  5         [        U R                   Vs0 s H  oR                  UR                  _M     sn5      nX R
                  ;  a  [        S5      eU R
                  U   $ s  snf )Nz Default value could not be found)rO   r   r   r9   r@   r   r8   )r   r'   Úkeys      r   ÚdefaultÚVariableScalar.defaultI   sa   € à×ÑÔ Ü¸d¿iºiÓHºi¸Ÿ
™
 B§O¡OÒ3¹iÑHÓIˆØ—k‘kÓ!ÜÐ?Ó@Ð@à�{‰{˜3ÑÐùò	 Is   ¤ A4Nc                 ó*  • [        U5      nX@R                  R                  5       ;   a  U R                  U   $ [        U R                  R                  5       5      n[	        U R                  U5      5      nU R                  X#5      R                  XE5      $ r   )r   r   r>   r3   rH   rE   ÚmodelÚinterpolateFromMasters)r   r   Úmodel_cacheÚavarr   r   s         r   Úvalue_at_locationÚ VariableScalar.value_at_locationR   st   € Ü�xÓ ˆØ—+‘+×"Ñ"Ó$Ó$Ø—;‘;˜sÑ#Ð#Ü�d—k‘k×(Ñ(Ó*Ó+ˆÜ�4×,Ñ,¨SÓ1Ó2ˆØ�z‰z˜+Ó,×CÑCÀCÓPÐPr   c                 óè  • Ub,  [        U R                  R                  5       5      nX1;   a  X   $ U R                  R                  5        Vs/ s H  n[        U R	                  U5      5      PM     nnUbY  UR
                  nU VVVs/ s H<  nUR                  5        VVs0 s H  u  pHXDU;   a  [        X†U   5      OU_M     snnPM>     nnnn[        U5      n	Ub  X‘W'   U	$ s  snf s  snnf s  snnnf r   )	r   r   r>   rH   rE   Úsegmentsr
   r   r   )
r   rX   rY   rR   ÚkÚ	locationsÚmappingr   r/   Úms
             r   rV   ÚVariableScalar.modelZ   sû   € ØÑ"Ü˜Ÿ™×(Ñ(Ó*Ó+ˆCØÓ!Ø"Ñ'Ð'ØAEÇÁ×AQÑAQÔASÓTÒAS¸A”T˜$×3Ñ3°AÓ6Ö7ÑASˆ	ÐTØÑØ—m‘mˆGñ !*õò
 !*�Hð !)§¡Ô 0ôâ 0™˜ð À»LÔ)¨!°Q©ZÔ8ÈaÒOÙ 0õñ !*ð ò ô ˜9Ó%ˆØÑ"Ø ˜ÑØˆùò Uùóùôs   Á$C"ÂC-Â "C'ÃC-Ã'C-c                 óˆ   • [        U R                  R                  5       5      nU R                  X5      R                  U5      $ r   )r3   r   rV   ÚgetDeltasAndSupports)r   rX   rY   r   s       r   Úget_deltas_and_supportsÚ&VariableScalar.get_deltas_and_supportsn   s3   € Ü�d—k‘k×(Ñ(Ó*Ó+ˆØ�z‰z˜+Ó,×AÑAÀ&ÓIÐIr   c                 óš   • U R                  X#5      u  pEUR                  U5        UR                  U5      n[        U R                  5      U4$ r   )re   ÚsetSupportsÚstoreDeltasr%   rS   )r   Ústore_builderrX   rY   ÚdeltasÚsupportsÚindexs          r   Úadd_to_variation_storeÚ%VariableScalar.add_to_variation_storer   sG   € Ø×7Ñ7¸ÓJÑˆØ×!Ñ! (Ô+Ø×)Ñ)¨&Ó1ˆÜ�4—<‘<Ó  %Ð'Ð'r   )r   r   )NN)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r)   Úpropertyr5   r:   rE   r=   r   rO   rS   rZ   rV   re   rn   Ú__static_attributes__r-   r   r   r   r      sx   † ÙPà&(ô ,ò
-ð ñ7ó ð7ð ñ4ó ð4ò-òò0ò
ð
 ñ ó ð ôQôô(J÷(r   r   N)ÚfontTools.varLib.modelsr   r   r   r   r   r-   r   r   Ú<module>rx      s   ðß VÑ Vò&÷n(ò n(r   