ó
    oñ:i9  ã                   ó  • S r SSKJr  SSKJr  SSKJs  Js  Jr  SSKJs  Js  J	r	  SSK
Jr  SSKJs  Jr  SSKJr  SSKJr  SSKJr  SSKJr  SS	KJr  S
S/r " S S\5      r\R9                  \R:                  " S5      S4\R:                  " S5      S4\R:                  " S5      S4\R:                  " S5      S4\R:                  " S5      S4\R:                  " S5      S4\	R<                  S4\	R>                  S4\	R@                  S4\	RB                  S4\	RD                  S4\	RF                  S445      S 5       r$\RK                  \R:                  " S5      \R:                  " S 5      4S!5      S" 5       r$\RK                  \R:                  " S#5      S$5      S% 5       r$\RK                  \R:                  " S&5      S'5      S( 5       r$\RK                  \R:                  " S)5      S*5      S+ 5       r$\RK                  \R:                  " S,5      S-5      S. 5       r$\RK                  \R:                  " S/5      S05      S1 5       r$S2 r&\RK                  \R:                  " S35      \R:                  " S45      4S55      S6 5       r$\RO                  \	RP                  5      S7 5       r$S8 r)\RO                  \	RT                  5      S9 5       r$\RO                  \	RV                  5      S: 5       r$S; r,S>S< jr-\.S=:X  a  SSK/r/\/R`                  " \-" 5       5        gg)?zsChange the units-per-EM of a font.

