fonttools 4.55.8__cp39-cp39-macosx_10_9_universal2.whl → 4.57.0__cp39-cp39-macosx_10_9_universal2.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of fonttools might be problematic. Click here for more details.

Files changed (43) hide show
  1. fontTools/__init__.py +1 -1
  2. fontTools/config/__init__.py +15 -0
  3. fontTools/cu2qu/cu2qu.c +6 -6
  4. fontTools/cu2qu/cu2qu.cpython-39-darwin.so +0 -0
  5. fontTools/feaLib/ast.py +8 -3
  6. fontTools/feaLib/builder.py +32 -9
  7. fontTools/feaLib/error.py +1 -1
  8. fontTools/feaLib/lexer.c +5 -5
  9. fontTools/feaLib/lexer.cpython-39-darwin.so +0 -0
  10. fontTools/feaLib/parser.py +58 -0
  11. fontTools/misc/bezierTools.c +6 -6
  12. fontTools/misc/bezierTools.cpython-39-darwin.so +0 -0
  13. fontTools/misc/testTools.py +5 -1
  14. fontTools/otlLib/optimize/gpos.py +7 -1
  15. fontTools/pens/momentsPen.c +5 -5
  16. fontTools/pens/momentsPen.cpython-39-darwin.so +0 -0
  17. fontTools/qu2cu/qu2cu.c +6 -6
  18. fontTools/qu2cu/qu2cu.cpython-39-darwin.so +0 -0
  19. fontTools/ttLib/__init__.py +4 -0
  20. fontTools/ttLib/__main__.py +47 -8
  21. fontTools/ttLib/tables/D__e_b_g.py +20 -2
  22. fontTools/ttLib/tables/_c_m_a_p.py +19 -6
  23. fontTools/ttLib/tables/_g_l_y_f.py +9 -4
  24. fontTools/ttLib/tables/_g_v_a_r.py +4 -2
  25. fontTools/ttLib/tables/otConverters.py +5 -2
  26. fontTools/ttLib/tables/otData.py +1 -1
  27. fontTools/ttLib/tables/otTables.py +26 -18
  28. fontTools/ttLib/tables/otTraverse.py +2 -1
  29. fontTools/ttLib/ttFont.py +9 -7
  30. fontTools/ttLib/ttGlyphSet.py +0 -10
  31. fontTools/ttx.py +13 -1
  32. fontTools/varLib/__init__.py +93 -101
  33. fontTools/varLib/hvar.py +113 -0
  34. fontTools/varLib/iup.c +6 -6
  35. fontTools/varLib/iup.cpython-39-darwin.so +0 -0
  36. fontTools/varLib/varStore.py +10 -38
  37. {fonttools-4.55.8.dist-info → fonttools-4.57.0.dist-info}/METADATA +25 -2
  38. {fonttools-4.55.8.dist-info → fonttools-4.57.0.dist-info}/RECORD +43 -42
  39. {fonttools-4.55.8.dist-info → fonttools-4.57.0.dist-info}/WHEEL +2 -1
  40. {fonttools-4.55.8.data → fonttools-4.57.0.data}/data/share/man/man1/ttx.1 +0 -0
  41. {fonttools-4.55.8.dist-info → fonttools-4.57.0.dist-info}/entry_points.txt +0 -0
  42. {fonttools-4.55.8.dist-info → fonttools-4.57.0.dist-info/licenses}/LICENSE +0 -0
  43. {fonttools-4.55.8.dist-info → fonttools-4.57.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,113 @@
1
+ from fontTools.misc.roundTools import noRound
2
+ from fontTools.ttLib import TTFont, newTable
3
+ from fontTools.ttLib.tables import otTables as ot
4
+ from fontTools.ttLib.tables.otBase import OTTableWriter
5
+ from fontTools.varLib import HVAR_FIELDS, VVAR_FIELDS, _add_VHVAR
6
+ from fontTools.varLib import builder, models, varStore
7
+ from fontTools.misc.fixedTools import fixedToFloat as fi2fl
8
+ from fontTools.misc.cliTools import makeOutputFileName
9
+ from functools import partial
10
+ import logging
11
+
12
+ log = logging.getLogger("fontTools.varLib.avar")
13
+
14
+
15
+ def _get_advance_metrics(font, axisTags, tableFields):
16
+ # There's two ways we can go from here:
17
+ # 1. For each glyph, at each master peak, compute the value of the
18
+ # advance width at that peak. Then pass these all to a VariationModel
19
+ # builder to compute back the deltas.
20
+ # 2. For each master peak, pull out the deltas of the advance width directly,
21
+ # and feed these to the VarStoreBuilder, forgoing the remoding step.
22
+ # We'll go with the second option, as it's simpler, faster, and more direct.
23
+ gvar = font["gvar"]
24
+ vhAdvanceDeltasAndSupports = {}
25
+ glyphOrder = font.getGlyphOrder()
26
+ phantomIndex = tableFields.phantomIndex
27
+ for glyphName in glyphOrder:
28
+ supports = []
29
+ deltas = []
30
+ variations = gvar.variations.get(glyphName, [])
31
+
32
+ for tv in variations:
33
+ supports.append(tv.axes)
34
+ phantoms = tv.coordinates[-4:]
35
+ phantoms = phantoms[phantomIndex * 2 : phantomIndex * 2 + 2]
36
+ assert len(phantoms) == 2
37
+ phantoms[0] = phantoms[0][phantomIndex] if phantoms[0] is not None else 0
38
+ phantoms[1] = phantoms[1][phantomIndex] if phantoms[1] is not None else 0
39
+ deltas.append(phantoms[1] - phantoms[0])
40
+
41
+ vhAdvanceDeltasAndSupports[glyphName] = (deltas, supports)
42
+
43
+ vOrigDeltasAndSupports = None # TODO
44
+
45
+ return vhAdvanceDeltasAndSupports, vOrigDeltasAndSupports
46
+
47
+
48
+ def add_HVAR(font):
49
+ if "HVAR" in font:
50
+ del font["HVAR"]
51
+ axisTags = [axis.axisTag for axis in font["fvar"].axes]
52
+ getAdvanceMetrics = partial(_get_advance_metrics, font, axisTags, HVAR_FIELDS)
53
+ _add_VHVAR(font, axisTags, HVAR_FIELDS, getAdvanceMetrics)
54
+
55
+
56
+ def add_VVAR(font):
57
+ if "VVAR" in font:
58
+ del font["VVAR"]
59
+ getAdvanceMetrics = partial(_get_advance_metrics, font, axisTags, HVAR_FIELDS)
60
+ axisTags = [axis.axisTag for axis in font["fvar"].axes]
61
+ _add_VHVAR(font, axisTags, VVAR_FIELDS, getAdvanceMetrics)
62
+
63
+
64
+ def main(args=None):
65
+ """Add `HVAR` table to variable font."""
66
+
67
+ if args is None:
68
+ import sys
69
+
70
+ args = sys.argv[1:]
71
+
72
+ from fontTools import configLogger
73
+ from fontTools.designspaceLib import DesignSpaceDocument
74
+ import argparse
75
+
76
+ parser = argparse.ArgumentParser(
77
+ "fonttools varLib.hvar",
78
+ description="Add `HVAR` table from to variable font.",
79
+ )
80
+ parser.add_argument("font", metavar="varfont.ttf", help="Variable-font file.")
81
+ parser.add_argument(
82
+ "-o",
83
+ "--output-file",
84
+ type=str,
85
+ help="Output font file name.",
86
+ )
87
+
88
+ options = parser.parse_args(args)
89
+
90
+ configLogger(level="WARNING")
91
+
92
+ font = TTFont(options.font)
93
+ if not "fvar" in font:
94
+ log.error("Not a variable font.")
95
+ return 1
96
+
97
+ add_HVAR(font)
98
+ if "vmtx" in font:
99
+ add_VVAR(font)
100
+
101
+ if options.output_file is None:
102
+ outfile = makeOutputFileName(options.font, overWrite=True, suffix=".hvar")
103
+ else:
104
+ outfile = options.output_file
105
+ if outfile:
106
+ log.info("Saving %s", outfile)
107
+ font.save(outfile)
108
+
109
+
110
+ if __name__ == "__main__":
111
+ import sys
112
+
113
+ sys.exit(main())
fontTools/varLib/iup.c CHANGED
@@ -1,4 +1,4 @@
1
- /* Generated by Cython 3.0.11 */
1
+ /* Generated by Cython 3.0.12 */
2
2
 
3
3
  /* BEGIN: Cython Metadata
4
4
  {
@@ -36,10 +36,10 @@ END: Cython Metadata */
36
36
  #else
37
37
  #define __PYX_EXTRA_ABI_MODULE_NAME ""
38
38
  #endif
39
- #define CYTHON_ABI "3_0_11" __PYX_EXTRA_ABI_MODULE_NAME
39
+ #define CYTHON_ABI "3_0_12" __PYX_EXTRA_ABI_MODULE_NAME
40
40
  #define __PYX_ABI_MODULE_NAME "_cython_" CYTHON_ABI
41
41
  #define __PYX_TYPE_MODULE_PREFIX __PYX_ABI_MODULE_NAME "."
42
- #define CYTHON_HEX_VERSION 0x03000BF0
42
+ #define CYTHON_HEX_VERSION 0x03000CF0
43
43
  #define CYTHON_FUTURE_DIVISION 1
44
44
  #include <stddef.h>
45
45
  #ifndef offsetof
@@ -1972,7 +1972,7 @@ static PyObject *__Pyx_PyFunction_FastCallDict(PyObject *func, PyObject **args,
1972
1972
  #if !CYTHON_VECTORCALL
1973
1973
  #if PY_VERSION_HEX >= 0x03080000
1974
1974
  #include "frameobject.h"
1975
- #if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API
1975
+ #if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION)
1976
1976
  #ifndef Py_BUILD_CORE
1977
1977
  #define Py_BUILD_CORE 1
1978
1978
  #endif
@@ -16524,7 +16524,7 @@ static void __pyx_insert_code_object(int code_line, PyCodeObject* code_object) {
16524
16524
  #include "compile.h"
16525
16525
  #include "frameobject.h"
16526
16526
  #include "traceback.h"
16527
- #if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API
16527
+ #if PY_VERSION_HEX >= 0x030b00a6 && !CYTHON_COMPILING_IN_LIMITED_API && !defined(PYPY_VERSION)
16528
16528
  #ifndef Py_BUILD_CORE
16529
16529
  #define Py_BUILD_CORE 1
16530
16530
  #endif
@@ -17714,7 +17714,7 @@ static PyObject* __Pyx_PyObject_CallMethod1(PyObject* obj, PyObject* method_name
17714
17714
 
17715
17715
  /* CoroutineBase */
17716
17716
  #include <frameobject.h>
17717
- #if PY_VERSION_HEX >= 0x030b00a6
17717
+ #if PY_VERSION_HEX >= 0x030b00a6 && !defined(PYPY_VERSION)
17718
17718
  #ifndef Py_BUILD_CORE
17719
17719
  #define Py_BUILD_CORE 1
17720
17720
  #endif
Binary file
@@ -41,7 +41,7 @@ class OnlineVarStoreBuilder(object):
41
41
  def setSupports(self, supports):
42
42
  self._model = None
43
43
  self._supports = list(supports)
44
- if not self._supports[0]:
44
+ if self._supports and not self._supports[0]:
45
45
  del self._supports[0] # Drop base master support
46
46
  self._cache = None
47
47
  self._data = None
@@ -412,25 +412,6 @@ class _Encoding(object):
412
412
  def extend(self, lst):
413
413
  self.items.update(lst)
414
414
 
415
- def get_room(self):
416
- """Maximum number of bytes that can be added to characteristic
417
- while still being beneficial to merge it into another one."""
418
- count = len(self.items)
419
- return max(0, (self.overhead - 1) // count - self.width)
420
-
421
- room = property(get_room)
422
-
423
- def get_gain(self):
424
- """Maximum possible byte gain from merging this into another
425
- characteristic."""
426
- count = len(self.items)
427
- return max(0, self.overhead - count)
428
-
429
- gain = property(get_gain)
430
-
431
- def gain_sort_key(self):
432
- return self.gain, self.chars
433
-
434
415
  def width_sort_key(self):
435
416
  return self.width, self.chars
436
417
 
@@ -534,13 +515,9 @@ def VarStore_optimize(self, use_NO_VARIATION_INDEX=True, quantization=1):
534
515
  # of the old encoding is completely eliminated. However, each row
535
516
  # now would require more bytes to encode, to the tune of one byte
536
517
  # per characteristic bit that is active in the new encoding but not
537
- # in the old one. The number of bits that can be added to an encoding
538
- # while still beneficial to merge it into another encoding is called
539
- # the "room" for that encoding.
518
+ # in the old one.
540
519
  #
541
- # The "gain" of an encodings is the maximum number of bytes we can
542
- # save by merging it into another encoding. The "gain" of merging
543
- # two encodings is how many bytes we save by doing so.
520
+ # The "gain" of merging two encodings is how many bytes we save by doing so.
544
521
  #
545
522
  # High-level algorithm:
546
523
  #
@@ -554,7 +531,11 @@ def VarStore_optimize(self, use_NO_VARIATION_INDEX=True, quantization=1):
554
531
  #
555
532
  # - Put all encodings into a "todo" list.
556
533
  #
557
- # - Sort todo list by decreasing gain (for stability).
534
+ # - Sort todo list (for stability) by width_sort_key(), which is a tuple
535
+ # of the following items:
536
+ # * The "width" of the encoding.
537
+ # * The characteristic bitmap of the encoding, with higher-numbered
538
+ # columns compared first.
558
539
  #
559
540
  # - Make a priority-queue of the gain from combining each two
560
541
  # encodings in the todo list. The priority queue is sorted by
@@ -575,16 +556,7 @@ def VarStore_optimize(self, use_NO_VARIATION_INDEX=True, quantization=1):
575
556
  #
576
557
  # The output is then sorted for stability, in the following way:
577
558
  # - The VarRegionList of the input is kept intact.
578
- # - All encodings are sorted before the main algorithm, by
579
- # gain_key_sort(), which is a tuple of the following items:
580
- # * The gain of the encoding.
581
- # * The characteristic bitmap of the encoding, with higher-numbered
582
- # columns compared first.
583
- # - The VarData is sorted by width_sort_key(), which is a tuple
584
- # of the following items:
585
- # * The "width" of the encoding.
586
- # * The characteristic bitmap of the encoding, with higher-numbered
587
- # columns compared first.
559
+ # - The VarData is sorted by the same width_sort_key() used at the beginning.
588
560
  # - Within each VarData, the items are sorted as vectors of numbers.
589
561
  #
590
562
  # Finally, each VarData is optimized to remove the empty columns and
@@ -626,7 +598,7 @@ def VarStore_optimize(self, use_NO_VARIATION_INDEX=True, quantization=1):
626
598
  front_mapping[(major << 16) + minor] = row
627
599
 
628
600
  # Prepare for the main algorithm.
629
- todo = sorted(encodings.values(), key=_Encoding.gain_sort_key)
601
+ todo = sorted(encodings.values(), key=_Encoding.width_sort_key)
630
602
  del encodings
631
603
 
632
604
  # Repeatedly pick two best encodings to combine, and combine them.
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: fonttools
3
- Version: 4.55.8
3
+ Version: 4.57.0
4
4
  Summary: Tools to manipulate font files
5
5
  Home-page: http://github.com/fonttools/fonttools
6
6
  Author: Just van Rossum
@@ -80,6 +80,7 @@ Dynamic: description
80
80
  Dynamic: description-content-type
81
81
  Dynamic: home-page
82
82
  Dynamic: license
83
+ Dynamic: license-file
83
84
  Dynamic: maintainer
84
85
  Dynamic: maintainer-email
85
86
  Dynamic: platform
@@ -391,6 +392,28 @@ Have fun!
391
392
  Changelog
392
393
  ~~~~~~~~~
393
394
 
395
+ 4.57.0 (released 2025-04-03)
396
+ ----------------------------
397
+
398
+ - [ttLib.__main__] Add `--no-recalc-timestamp` flag (#3771)
399
+ - [ttLib.__main__] Add `-b` (recalcBBoxes=False) flag (#3772)
400
+ - [cmap] Speed up glyphOrder loading from cmap (#3774)
401
+ - [ttLib.__main__] Improvements around the `-t` flag (#3776)
402
+ - [Debg] Fix parsing from XML; add roundtrip tests (#3781)
403
+ - [fealib] Support \*Base.MinMax tables (#3783, #3786)
404
+ - [config] Add OPTIMIZE_FONT_SPEED (#3784)
405
+ - [varLib.hvar] New module to add HVAR table to the font (#3780)
406
+ - [otlLib.optimize] Fix crash when the provided TTF does not contain a `GPOS` (#3794)
407
+
408
+ 4.56.0 (released 2025-02-07)
409
+ ----------------------------
410
+
411
+ - [varStore] Sort the input todo list with the same sorting key used for the opimizer's output (#3767).
412
+ - [otData] Fix DeviceTable's ``DeltaValue`` repeat value which caused a crash after importing from XML and then compiling a GPOS containing Device tables (#3758).
413
+ - [feaLib] Make ``FeatureLibError`` pickleable, so client can e.g. use feaLib to can compile features in parallel with multiprocessing (#3762).
414
+ - [varLib/gvar] Removed workaround for old, long-fixed macOS bug about composite glyphs with all zero deltas (#1381, #1788).
415
+ - [Docs] Updated ttLib documentation, beefed up TTFont and TTGlyphSet explanations (#3720).
416
+
394
417
  4.55.8 (released 2025-01-29)
395
418
  ----------------------------
396
419
 
@@ -1,13 +1,14 @@
1
- fonttools-4.55.8.dist-info/RECORD,,
2
- fonttools-4.55.8.dist-info/LICENSE,sha256=Z4cgj4P2Wcy8IiOy_elS_6b36KymLxqKK_W8UbsbI4M,1072
3
- fonttools-4.55.8.dist-info/WHEEL,sha256=WwXsMctN3PTYNjsKqwUSvPchw2tnl4FqfTsIm7Wfyp8,112
4
- fonttools-4.55.8.dist-info/entry_points.txt,sha256=8kVHddxfFWA44FSD4mBpmC-4uCynQnkoz_9aNJb227Y,147
5
- fonttools-4.55.8.dist-info/top_level.txt,sha256=rRgRylrXzekqWOsrhygzib12pQ7WILf7UGjqEwkIFDM,10
6
- fonttools-4.55.8.dist-info/METADATA,sha256=MiUIvxVITe5f3ZDPJsVR8esUSUHMbTgUqamI9YF5fuk,101219
7
- fontTools/ttx.py,sha256=XCerBn2ySMc5Bn54io4j5U5cW228GFREYvEeuvp0ZfM,16652
1
+ fonttools-4.57.0.dist-info/RECORD,,
2
+ fonttools-4.57.0.dist-info/WHEEL,sha256=hwz3FPsRmI5cnjWCJjTGEtc0sgWhr5U9kmfsunPh6eQ,139
3
+ fonttools-4.57.0.dist-info/entry_points.txt,sha256=8kVHddxfFWA44FSD4mBpmC-4uCynQnkoz_9aNJb227Y,147
4
+ fonttools-4.57.0.dist-info/top_level.txt,sha256=rRgRylrXzekqWOsrhygzib12pQ7WILf7UGjqEwkIFDM,10
5
+ fonttools-4.57.0.dist-info/METADATA,sha256=lqvLLeINsYTJX7jelqex2SkxGaBysfnX87V4AT-_p9k,102535
6
+ fonttools-4.57.0.dist-info/licenses/LICENSE,sha256=Z4cgj4P2Wcy8IiOy_elS_6b36KymLxqKK_W8UbsbI4M,1072
7
+ fonttools-4.57.0.data/data/share/man/man1/ttx.1,sha256=cLbm_pOOj1C76T2QXvDxzwDj9gk-GTd5RztvTMsouFw,5377
8
+ fontTools/ttx.py,sha256=FxuGubujWCGJWSTrJEjoNH--25fVIPy-ZRtYy9H6iTk,17277
8
9
  fontTools/fontBuilder.py,sha256=ntG0lXnhXNcHK-C7bp0nGNQ68OutFA-84TNNpzntTcE,33952
9
10
  fontTools/unicode.py,sha256=ZZ7OMmWvIyV1IL1k6ioTzaRAh3tUvm6gvK7QgFbOIHY,1237
10
- fontTools/__init__.py,sha256=CuZHJCf7O2-m_LL1L1feXyFbleKXAuCfO3aRPXp4qsE,183
11
+ fontTools/__init__.py,sha256=T6Ml6H9-1VxuIVSMFDaDfwROmdl2-KslvDAmyvrgNEU,183
11
12
  fontTools/tfmLib.py,sha256=UMbkM73JXRJVS9t2B-BJc13rSjImaWBuzCoehLwHFhs,14270
12
13
  fontTools/afmLib.py,sha256=1MagIItOzRV4vV5kKPxeDZbPJsfxLB3wdHLFkQvl0uk,13164
13
14
  fontTools/agl.py,sha256=05bm8Uq45uVWW8nPbP6xbNgmFyxQr8sWhYAiP0VSjnI,112975
@@ -18,11 +19,11 @@ fontTools/encodings/__init__.py,sha256=DJBWmoX_Haau7qlgmvWyfbhSzrX2qL636Rns7CG01
18
19
  fontTools/encodings/MacRoman.py,sha256=4vEooUDm2gLCG8KIIDhRxm5-A64w7XrhP9cjDRr2Eo0,3576
19
20
  fontTools/encodings/StandardEncoding.py,sha256=Eo3AGE8FE_p-IVYYuV097KouSsF3UrXoRRN0XyvYbrs,3581
20
21
  fontTools/qu2cu/benchmark.py,sha256=GMcr_4r7L6K9SmJ13itt-_XKhnKqSVUDPlXUG6IZmmM,1400
21
- fontTools/qu2cu/qu2cu.cpython-39-darwin.so,sha256=yTLxqNmkoiLgy7pFItPwXCGjV_HeyA23Q8FpXmFZO74,344864
22
+ fontTools/qu2cu/qu2cu.cpython-39-darwin.so,sha256=cPx9TvzJcUO4N2gcNfhrBQe1hC7OG5qyYMumlAjIFLw,344864
22
23
  fontTools/qu2cu/__init__.py,sha256=Jfm1JljXbt91w4gyvZn6jzEmVnhRx50sh2fDongrOsE,618
23
24
  fontTools/qu2cu/qu2cu.py,sha256=IYtpkwHdfKOXJr65Y_pJ9Lrt_MgJaISAKGMAs5ilFSM,12288
24
25
  fontTools/qu2cu/cli.py,sha256=U2rooYnVVEalGRAWGFHk-Kp6Okys8wtzdaWLjw1bngY,3714
25
- fontTools/qu2cu/qu2cu.c,sha256=D7PGICR2s0JVhpLKrsS8siKXR_MAiCMIQErp-54RcLU,654934
26
+ fontTools/qu2cu/qu2cu.c,sha256=dtibM8LKhnpvrzaMmmlQdjtIH1qYlZuZpKDC6X44NMM,655012
26
27
  fontTools/qu2cu/__main__.py,sha256=9FWf6SIZaRaC8SiL0LhjAWC2yIdY9N_9wlRko8m1l2Q,93
27
28
  fontTools/misc/arrayTools.py,sha256=jZk__GE-K9VViZE_H-LPPj0smWbKng-yfPE8BfGp8HI,11483
28
29
  fontTools/misc/cython.py,sha256=eyLcL2Bw-SSToYro8f44dkkYRlQfiFbhcza0afS-qHE,682
@@ -43,18 +44,18 @@ fontTools/misc/py23.py,sha256=aPVCEUz_deggwLBCeTSsccX6QgJavZqvdVtuhpzrPvA,2238
43
44
  fontTools/misc/__init__.py,sha256=DJBWmoX_Haau7qlgmvWyfbhSzrX2qL636Rns7CG01pk,75
44
45
  fontTools/misc/macRes.py,sha256=GT_pnfPw2NCvvOF86nHLAnOtZ6SMHqEuLntaplXzvHM,8579
45
46
  fontTools/misc/encodingTools.py,sha256=hCv5PFfnXQJVCZA8Wyn1vr3vzLBbUuEPtGk5CzWM9RY,2073
46
- fontTools/misc/testTools.py,sha256=eLKDK01zFCt2McwEl8wB5S4v1NoT6WCixhD-mElMZDs,6933
47
+ fontTools/misc/testTools.py,sha256=3vj_KllUQVEiVFbS0SzTmeuKv44-L-disI1dZ4XhOfw,7052
47
48
  fontTools/misc/lazyTools.py,sha256=BC6MmF-OzJ3GrBD8TYDZ-VCSN4UOx0pN0r3oF4GSoiw,1020
48
49
  fontTools/misc/loggingTools.py,sha256=2uXks8fEnBjdgJEcxMLvD77-lbOPto3neJ86bMqV_qM,19898
49
50
  fontTools/misc/textTools.py,sha256=pbhr6LVhm3J-0Z4saYnJfxBDzyoiw4BR9pAgwypiOw8,3377
50
51
  fontTools/misc/visitor.py,sha256=S3I_OCavPhkwGQpwIKV9XjNCaWUcafo7HQCyxDI0nQg,5314
51
52
  fontTools/misc/macCreatorType.py,sha256=Je9jtqUr7EPbpH3QxlVl3pizoQ-1AOPMBIctHIMTM3k,1593
52
53
  fontTools/misc/psCharStrings.py,sha256=Tb5-k_5krP0eu7qD054iGxE4Zybk9oB4jdiKzcsV0rw,43036
53
- fontTools/misc/bezierTools.cpython-39-darwin.so,sha256=Qd5OL0Xz20a0jJgG7nY0AS2XK2kFqQpOiUF4CvBzmhI,1060648
54
+ fontTools/misc/bezierTools.cpython-39-darwin.so,sha256=MLQkNKvotikuHtQSV0nnBLKmA4k-kl7QDxuVeewn5eM,1060648
54
55
  fontTools/misc/transform.py,sha256=OR8dPsAw87z77gkZQMq00iUkDWLIxYv-12XiKH1-erk,15798
55
56
  fontTools/misc/etree.py,sha256=EPldipUNNMvbPimNX7qOUwKkbpJMY4uyElhe-wqKWkM,17079
56
57
  fontTools/misc/xmlReader.py,sha256=igut4_d13RT4WarliqVvuuPybO1uSXVeoBOeW4j0_e4,6580
57
- fontTools/misc/bezierTools.c,sha256=tIJLZkz3M1Lsc_dg1ApLWmdOezdsNt2tXpuk3c3Dclo,1814052
58
+ fontTools/misc/bezierTools.c,sha256=MeSNF8AM-Vor0K-_S-KNoRXsZRqjv6tVMmEb05bNDVo,1814130
58
59
  fontTools/misc/dictTools.py,sha256=VxjarsGJuk_wa3z29FSCtKZNCFfXtMBiNEu0RPAlpDk,2417
59
60
  fontTools/misc/bezierTools.py,sha256=OmR3pzCGExNvZyTPrByH7gQHpAJsYOl1cmvfYQIVfQA,45038
60
61
  fontTools/misc/eexec.py,sha256=GNn2OCRvO1HbbIeDPxk9i0glO7cux_AQaoVMXhBR8y8,3331
@@ -63,9 +64,9 @@ fontTools/misc/intTools.py,sha256=l6pjk4UYlXcyLtfC0DdOC5RL6UJ8ihRR0zRiYow5xA8,58
63
64
  fontTools/misc/iterTools.py,sha256=17H6LPZszp32bTKoNorp6uZF1PKj47BAbe5QG8irUjo,390
64
65
  fontTools/misc/plistlib/__init__.py,sha256=1HfhHPt3As6u2eRSlFfl6XdnXv_ypQImeQdWIw6wK7Y,21113
65
66
  fontTools/misc/plistlib/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
66
- fontTools/cu2qu/cu2qu.cpython-39-darwin.so,sha256=F-Bwl4tfWkI7ZA4qFz7ZED9s7Eebvpo-1nOAvHila9c,307136
67
+ fontTools/cu2qu/cu2qu.cpython-39-darwin.so,sha256=OcaHeiT1BH5TiTlcwLu8F-GiWJud63rU1J6-iCjuHVM,307136
67
68
  fontTools/cu2qu/benchmark.py,sha256=wasPJmf8q9k9UHjpHChC3WQAGbBAyHN9PvJzXvWC0Fw,1296
68
- fontTools/cu2qu/cu2qu.c,sha256=zvMRDcmpgT7WY6HSX9N97fVaSdEA9LZJYBKfE40hoK0,589430
69
+ fontTools/cu2qu/cu2qu.c,sha256=YHYQSuJXwNOXIt5Gm487fhKly8gBQS6wggR27iBf85I,589508
69
70
  fontTools/cu2qu/__init__.py,sha256=Cuc7Uglb0nSgaraTxXY5J8bReznH5wApW0uakN7MycY,618
70
71
  fontTools/cu2qu/ufo.py,sha256=qZR70uWdCia19Ff8GLn5NeItscvvn69DegjDZVF4eNI,11794
71
72
  fontTools/cu2qu/cli.py,sha256=MbAQnOpZwrUFe_tjAP3Tgf6uLdOgHlONUcPNeTXwH0Y,6076
@@ -92,7 +93,7 @@ fontTools/merge/__init__.py,sha256=-l65-mbTwSh0gjarnojIfsAX-ZkMtdz3vGTjtYHQ2ws,8
92
93
  fontTools/merge/tables.py,sha256=uBD1-XqOCDzFxp0D7ZDvrMRdd8R7eAm58WtYKhz-m5w,10640
93
94
  fontTools/merge/__main__.py,sha256=hDx3gfbUBO83AJKumSEhiV-xqNTJNNgK2uFjazOGTmw,94
94
95
  fontTools/merge/base.py,sha256=l0G1Px98E9ZdVuFLMUBKWdtr7Jb8JX8vxcjeaDUUnzY,2389
95
- fontTools/config/__init__.py,sha256=Ti5jpozjMqp5qhnrmwNcWI6b9uvHzhZlbWXHTqVZlGI,2643
96
+ fontTools/config/__init__.py,sha256=JICOHIz06KuHCiBmrxj-ga19P6ZTuLXh0lHmPh-Ra1w,3154
96
97
  fontTools/svgLib/__init__.py,sha256=IGCLwSbU8jLhq6HI2vSdPQgNs6zDUi5774TgX5MCXPY,75
97
98
  fontTools/svgLib/path/shapes.py,sha256=xvBUIckKyT9JLy7q_ZP50r6TjvZANyHdZP7wFDzErcI,5322
98
99
  fontTools/svgLib/path/__init__.py,sha256=C82fh7xH6ZHsSFVnV848-xeDezpokx1EwTmayJCouFU,1996
@@ -100,24 +101,25 @@ fontTools/svgLib/path/parser.py,sha256=8T6okMstvgM9ufb2zBcwSzsuuoYbqfnUjNYgb6kjz
100
101
  fontTools/svgLib/path/arc.py,sha256=-f5Ym6q4tDWQ76sMNSTUTWgL_7AfgXojvBhtBS7bWwQ,5812
101
102
  fontTools/varLib/interpolatableTestContourOrder.py,sha256=mHJ9Ry7Rm7H3zHDwEUQEtEIDseiUzOxjg4MveW_FSiU,3021
102
103
  fontTools/varLib/iup.py,sha256=mKq_GRWuUg4yTmw2V32nu0v2r-SzzN7xS7rIbV0mYuc,14984
103
- fontTools/varLib/iup.c,sha256=XPTDiH4UuevR_-kxGQ2hY4DyKU9IWHe7fBIsm_TdyRE,776364
104
+ fontTools/varLib/iup.c,sha256=l8lTEQktozqyDux9ie-mRPNLUzhU3z5GIEEhpv7kUG4,776442
104
105
  fontTools/varLib/plot.py,sha256=NoSZkJ5ndxNcDvJIvd5pQ9_jX6X1oM1K2G_tR4sdPVs,7494
105
106
  fontTools/varLib/cff.py,sha256=EVgaQcoROIrYQsRuftnxFuGGldEPYbrIh5yBckylJC4,22901
106
107
  fontTools/varLib/models.py,sha256=sj_ENljh_qcMbfYzRIOlRgHq6tFOmL02Wv6WO8uofis,22398
107
108
  fontTools/varLib/avar.py,sha256=Ye_u0HHznaPQaTzufNFKDj_v9o_LxOKJoa_eTK1D1F0,9647
108
- fontTools/varLib/__init__.py,sha256=RGQ1bNPr9UcGeJ3mSAwctZbJJ-avZL1brjeAukRljEA,53983
109
+ fontTools/varLib/__init__.py,sha256=EOA9Tl3qOd72YtvmYBhE7H0MdcA2Oaxg7ZpPDeDnbmc,53619
109
110
  fontTools/varLib/mutator.py,sha256=YJkKFFWjwpYZ1MrC7UZYJ1BuYTGiwgi7jHnpqNpKfKg,19278
110
111
  fontTools/varLib/interpolatablePlot.py,sha256=w393P6mGLRhYkIjSxMww3qyoYxAUZzCXlmPBbI_84C0,44375
111
112
  fontTools/varLib/builder.py,sha256=mSKOCcnnw-WzmZs15FayoqCDh77Ts7o9Tre9psh8CUc,6609
112
113
  fontTools/varLib/stat.py,sha256=XuNKKZxGlBrl4OGFDAwVXhpBwJi23U3BdHmNTKoJnvE,4811
114
+ fontTools/varLib/hvar.py,sha256=4W5t3s7GOBN07x9KNDmA_4NGXxVEEahzkn3cWJZ4oGw,3693
113
115
  fontTools/varLib/interpolatableHelpers.py,sha256=lXd7kwfIVl-4opd-vxCDhf48RnJ7IQKv_uuFQM_6vaU,11496
114
116
  fontTools/varLib/interpolatableTestStartingPoint.py,sha256=K6OYKBspim6BXc91pfLTbGLyi5XZukfMuBc6hRpENG8,4296
115
- fontTools/varLib/varStore.py,sha256=RrBoEmNWCcsaL7CFZnzrcl26URVekUqTN4qoOy81eVQ,25160
117
+ fontTools/varLib/varStore.py,sha256=2QA9SDI6jQyQ_zq82OOwa3FBkfl-ksaSo1KGmVFpa9Q,24069
116
118
  fontTools/varLib/interpolatable.py,sha256=Bhlq_LhEZ-sXfLNY8aFEChFrsKuT2kzmnuMfG5qi0v4,45221
117
119
  fontTools/varLib/avarPlanner.py,sha256=uLMGsL6cBbEMq5YItwABG_vXlXV3bxquM93WGDJ1brA,27358
118
120
  fontTools/varLib/mvar.py,sha256=LTV77vH_3Ecg_qKBO5xQzjLOlJir_ppEr7mPVZRgad8,2449
119
121
  fontTools/varLib/errors.py,sha256=dMo8eGj76I7H4hrBEiNbYrGs2J1K1SwdsUyTHpkVOrQ,6934
120
- fontTools/varLib/iup.cpython-39-darwin.so,sha256=h5-zavrnpNyfz4I5jIbvTacg7ZwWC4r-TzRds9Y3ybU,396192
122
+ fontTools/varLib/iup.cpython-39-darwin.so,sha256=aH4YCi0NncE-voKJeisA9Q4xbnNrjN_JXR78b-qJ1E8,396192
121
123
  fontTools/varLib/__main__.py,sha256=wbdYC5bPjWCxA0I4SKcLO88gl-UMtsYS8MxdW9ySTkY,95
122
124
  fontTools/varLib/featureVars.py,sha256=BCOBGjGUv2Rw_z0rlVi1ZYkTDcCMh0LyAUzDVJ2PYm4,25448
123
125
  fontTools/varLib/interpolate_layout.py,sha256=22VjGZuV2YiAe2MpdTf0xPVz1x2G84bcOL0vOeBpGQM,3689
@@ -143,7 +145,7 @@ fontTools/pens/teePen.py,sha256=P1ARJOCMJ6MxK-PB1yZ-ips3CUfnadWYnQ_do6VIasQ,1290
143
145
  fontTools/pens/basePen.py,sha256=eIGSKrKm6w4LLHuG6XJoQZ3eObtoKV5P6aF4gT4sk7U,17073
144
146
  fontTools/pens/pointInsidePen.py,sha256=noEUvBQIeAheDMJwzvvfnEiKhmwbS1i0RQE9jik6Gl4,6355
145
147
  fontTools/pens/cu2quPen.py,sha256=gMUwFUsm_-WzBlDjTMQiNnEuI2heomGeOJBX81zYXPo,13007
146
- fontTools/pens/momentsPen.c,sha256=ObZVy0eAslCcXxpf9enZD1RtKpdikXt26VetwzqTyB0,530416
148
+ fontTools/pens/momentsPen.c,sha256=135-OY74GAouUpVnmK5zEmNjSc2-fwEHwpAIUy8HpYU,530468
147
149
  fontTools/pens/perimeterPen.py,sha256=lr6NzrIWxi4TXBJPbcJsKzqABWfQeil2Bgm9BgUD3N4,2153
148
150
  fontTools/pens/__init__.py,sha256=DJBWmoX_Haau7qlgmvWyfbhSzrX2qL636Rns7CG01pk,75
149
151
  fontTools/pens/ttGlyphPen.py,sha256=yLtB-E5pTQR59OKVYySttWBu1xC2vR8ezSaRhIMtVwg,11870
@@ -154,7 +156,7 @@ fontTools/pens/boundsPen.py,sha256=wE3owOQA8DfhH-zBGC3lJvnVwp-oyIt0KZrEqXbmS9I,3
154
156
  fontTools/pens/recordingPen.py,sha256=VgFZ4NMhnZt1qSTzFEU0cma-gw3kBe47bfSxPYH73rs,12489
155
157
  fontTools/pens/momentsPen.py,sha256=kjLVXhGe55Abl__Yr1gob0bl0dHe7fPSwyr7TRJnbug,25658
156
158
  fontTools/pens/roundingPen.py,sha256=Q4vvG0Esq_sLNODU0TITU4F3wcXcKWo4BA7DWdDaVcM,4649
157
- fontTools/pens/momentsPen.cpython-39-darwin.so,sha256=-hCY48cfsQIcXOTHwE2r6CvDFBS7Plas2z0BCgRffAk,272904
159
+ fontTools/pens/momentsPen.cpython-39-darwin.so,sha256=cPp4rJsBslUuhuRs5-sBnl3tBsc8QsSPbWEwpCBdYrs,272904
158
160
  fontTools/pens/freetypePen.py,sha256=HD-gXJSbgImJdBc8sIBk0HWBdjv3WKFofs6PgCCsGOY,19908
159
161
  fontTools/pens/explicitClosingLinePen.py,sha256=kKKtdZiwaf8Cj4_ytrIDdGB2GMpPPDXm5Nwbw5WDgwU,3219
160
162
  fontTools/pens/reverseContourPen.py,sha256=oz64ZRhLAvT7DYMAwGKoLzZXQK8l81jRiYnTZkW6a-Y,4022
@@ -166,7 +168,7 @@ fontTools/otlLib/__init__.py,sha256=D2leUW-3gsUTOFcJYGC18edBYjIJ804ut4qitJYWsaQ,
166
168
  fontTools/otlLib/builder.py,sha256=HvLtyIwTK8k-i6OzwZu16N-x_oFuXUNTjFfITEH0Hco,120304
167
169
  fontTools/otlLib/maxContextCalc.py,sha256=3es4Kt84TaZ49sA2ev1zrlwPJikJCAECx5KavwhyB-I,3175
168
170
  fontTools/otlLib/optimize/__init__.py,sha256=UUQRpNkHU2RczCRt-Gz7sEiYE9AQq9BHLXZEOyvsnX4,1530
169
- fontTools/otlLib/optimize/gpos.py,sha256=NTDLwjo90L4GiqdIdWkBEycQ7VcT7cOxxype73mFz8c,18474
171
+ fontTools/otlLib/optimize/gpos.py,sha256=tbIfKaPalP3FwNBxOBcNvSRUXLbysMmPAUvbeqofhXs,18595
170
172
  fontTools/otlLib/optimize/__main__.py,sha256=BvP472kA9KxBb9RMyyehPNevAfpmgW9MfdazkUiAO3M,104
171
173
  fontTools/ufoLib/pointPen.py,sha256=CuREcm3IYteZNBDAd_ZRAV4XqBsy0s07jdWc4en9r-8,244
172
174
  fontTools/ufoLib/kerning.py,sha256=0jPFd7mti884yvPjvYcU8lAWDwvVsNOObeQvVmPRJ3k,2973
@@ -189,31 +191,31 @@ fontTools/designspaceLib/types.py,sha256=ofK65qXNADqcpl7zI72Pa5s07-cm7G41iEmLVV4
189
191
  fontTools/designspaceLib/split.py,sha256=FB1NuvhUO453UXveQZi9oyrW_caoCPM3RADp1rYWkDs,19239
190
192
  fontTools/designspaceLib/statNames.py,sha256=lDqFxZAKSbpMuLsgbK6XtyHA5lqLyAK0t561wsSWmaM,9069
191
193
  fontTools/designspaceLib/__main__.py,sha256=xhtYXo1T1tsykhQDD0tcconSNYgWL5hoTBORpVDUYrc,103
192
- fontTools/feaLib/error.py,sha256=Tq2dZUlCOyLfjTr3qibsT2g9t-S_JEf6bKgyNX55oCE,643
194
+ fontTools/feaLib/error.py,sha256=Bz_5tNcNVcY7_nrAmFlQNhQldtqZWd8WUGQ2E3PWhZo,648
193
195
  fontTools/feaLib/variableScalar.py,sha256=Xu8tpDlQbfIfjnKnYDEf43EqVdyIJUy8_1ROVPg9_mg,4069
194
- fontTools/feaLib/lexer.c,sha256=vQ4myMvJqvp8rdY6YeEQJHM2Crw_eFajkHWefik884Q,750756
196
+ fontTools/feaLib/lexer.c,sha256=0tOOWhBXhaJm6SxX-Q3ZEPPZru2z4fGywn99Ek6UauY,750808
195
197
  fontTools/feaLib/__init__.py,sha256=jlIru2ghxvb1HhC5Je2BCXjFJmFQlYKpruorPoz3BvQ,213
196
198
  fontTools/feaLib/lookupDebugInfo.py,sha256=gVRr5-APWfT_a5-25hRuawSVX8fEvXVsOSLWkH91T2w,304
197
- fontTools/feaLib/builder.py,sha256=y7t8_q0-PiPoLpXZCfThx1SmvF-ZpDDyVe8605FzaL4,71036
198
- fontTools/feaLib/parser.py,sha256=wbfG_-rqrn2RWMRQMlR3-uaiM9k4_mzCVF-wPLr00rQ,98466
199
+ fontTools/feaLib/builder.py,sha256=1rLV3zwA3JFXpZ452DXM8Y8E6NxAvcszzmOwFNvomqA,72101
200
+ fontTools/feaLib/parser.py,sha256=GRbPbMP2z9zOkScN-Zw7TCuPQ7UXT9UhZYENp4eaX1c,101085
199
201
  fontTools/feaLib/location.py,sha256=JXzHqGV56EHdcq823AwA5oaK05hf_1ySWpScbo3zGC0,234
200
- fontTools/feaLib/lexer.cpython-39-darwin.so,sha256=W4gQQPj2jVqYwpkn8VTnP3dye5H0qlwWyFY4nImRv6Q,395184
202
+ fontTools/feaLib/lexer.cpython-39-darwin.so,sha256=NOd80aqf4Bj38vO98rLc2zT0IZZG36vBTDAaBpY9cE0,395184
201
203
  fontTools/feaLib/lexer.py,sha256=emyMPmRoqNZkzxnJyI6JRCCtXrbCOFofwa9O6ABGLiw,11121
202
- fontTools/feaLib/ast.py,sha256=3DU5NKXesyNCVu5wcebGlnvwdMf0_NKrPgOvS0FrWSg,73800
204
+ fontTools/feaLib/ast.py,sha256=koL7JLGrNWbABNLq4QrkKBFETKNEjSSC7dirZTFemqU,74050
203
205
  fontTools/feaLib/__main__.py,sha256=Df2PA6LXwna98lSXiL7R4as_ZEdWCIk3egSM5w7GpvM,2240
204
206
  fontTools/ttLib/sfnt.py,sha256=rkznKfteU_Rn9P65WSjFaiwQgpEAoh-TrQpvkQhdIlo,22832
205
207
  fontTools/ttLib/macUtils.py,sha256=lj3oeFpyjV7ko_JqnluneITmAtlc119J-vwTTg2s73A,1737
206
208
  fontTools/ttLib/standardGlyphOrder.py,sha256=7AY_fVWdtwZ4iv5uWdyKAUcbEQiSDt1lN4sqx9xXwE0,5785
207
209
  fontTools/ttLib/ttCollection.py,sha256=aRph2MkBK3kd9-JCLqhJ1EN9pffN_lVX6WWmOTTewc8,3963
208
- fontTools/ttLib/ttGlyphSet.py,sha256=oq4u8OpTsKxR9ThOomNBJhOA1B9NxYK__Shkx6NIkHo,17853
209
- fontTools/ttLib/__init__.py,sha256=fjOFcwbRed9b_giTgJ7FLsqeJC8ndnx327WfJztW-Tc,553
210
+ fontTools/ttLib/ttGlyphSet.py,sha256=cUBhMGa5hszeVqOm2KpOdeJh-LsiqE7RNdyIUPZ2vO8,17476
211
+ fontTools/ttLib/__init__.py,sha256=1k7qp9z04gA3m6GvxDaINjqrKbzOkdTA_4RnqW_-LrA,661
210
212
  fontTools/ttLib/removeOverlaps.py,sha256=YBtj1PX-d2jMgCiWGuI6ibghWApUWqH2trJGXNxrbjQ,12612
211
213
  fontTools/ttLib/scaleUpem.py,sha256=U_-NGkwfS9GRIackdEXjGYZ-wSomcUPXQahDneLeArI,14618
212
214
  fontTools/ttLib/reorderGlyphs.py,sha256=8ClsX9-tnPfuiD8kHY4jPliGJ-31-JdybA4s1UNWx4w,10316
213
- fontTools/ttLib/ttFont.py,sha256=UXPMV4c5pctOWNygu2F6_kR6FFE9zWLLOGFjh9282WU,40976
215
+ fontTools/ttLib/ttFont.py,sha256=rTGWNOiTW5mnFFN1HrYIi1HzihBXyJOvhhpsxhYwKnA,40965
214
216
  fontTools/ttLib/ttVisitor.py,sha256=_tah4C42Tv6Pm9QeLNQwwVCxqI4VNEAqYCbmThp6cvY,1025
215
217
  fontTools/ttLib/woff2.py,sha256=Ryw4WVwUFMtdEo9FcIejP1OTV92Z4B9y5Wq7nWDW3lE,61058
216
- fontTools/ttLib/__main__.py,sha256=3yxwadpQ5YTM27RXqG3sFE3EaOSFLQVHaUUH9P0qrSw,3443
218
+ fontTools/ttLib/__main__.py,sha256=lHMPWsnzjKPuMFavf6i1gpk9KexiAk4qzgDd50Mbby0,4733
217
219
  fontTools/ttLib/tables/_s_b_i_x.py,sha256=tkkKbNKNYkUhZJuN0kl7q37x5KK5OovB06y28obPV6A,4865
218
220
  fontTools/ttLib/tables/G_M_A_P_.py,sha256=fvIQumokOCLa8DFeq_xi069F9RROsXSVmDvWtxgyacQ,4720
219
221
  fontTools/ttLib/tables/F_F_T_M_.py,sha256=_450vdbEH7Y-0_rOwb3Q0hg-Qq2W8C_sHljy7rZtqqM,1683
@@ -233,13 +235,13 @@ fontTools/ttLib/tables/S_I_N_G_.py,sha256=CFDy8R2fDeYn7ocfrZr7Ui7U9D0h4G55CdPfY5
233
235
  fontTools/ttLib/tables/V_V_A_R_.py,sha256=Cstw6tc_U4-EmTriRItBSpvTJODAjMFQjfyTaxLzsbI,319
234
236
  fontTools/ttLib/tables/T_S_I__5.py,sha256=MMbUY3My4V5YTagNcSCu0q9wKzskG9nkUhOR0dp-GAI,1586
235
237
  fontTools/ttLib/tables/grUtils.py,sha256=hcOJ5oJPOd2uJWnWA7qwR7AfL37YZ5zUT7g8o5BBV80,2270
236
- fontTools/ttLib/tables/otTables.py,sha256=aCWou5-h4uhH2nPM2jwyD6OfoPhtnsOXm_ZefAawp4I,96937
238
+ fontTools/ttLib/tables/otTables.py,sha256=IZQY8Scf8JFsUD28LY1csC8bvFbfY-aURH6YaQ3Ao24,97128
237
239
  fontTools/ttLib/tables/_c_v_a_r.py,sha256=35ayk2kX1pcLGwyx0y4I1l-r7LHgdKv0ulVx8oBPteI,3527
238
- fontTools/ttLib/tables/otConverters.py,sha256=JI9b387HZwbPgf_0J2AO-nJA_wr6VHPJE1lC-H_An8E,74073
240
+ fontTools/ttLib/tables/otConverters.py,sha256=ihE_WMSKAKSaBbMvnFYDj2eMxf7PvRMMa8zGwfoYuYc,74202
239
241
  fontTools/ttLib/tables/_p_o_s_t.py,sha256=bTywskWvLwUPvSAa1oyWdUEq6upPziMDGvYT59ga2ac,11610
240
242
  fontTools/ttLib/tables/_m_e_t_a.py,sha256=A0CZPEAVxYrpytjXUGQJCTddwG8KrvUVbtBe3A1MqgI,3913
241
243
  fontTools/ttLib/tables/C_B_D_T_.py,sha256=5LNdc8FMir1kC5fvp5iHwWfeuE-RuqdxAArFXaqPjQ0,3646
242
- fontTools/ttLib/tables/_c_m_a_p.py,sha256=ksU1GjkGBcmasD1_CxM2WVZ0V4wNjoHoA0p_n7QCN20,61721
244
+ fontTools/ttLib/tables/_c_m_a_p.py,sha256=0P0z1lYtQG4OgV_Bo3n1ciq1XKD2ANdfoOV5cSzN4Ig,62208
243
245
  fontTools/ttLib/tables/_p_r_e_p.py,sha256=CcKr4HrswkupLmbJdrJLTM-z9XgLefQyv8467j9V0zs,427
244
246
  fontTools/ttLib/tables/C_P_A_L_.py,sha256=odFjqM4GnjXyQYGEC-e0Gvqms1jQ5zHHG3SDg7y-BI0,11942
245
247
  fontTools/ttLib/tables/S__i_l_l.py,sha256=Vjtn7SI83vaLGIuQf2e-jhZSFOXb9vXB4jwqznjqnMc,3224
@@ -248,15 +250,15 @@ fontTools/ttLib/tables/__init__.py,sha256=iZ5iQZNhlH9M12ovQDu8EcnFwCe1ShoTvxEh22
248
250
  fontTools/ttLib/tables/_l_c_a_r.py,sha256=8W6xFOj-sm003MCXX4bIHxs9ntfVvT0FXYllPxa3z4I,390
249
251
  fontTools/ttLib/tables/table_API_readme.txt,sha256=eZlRTLUkLzc_9Ot3pdfhyMb3ahU0_Iipx0vSbzOVGy8,2748
250
252
  fontTools/ttLib/tables/T_S_I_J_.py,sha256=x8Tlvi6aTxoQcI12UL7muoWF1Q61iBDseAS1mRdOYrg,341
251
- fontTools/ttLib/tables/D__e_b_g.py,sha256=vROIV3UTxbK9eN3rmHOu1ARwBiOXL6K5ihmq0QMToJQ,443
253
+ fontTools/ttLib/tables/D__e_b_g.py,sha256=KDnfkNOUnm3F13wD_j3YNBOvYadZ40Gf_0170hFkJp0,1134
252
254
  fontTools/ttLib/tables/F__e_a_t.py,sha256=ct79Gf__5ALlqfSBn6wvw6fazb31Od71R6vIp6o9XF4,5483
253
255
  fontTools/ttLib/tables/C_O_L_R_.py,sha256=SHwFVNVmoUQR2e87KuTSe-J9LfeegS4f2hEpee29_2o,5993
254
256
  fontTools/ttLib/tables/G__l_o_c.py,sha256=5DsxGzaG7HyJVvLlKQeff1lXt-XPWaHNNaf-EYwsKh4,2685
255
- fontTools/ttLib/tables/otTraverse.py,sha256=oTr7nA7u7kEltLAhl4Kfl1RPD8O2_bKaoXa5l0hkRVA,5497
257
+ fontTools/ttLib/tables/otTraverse.py,sha256=HznEVAlVf_8eyqjsO2edgELtMlXnjnUqccK3PytvVUE,5518
256
258
  fontTools/ttLib/tables/_m_o_r_x.py,sha256=OwamVpIO7REDnFr95HuFPoY_0U6i9zQPb11K1sFTvDY,548
257
259
  fontTools/ttLib/tables/_l_t_a_g.py,sha256=9YpApjI-rZ4e3HeT8Pj-osiHl3uALD9JXg5O7pqk9L0,2552
258
260
  fontTools/ttLib/tables/D_S_I_G_.py,sha256=AgQPM9Cdro1P-ehJjTfsC9mRTTtSc16At0nnpb1XOGI,5517
259
- fontTools/ttLib/tables/_g_l_y_f.py,sha256=R0WuModxptcPfoBTZxvs5xDTnA9olAVf67blh-k-tmM,85631
261
+ fontTools/ttLib/tables/_g_l_y_f.py,sha256=37o4JyVctndRK0n_q4NwyDs4idlH1766a6QuEQs02Pc,85696
260
262
  fontTools/ttLib/tables/T_S_I_S_.py,sha256=tVBnl63vyZUIq93oM6dEjHCXvPn9vt5vvL3jG59b0Lg,341
261
263
  fontTools/ttLib/tables/T_S_I_D_.py,sha256=TsdX-G2xxVQO9sSE1wE_xDRx-gor5YiXTHeUthMwCPY,341
262
264
  fontTools/ttLib/tables/B_A_S_E_.py,sha256=H71A9pJ850mvjbrWHqy8iFI2Dxg7102YRtAkfdCooig,369
@@ -287,7 +289,7 @@ fontTools/ttLib/tables/_o_p_b_d.py,sha256=TNZv_2YTrj4dGzd6wA9Jb-KGZ99un177s5p3Ll
287
289
  fontTools/ttLib/tables/V_A_R_C_.py,sha256=3jFX50J6X-Cc4dwwiztKKsDTRXVHTXlVdQH328UN1-k,289
288
290
  fontTools/ttLib/tables/_h_m_t_x.py,sha256=C_-GIrH8rHEqEQtsGeYTc6XLtLeu6ibRl8AAQxkQng8,6042
289
291
  fontTools/ttLib/tables/_a_n_k_r.py,sha256=MpAzIifmIi_3gx2oP6PC3R2lu36Ewsr2-W1rXjsz2Ug,483
290
- fontTools/ttLib/tables/otData.py,sha256=esZs8p10aaJjioueGZ5plMou2LnzhJeuD-q1AOA-Kek,197260
292
+ fontTools/ttLib/tables/otData.py,sha256=-XXRwdVfP-Wz7oBjMPpku0A0QH9lw_fFGNzZlt9N0mo,197262
291
293
  fontTools/ttLib/tables/G__l_a_t.py,sha256=Xh3IzFgYlvNjrAOn7Ja73DrWrQTJgJxmDFSUKS6yHdM,8645
292
294
  fontTools/ttLib/tables/T_S_I__2.py,sha256=q2rub-d77iWWiBM6awO0-TCl-Xq7kalPobHYC2QEOfc,496
293
295
  fontTools/ttLib/tables/asciiTable.py,sha256=4c69jsAirUnDEpylf9CYBoCKTzwbmfbtUAOrtPnpHjY,637
@@ -302,7 +304,7 @@ fontTools/ttLib/tables/_f_e_a_t.py,sha256=Fi1XnjhkCG0tp43AcvpIaivD-YRFpufo6feGIr
302
304
  fontTools/ttLib/tables/ttProgram.py,sha256=tgtxgd-EnOq-2PUlYEihp-6NHu_7HnE5rxeSAtmXOtU,35888
303
305
  fontTools/ttLib/tables/_c_i_d_g.py,sha256=yt8rVIadpJSDUCoVH4dZetNiy0Azm5ESAxHjB2BX_eA,913
304
306
  fontTools/ttLib/tables/_f_v_a_r.py,sha256=rV33H2BgHUl3Wuydsou1G-Hi4uASBppWaLj3FMmiLjs,8837
305
- fontTools/ttLib/tables/_g_v_a_r.py,sha256=9T8XwBWaWyJINSeDhLR-g9oPiKLXJvlhThpXL0YuSs0,10773
307
+ fontTools/ttLib/tables/_g_v_a_r.py,sha256=Fbm6ECXix65MGJvwIdKdgEJlaLhq_yEgkePdDGdYlQk,10824
306
308
  fontTools/ttLib/tables/M_V_A_R_.py,sha256=67cEuiTw5y5W1Zk98L_S_SmJINIfy_mzWCkyHcujz94,308
307
309
  fontTools/ttLib/tables/_t_r_a_k.py,sha256=rrrPZLELFYA5F8PERoafIS9cb_d_i6xtpAzHEbsFHSw,11379
308
310
  fontTools/ttLib/tables/_m_o_r_t.py,sha256=u35tYqn3cjzKxeCF0FUFeLtaf36mjDDSN08uuk0Kme8,487
@@ -326,4 +328,3 @@ fontTools/colorLib/builder.py,sha256=kmO7OuudQQb3fEOS7aLzgTDVjqS9i2xIQmk9p1uBe8A
326
328
  fontTools/colorLib/geometry.py,sha256=3ScySrR2YDJa7d5K5_xM5Yt1-3NCV-ry8ikYA5VwVbI,5518
327
329
  fontTools/colorLib/errors.py,sha256=CsaviiRxxrpgVX4blm7KCyK8553ljwL44xkJOeC5U7U,41
328
330
  fontTools/colorLib/unbuilder.py,sha256=iW-E5I39WsV82K3NgCO4Cjzwm1WqzGrtypHt8epwbHM,2142
329
- fonttools-4.55.8.data/data/share/man/man1/ttx.1,sha256=cLbm_pOOj1C76T2QXvDxzwDj9gk-GTd5RztvTMsouFw,5377
@@ -1,5 +1,6 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (75.8.0)
2
+ Generator: setuptools (78.1.0)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp39-cp39-macosx_10_9_universal2
5
+ Generator: delocate 0.13.0
5
6