AAT and Graphite tables are not supported. CFF/CFF2 fonts
are de-subroutinized.é    )Ú	TTVisitorN)ÚVarStoreData)Úbuilder)ÚOnlineMultiVarStoreBuilder)ÚVector)ÚotRound)ÚbatchedÚ
scale_upemÚScalerVisitorc                   ó    • \ rS rSrS rS rSrg)r   é   c                 ó   • Xl         g ©N©ÚscaleFactor)Úselfr   s     Ú\/srv/projetos/modelo_ml_acdoc/venv/lib/python3.13/site-packages/fontTools/ttLib/scaleUpem.pyÚ__init__ÚScalerVisitor.__init__   s   € Ø&Õó    c                 ó0   • [        XR                  -  5      $ r   )r   r   )r   Úvs     r   ÚscaleÚScalerVisitor.scale   s   € Ü�q×+Ñ+Ñ+Ó,Ð,r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   Ú__static_attributes__© r   r   r   r      s   † ò'õ-r   Úhead)Ú
unitsPerEmÚxMinÚyMinÚxMaxÚyMaxÚpost)ÚunderlinePositionÚunderlineThicknessÚVORGÚdefaultVertOriginYÚhhea)ÚascentÚdescentÚlineGapÚadvanceWidthMaxÚminLeftSideBearingÚminRightSideBearingÚ
xMaxExtentÚcaretOffsetÚvhea)r-   r.   r/   ÚadvanceHeightMaxÚminTopSideBearingÚminBottomSideBearingÚ
yMaxExtentr4   zOS/2)ÚxAvgCharWidthÚySubscriptXSizeÚySubscriptYSizeÚySubscriptXOffsetÚySubscriptYOffsetÚySuperscriptXSizeÚySuperscriptYSizeÚySuperscriptXOffsetÚySuperscriptYOffsetÚyStrikeoutSizeÚyStrikeoutPositionÚsTypoAscenderÚsTypoDescenderÚsTypoLineGapÚusWinAscentÚusWinDescentÚsxHeightÚ
sCapHeight)ÚXAdvanceÚYAdvanceÚ
XPlacementÚ
YPlacement)ÚXCoordinateÚYCoordinateÚ
CoordinateÚValue)r#   r$   r%   r&   c                 ó:   • [        XU R                  U5      5        g r   )Úsetattrr   )ÚvisitorÚobjÚattrÚvalues       r   ÚvisitrZ      s   € ôD ˆC�w—}‘} UÓ+Õ,r   ÚhmtxÚvmtxÚmetricsc                 ój   • U H-  nX4   u  pVU R                  U5      U R                  U5      4X4'   M/     g r   ©r   )rV   rW   rX   r]   ÚgÚadvanceÚlsbs          r   rZ   rZ   c   s5   € ó ˆØ‘z‰ˆØ—]‘] 7Ó+¨W¯]©]¸3Ó-?Ð?ˆ‹
ò r   ÚVMTXÚVOriginRecordsc                 ó@   • U H  nU R                  X4   5      X4'   M     g r   r_   )rV   rW   rX   rd   r`   s        r   rZ   rZ   l   s    € ãˆØ#ŸM™M¨.Ñ*;Ó<ˆÓò r   ÚglyfÚglyphsc           	      ó$  • UR                  5        Hü  nS H/  n[        XBS 5      nUc  M  [        XBU R                  U5      5        M1     UR	                  5       (       aU  UR
                   HC  nU R                  UR                  5      Ul        U R                  UR                  5      Ul        ME     M¢  [        US5      (       d  Mµ  UR                  n[        U5       H,  u  nu  pšU R                  U	5      U R                  U
5      4Xx'   M.     Mþ     g )N)r#   r%   r$   r&   Úcoordinates)ÚvaluesÚgetattrrU   r   ÚisCompositeÚ
componentsÚxÚyÚhasattrri   Ú	enumerate)rV   rW   rX   rg   r`   r   Ú	componentri   Úirn   ro   s              r   rZ   rZ   r   sÑ   € à�]‰]Ž_ˆÛ4ˆDÜ˜ Ó&ˆAØ‹}Ü˜ §¡¨qÓ!1Ö2ñ 5ð
 �=‰=�?‰?ØŸ\œ\�	Ø%Ÿm™m¨I¯K©KÓ8�	”Ø%Ÿm™m¨I¯K©KÓ8�	–ñ *ñ ä�1�m×$Ó$ØŸ-™-ˆKÜ& {Ö3‘	�‘6�AØ!(§¡¨qÓ!1°7·=±=ÀÓ3CÐ!C�“ó 4ò r   ÚgvarÚ
variationsc                 ó  • U R                   S   nUR                  5        Ha  u  pVXE   nU HR  nUR                  n	[        U	5       H4  u  p«Uc  M
  U R	                  US   5      U R	                  US   5      4Xš'   M6     MT     Mc     g )Nrf   r   é   )ÚfontÚitemsri   rq   r   )rV   rW   rX   ru   Ú	glyfTableÚ	glyphNameÚvarlistÚglyphÚvarri   rs   Úxys               r   rZ   rZ   †   s€   € à—‘˜VÑ$€Ià(×.Ñ.Ö0Ñˆ	ØÑ$ˆÛˆCØŸ/™/ˆKÜ" ;Ö/‘�Ø‘:ÙØ!(§¡¨r°!©uÓ!5°w·}±}ÀRÈÁUÓ7KÐ!K�“ó 0ó ò 1r   ÚVARCÚtablec                 ó’
  • U R                   S   nUR                   Vs/ s H  oUR                  PM     nnUR                  n[	        U5      nUR
                  R                   GHÂ  n	U	R                   GH­  n
U
R                  nU R                  UR                  5      Ul
        U R                  UR                  5      Ul        U R                  UR                  5      Ul        U R                  UR                  5      Ul        U
R                  [        R                   :w  aí  U
R                  nU[        R                   :w  aÍ  US-	  nUS-  nUR"                  U   nUR$                  U   nUR'                  UR)                  XÔR                  5      5        U(       a_  [+        U5      UR,                  -  n[/        [1        UU5      5      nU Vs/ s H  n[3        U5      PM     nnUR5                  U5      U
l        O[        R                   U
l        U
R6                  [        R                   :w  d  GM¼  U
R6                  nU[        R                   :w  d  GMß  US-	  nUS-  nWR$                  US-     nUS-	  nUS-  nUR"                  U   nUR$                  U   nUR'                  UR)                  XÔR                  5      5        U(       GaC  [+        U5      UR,                  -  nU
R8                  n[/        [1        UU5      5      n/ nU GHæ  n[/        U5      nSnU[        R:                  R<                  -  (       a  U R                  UU   5      UU'   US-  nU[        R:                  R>                  -  (       a  U R                  UU   5      UU'   US-  nU[        R:                  R@                  -  (       a  US-  nU[        R:                  RB                  -  (       a  US-  nU[        R:                  RD                  -  (       a  US-  nU[        R:                  RF                  -  (       a  US-  nU[        R:                  RH                  -  (       a  US-  nU[        R:                  RJ                  -  (       a  U R                  UU   5      UU'   US-  nU[        R:                  RL                  -  (       a  U R                  UU   5      UU'   US-  nURO                  [3        U5      5        GMé     UnUR5                  U5      U
l        GM˜  [        R                   U
l        GM°     GMÅ     URQ                  5       Ul        g s  snf s  snf )NÚfvaré   iÿÿ  r   rw   ))rx   ÚaxesÚaxisTagÚMultiVarStorer   ÚVarCompositeGlyphsÚVarCompositeGlyphrm   Ú	transformr   Ú
translateXÚ
translateYÚtCenterXÚtCenterYÚaxisValuesVarIndexÚotTablesÚNO_VARIATION_INDEXÚMultiVarDataÚItemÚsetSupportsÚget_supportsÚlenÚVarRegionCountÚlistr	   r   ÚstoreDeltasÚtransformVarIndexÚflagsÚVarComponentFlagsÚHAVE_TRANSLATE_XÚHAVE_TRANSLATE_YÚHAVE_ROTATIONÚHAVE_SCALE_XÚHAVE_SCALE_YÚHAVE_SKEW_XÚHAVE_SKEW_YÚHAVE_TCENTER_XÚHAVE_TCENTER_YÚappendÚfinish)rV   rW   rX   Úvarcrƒ   ÚaÚfvarAxesÚstoreÚstoreBuilderr`   rr   ÚtÚvarIdxÚmajorÚminorÚvarDataÚvecÚmr   r›   ÚnewVecrs   s                         r   rZ   rZ   ”   s=  € ð �<‰<˜Ñ€DØ#'§9¢9Ó-¢9˜a—	”	¡9€HÐ-à×Ñ€EÜ-¨hÓ7€Là×$Ñ$×6Õ6ˆØŸ�ˆIØ×#Ñ#ˆAØ"Ÿ=™=¨¯©Ó6ˆAŒLØ"Ÿ=™=¨¯©Ó6ˆAŒLØ Ÿ™ q§z¡zÓ2ˆAŒJØ Ÿ™ q§z¡zÓ2ˆAŒJà×+Ñ+¬x×/JÑ/JÓJØ"×5Ñ5�ð œX×8Ñ8Ó8Ø" b™L�EØ" V™O�EØ#×0Ñ0°Ñ7�GØ!Ÿ,™, uÑ-�CØ ×,Ñ,¨U×-?Ñ-?ÀÇyÁyÓ-QÔRÞÜ ›H¨×(>Ñ(>Ñ>˜Ü"¤7¨3°£?Ó3˜Ù25Ó6²#¨Qœv ažy±#˜Ð6Ø7C×7OÑ7OÐPSÓ7T˜	Õ4ä7?×7RÑ7R˜	Ô4à×*Ñ*¬h×.IÑ.IÖIØ"×4Ñ4�ØœX×8Ñ8Ö8Ø" b™L�EØ" V™O�EØ!Ÿ,™, v°¡Ñ7�CØ" b™L�EØ" V™O�EØ#×0Ñ0°Ñ7�GØ!Ÿ,™, uÑ-�CØ ×,Ñ,¨U×-?Ñ-?ÀÇyÁyÓ-QÔRßÜ ›H¨×(>Ñ(>Ñ>˜Ø )§¡˜Ü"¤7¨3°£?Ó3˜Ø!#˜Ü!$˜AÜ $ Q£˜AØ !˜Aà$¤x×'AÑ'A×'RÑ'R×RØ'.§}¡}°Q°q±TÓ':  !¡Ø ! Q¡ Ø$¤x×'AÑ'A×'RÑ'R×RØ'.§}¡}°Q°q±TÓ':  !¡Ø ! Q¡ Ø$¤x×'AÑ'A×'OÑ'O×OØ ! Q¡ Ø$¤x×'AÑ'A×'NÑ'N×NØ ! Q¡ Ø$¤x×'AÑ'A×'NÑ'N×NØ ! Q¡ Ø$¤x×'AÑ'A×'MÑ'M×MØ ! Q¡ Ø$¤x×'AÑ'A×'MÑ'M×MØ ! Q¡ Ø$¤x×'AÑ'A×'PÑ'P×PØ'.§}¡}°Q°q±TÓ':  !¡Ø ! Q¡ Ø$¤x×'AÑ'A×'PÑ'P×PØ'.§}¡}°Q°q±TÓ':  !¡Ø ! Q¡ à"ŸM™M¬&°«)×4ñ7 "%ð8 %˜à6B×6NÑ6NÈsÓ6S˜	×3ä6>×6QÑ6Q˜	×3ôS &ñ 7ðX &×,Ñ,Ó.€DÕùòc .ùò4 7s   žT?Ç
UÚkernÚ
kernTablesc                 ó†   • U H;  nUR                   nUR                  5        H  nU R                  XV   5      XV'   M     M=     g r   )Ú	kernTableÚkeysr   )rV   rW   rX   r¶   r�   r¸   Úks          r   rZ   rZ   í   s8   € ãˆØ—O‘Oˆ	Ø—‘Ö!ˆAØ"Ÿ=™=¨©Ó6ˆI‹Ló "ò r   c                 óÖ   • [        U5       HZ  u  p#[        U[        5      (       d,  [        U[        5      (       d  U R	                  U5      X'   MD  MF  US   n[        X5        XCS'   M\     g )Néÿÿÿÿ)rq   Ú
isinstancer˜   Úbytesr   Ú
_cff_scale)rV   Úargsrs   ÚargÚ
num_blendss        r   r¿   r¿   õ   s[   € Ü˜D–/‰ˆÜ˜#œt×$Ñ$Ü˜c¤5×)Ñ)Ø!Ÿ-™-¨Ó,�“ñ *ð ˜R™ˆJÜ�wÔ$Ø �‹Gò "r   zCFF ÚCFF2Úcffc           
      ó  • UR                  5         UR                  S   n[        USS 5      nUb  UR                  OS n[	        5       nUR                  5        GH¤  nX8   n	U	R                  n
U	R                   H“  nU
R                  U5      u  pÍUR                  UR                  5        [        R                  " UR                  US9nU H  u  nnUS:X  a  M  [        U U5        M     [        R                  " U5      UR                  S S & M•     S HR  n[        XBS 5      nUc  M  [!        U["        5      (       a  [        U U5        M7  [%        XBU R'                  U5      5        MT     [)        S5       H$  nUR*                  U==   U R,                  -  ss'   M&     U H\  nS HS  n[        UUS 5      nUc  M  [!        U["        5      (       a  [        U U5        M8  [%        UX R'                  U5      5        MU     M^     GM§     g )Nr   ÚVarStore)ÚgetNumRegionsÚvsindex)ÚUnderlinePositionÚUnderlineThicknessÚFontBBoxÚStrokeWidthé   )
Ú
BlueValuesÚ
OtherBluesÚFamilyBluesÚFamilyOtherBluesÚStdHWÚStdVWÚ	StemSnapHÚ	StemSnapVÚdefaultWidthXÚnominalWidthX)ÚdesubroutinizeÚtopDictIndexrk   rÇ   Úsetr¹   ÚCharStringsÚcharsetÚgetItemAndSelectorÚaddÚprivateÚcffSpecializerÚprogramToCommandsÚprogramr¿   ÚcommandsToProgramr½   r˜   rU   r   ÚrangeÚ
FontMatrixr   )rV   rW   rX   rÄ   ÚtopDictÚvarStorerÇ   ÚprivatesÚfontnamerx   Úcsr`   ÚcÚ_ÚcommandsÚoprÀ   rY   rs   rß   s                       r   rZ   rZ      sÃ  € ð ×ÑÔØ×Ñ˜qÑ!€GÜ�w 
¨DÓ1€HØ.6Ñ.B�H×*Ò*È€MÜ‹u€HØ—H‘H—JˆØ‰}ˆØ×ÑˆØ—”ˆAØ×(Ñ(¨Ó+‰DˆAØ�L‰L˜Ÿ™Ô#ä%×7Ò7Ø—	‘	¨ñˆHó %‘��DØ˜“?ÙÜ˜7 DÖ)ñ %ô *×;Ò;¸HÓEˆA�I‰I‘aŠLñ ó
ˆDô ˜G¨4Ó0ˆEØ‰}ÙÜ˜%¤×&Ñ&Ü˜7 EÖ*ä˜ w§}¡}°UÓ';Ö<ñ
ô �q–ˆAØ×Ñ˜qÓ! W×%8Ñ%8Ñ8Õ!ñ ó  ˆGó�ô   ¨¨tÓ4�Ø‘=ÙÜ˜e¤T×*Ñ*Ü˜w¨Ö.ä˜G T¯=©=¸Ó+?Ö@ó+ô  òG r   c                 ó˜   • UR                    H*  n[        U5       H  u  p4U R                  U5      X#'   M     M,     UR                  5         g r   )r“   rq   r   ÚcalculateNumShorts)rV   r±   Úitemrs   r   s        r   rZ   rZ   H  s>   € à—”ˆÜ˜d–O‰DˆAØ—m‘m AÓ&ˆD‹Gó $ñ ð ×ÑÕ r   c                 óX  • SUs=::  a  S::  a)  O  O&[         R                  R                  U l        Xl        g [         R
                  " 5       nUR                  5         S=Ul        =Ul        =Ul	        Ul
        U=Ul        Ul        [         R                  R                  U l        X l        g )Néþÿÿÿé   r   )r�   ÚPaintFormatÚPaintScaleUniformÚFormatr   Ú	Affine2x3ÚpopulateDefaultsr   ÚyxÚdxÚdyÚxxÚyyÚPaintTransformÚ	Transform)Úpaintr   rŠ   s      r   Ú_setup_scale_paintr  S  s†   € Ø	ˆUÕ#�mÖ#Ü×+Ñ+×=Ñ=ˆŒØŒØä×"Ò"Ó$€IØ×ÑÔ Ø@AÐA€I„LÐA�9”<ÐA )¤,°´Ø"'Ð'€I„L�9”<ä×'Ñ'×6Ñ6€E„LØ…Or   c                 óˆ   • UR                   n[        R                   " 5       n[        X0R                  5        X#l         X1l         g)NT)ÚPaintr�   r  r   )rV   ÚrecordÚoldPaintr   s       r   rZ   rZ   b  s2   € à�|‰|€Hä�NŠNÓ€EÜ�u×1Ñ1Ô2Ø„Kà„Làr   c                 ób  • UR                   [        R                  R                  :w  a  g[        R                  " 5       nUR                   Ul         UR                  Ul        UR
                  Ul        U?U?[        USU R                  -  5        X!l        U R                  UR                  5        g)NTrw   F)	r÷   r�   rõ   Ú
PaintGlyphr  ÚGlyphr  r   rZ   )rV   r  ÚnewPaints      r   rZ   rZ   o  s�   € à‡|�|”x×+Ñ+×6Ñ6Ó6Øä�~Š~Ó€HØ—l‘l€H„OØ—[‘[€H„NØ—[‘[€H„NØˆØˆä�u˜a '×"5Ñ"5Ñ5Ô6Ø„Kà‡M�M�(—.‘.Ô!àr   c                 ó^   • U S   R                   n[        X-  5      nUR                  U 5        g)z1Change the units-per-EM of font to the new value.r!   N)r"   r   rZ   )rx   Únew_upemÚupemrV   s       r   r
   r
   ƒ  s)   € à�‰<×"Ñ"€DÜ˜H™OÓ,€GØ‡M�M�$Õr   c                 óò  • U c  SSK nUR                  SS n SSKJn  SSKJn  SSKnUR                  SS S9nUR                  SSS	S
9  UR                  SSSS
9  UR                  SSSSS9  UR                  U 5      nU" UR                  5      n[        UR                  5      nUR                  b  UR                  OU" UR                  SSS9n	[        Xx5        [        SU	-  5        UR!                  U	5        g)z Change the units-per-EM of fontsNr   rw   )ÚTTFont)ÚmakeOutputFileNamezfonttools ttLib.scaleUpem)Údescriptionrx   z
Font file.)ÚmetavarÚhelpr  znew-upemzNew units-per-EM integer value.z--output-fileÚpathzOutput file.)r  Údefaultr  Tz-scaled)Ú	overWriteÚsuffixz
Writing %s)ÚsysÚargvÚfontTools.ttLibr  ÚfontTools.misc.cliToolsr  ÚargparseÚArgumentParserÚadd_argumentÚ
parse_argsrx   Úintr  Úoutput_filer
   ÚprintÚsave)
rÀ   r  r  r  r  ÚparserÚoptionsrx   r  r!  s
             r   Úmainr&  Š  s  € ð �|Ûà�x‰x˜˜ˆ|ˆå&Ý:Ûà×$Ñ$Ø#Ð1Sð %ð €Fð ×Ñ˜¨°\ÐÑBØ
×ÑØ˜JÐ-Nð ñ ð ×ÑØ °¸Nð ñ ð ×Ñ Ó%€Gá�'—,‘,Ó€DÜ�7×#Ñ#Ó$€Hð ×ÑÑ*ð 	×Òá §¡¸ÀYÑOð ô ˆtÔä	ˆ,˜Ñ
$Ô%Ø‡I�IˆkÕr   Ú__main__r   )1Ú__doc__ÚfontTools.ttLib.ttVisitorr   r  ÚttLibÚfontTools.ttLib.tables.otBaseÚtablesÚotBaseÚfontTools.ttLib.tables.otTablesr�   ÚfontTools.cffLibr   ÚfontTools.cffLib.specializerÚcffLibÚspecializerrà   ÚfontTools.varLibr   ÚfontTools.varLib.multiVarStorer   ÚfontTools.misc.vectorr   ÚfontTools.misc.fixedToolsr   ÚfontTools.misc.iterToolsr	   Ú__all__r   Úregister_attrsÚgetTableClassÚValueRecordÚAnchorÚ
CaretValueÚ	BaseCoordÚMathValueRecordÚClipBoxrZ   Úregister_attrr¿   ÚregisterÚVarDatar  ÚBaseGlyphPaintRecordr  r
   r&  r   r  Úexitr    r   r   Ú<module>rF     si  ðñõ
 0Ý ß .Ó .ß 2Ó 2Ý )ß 5Ð 5Ý $Ý EÝ (Ý -Ý ,ð ˜Ð
)€ô-�Iô -ð ×Ñà	×	Ò	˜VÓ	$Ð&TÐUØ	×	Ò	˜VÓ	$Ð&QÐRØ	×	Ò	˜VÓ	$Ð';Ð=à×Ò Ó'ð	ð	
ð ×Ò Ó'ð	ð	
ð ×Ò Ó'ðð	
ð0 × Ñ Ø@ð	
ð 
�‰Ð8Ð9Ø	×	Ñ	˜|Ð-Ø	×	Ñ	˜lÐ,Ø	×	!Ñ	! GÐ-Ø	×	Ñ	Ð;Ð<ð{>ó@ñB-óC@ðB-ð ×ÑØ
×Ò˜Ó  %×"5Ò"5°fÓ"=Ð>À	óñ@óð@ð ×Ñ˜U×0Ò0°Ó8Ð:JÓKñ=ó Lð=ð
 ×Ñ˜U×0Ò0°Ó8¸(ÓCñDó DðDð& ×Ñ˜U×0Ò0°Ó8¸,ÓGñ
Ló Hð
Lð ×Ñ˜U×0Ò0°Ó8¸'ÓBñU/ó CðU/ðp ×Ñ˜U×0Ò0°Ó8¸,ÓGñ7ó Hð7ò!ð ×ÑØ
×Ò˜Ó  %×"5Ò"5°fÓ"=Ð>Àóñ?Aóð?AðJ ×Ñ˜×(Ñ(Ó)ñ!ó *ð!ò ð ×Ñ˜×5Ñ5Ó6ñ	ó 7ð	ð ×Ñ˜Ÿ™Ó'ñó (ðò&ô$ðN ˆzÓÛà‡H‚H‰T‹VÕð r   