Merge pull request #2226 from simoncozens/fix-merger-errors

(Even) better merger errors
This commit is contained in:
Simon Cozens 2021-03-19 11:28:18 +00:00 committed by GitHub
commit 0aeb7f4895
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 4005 additions and 150 deletions

View File

@ -1,22 +1,6 @@
from enum import Enum, auto
import textwrap
class VarLibMergeFailure(Enum):
ShouldBeConstant = "some values were different, but should have been the same"
MismatchedTypes = "data had inconsistent types"
LengthsDiffer = "a list of objects had inconsistent lengths"
KeysDiffer = "a list of objects had different keys"
InconsistentGlyphOrder = "the glyph order was inconsistent between masters"
FoundANone = "one of the values in a list was empty when it shouldn't have been"
NotANone = "one of the values in a list was not empty when it should have been"
UnsupportedFormat = "an OpenType subtable (%s) had a format I didn't expect"
InconsistentFormat = (
"an OpenType subtable (%s) had inconsistent formats between masters"
)
InconsistentExtensions = "the masters use extension lookups in inconsistent ways"
class VarLibError(Exception):
"""Base exception for the varLib module."""
@ -28,47 +12,144 @@ class VarLibValidationError(VarLibError):
class VarLibMergeError(VarLibError):
"""Raised when input data cannot be merged into a variable font."""
def __init__(self, merger, args):
def __init__(self, merger, **kwargs):
self.merger = merger
self.args = args
if not kwargs:
kwargs = {}
if "stack" in kwargs:
self.stack = kwargs["stack"]
del kwargs["stack"]
else:
self.stack = []
self.cause = kwargs
@property
def reason(self):
return self.__doc__
def _master_name(self, ix):
ttf = self.merger.ttfs[ix]
if (
"name" in ttf
and ttf["name"].getDebugName(1)
and ttf["name"].getDebugName(2)
):
return ttf["name"].getDebugName(1) + " " + ttf["name"].getDebugName(2)
elif hasattr(ttf.reader, "file") and hasattr(ttf.reader.file, "name"):
return ttf.reader.file.name
else:
return "master number %i" % ix
@property
def offender(self):
if "expected" in self.cause and "got" in self.cause:
index = [x == self.cause["expected"] for x in self.cause["got"]].index(
False
)
return index, self._master_name(index)
return None, None
@property
def details(self):
if "expected" in self.cause and "got" in self.cause:
offender_index, offender = self.offender
got = self.cause["got"][offender_index]
return f"Expected to see {self.stack[0]}=={self.cause['expected']}, instead saw {got}\n"
return ""
def __str__(self):
cause, stack = self.args[0], self.args[1:]
fontnames = [
ttf["name"].getDebugName(1) + " " + ttf["name"].getDebugName(2)
for ttf in self.merger.ttfs
]
context = "".join(reversed(stack))
details = ""
reason = cause["reason"].value
if reason == VarLibMergeFailure.FoundANone:
offender = [x is None for x in cause["got"]].index(True)
details = (
f"\n\nThe problem is likely to be in {fontnames[offender]}:\n"
f"{stack[0]}=={cause['got']}\n"
)
elif "expected" in cause and "got" in cause:
offender = [x == cause["expected"] for x in cause["got"]].index(False)
got = cause["got"][offender]
details = (
f"\n\nThe problem is likely to be in {fontnames[offender]}:\n"
f"Expected to see {stack[0]}=={cause['expected']}, instead saw {got}\n"
)
if (
reason == VarLibMergeFailure.UnsupportedFormat
or reason == VarLibMergeFailure.InconsistentFormat
):
reason = reason % cause["subtable"]
offender_index, offender = self.offender
location = ""
if offender:
location = f"\n\nThe problem is likely to be in {offender}:\n"
context = "".join(reversed(self.stack))
basic = textwrap.fill(
f"Couldn't merge the fonts, because {reason}. "
f"Couldn't merge the fonts, because {self.reason}. "
f"This happened while performing the following operation: {context}",
width=78,
)
return "\n\n" + basic + details
return "\n\n" + basic + location + self.details
class VarLibCFFDictMergeError(VarLibMergeError):
class ShouldBeConstant(VarLibMergeError):
"""some values were different, but should have been the same"""
@property
def details(self):
if self.stack[0] != ".FeatureCount":
return super().details
offender_index, offender = self.offender
bad_ttf = self.merger.ttfs[offender_index]
good_ttf = self.merger.ttfs[offender_index - 1]
good_features = [
x.FeatureTag
for x in good_ttf[self.stack[-1]].table.FeatureList.FeatureRecord
]
bad_features = [
x.FeatureTag
for x in bad_ttf[self.stack[-1]].table.FeatureList.FeatureRecord
]
return (
"\nIncompatible features between masters.\n"
f"Expected: {', '.join(good_features)}.\n"
f"Got: {', '.join(bad_features)}.\n"
)
class FoundANone(VarLibMergeError):
"""one of the values in a list was empty when it shouldn't have been"""
@property
def offender(self):
cause = self.argv[0]
index = [x is None for x in cause["got"]].index(True)
return index, self._master_name(index)
@property
def details(self):
cause, stack = self.args[0], self.args[1:]
return f"{stack[0]}=={cause['got']}\n"
class MismatchedTypes(VarLibMergeError):
"""data had inconsistent types"""
class LengthsDiffer(VarLibMergeError):
"""a list of objects had inconsistent lengths"""
class KeysDiffer(VarLibMergeError):
"""a list of objects had different keys"""
class InconsistentGlyphOrder(VarLibMergeError):
"""the glyph order was inconsistent between masters"""
class InconsistentExtensions(VarLibMergeError):
"""the masters use extension lookups in inconsistent ways"""
class UnsupportedFormat(VarLibMergeError):
"""an OpenType subtable (%s) had a format I didn't expect"""
@property
def reason(self):
cause, stack = self.args[0], self.args[1:]
return self.__doc__ % cause["subtable"]
class UnsupportedFormat(UnsupportedFormat):
"""an OpenType subtable (%s) had inconsistent formats between masters"""
class VarLibCFFMergeError(VarLibError):
pass
class VarLibCFFDictMergeError(VarLibCFFMergeError):
"""Raised when a CFF PrivateDict cannot be merged."""
def __init__(self, key, value, values):
@ -81,7 +162,7 @@ class VarLibCFFDictMergeError(VarLibMergeError):
self.args = (error_msg,)
class VarLibCFFPointTypeMergeError(VarLibMergeError):
class VarLibCFFPointTypeMergeError(VarLibCFFMergeError):
"""Raised when a CFF glyph cannot be merged because of point type differences."""
def __init__(self, point_type, pt_index, m_index, default_type, glyph_name):
@ -93,7 +174,7 @@ class VarLibCFFPointTypeMergeError(VarLibMergeError):
self.args = (error_msg,)
class VarLibCFFHintTypeMergeError(VarLibMergeError):
class VarLibCFFHintTypeMergeError(VarLibCFFMergeError):
"""Raised when a CFF glyph cannot be merged because of hint type differences."""
def __init__(self, hint_type, cmd_index, m_index, default_type, glyph_name):

View File

@ -14,8 +14,18 @@ from fontTools.varLib.varStore import VarStoreInstancer
from functools import reduce
from fontTools.otlLib.builder import buildSinglePos
from .errors import VarLibMergeError, VarLibMergeFailure
from .errors import (
ShouldBeConstant,
FoundANone,
MismatchedTypes,
LengthsDiffer,
KeysDiffer,
InconsistentGlyphOrder,
InconsistentExtensions,
UnsupportedFormat,
UnsupportedFormat,
VarLibMergeError,
)
class Merger(object):
@ -69,10 +79,9 @@ class Merger(object):
item.ensureDecompiled()
keys = sorted(vars(out).keys())
if not all(keys == sorted(vars(v).keys()) for v in lst):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.KeysDiffer,
"expected": keys,
"got": [sorted(vars(v).keys()) for v in lst]},))
raise KeysDiffer(self, expected=keys,
got=[sorted(vars(v).keys()) for v in lst]
)
mergers = self.mergersFor(out)
defaultMerger = mergers.get('*', self.__class__.mergeThings)
try:
@ -82,29 +91,26 @@ class Merger(object):
values = [getattr(table, key) for table in lst]
mergerFunc = mergers.get(key, defaultMerger)
mergerFunc(self, value, values)
except Exception as e:
e.args = e.args + ('.'+key,)
except VarLibMergeError as e:
e.stack.append('.'+key)
raise
def mergeLists(self, out, lst):
if not allEqualTo(out, lst, len):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.LengthsDiffer,
"expected": len(out),
"got": [len(x) for x in lst]},))
raise LengthsDiffer(self, expected=len(out), got=[len(x) for x in lst])
for i,(value,values) in enumerate(zip(out, zip(*lst))):
try:
self.mergeThings(value, values)
except Exception as e:
e.args = e.args + ('[%d]' % i,)
except VarLibMergeError as e:
e.stack.append('[%d]' % i)
raise
def mergeThings(self, out, lst):
if not allEqualTo(out, lst, type):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.MismatchedTypes,
"expected": type(out),
"got": [type(x) for x in lst]},))
raise MismatchedTypes(self,
expected=type(out).__name__,
got=[type(x).__name__ for x in lst]
)
mergerFunc = self.mergersFor(out).get(None, None)
if mergerFunc is not None:
mergerFunc(self, out, lst)
@ -114,17 +120,18 @@ class Merger(object):
self.mergeLists(out, lst)
else:
if not allEqualTo(out, lst):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.ShouldBeConstant,
"expected": out,
"got": lst},))
raise ShouldBeConstant(self, expected=out, got=lst)
def mergeTables(self, font, master_ttfs, tableTags):
self.ttfs = master_ttfs # For error reporting
for tag in tableTags:
if tag not in font: continue
self.mergeThings(font[tag], [m[tag] if tag in m else None
for m in master_ttfs])
try:
self.ttfs = [m for m in master_ttfs if tag in m]
self.mergeThings(font[tag], [m[tag] if tag in m else None
for m in master_ttfs])
except VarLibMergeError as e:
e.stack.append(tag)
raise
#
# Aligning merger
@ -136,11 +143,7 @@ class AligningMerger(Merger):
def merge(merger, self, lst):
if self is None:
if not allNone(lst):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.NotANone,
"expected": None,
"got": lst
},))
raise NotANone(self, expected=None, got=lst)
return
lst = [l.classDefs for l in lst]
@ -153,11 +156,7 @@ def merge(merger, self, lst):
for k in allKeys:
allValues = nonNone(l.get(k) for l in lst)
if not allEqual(allValues):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.ShouldBeConstant,
"expected": allValues[0],
"got": lst,
}, "."+k))
raise ShouldBeConstant(self, expected=allValues[0], got=lst, stack="."+k)
if not allValues:
self[k] = None
else:
@ -194,9 +193,7 @@ def _merge_GlyphOrders(font, lst, values_lst=None, default=None):
order = sorted(combined, key=sortKey)
# Make sure all input glyphsets were in proper order
if not all(sorted(vs, key=sortKey) == vs for vs in lst):
raise VarLibMergeError(self, ({
"reason" : VarLibMergeFailure.InconsistentGlyphOrder
},))
raise InconsistentGlyphOrder(self)
del combined
paddedValues = None
@ -223,10 +220,7 @@ def _Lookup_SinglePos_get_effective_value(subtables, glyph):
elif self.Format == 2:
return self.Value[self.Coverage.glyphs.index(glyph)]
else:
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.UnsupportedFormat,
"subtable": "single positioning lookup"
},))
raise UnsupportedFormat(self, subtable="single positioning lookup")
return None
def _Lookup_PairPos_get_effective_value_pair(subtables, firstGlyph, secondGlyph):
@ -248,21 +242,14 @@ def _Lookup_PairPos_get_effective_value_pair(subtables, firstGlyph, secondGlyph)
klass2 = self.ClassDef2.classDefs.get(secondGlyph, 0)
return self.Class1Record[klass1].Class2Record[klass2]
else:
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.UnsupportedFormat,
"subtable": "pair positioning lookup"
},))
raise UnsupportedFormat(self, subtable="pair positioning lookup")
return None
@AligningMerger.merger(ot.SinglePos)
def merge(merger, self, lst):
self.ValueFormat = valueFormat = reduce(int.__or__, [l.ValueFormat for l in lst], 0)
if not (len(lst) == 1 or (valueFormat & ~0xF == 0)):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.UnsupportedFormat,
"subtable": "single positioning lookup"
},))
raise UnsupportedFormat(self, subtable="single positioning lookup")
# If all have same coverage table and all are format 1,
coverageGlyphs = self.Coverage.glyphs
@ -548,10 +535,7 @@ def merge(merger, self, lst):
elif self.Format == 2:
_PairPosFormat2_merge(self, lst, merger)
else:
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.UnsupportedFormat,
"subtable": "pair positioning lookup"
},))
raise UnsupportedFormat(self, subtable="pair positioning lookup")
del merger.valueFormat1, merger.valueFormat2
@ -617,8 +601,7 @@ def _MarkBasePosFormat1_merge(self, lst, merger, Mark='Mark', Base='Base'):
# input masters.
if not allEqual(allClasses):
raise VarLibMergeError(self, allClasses)
if not allClasses:
raise allClasses(self, allClasses)
rec = None
else:
rec = ot.MarkRecord()
@ -667,35 +650,28 @@ def _MarkBasePosFormat1_merge(self, lst, merger, Mark='Mark', Base='Base'):
@AligningMerger.merger(ot.MarkBasePos)
def merge(merger, self, lst):
if not allEqualTo(self.Format, (l.Format for l in lst)):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.InconsistentFormats,
"subtable": "mark-to-base positioning lookup",
"expected": self.Format,
"got": [l.Format for l in lst]},))
raise InconsistentFormats(self,
subtable="mark-to-base positioning lookup",
expected=self.Format,
got=[l.Format for l in lst]
)
if self.Format == 1:
_MarkBasePosFormat1_merge(self, lst, merger)
else:
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.UnsupportedFormat,
"subtable": "mark-to-base positioning lookup",
}))
raise UnsupportedFormat(self, subtable="mark-to-base positioning lookup")
@AligningMerger.merger(ot.MarkMarkPos)
def merge(merger, self, lst):
if not allEqualTo(self.Format, (l.Format for l in lst)):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.InconsistentFormats,
"subtable": "mark-to-mark positioning lookup",
"expected": self.Format,
"got": [l.Format for l in lst]},))
raise InconsistentFormats(self,
subtable="mark-to-mark positioning lookup",
expected=self.Format,
got=[l.Format for l in lst]
)
if self.Format == 1:
_MarkBasePosFormat1_merge(self, lst, merger, 'Mark1', 'Mark2')
else:
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.UnsupportedFormat,
"subtable": "mark-to-mark positioning lookup",
}))
raise UnsupportedFormat(self, subtable="mark-to-mark positioning lookup")
def _PairSet_flatten(lst, font):
self = ot.PairSet()
@ -824,15 +800,12 @@ def merge(merger, self, lst):
continue
if sts[0].__class__.__name__.startswith('Extension'):
if not allEqual([st.__class__ for st in sts]):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.InconsistentExtensions,
"expected": "Extension",
"got": [st.__class__.__name__ for st in sts]
},))
raise InconsistentExtensions(self,
expected="Extension",
got=[st.__class__.__name__ for st in sts]
)
if not allEqual([st.ExtensionLookupType for st in sts]):
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.InconsistentExtensions,
},))
raise InconsistentExtensions(self)
l.LookupType = sts[0].ExtensionLookupType
new_sts = [st.ExtSubTable for st in sts]
del sts[:]
@ -1061,10 +1034,7 @@ class VariationMerger(AligningMerger):
if None in lst:
if allNone(lst):
if out is not None:
raise VarLibMergeError(self, ({
"reason": VarLibMergeFailure.FoundANone,
"got": lst
},))
raise FoundANone(self, got=lst)
return
masterModel = self.model
model, lst = masterModel.getSubModel(lst)
@ -1085,10 +1055,7 @@ def buildVarDevTable(store_builder, master_values):
@VariationMerger.merger(ot.BaseCoord)
def merge(merger, self, lst):
if self.Format != 1:
raise VarLibMergeError(self, ({
"cause": VarLibMergeFailure.UnsupportedFormat,
"subtable": "a baseline coordinate"
},))
raise UnsupportedFormat(self, subtable="a baseline coordinate")
self.Coordinate, DeviceTable = buildVarDevTable(merger.store_builder, [a.Coordinate for a in lst])
if DeviceTable:
self.Format = 3
@ -1097,10 +1064,7 @@ def merge(merger, self, lst):
@VariationMerger.merger(ot.CaretValue)
def merge(merger, self, lst):
if self.Format != 1:
raise VarLibMergeError(self, ({
"cause": VarLibMergeFailure.UnsupportedFormat,
"subtable": "a caret"
},))
raise UnsupportedFormat(self, subtable="a caret")
self.Coordinate, DeviceTable = buildVarDevTable(merger.store_builder, [a.Coordinate for a in lst])
if DeviceTable:
self.Format = 3
@ -1109,10 +1073,7 @@ def merge(merger, self, lst):
@VariationMerger.merger(ot.Anchor)
def merge(merger, self, lst):
if self.Format != 1:
raise VarLibMergeError(self, ({
"cause": VarLibMergeFailure.UnsupportedFormat,
"subtable": "an anchor"
},))
raise UnsupportedFormat(self, subtable="an anchor")
self.XCoordinate, XDeviceTable = buildVarDevTable(merger.store_builder, [a.XCoordinate for a in lst])
self.YCoordinate, YDeviceTable = buildVarDevTable(merger.store_builder, [a.YCoordinate for a in lst])
if XDeviceTable or YDeviceTable:

View File

@ -0,0 +1,22 @@
<?xml version='1.0' encoding='UTF-8'?>
<designspace format="4.1">
<axes>
<axis tag="wght" name="Weight" minimum="200" maximum="700" default="200"/>
</axes>
<sources>
<source filename="master_incompatible_arrays/IncompatibleArrays-Regular.ttx" name="Simple Two Axis Regular" familyname="Simple Two Axis" stylename="Regular">
<lib copy="1"/>
<groups copy="1"/>
<features copy="1"/>
<info copy="1"/>
<location>
<dimension name="Weight" xvalue="200"/>
</location>
</source>
<source filename="master_incompatible_arrays/IncompatibleArrays-Bold.ttx" name="Simple Two Axis Bold" familyname="Simple Two Axis" stylename="Bold">
<location>
<dimension name="Weight" xvalue="700"/>
</location>
</source>
</sources>
</designspace>

View File

@ -0,0 +1,22 @@
<?xml version='1.0' encoding='UTF-8'?>
<designspace format="4.1">
<axes>
<axis tag="wght" name="Weight" minimum="200" maximum="700" default="200"/>
</axes>
<sources>
<source filename="master_incompatible_features/IncompatibleFeatures-Regular.ttx" name="Simple Two Axis Regular" familyname="Simple Two Axis" stylename="Regular">
<lib copy="1"/>
<groups copy="1"/>
<features copy="1"/>
<info copy="1"/>
<location>
<dimension name="Weight" xvalue="200"/>
</location>
</source>
<source filename="master_incompatible_features/IncompatibleFeatures-Bold.ttx" name="Simple Two Axis Bold" familyname="Simple Two Axis" stylename="Bold">
<location>
<dimension name="Weight" xvalue="700"/>
</location>
</source>
</sources>
</designspace>

View File

@ -0,0 +1,22 @@
<?xml version='1.0' encoding='UTF-8'?>
<designspace format="4.1">
<axes>
<axis tag="wght" name="Weight" minimum="200" maximum="700" default="200"/>
</axes>
<sources>
<source filename="master_incompatible_lookup_types/IncompatibleLookupTypes-Regular.ttx" name="Simple Two Axis Regular" familyname="Simple Two Axis" stylename="Regular">
<lib copy="1"/>
<groups copy="1"/>
<features copy="1"/>
<info copy="1"/>
<location>
<dimension name="Weight" xvalue="200"/>
</location>
</source>
<source filename="master_incompatible_lookup_types/IncompatibleLookupTypes-Bold.ttx" name="Simple Two Axis Bold" familyname="Simple Two Axis" stylename="Bold">
<location>
<dimension name="Weight" xvalue="700"/>
</location>
</source>
</sources>
</designspace>

View File

@ -0,0 +1,612 @@
<?xml version="1.0" encoding="UTF-8"?>
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.20">
<GlyphOrder>
<!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
<GlyphID id="0" name=".notdef"/>
<GlyphID id="1" name="A"/>
<GlyphID id="2" name="Aacute"/>
<GlyphID id="3" name="O"/>
<GlyphID id="4" name="V"/>
<GlyphID id="5" name="space"/>
<GlyphID id="6" name="dollar"/>
<GlyphID id="7" name="dollar.bold"/>
<GlyphID id="8" name="acutecomb"/>
<GlyphID id="9" name="dollar.BRACKET.500"/>
</GlyphOrder>
<head>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="1.0"/>
<fontRevision value="1.0"/>
<checkSumAdjustment value="0x10cb3f3"/>
<magicNumber value="0x5f0f3cf5"/>
<flags value="00000000 00000011"/>
<unitsPerEm value="1000"/>
<created value="Fri Jan 15 14:37:13 2021"/>
<modified value="Mon Mar 15 12:57:03 2021"/>
<xMin value="-141"/>
<yMin value="-200"/>
<xMax value="906"/>
<yMax value="949"/>
<macStyle value="00000000 00000001"/>
<lowestRecPPEM value="6"/>
<fontDirectionHint value="2"/>
<indexToLocFormat value="0"/>
<glyphDataFormat value="0"/>
</head>
<hhea>
<tableVersion value="0x00010000"/>
<ascent value="1000"/>
<descent value="-200"/>
<lineGap value="0"/>
<advanceWidthMax value="911"/>
<minLeftSideBearing value="-141"/>
<minRightSideBearing value="-125"/>
<xMaxExtent value="906"/>
<caretSlopeRise value="1"/>
<caretSlopeRun value="0"/>
<caretOffset value="0"/>
<reserved0 value="0"/>
<reserved1 value="0"/>
<reserved2 value="0"/>
<reserved3 value="0"/>
<metricDataFormat value="0"/>
<numberOfHMetrics value="10"/>
</hhea>
<maxp>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="0x10000"/>
<numGlyphs value="10"/>
<maxPoints value="52"/>
<maxContours value="3"/>
<maxCompositePoints value="16"/>
<maxCompositeContours value="4"/>
<maxZones value="1"/>
<maxTwilightPoints value="0"/>
<maxStorage value="0"/>
<maxFunctionDefs value="0"/>
<maxInstructionDefs value="0"/>
<maxStackElements value="0"/>
<maxSizeOfInstructions value="0"/>
<maxComponentElements value="2"/>
<maxComponentDepth value="1"/>
</maxp>
<OS_2>
<!-- The fields 'usFirstCharIndex' and 'usLastCharIndex'
will be recalculated by the compiler -->
<version value="4"/>
<xAvgCharWidth value="672"/>
<usWeightClass value="400"/>
<usWidthClass value="5"/>
<fsType value="00000000 00001000"/>
<ySubscriptXSize value="650"/>
<ySubscriptYSize value="600"/>
<ySubscriptXOffset value="0"/>
<ySubscriptYOffset value="75"/>
<ySuperscriptXSize value="650"/>
<ySuperscriptYSize value="600"/>
<ySuperscriptXOffset value="0"/>
<ySuperscriptYOffset value="350"/>
<yStrikeoutSize value="50"/>
<yStrikeoutPosition value="300"/>
<sFamilyClass value="0"/>
<panose>
<bFamilyType value="0"/>
<bSerifStyle value="0"/>
<bWeight value="0"/>
<bProportion value="0"/>
<bContrast value="0"/>
<bStrokeVariation value="0"/>
<bArmStyle value="0"/>
<bLetterForm value="0"/>
<bMidline value="0"/>
<bXHeight value="0"/>
</panose>
<ulUnicodeRange1 value="00000000 00000000 00000000 01000011"/>
<ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
<achVendID value="NONE"/>
<fsSelection value="00000000 00100000"/>
<usFirstCharIndex value="32"/>
<usLastCharIndex value="769"/>
<sTypoAscender value="800"/>
<sTypoDescender value="-200"/>
<sTypoLineGap value="200"/>
<usWinAscent value="1000"/>
<usWinDescent value="200"/>
<ulCodePageRange1 value="00000000 00000000 00000000 00000001"/>
<ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
<sxHeight value="500"/>
<sCapHeight value="700"/>
<usDefaultChar value="0"/>
<usBreakChar value="32"/>
<usMaxContext value="2"/>
</OS_2>
<hmtx>
<mtx name=".notdef" width="500" lsb="50"/>
<mtx name="A" width="911" lsb="5"/>
<mtx name="Aacute" width="911" lsb="5"/>
<mtx name="O" width="715" lsb="15"/>
<mtx name="V" width="911" lsb="5"/>
<mtx name="acutecomb" width="0" lsb="-141"/>
<mtx name="dollar" width="600" lsb="1"/>
<mtx name="dollar.BRACKET.500" width="600" lsb="1"/>
<mtx name="dollar.bold" width="600" lsb="1"/>
<mtx name="space" width="300" lsb="0"/>
</hmtx>
<cmap>
<tableVersion version="0"/>
<cmap_format_4 platformID="0" platEncID="3" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
<cmap_format_4 platformID="3" platEncID="1" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
</cmap>
<loca>
<!-- The 'loca' table will be calculated by the compiler -->
</loca>
<glyf>
<!-- The xMin, yMin, xMax and yMax values
will be recalculated by the compiler. -->
<TTGlyph name=".notdef" xMin="50" yMin="-200" xMax="450" yMax="800">
<contour>
<pt x="50" y="-200" on="1"/>
<pt x="50" y="800" on="1"/>
<pt x="450" y="800" on="1"/>
<pt x="450" y="-200" on="1"/>
</contour>
<contour>
<pt x="100" y="-150" on="1"/>
<pt x="400" y="-150" on="1"/>
<pt x="400" y="750" on="1"/>
<pt x="100" y="750" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="A" xMin="5" yMin="0" xMax="906" yMax="700">
<contour>
<pt x="705" y="0" on="1"/>
<pt x="906" y="0" on="1"/>
<pt x="556" y="700" on="1"/>
<pt x="355" y="700" on="1"/>
</contour>
<contour>
<pt x="5" y="0" on="1"/>
<pt x="206" y="0" on="1"/>
<pt x="556" y="700" on="1"/>
<pt x="355" y="700" on="1"/>
</contour>
<contour>
<pt x="640" y="311" on="1"/>
<pt x="190" y="311" on="1"/>
<pt x="190" y="191" on="1"/>
<pt x="640" y="191" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="Aacute" xMin="5" yMin="0" xMax="906" yMax="949">
<component glyphName="A" x="0" y="0" flags="0x204"/>
<component glyphName="acutecomb" x="479" y="124" flags="0x4"/>
</TTGlyph>
<TTGlyph name="O" xMin="15" yMin="-10" xMax="670" yMax="710">
<contour>
<pt x="342" y="-10" on="1"/>
<pt x="172" y="-10" on="0"/>
<pt x="15" y="163" on="0"/>
<pt x="15" y="350" on="1"/>
<pt x="15" y="538" on="0"/>
<pt x="172" y="710" on="0"/>
<pt x="342" y="710" on="1"/>
<pt x="513" y="710" on="0"/>
<pt x="670" y="538" on="0"/>
<pt x="670" y="350" on="1"/>
<pt x="670" y="163" on="0"/>
<pt x="513" y="-10" on="0"/>
</contour>
<contour>
<pt x="342" y="153" on="1"/>
<pt x="419" y="153" on="0"/>
<pt x="490" y="247" on="0"/>
<pt x="490" y="350" on="1"/>
<pt x="490" y="453" on="0"/>
<pt x="419" y="547" on="0"/>
<pt x="342" y="547" on="1"/>
<pt x="266" y="547" on="0"/>
<pt x="195" y="453" on="0"/>
<pt x="195" y="350" on="1"/>
<pt x="195" y="247" on="0"/>
<pt x="266" y="153" on="0"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="V" xMin="5" yMin="0" xMax="906" yMax="700">
<contour>
<pt x="355" y="0" on="1"/>
<pt x="705" y="700" on="1"/>
<pt x="906" y="700" on="1"/>
<pt x="556" y="0" on="1"/>
</contour>
<contour>
<pt x="355" y="0" on="1"/>
<pt x="5" y="700" on="1"/>
<pt x="206" y="700" on="1"/>
<pt x="556" y="0" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="acutecomb" xMin="-141" yMin="630" xMax="125" yMax="825">
<contour>
<pt x="-118" y="756" on="1"/>
<pt x="-141" y="630" on="1"/>
<pt x="102" y="699" on="1"/>
<pt x="125" y="825" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar" xMin="1" yMin="-98" xMax="595" yMax="789">
<contour>
<pt x="249" y="789" on="1"/>
<pt x="369" y="789" on="1"/>
<pt x="369" y="743" on="1"/>
<pt x="427" y="735" on="0"/>
<pt x="537" y="681" on="0"/>
<pt x="590" y="623" on="1"/>
<pt x="510" y="515" on="1"/>
<pt x="479" y="549" on="0"/>
<pt x="411" y="588" on="0"/>
<pt x="369" y="595" on="1"/>
<pt x="369" y="400" on="1"/>
<pt x="476" y="378" on="0"/>
<pt x="595" y="278" on="0"/>
<pt x="595" y="184" on="1"/>
<pt x="595" y="93" on="0"/>
<pt x="474" y="-32" on="0"/>
<pt x="369" y="-46" on="1"/>
<pt x="369" y="-98" on="1"/>
<pt x="249" y="-98" on="1"/>
<pt x="249" y="-47" on="1"/>
<pt x="176" y="-39" on="0"/>
<pt x="52" y="17" on="0"/>
<pt x="1" y="69" on="1"/>
<pt x="80" y="179" on="1"/>
<pt x="118" y="144" on="0"/>
<pt x="195" y="106" on="0"/>
<pt x="249" y="100" on="1"/>
<pt x="249" y="273" on="1"/>
<pt x="246" y="274" on="1"/>
<pt x="144" y="294" on="0"/>
<pt x="28" y="405" on="0"/>
<pt x="28" y="502" on="1"/>
<pt x="28" y="567" on="0"/>
<pt x="84" y="667" on="0"/>
<pt x="184" y="732" on="0"/>
<pt x="249" y="742" on="1"/>
</contour>
<contour>
<pt x="152" y="502" on="1"/>
<pt x="152" y="480" on="0"/>
<pt x="166" y="453" on="0"/>
<pt x="208" y="434" on="0"/>
<pt x="249" y="424" on="1"/>
<pt x="249" y="595" on="1"/>
<pt x="199" y="587" on="0"/>
<pt x="152" y="538" on="0"/>
</contour>
<contour>
<pt x="369" y="100" on="1"/>
<pt x="426" y="107" on="0"/>
<pt x="471" y="150" on="0"/>
<pt x="471" y="183" on="1"/>
<pt x="471" y="201" on="0"/>
<pt x="456" y="225" on="0"/>
<pt x="412" y="243" on="0"/>
<pt x="369" y="252" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.BRACKET.500" xMin="1" yMin="-98" xMax="595" yMax="789">
<contour>
<pt x="249" y="789" on="1"/>
<pt x="369" y="789" on="1"/>
<pt x="369" y="743" on="1"/>
<pt x="427" y="735" on="0"/>
<pt x="537" y="681" on="0"/>
<pt x="590" y="623" on="1"/>
<pt x="510" y="515" on="1"/>
<pt x="468" y="560" on="0"/>
<pt x="374" y="600" on="0"/>
<pt x="308" y="600" on="1"/>
<pt x="227" y="600" on="0"/>
<pt x="152" y="548" on="0"/>
<pt x="152" y="502" on="1"/>
<pt x="152" y="479" on="0"/>
<pt x="168" y="450" on="0"/>
<pt x="217" y="431" on="0"/>
<pt x="264" y="421" on="1"/>
<pt x="363" y="401" on="1"/>
<pt x="473" y="379" on="0"/>
<pt x="595" y="279" on="0"/>
<pt x="595" y="184" on="1"/>
<pt x="595" y="93" on="0"/>
<pt x="474" y="-32" on="0"/>
<pt x="369" y="-46" on="1"/>
<pt x="369" y="-98" on="1"/>
<pt x="249" y="-98" on="1"/>
<pt x="249" y="-47" on="1"/>
<pt x="176" y="-39" on="0"/>
<pt x="52" y="17" on="0"/>
<pt x="1" y="69" on="1"/>
<pt x="80" y="179" on="1"/>
<pt x="112" y="150" on="0"/>
<pt x="176" y="114" on="0"/>
<pt x="256" y="97" on="0"/>
<pt x="310" y="97" on="1"/>
<pt x="402" y="97" on="0"/>
<pt x="471" y="143" on="0"/>
<pt x="471" y="183" on="1"/>
<pt x="471" y="203" on="0"/>
<pt x="453" y="228" on="0"/>
<pt x="399" y="247" on="0"/>
<pt x="345" y="256" on="1"/>
<pt x="246" y="274" on="1"/>
<pt x="144" y="293" on="0"/>
<pt x="28" y="405" on="0"/>
<pt x="28" y="502" on="1"/>
<pt x="28" y="567" on="0"/>
<pt x="84" y="667" on="0"/>
<pt x="184" y="732" on="0"/>
<pt x="249" y="742" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.bold" xMin="1" yMin="-98" xMax="595" yMax="789">
<contour>
<pt x="249" y="789" on="1"/>
<pt x="369" y="789" on="1"/>
<pt x="369" y="743" on="1"/>
<pt x="427" y="735" on="0"/>
<pt x="537" y="681" on="0"/>
<pt x="590" y="623" on="1"/>
<pt x="510" y="515" on="1"/>
<pt x="468" y="560" on="0"/>
<pt x="374" y="600" on="0"/>
<pt x="308" y="600" on="1"/>
<pt x="227" y="600" on="0"/>
<pt x="152" y="548" on="0"/>
<pt x="152" y="502" on="1"/>
<pt x="152" y="479" on="0"/>
<pt x="168" y="450" on="0"/>
<pt x="217" y="431" on="0"/>
<pt x="264" y="421" on="1"/>
<pt x="363" y="401" on="1"/>
<pt x="473" y="379" on="0"/>
<pt x="595" y="279" on="0"/>
<pt x="595" y="184" on="1"/>
<pt x="595" y="93" on="0"/>
<pt x="474" y="-32" on="0"/>
<pt x="369" y="-46" on="1"/>
<pt x="369" y="-98" on="1"/>
<pt x="249" y="-98" on="1"/>
<pt x="249" y="-47" on="1"/>
<pt x="176" y="-39" on="0"/>
<pt x="52" y="17" on="0"/>
<pt x="1" y="69" on="1"/>
<pt x="80" y="179" on="1"/>
<pt x="112" y="150" on="0"/>
<pt x="176" y="114" on="0"/>
<pt x="256" y="97" on="0"/>
<pt x="310" y="97" on="1"/>
<pt x="402" y="97" on="0"/>
<pt x="471" y="143" on="0"/>
<pt x="471" y="183" on="1"/>
<pt x="471" y="203" on="0"/>
<pt x="453" y="228" on="0"/>
<pt x="399" y="247" on="0"/>
<pt x="345" y="256" on="1"/>
<pt x="246" y="274" on="1"/>
<pt x="144" y="293" on="0"/>
<pt x="28" y="405" on="0"/>
<pt x="28" y="502" on="1"/>
<pt x="28" y="567" on="0"/>
<pt x="84" y="667" on="0"/>
<pt x="184" y="732" on="0"/>
<pt x="249" y="742" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="space"/><!-- contains no outline data -->
</glyf>
<name>
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
Bold
</namerecord>
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
1.000;NONE;SimpleTwoAxis-Bold
</namerecord>
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis Bold
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
Version 1.000
</namerecord>
<namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
SimpleTwoAxis-Bold
</namerecord>
</name>
<post>
<formatType value="2.0"/>
<italicAngle value="0.0"/>
<underlinePosition value="-100"/>
<underlineThickness value="50"/>
<isFixedPitch value="0"/>
<minMemType42 value="0"/>
<maxMemType42 value="0"/>
<minMemType1 value="0"/>
<maxMemType1 value="0"/>
<psNames>
<!-- This file uses unique glyph names based on the information
found in the 'post' table. Since these names might not be unique,
we have to invent artificial names in case of clashes. In order to
be able to retain the original information, we need a name to
ps name mapping for those cases where they differ. That's what
you see below.
-->
</psNames>
<extraNames>
<!-- following are the name that are not taken from the standard Mac glyph order -->
<psName name="dollar.bold"/>
<psName name="acutecomb"/>
<psName name="dollar.BRACKET.500"/>
</extraNames>
</post>
<GDEF>
<Version value="0x00010000"/>
<GlyphClassDef Format="2">
<ClassDef glyph="A" class="1"/>
<ClassDef glyph="Aacute" class="1"/>
<ClassDef glyph="acutecomb" class="3"/>
</GlyphClassDef>
</GDEF>
<GPOS>
<Version value="0x00010000"/>
<ScriptList>
</ScriptList>
<FeatureList>
<!-- FeatureCount=2 -->
<FeatureRecord index="0">
<FeatureTag value="kern"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="0"/>
</Feature>
</FeatureRecord>
<FeatureRecord index="1">
<FeatureTag value="mark"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="1"/>
</Feature>
</FeatureRecord>
</FeatureList>
<LookupList>
<!-- LookupCount=2 -->
<Lookup index="0">
<LookupType value="2"/>
<LookupFlag value="8"/><!-- ignoreMarks -->
<!-- SubTableCount=1 -->
<PairPos index="0" Format="1">
<Coverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
<Glyph value="V"/>
</Coverage>
<ValueFormat1 value="4"/>
<ValueFormat2 value="0"/>
<!-- PairSetCount=3 -->
<PairSet index="0">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="1">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="2">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="O"/>
<Value1 XAdvance="-20"/>
</PairValueRecord>
</PairSet>
</PairPos>
</Lookup>
<Lookup index="1">
<LookupType value="4"/>
<LookupFlag value="0"/>
<!-- SubTableCount=1 -->
<MarkBasePos index="0" Format="1">
<MarkCoverage Format="1">
<Glyph value="acutecomb"/>
</MarkCoverage>
<BaseCoverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
</BaseCoverage>
<!-- ClassCount=1 -->
<MarkArray>
<!-- MarkCount=1 -->
<MarkRecord index="0">
<Class value="0"/>
<MarkAnchor Format="1">
<XCoordinate value="4"/>
<YCoordinate value="623"/>
</MarkAnchor>
</MarkRecord>
</MarkArray>
<BaseArray>
<!-- BaseCount=2 -->
<BaseRecord index="0">
<BaseAnchor index="0" Format="1">
<XCoordinate value="406"/>
<YCoordinate value="753"/>
</BaseAnchor>
</BaseRecord>
<BaseRecord index="1">
<BaseAnchor index="0" Format="1">
<XCoordinate value="406"/>
<YCoordinate value="753"/>
</BaseAnchor>
</BaseRecord>
</BaseArray>
</MarkBasePos>
</Lookup>
</LookupList>
</GPOS>
</ttFont>

View File

@ -0,0 +1,626 @@
<?xml version="1.0" encoding="UTF-8"?>
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.20">
<GlyphOrder>
<!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
<GlyphID id="0" name=".notdef"/>
<GlyphID id="1" name="A"/>
<GlyphID id="2" name="Aacute"/>
<GlyphID id="3" name="O"/>
<GlyphID id="4" name="V"/>
<GlyphID id="5" name="space"/>
<GlyphID id="6" name="dollar"/>
<GlyphID id="7" name="dollar.bold"/>
<GlyphID id="8" name="acutecomb"/>
<GlyphID id="9" name="dollar.BRACKET.500"/>
</GlyphOrder>
<head>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="1.0"/>
<fontRevision value="1.0"/>
<checkSumAdjustment value="0x3c7bc79b"/>
<magicNumber value="0x5f0f3cf5"/>
<flags value="00000000 00000011"/>
<unitsPerEm value="1000"/>
<created value="Fri Jan 15 14:37:13 2021"/>
<modified value="Mon Mar 15 12:57:03 2021"/>
<xMin value="-141"/>
<yMin value="-200"/>
<xMax value="751"/>
<yMax value="915"/>
<macStyle value="00000000 00000000"/>
<lowestRecPPEM value="6"/>
<fontDirectionHint value="2"/>
<indexToLocFormat value="0"/>
<glyphDataFormat value="0"/>
</head>
<hhea>
<tableVersion value="0x00010000"/>
<ascent value="1000"/>
<descent value="-200"/>
<lineGap value="0"/>
<advanceWidthMax value="756"/>
<minLeftSideBearing value="-141"/>
<minRightSideBearing value="-125"/>
<xMaxExtent value="751"/>
<caretSlopeRise value="1"/>
<caretSlopeRun value="0"/>
<caretOffset value="0"/>
<reserved0 value="0"/>
<reserved1 value="0"/>
<reserved2 value="0"/>
<reserved3 value="0"/>
<metricDataFormat value="0"/>
<numberOfHMetrics value="10"/>
</hhea>
<maxp>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="0x10000"/>
<numGlyphs value="10"/>
<maxPoints value="52"/>
<maxContours value="3"/>
<maxCompositePoints value="16"/>
<maxCompositeContours value="4"/>
<maxZones value="1"/>
<maxTwilightPoints value="0"/>
<maxStorage value="0"/>
<maxFunctionDefs value="0"/>
<maxInstructionDefs value="0"/>
<maxStackElements value="0"/>
<maxSizeOfInstructions value="0"/>
<maxComponentElements value="2"/>
<maxComponentDepth value="1"/>
</maxp>
<OS_2>
<!-- The fields 'usFirstCharIndex' and 'usLastCharIndex'
will be recalculated by the compiler -->
<version value="4"/>
<xAvgCharWidth value="604"/>
<usWeightClass value="400"/>
<usWidthClass value="5"/>
<fsType value="00000000 00001000"/>
<ySubscriptXSize value="650"/>
<ySubscriptYSize value="600"/>
<ySubscriptXOffset value="0"/>
<ySubscriptYOffset value="75"/>
<ySuperscriptXSize value="650"/>
<ySuperscriptYSize value="600"/>
<ySuperscriptXOffset value="0"/>
<ySuperscriptYOffset value="350"/>
<yStrikeoutSize value="50"/>
<yStrikeoutPosition value="300"/>
<sFamilyClass value="0"/>
<panose>
<bFamilyType value="0"/>
<bSerifStyle value="0"/>
<bWeight value="0"/>
<bProportion value="0"/>
<bContrast value="0"/>
<bStrokeVariation value="0"/>
<bArmStyle value="0"/>
<bLetterForm value="0"/>
<bMidline value="0"/>
<bXHeight value="0"/>
</panose>
<ulUnicodeRange1 value="00000000 00000000 00000000 01000011"/>
<ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
<achVendID value="NONE"/>
<fsSelection value="00000000 01000000"/>
<usFirstCharIndex value="32"/>
<usLastCharIndex value="769"/>
<sTypoAscender value="800"/>
<sTypoDescender value="-200"/>
<sTypoLineGap value="200"/>
<usWinAscent value="1000"/>
<usWinDescent value="200"/>
<ulCodePageRange1 value="00000000 00000000 00000000 00000001"/>
<ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
<sxHeight value="500"/>
<sCapHeight value="700"/>
<usDefaultChar value="0"/>
<usBreakChar value="32"/>
<usMaxContext value="2"/>
</OS_2>
<hmtx>
<mtx name=".notdef" width="500" lsb="50"/>
<mtx name="A" width="756" lsb="5"/>
<mtx name="Aacute" width="756" lsb="5"/>
<mtx name="O" width="664" lsb="30"/>
<mtx name="V" width="756" lsb="5"/>
<mtx name="acutecomb" width="0" lsb="-141"/>
<mtx name="dollar" width="600" lsb="29"/>
<mtx name="dollar.BRACKET.500" width="600" lsb="29"/>
<mtx name="dollar.bold" width="600" lsb="29"/>
<mtx name="space" width="200" lsb="0"/>
</hmtx>
<cmap>
<tableVersion version="0"/>
<cmap_format_4 platformID="0" platEncID="3" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
<cmap_format_4 platformID="3" platEncID="1" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
</cmap>
<loca>
<!-- The 'loca' table will be calculated by the compiler -->
</loca>
<glyf>
<!-- The xMin, yMin, xMax and yMax values
will be recalculated by the compiler. -->
<TTGlyph name=".notdef" xMin="50" yMin="-200" xMax="450" yMax="800">
<contour>
<pt x="50" y="-200" on="1"/>
<pt x="50" y="800" on="1"/>
<pt x="450" y="800" on="1"/>
<pt x="450" y="-200" on="1"/>
</contour>
<contour>
<pt x="100" y="-150" on="1"/>
<pt x="400" y="-150" on="1"/>
<pt x="400" y="750" on="1"/>
<pt x="100" y="750" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="A" xMin="5" yMin="0" xMax="751" yMax="700">
<contour>
<pt x="641" y="0" on="1"/>
<pt x="751" y="0" on="1"/>
<pt x="433" y="700" on="1"/>
<pt x="323" y="700" on="1"/>
</contour>
<contour>
<pt x="5" y="0" on="1"/>
<pt x="115" y="0" on="1"/>
<pt x="433" y="700" on="1"/>
<pt x="323" y="700" on="1"/>
</contour>
<contour>
<pt x="567" y="284" on="1"/>
<pt x="152" y="284" on="1"/>
<pt x="152" y="204" on="1"/>
<pt x="567" y="204" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="Aacute" xMin="5" yMin="0" xMax="751" yMax="915">
<component glyphName="A" x="0" y="0" flags="0x204"/>
<component glyphName="acutecomb" x="402" y="130" flags="0x4"/>
</TTGlyph>
<TTGlyph name="O" xMin="30" yMin="-10" xMax="634" yMax="710">
<contour>
<pt x="332" y="-10" on="1"/>
<pt x="181" y="-10" on="0"/>
<pt x="30" y="169" on="0"/>
<pt x="30" y="350" on="1"/>
<pt x="30" y="531" on="0"/>
<pt x="181" y="710" on="0"/>
<pt x="332" y="710" on="1"/>
<pt x="484" y="710" on="0"/>
<pt x="634" y="531" on="0"/>
<pt x="634" y="350" on="1"/>
<pt x="634" y="169" on="0"/>
<pt x="484" y="-10" on="0"/>
</contour>
<contour>
<pt x="332" y="74" on="1"/>
<pt x="438" y="74" on="0"/>
<pt x="544" y="212" on="0"/>
<pt x="544" y="350" on="1"/>
<pt x="544" y="488" on="0"/>
<pt x="438" y="626" on="0"/>
<pt x="332" y="626" on="1"/>
<pt x="226" y="626" on="0"/>
<pt x="120" y="488" on="0"/>
<pt x="120" y="350" on="1"/>
<pt x="120" y="212" on="0"/>
<pt x="226" y="74" on="0"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="V" xMin="5" yMin="0" xMax="751" yMax="700">
<contour>
<pt x="323" y="0" on="1"/>
<pt x="641" y="700" on="1"/>
<pt x="751" y="700" on="1"/>
<pt x="433" y="0" on="1"/>
</contour>
<contour>
<pt x="323" y="0" on="1"/>
<pt x="5" y="700" on="1"/>
<pt x="115" y="700" on="1"/>
<pt x="433" y="0" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="acutecomb" xMin="-141" yMin="630" xMax="125" yMax="785">
<contour>
<pt x="-118" y="716" on="1"/>
<pt x="-141" y="630" on="1"/>
<pt x="102" y="699" on="1"/>
<pt x="125" y="785" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar" xMin="29" yMin="-68" xMax="580" yMax="759">
<contour>
<pt x="264" y="759" on="1"/>
<pt x="354" y="759" on="1"/>
<pt x="354" y="715" on="1"/>
<pt x="415" y="709" on="0"/>
<pt x="519" y="662" on="0"/>
<pt x="562" y="620" on="1"/>
<pt x="509" y="548" on="1"/>
<pt x="473" y="584" on="0"/>
<pt x="398" y="621" on="0"/>
<pt x="354" y="627" on="1"/>
<pt x="354" y="373" on="1"/>
<pt x="467" y="351" on="0"/>
<pt x="580" y="263" on="0"/>
<pt x="580" y="184" on="1"/>
<pt x="580" y="102" on="0"/>
<pt x="459" y="-8" on="0"/>
<pt x="354" y="-18" on="1"/>
<pt x="354" y="-68" on="1"/>
<pt x="264" y="-68" on="1"/>
<pt x="264" y="-18" on="1"/>
<pt x="192" y="-12" on="0"/>
<pt x="72" y="34" on="0"/>
<pt x="29" y="74" on="1"/>
<pt x="81" y="146" on="1"/>
<pt x="123" y="110" on="0"/>
<pt x="207" y="73" on="0"/>
<pt x="264" y="69" on="1"/>
<pt x="264" y="301" on="1"/>
<pt x="249" y="304" on="1"/>
<pt x="148" y="323" on="0"/>
<pt x="43" y="420" on="0"/>
<pt x="43" y="502" on="1"/>
<pt x="43" y="559" on="0"/>
<pt x="99" y="650" on="0"/>
<pt x="199" y="707" on="0"/>
<pt x="264" y="715" on="1"/>
</contour>
<contour>
<pt x="137" y="502" on="1"/>
<pt x="137" y="470" on="0"/>
<pt x="160" y="428" on="0"/>
<pt x="214" y="402" on="0"/>
<pt x="261" y="392" on="1"/>
<pt x="264" y="627" on="1"/>
<pt x="203" y="618" on="0"/>
<pt x="137" y="553" on="0"/>
</contour>
<contour>
<pt x="354" y="69" on="1"/>
<pt x="423" y="76" on="0"/>
<pt x="486" y="135" on="0"/>
<pt x="486" y="183" on="1"/>
<pt x="486" y="211" on="0"/>
<pt x="462" y="250" on="0"/>
<pt x="405" y="275" on="0"/>
<pt x="354" y="285" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.BRACKET.500" xMin="29" yMin="-76" xMax="580" yMax="759">
<contour>
<pt x="264" y="759" on="1"/>
<pt x="354" y="759" on="1"/>
<pt x="354" y="715" on="1"/>
<pt x="415" y="709" on="0"/>
<pt x="519" y="662" on="0"/>
<pt x="562" y="620" on="1"/>
<pt x="509" y="548" on="1"/>
<pt x="464" y="592" on="0"/>
<pt x="370" y="630" on="0"/>
<pt x="308" y="630" on="1"/>
<pt x="226" y="630" on="0"/>
<pt x="137" y="562" on="0"/>
<pt x="137" y="502" on="1"/>
<pt x="137" y="470" on="0"/>
<pt x="160" y="428" on="0"/>
<pt x="214" y="402" on="0"/>
<pt x="261" y="392" on="1"/>
<pt x="360" y="372" on="1"/>
<pt x="469" y="350" on="0"/>
<pt x="580" y="263" on="0"/>
<pt x="580" y="184" on="1"/>
<pt x="580" y="102" on="0"/>
<pt x="459" y="-8" on="0"/>
<pt x="354" y="-18" on="1"/>
<pt x="354" y="-76" on="1"/>
<pt x="264" y="-76" on="1"/>
<pt x="264" y="-18" on="1"/>
<pt x="192" y="-12" on="0"/>
<pt x="72" y="34" on="0"/>
<pt x="29" y="74" on="1"/>
<pt x="81" y="146" on="1"/>
<pt x="115" y="118" on="0"/>
<pt x="180" y="83" on="0"/>
<pt x="259" y="67" on="0"/>
<pt x="310" y="67" on="1"/>
<pt x="403" y="67" on="0"/>
<pt x="486" y="128" on="0"/>
<pt x="486" y="183" on="1"/>
<pt x="486" y="212" on="0"/>
<pt x="461" y="251" on="0"/>
<pt x="401" y="277" on="0"/>
<pt x="348" y="286" on="1"/>
<pt x="249" y="304" on="1"/>
<pt x="148" y="323" on="0"/>
<pt x="43" y="420" on="0"/>
<pt x="43" y="502" on="1"/>
<pt x="43" y="559" on="0"/>
<pt x="99" y="650" on="0"/>
<pt x="199" y="707" on="0"/>
<pt x="264" y="715" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.bold" xMin="29" yMin="-76" xMax="580" yMax="759">
<contour>
<pt x="264" y="759" on="1"/>
<pt x="354" y="759" on="1"/>
<pt x="354" y="715" on="1"/>
<pt x="415" y="709" on="0"/>
<pt x="519" y="662" on="0"/>
<pt x="562" y="620" on="1"/>
<pt x="509" y="548" on="1"/>
<pt x="464" y="592" on="0"/>
<pt x="370" y="630" on="0"/>
<pt x="308" y="630" on="1"/>
<pt x="226" y="630" on="0"/>
<pt x="137" y="562" on="0"/>
<pt x="137" y="502" on="1"/>
<pt x="137" y="470" on="0"/>
<pt x="160" y="428" on="0"/>
<pt x="214" y="402" on="0"/>
<pt x="261" y="392" on="1"/>
<pt x="360" y="372" on="1"/>
<pt x="469" y="350" on="0"/>
<pt x="580" y="263" on="0"/>
<pt x="580" y="184" on="1"/>
<pt x="580" y="102" on="0"/>
<pt x="459" y="-8" on="0"/>
<pt x="354" y="-18" on="1"/>
<pt x="354" y="-76" on="1"/>
<pt x="264" y="-76" on="1"/>
<pt x="264" y="-18" on="1"/>
<pt x="192" y="-12" on="0"/>
<pt x="72" y="34" on="0"/>
<pt x="29" y="74" on="1"/>
<pt x="81" y="146" on="1"/>
<pt x="115" y="118" on="0"/>
<pt x="180" y="83" on="0"/>
<pt x="259" y="67" on="0"/>
<pt x="310" y="67" on="1"/>
<pt x="403" y="67" on="0"/>
<pt x="486" y="128" on="0"/>
<pt x="486" y="183" on="1"/>
<pt x="486" y="212" on="0"/>
<pt x="461" y="251" on="0"/>
<pt x="401" y="277" on="0"/>
<pt x="348" y="286" on="1"/>
<pt x="249" y="304" on="1"/>
<pt x="148" y="323" on="0"/>
<pt x="43" y="420" on="0"/>
<pt x="43" y="502" on="1"/>
<pt x="43" y="559" on="0"/>
<pt x="99" y="650" on="0"/>
<pt x="199" y="707" on="0"/>
<pt x="264" y="715" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="space"/><!-- contains no outline data -->
</glyf>
<name>
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
Regular
</namerecord>
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
1.000;NONE;SimpleTwoAxis-Regular
</namerecord>
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis Regular
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
Version 1.000
</namerecord>
<namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
SimpleTwoAxis-Regular
</namerecord>
</name>
<post>
<formatType value="2.0"/>
<italicAngle value="0.0"/>
<underlinePosition value="-100"/>
<underlineThickness value="50"/>
<isFixedPitch value="0"/>
<minMemType42 value="0"/>
<maxMemType42 value="0"/>
<minMemType1 value="0"/>
<maxMemType1 value="0"/>
<psNames>
<!-- This file uses unique glyph names based on the information
found in the 'post' table. Since these names might not be unique,
we have to invent artificial names in case of clashes. In order to
be able to retain the original information, we need a name to
ps name mapping for those cases where they differ. That's what
you see below.
-->
</psNames>
<extraNames>
<!-- following are the name that are not taken from the standard Mac glyph order -->
<psName name="dollar.bold"/>
<psName name="acutecomb"/>
<psName name="dollar.BRACKET.500"/>
</extraNames>
</post>
<GDEF>
<Version value="0x00010000"/>
<GlyphClassDef Format="2">
<ClassDef glyph="A" class="1"/>
<ClassDef glyph="Aacute" class="1"/>
<ClassDef glyph="acutecomb" class="3"/>
</GlyphClassDef>
</GDEF>
<GPOS>
<Version value="0x00010000"/>
<ScriptList>
<!-- ScriptCount=1 -->
<ScriptRecord index="0">
<ScriptTag value="DFLT"/>
<Script>
<DefaultLangSys>
<ReqFeatureIndex value="65535"/>
<!-- FeatureCount=2 -->
<FeatureIndex index="0" value="0"/>
<FeatureIndex index="1" value="1"/>
</DefaultLangSys>
<!-- LangSysCount=0 -->
</Script>
</ScriptRecord>
</ScriptList>
<FeatureList>
<!-- FeatureCount=2 -->
<FeatureRecord index="0">
<FeatureTag value="kern"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="0"/>
</Feature>
</FeatureRecord>
<FeatureRecord index="1">
<FeatureTag value="mark"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="1"/>
</Feature>
</FeatureRecord>
</FeatureList>
<LookupList>
<!-- LookupCount=2 -->
<Lookup index="0">
<LookupType value="2"/>
<LookupFlag value="8"/><!-- ignoreMarks -->
<!-- SubTableCount=1 -->
<PairPos index="0" Format="1">
<Coverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
<Glyph value="V"/>
</Coverage>
<ValueFormat1 value="4"/>
<ValueFormat2 value="0"/>
<!-- PairSetCount=3 -->
<PairSet index="0">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="1">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="2">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="O"/>
<Value1 XAdvance="-20"/>
</PairValueRecord>
</PairSet>
</PairPos>
</Lookup>
<Lookup index="1">
<LookupType value="4"/>
<LookupFlag value="0"/>
<!-- SubTableCount=1 -->
<MarkBasePos index="0" Format="1">
<MarkCoverage Format="1">
<Glyph value="acutecomb"/>
</MarkCoverage>
<BaseCoverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
</BaseCoverage>
<!-- ClassCount=1 -->
<MarkArray>
<!-- MarkCount=1 -->
<MarkRecord index="0">
<Class value="0"/>
<MarkAnchor Format="1">
<XCoordinate value="4"/>
<YCoordinate value="623"/>
</MarkAnchor>
</MarkRecord>
</MarkArray>
<BaseArray>
<!-- BaseCount=2 -->
<BaseRecord index="0">
<BaseAnchor index="0" Format="1">
<XCoordinate value="406"/>
<YCoordinate value="753"/>
</BaseAnchor>
</BaseRecord>
<BaseRecord index="1">
<BaseAnchor index="0" Format="1">
<XCoordinate value="406"/>
<YCoordinate value="753"/>
</BaseAnchor>
</BaseRecord>
</BaseArray>
</MarkBasePos>
</Lookup>
</LookupList>
</GPOS>
</ttFont>

View File

@ -0,0 +1,578 @@
<?xml version="1.0" encoding="UTF-8"?>
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.20">
<GlyphOrder>
<!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
<GlyphID id="0" name=".notdef"/>
<GlyphID id="1" name="A"/>
<GlyphID id="2" name="Aacute"/>
<GlyphID id="3" name="O"/>
<GlyphID id="4" name="V"/>
<GlyphID id="5" name="space"/>
<GlyphID id="6" name="dollar"/>
<GlyphID id="7" name="dollar.bold"/>
<GlyphID id="8" name="acutecomb"/>
<GlyphID id="9" name="dollar.BRACKET.500"/>
</GlyphOrder>
<head>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="1.0"/>
<fontRevision value="1.0"/>
<checkSumAdjustment value="0x10cb3f3"/>
<magicNumber value="0x5f0f3cf5"/>
<flags value="00000000 00000011"/>
<unitsPerEm value="1000"/>
<created value="Fri Jan 15 14:37:13 2021"/>
<modified value="Mon Mar 15 12:57:03 2021"/>
<xMin value="-141"/>
<yMin value="-200"/>
<xMax value="906"/>
<yMax value="949"/>
<macStyle value="00000000 00000001"/>
<lowestRecPPEM value="6"/>
<fontDirectionHint value="2"/>
<indexToLocFormat value="0"/>
<glyphDataFormat value="0"/>
</head>
<hhea>
<tableVersion value="0x00010000"/>
<ascent value="1000"/>
<descent value="-200"/>
<lineGap value="0"/>
<advanceWidthMax value="911"/>
<minLeftSideBearing value="-141"/>
<minRightSideBearing value="-125"/>
<xMaxExtent value="906"/>
<caretSlopeRise value="1"/>
<caretSlopeRun value="0"/>
<caretOffset value="0"/>
<reserved0 value="0"/>
<reserved1 value="0"/>
<reserved2 value="0"/>
<reserved3 value="0"/>
<metricDataFormat value="0"/>
<numberOfHMetrics value="10"/>
</hhea>
<maxp>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="0x10000"/>
<numGlyphs value="10"/>
<maxPoints value="52"/>
<maxContours value="3"/>
<maxCompositePoints value="16"/>
<maxCompositeContours value="4"/>
<maxZones value="1"/>
<maxTwilightPoints value="0"/>
<maxStorage value="0"/>
<maxFunctionDefs value="0"/>
<maxInstructionDefs value="0"/>
<maxStackElements value="0"/>
<maxSizeOfInstructions value="0"/>
<maxComponentElements value="2"/>
<maxComponentDepth value="1"/>
</maxp>
<OS_2>
<!-- The fields 'usFirstCharIndex' and 'usLastCharIndex'
will be recalculated by the compiler -->
<version value="4"/>
<xAvgCharWidth value="672"/>
<usWeightClass value="400"/>
<usWidthClass value="5"/>
<fsType value="00000000 00001000"/>
<ySubscriptXSize value="650"/>
<ySubscriptYSize value="600"/>
<ySubscriptXOffset value="0"/>
<ySubscriptYOffset value="75"/>
<ySuperscriptXSize value="650"/>
<ySuperscriptYSize value="600"/>
<ySuperscriptXOffset value="0"/>
<ySuperscriptYOffset value="350"/>
<yStrikeoutSize value="50"/>
<yStrikeoutPosition value="300"/>
<sFamilyClass value="0"/>
<panose>
<bFamilyType value="0"/>
<bSerifStyle value="0"/>
<bWeight value="0"/>
<bProportion value="0"/>
<bContrast value="0"/>
<bStrokeVariation value="0"/>
<bArmStyle value="0"/>
<bLetterForm value="0"/>
<bMidline value="0"/>
<bXHeight value="0"/>
</panose>
<ulUnicodeRange1 value="00000000 00000000 00000000 01000011"/>
<ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
<achVendID value="NONE"/>
<fsSelection value="00000000 00100000"/>
<usFirstCharIndex value="32"/>
<usLastCharIndex value="769"/>
<sTypoAscender value="800"/>
<sTypoDescender value="-200"/>
<sTypoLineGap value="200"/>
<usWinAscent value="1000"/>
<usWinDescent value="200"/>
<ulCodePageRange1 value="00000000 00000000 00000000 00000001"/>
<ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
<sxHeight value="500"/>
<sCapHeight value="700"/>
<usDefaultChar value="0"/>
<usBreakChar value="32"/>
<usMaxContext value="2"/>
</OS_2>
<hmtx>
<mtx name=".notdef" width="500" lsb="50"/>
<mtx name="A" width="911" lsb="5"/>
<mtx name="Aacute" width="911" lsb="5"/>
<mtx name="O" width="715" lsb="15"/>
<mtx name="V" width="911" lsb="5"/>
<mtx name="acutecomb" width="0" lsb="-141"/>
<mtx name="dollar" width="600" lsb="1"/>
<mtx name="dollar.BRACKET.500" width="600" lsb="1"/>
<mtx name="dollar.bold" width="600" lsb="1"/>
<mtx name="space" width="300" lsb="0"/>
</hmtx>
<cmap>
<tableVersion version="0"/>
<cmap_format_4 platformID="0" platEncID="3" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
<cmap_format_4 platformID="3" platEncID="1" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
</cmap>
<loca>
<!-- The 'loca' table will be calculated by the compiler -->
</loca>
<glyf>
<!-- The xMin, yMin, xMax and yMax values
will be recalculated by the compiler. -->
<TTGlyph name=".notdef" xMin="50" yMin="-200" xMax="450" yMax="800">
<contour>
<pt x="50" y="-200" on="1"/>
<pt x="50" y="800" on="1"/>
<pt x="450" y="800" on="1"/>
<pt x="450" y="-200" on="1"/>
</contour>
<contour>
<pt x="100" y="-150" on="1"/>
<pt x="400" y="-150" on="1"/>
<pt x="400" y="750" on="1"/>
<pt x="100" y="750" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="A" xMin="5" yMin="0" xMax="906" yMax="700">
<contour>
<pt x="705" y="0" on="1"/>
<pt x="906" y="0" on="1"/>
<pt x="556" y="700" on="1"/>
<pt x="355" y="700" on="1"/>
</contour>
<contour>
<pt x="5" y="0" on="1"/>
<pt x="206" y="0" on="1"/>
<pt x="556" y="700" on="1"/>
<pt x="355" y="700" on="1"/>
</contour>
<contour>
<pt x="640" y="311" on="1"/>
<pt x="190" y="311" on="1"/>
<pt x="190" y="191" on="1"/>
<pt x="640" y="191" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="Aacute" xMin="5" yMin="0" xMax="906" yMax="949">
<component glyphName="A" x="0" y="0" flags="0x204"/>
<component glyphName="acutecomb" x="479" y="124" flags="0x4"/>
</TTGlyph>
<TTGlyph name="O" xMin="15" yMin="-10" xMax="670" yMax="710">
<contour>
<pt x="342" y="-10" on="1"/>
<pt x="172" y="-10" on="0"/>
<pt x="15" y="163" on="0"/>
<pt x="15" y="350" on="1"/>
<pt x="15" y="538" on="0"/>
<pt x="172" y="710" on="0"/>
<pt x="342" y="710" on="1"/>
<pt x="513" y="710" on="0"/>
<pt x="670" y="538" on="0"/>
<pt x="670" y="350" on="1"/>
<pt x="670" y="163" on="0"/>
<pt x="513" y="-10" on="0"/>
</contour>
<contour>
<pt x="342" y="153" on="1"/>
<pt x="419" y="153" on="0"/>
<pt x="490" y="247" on="0"/>
<pt x="490" y="350" on="1"/>
<pt x="490" y="453" on="0"/>
<pt x="419" y="547" on="0"/>
<pt x="342" y="547" on="1"/>
<pt x="266" y="547" on="0"/>
<pt x="195" y="453" on="0"/>
<pt x="195" y="350" on="1"/>
<pt x="195" y="247" on="0"/>
<pt x="266" y="153" on="0"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="V" xMin="5" yMin="0" xMax="906" yMax="700">
<contour>
<pt x="355" y="0" on="1"/>
<pt x="705" y="700" on="1"/>
<pt x="906" y="700" on="1"/>
<pt x="556" y="0" on="1"/>
</contour>
<contour>
<pt x="355" y="0" on="1"/>
<pt x="5" y="700" on="1"/>
<pt x="206" y="700" on="1"/>
<pt x="556" y="0" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="acutecomb" xMin="-141" yMin="630" xMax="125" yMax="825">
<contour>
<pt x="-118" y="756" on="1"/>
<pt x="-141" y="630" on="1"/>
<pt x="102" y="699" on="1"/>
<pt x="125" y="825" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar" xMin="1" yMin="-98" xMax="595" yMax="789">
<contour>
<pt x="249" y="789" on="1"/>
<pt x="369" y="789" on="1"/>
<pt x="369" y="743" on="1"/>
<pt x="427" y="735" on="0"/>
<pt x="537" y="681" on="0"/>
<pt x="590" y="623" on="1"/>
<pt x="510" y="515" on="1"/>
<pt x="479" y="549" on="0"/>
<pt x="411" y="588" on="0"/>
<pt x="369" y="595" on="1"/>
<pt x="369" y="400" on="1"/>
<pt x="476" y="378" on="0"/>
<pt x="595" y="278" on="0"/>
<pt x="595" y="184" on="1"/>
<pt x="595" y="93" on="0"/>
<pt x="474" y="-32" on="0"/>
<pt x="369" y="-46" on="1"/>
<pt x="369" y="-98" on="1"/>
<pt x="249" y="-98" on="1"/>
<pt x="249" y="-47" on="1"/>
<pt x="176" y="-39" on="0"/>
<pt x="52" y="17" on="0"/>
<pt x="1" y="69" on="1"/>
<pt x="80" y="179" on="1"/>
<pt x="118" y="144" on="0"/>
<pt x="195" y="106" on="0"/>
<pt x="249" y="100" on="1"/>
<pt x="249" y="273" on="1"/>
<pt x="246" y="274" on="1"/>
<pt x="144" y="294" on="0"/>
<pt x="28" y="405" on="0"/>
<pt x="28" y="502" on="1"/>
<pt x="28" y="567" on="0"/>
<pt x="84" y="667" on="0"/>
<pt x="184" y="732" on="0"/>
<pt x="249" y="742" on="1"/>
</contour>
<contour>
<pt x="152" y="502" on="1"/>
<pt x="152" y="480" on="0"/>
<pt x="166" y="453" on="0"/>
<pt x="208" y="434" on="0"/>
<pt x="249" y="424" on="1"/>
<pt x="249" y="595" on="1"/>
<pt x="199" y="587" on="0"/>
<pt x="152" y="538" on="0"/>
</contour>
<contour>
<pt x="369" y="100" on="1"/>
<pt x="426" y="107" on="0"/>
<pt x="471" y="150" on="0"/>
<pt x="471" y="183" on="1"/>
<pt x="471" y="201" on="0"/>
<pt x="456" y="225" on="0"/>
<pt x="412" y="243" on="0"/>
<pt x="369" y="252" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.BRACKET.500" xMin="1" yMin="-98" xMax="595" yMax="789">
<contour>
<pt x="249" y="789" on="1"/>
<pt x="369" y="789" on="1"/>
<pt x="369" y="743" on="1"/>
<pt x="427" y="735" on="0"/>
<pt x="537" y="681" on="0"/>
<pt x="590" y="623" on="1"/>
<pt x="510" y="515" on="1"/>
<pt x="468" y="560" on="0"/>
<pt x="374" y="600" on="0"/>
<pt x="308" y="600" on="1"/>
<pt x="227" y="600" on="0"/>
<pt x="152" y="548" on="0"/>
<pt x="152" y="502" on="1"/>
<pt x="152" y="479" on="0"/>
<pt x="168" y="450" on="0"/>
<pt x="217" y="431" on="0"/>
<pt x="264" y="421" on="1"/>
<pt x="363" y="401" on="1"/>
<pt x="473" y="379" on="0"/>
<pt x="595" y="279" on="0"/>
<pt x="595" y="184" on="1"/>
<pt x="595" y="93" on="0"/>
<pt x="474" y="-32" on="0"/>
<pt x="369" y="-46" on="1"/>
<pt x="369" y="-98" on="1"/>
<pt x="249" y="-98" on="1"/>
<pt x="249" y="-47" on="1"/>
<pt x="176" y="-39" on="0"/>
<pt x="52" y="17" on="0"/>
<pt x="1" y="69" on="1"/>
<pt x="80" y="179" on="1"/>
<pt x="112" y="150" on="0"/>
<pt x="176" y="114" on="0"/>
<pt x="256" y="97" on="0"/>
<pt x="310" y="97" on="1"/>
<pt x="402" y="97" on="0"/>
<pt x="471" y="143" on="0"/>
<pt x="471" y="183" on="1"/>
<pt x="471" y="203" on="0"/>
<pt x="453" y="228" on="0"/>
<pt x="399" y="247" on="0"/>
<pt x="345" y="256" on="1"/>
<pt x="246" y="274" on="1"/>
<pt x="144" y="293" on="0"/>
<pt x="28" y="405" on="0"/>
<pt x="28" y="502" on="1"/>
<pt x="28" y="567" on="0"/>
<pt x="84" y="667" on="0"/>
<pt x="184" y="732" on="0"/>
<pt x="249" y="742" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.bold" xMin="1" yMin="-98" xMax="595" yMax="789">
<contour>
<pt x="249" y="789" on="1"/>
<pt x="369" y="789" on="1"/>
<pt x="369" y="743" on="1"/>
<pt x="427" y="735" on="0"/>
<pt x="537" y="681" on="0"/>
<pt x="590" y="623" on="1"/>
<pt x="510" y="515" on="1"/>
<pt x="468" y="560" on="0"/>
<pt x="374" y="600" on="0"/>
<pt x="308" y="600" on="1"/>
<pt x="227" y="600" on="0"/>
<pt x="152" y="548" on="0"/>
<pt x="152" y="502" on="1"/>
<pt x="152" y="479" on="0"/>
<pt x="168" y="450" on="0"/>
<pt x="217" y="431" on="0"/>
<pt x="264" y="421" on="1"/>
<pt x="363" y="401" on="1"/>
<pt x="473" y="379" on="0"/>
<pt x="595" y="279" on="0"/>
<pt x="595" y="184" on="1"/>
<pt x="595" y="93" on="0"/>
<pt x="474" y="-32" on="0"/>
<pt x="369" y="-46" on="1"/>
<pt x="369" y="-98" on="1"/>
<pt x="249" y="-98" on="1"/>
<pt x="249" y="-47" on="1"/>
<pt x="176" y="-39" on="0"/>
<pt x="52" y="17" on="0"/>
<pt x="1" y="69" on="1"/>
<pt x="80" y="179" on="1"/>
<pt x="112" y="150" on="0"/>
<pt x="176" y="114" on="0"/>
<pt x="256" y="97" on="0"/>
<pt x="310" y="97" on="1"/>
<pt x="402" y="97" on="0"/>
<pt x="471" y="143" on="0"/>
<pt x="471" y="183" on="1"/>
<pt x="471" y="203" on="0"/>
<pt x="453" y="228" on="0"/>
<pt x="399" y="247" on="0"/>
<pt x="345" y="256" on="1"/>
<pt x="246" y="274" on="1"/>
<pt x="144" y="293" on="0"/>
<pt x="28" y="405" on="0"/>
<pt x="28" y="502" on="1"/>
<pt x="28" y="567" on="0"/>
<pt x="84" y="667" on="0"/>
<pt x="184" y="732" on="0"/>
<pt x="249" y="742" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="space"/><!-- contains no outline data -->
</glyf>
<name>
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
Bold
</namerecord>
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
1.000;NONE;SimpleTwoAxis-Bold
</namerecord>
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis Bold
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
Version 1.000
</namerecord>
<namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
SimpleTwoAxis-Bold
</namerecord>
</name>
<post>
<formatType value="2.0"/>
<italicAngle value="0.0"/>
<underlinePosition value="-100"/>
<underlineThickness value="50"/>
<isFixedPitch value="0"/>
<minMemType42 value="0"/>
<maxMemType42 value="0"/>
<minMemType1 value="0"/>
<maxMemType1 value="0"/>
<psNames>
<!-- This file uses unique glyph names based on the information
found in the 'post' table. Since these names might not be unique,
we have to invent artificial names in case of clashes. In order to
be able to retain the original information, we need a name to
ps name mapping for those cases where they differ. That's what
you see below.
-->
</psNames>
<extraNames>
<!-- following are the name that are not taken from the standard Mac glyph order -->
<psName name="dollar.bold"/>
<psName name="acutecomb"/>
<psName name="dollar.BRACKET.500"/>
</extraNames>
</post>
<GDEF>
<Version value="0x00010000"/>
<GlyphClassDef Format="2">
<ClassDef glyph="A" class="1"/>
<ClassDef glyph="Aacute" class="1"/>
<ClassDef glyph="acutecomb" class="3"/>
</GlyphClassDef>
</GDEF>
<GPOS>
<Version value="0x00010000"/>
<ScriptList>
<!-- ScriptCount=1 -->
<ScriptRecord index="0">
<ScriptTag value="DFLT"/>
<Script>
<DefaultLangSys>
<ReqFeatureIndex value="65535"/>
<!-- FeatureCount=2 -->
<FeatureIndex index="0" value="0"/>
</DefaultLangSys>
<!-- LangSysCount=0 -->
</Script>
</ScriptRecord>
</ScriptList>
<FeatureList>
<!-- FeatureCount=2 -->
<FeatureRecord index="0">
<FeatureTag value="kern"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="0"/>
</Feature>
</FeatureRecord>
</FeatureList>
<LookupList>
<!-- LookupCount=2 -->
<Lookup index="0">
<LookupType value="2"/>
<LookupFlag value="8"/><!-- ignoreMarks -->
<!-- SubTableCount=1 -->
<PairPos index="0" Format="1">
<Coverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
<Glyph value="V"/>
</Coverage>
<ValueFormat1 value="4"/>
<ValueFormat2 value="0"/>
<!-- PairSetCount=3 -->
<PairSet index="0">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-120"/>
</PairValueRecord>
</PairSet>
<PairSet index="1">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-120"/>
</PairValueRecord>
</PairSet>
<PairSet index="2">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="O"/>
<Value1 XAdvance="-20"/>
</PairValueRecord>
</PairSet>
</PairPos>
</Lookup>
</LookupList>
</GPOS>
</ttFont>

View File

@ -0,0 +1,626 @@
<?xml version="1.0" encoding="UTF-8"?>
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.20">
<GlyphOrder>
<!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
<GlyphID id="0" name=".notdef"/>
<GlyphID id="1" name="A"/>
<GlyphID id="2" name="Aacute"/>
<GlyphID id="3" name="O"/>
<GlyphID id="4" name="V"/>
<GlyphID id="5" name="space"/>
<GlyphID id="6" name="dollar"/>
<GlyphID id="7" name="dollar.bold"/>
<GlyphID id="8" name="acutecomb"/>
<GlyphID id="9" name="dollar.BRACKET.500"/>
</GlyphOrder>
<head>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="1.0"/>
<fontRevision value="1.0"/>
<checkSumAdjustment value="0x3c7bc79b"/>
<magicNumber value="0x5f0f3cf5"/>
<flags value="00000000 00000011"/>
<unitsPerEm value="1000"/>
<created value="Fri Jan 15 14:37:13 2021"/>
<modified value="Mon Mar 15 12:57:03 2021"/>
<xMin value="-141"/>
<yMin value="-200"/>
<xMax value="751"/>
<yMax value="915"/>
<macStyle value="00000000 00000000"/>
<lowestRecPPEM value="6"/>
<fontDirectionHint value="2"/>
<indexToLocFormat value="0"/>
<glyphDataFormat value="0"/>
</head>
<hhea>
<tableVersion value="0x00010000"/>
<ascent value="1000"/>
<descent value="-200"/>
<lineGap value="0"/>
<advanceWidthMax value="756"/>
<minLeftSideBearing value="-141"/>
<minRightSideBearing value="-125"/>
<xMaxExtent value="751"/>
<caretSlopeRise value="1"/>
<caretSlopeRun value="0"/>
<caretOffset value="0"/>
<reserved0 value="0"/>
<reserved1 value="0"/>
<reserved2 value="0"/>
<reserved3 value="0"/>
<metricDataFormat value="0"/>
<numberOfHMetrics value="10"/>
</hhea>
<maxp>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="0x10000"/>
<numGlyphs value="10"/>
<maxPoints value="52"/>
<maxContours value="3"/>
<maxCompositePoints value="16"/>
<maxCompositeContours value="4"/>
<maxZones value="1"/>
<maxTwilightPoints value="0"/>
<maxStorage value="0"/>
<maxFunctionDefs value="0"/>
<maxInstructionDefs value="0"/>
<maxStackElements value="0"/>
<maxSizeOfInstructions value="0"/>
<maxComponentElements value="2"/>
<maxComponentDepth value="1"/>
</maxp>
<OS_2>
<!-- The fields 'usFirstCharIndex' and 'usLastCharIndex'
will be recalculated by the compiler -->
<version value="4"/>
<xAvgCharWidth value="604"/>
<usWeightClass value="400"/>
<usWidthClass value="5"/>
<fsType value="00000000 00001000"/>
<ySubscriptXSize value="650"/>
<ySubscriptYSize value="600"/>
<ySubscriptXOffset value="0"/>
<ySubscriptYOffset value="75"/>
<ySuperscriptXSize value="650"/>
<ySuperscriptYSize value="600"/>
<ySuperscriptXOffset value="0"/>
<ySuperscriptYOffset value="350"/>
<yStrikeoutSize value="50"/>
<yStrikeoutPosition value="300"/>
<sFamilyClass value="0"/>
<panose>
<bFamilyType value="0"/>
<bSerifStyle value="0"/>
<bWeight value="0"/>
<bProportion value="0"/>
<bContrast value="0"/>
<bStrokeVariation value="0"/>
<bArmStyle value="0"/>
<bLetterForm value="0"/>
<bMidline value="0"/>
<bXHeight value="0"/>
</panose>
<ulUnicodeRange1 value="00000000 00000000 00000000 01000011"/>
<ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
<achVendID value="NONE"/>
<fsSelection value="00000000 01000000"/>
<usFirstCharIndex value="32"/>
<usLastCharIndex value="769"/>
<sTypoAscender value="800"/>
<sTypoDescender value="-200"/>
<sTypoLineGap value="200"/>
<usWinAscent value="1000"/>
<usWinDescent value="200"/>
<ulCodePageRange1 value="00000000 00000000 00000000 00000001"/>
<ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
<sxHeight value="500"/>
<sCapHeight value="700"/>
<usDefaultChar value="0"/>
<usBreakChar value="32"/>
<usMaxContext value="2"/>
</OS_2>
<hmtx>
<mtx name=".notdef" width="500" lsb="50"/>
<mtx name="A" width="756" lsb="5"/>
<mtx name="Aacute" width="756" lsb="5"/>
<mtx name="O" width="664" lsb="30"/>
<mtx name="V" width="756" lsb="5"/>
<mtx name="acutecomb" width="0" lsb="-141"/>
<mtx name="dollar" width="600" lsb="29"/>
<mtx name="dollar.BRACKET.500" width="600" lsb="29"/>
<mtx name="dollar.bold" width="600" lsb="29"/>
<mtx name="space" width="200" lsb="0"/>
</hmtx>
<cmap>
<tableVersion version="0"/>
<cmap_format_4 platformID="0" platEncID="3" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
<cmap_format_4 platformID="3" platEncID="1" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
</cmap>
<loca>
<!-- The 'loca' table will be calculated by the compiler -->
</loca>
<glyf>
<!-- The xMin, yMin, xMax and yMax values
will be recalculated by the compiler. -->
<TTGlyph name=".notdef" xMin="50" yMin="-200" xMax="450" yMax="800">
<contour>
<pt x="50" y="-200" on="1"/>
<pt x="50" y="800" on="1"/>
<pt x="450" y="800" on="1"/>
<pt x="450" y="-200" on="1"/>
</contour>
<contour>
<pt x="100" y="-150" on="1"/>
<pt x="400" y="-150" on="1"/>
<pt x="400" y="750" on="1"/>
<pt x="100" y="750" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="A" xMin="5" yMin="0" xMax="751" yMax="700">
<contour>
<pt x="641" y="0" on="1"/>
<pt x="751" y="0" on="1"/>
<pt x="433" y="700" on="1"/>
<pt x="323" y="700" on="1"/>
</contour>
<contour>
<pt x="5" y="0" on="1"/>
<pt x="115" y="0" on="1"/>
<pt x="433" y="700" on="1"/>
<pt x="323" y="700" on="1"/>
</contour>
<contour>
<pt x="567" y="284" on="1"/>
<pt x="152" y="284" on="1"/>
<pt x="152" y="204" on="1"/>
<pt x="567" y="204" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="Aacute" xMin="5" yMin="0" xMax="751" yMax="915">
<component glyphName="A" x="0" y="0" flags="0x204"/>
<component glyphName="acutecomb" x="402" y="130" flags="0x4"/>
</TTGlyph>
<TTGlyph name="O" xMin="30" yMin="-10" xMax="634" yMax="710">
<contour>
<pt x="332" y="-10" on="1"/>
<pt x="181" y="-10" on="0"/>
<pt x="30" y="169" on="0"/>
<pt x="30" y="350" on="1"/>
<pt x="30" y="531" on="0"/>
<pt x="181" y="710" on="0"/>
<pt x="332" y="710" on="1"/>
<pt x="484" y="710" on="0"/>
<pt x="634" y="531" on="0"/>
<pt x="634" y="350" on="1"/>
<pt x="634" y="169" on="0"/>
<pt x="484" y="-10" on="0"/>
</contour>
<contour>
<pt x="332" y="74" on="1"/>
<pt x="438" y="74" on="0"/>
<pt x="544" y="212" on="0"/>
<pt x="544" y="350" on="1"/>
<pt x="544" y="488" on="0"/>
<pt x="438" y="626" on="0"/>
<pt x="332" y="626" on="1"/>
<pt x="226" y="626" on="0"/>
<pt x="120" y="488" on="0"/>
<pt x="120" y="350" on="1"/>
<pt x="120" y="212" on="0"/>
<pt x="226" y="74" on="0"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="V" xMin="5" yMin="0" xMax="751" yMax="700">
<contour>
<pt x="323" y="0" on="1"/>
<pt x="641" y="700" on="1"/>
<pt x="751" y="700" on="1"/>
<pt x="433" y="0" on="1"/>
</contour>
<contour>
<pt x="323" y="0" on="1"/>
<pt x="5" y="700" on="1"/>
<pt x="115" y="700" on="1"/>
<pt x="433" y="0" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="acutecomb" xMin="-141" yMin="630" xMax="125" yMax="785">
<contour>
<pt x="-118" y="716" on="1"/>
<pt x="-141" y="630" on="1"/>
<pt x="102" y="699" on="1"/>
<pt x="125" y="785" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar" xMin="29" yMin="-68" xMax="580" yMax="759">
<contour>
<pt x="264" y="759" on="1"/>
<pt x="354" y="759" on="1"/>
<pt x="354" y="715" on="1"/>
<pt x="415" y="709" on="0"/>
<pt x="519" y="662" on="0"/>
<pt x="562" y="620" on="1"/>
<pt x="509" y="548" on="1"/>
<pt x="473" y="584" on="0"/>
<pt x="398" y="621" on="0"/>
<pt x="354" y="627" on="1"/>
<pt x="354" y="373" on="1"/>
<pt x="467" y="351" on="0"/>
<pt x="580" y="263" on="0"/>
<pt x="580" y="184" on="1"/>
<pt x="580" y="102" on="0"/>
<pt x="459" y="-8" on="0"/>
<pt x="354" y="-18" on="1"/>
<pt x="354" y="-68" on="1"/>
<pt x="264" y="-68" on="1"/>
<pt x="264" y="-18" on="1"/>
<pt x="192" y="-12" on="0"/>
<pt x="72" y="34" on="0"/>
<pt x="29" y="74" on="1"/>
<pt x="81" y="146" on="1"/>
<pt x="123" y="110" on="0"/>
<pt x="207" y="73" on="0"/>
<pt x="264" y="69" on="1"/>
<pt x="264" y="301" on="1"/>
<pt x="249" y="304" on="1"/>
<pt x="148" y="323" on="0"/>
<pt x="43" y="420" on="0"/>
<pt x="43" y="502" on="1"/>
<pt x="43" y="559" on="0"/>
<pt x="99" y="650" on="0"/>
<pt x="199" y="707" on="0"/>
<pt x="264" y="715" on="1"/>
</contour>
<contour>
<pt x="137" y="502" on="1"/>
<pt x="137" y="470" on="0"/>
<pt x="160" y="428" on="0"/>
<pt x="214" y="402" on="0"/>
<pt x="261" y="392" on="1"/>
<pt x="264" y="627" on="1"/>
<pt x="203" y="618" on="0"/>
<pt x="137" y="553" on="0"/>
</contour>
<contour>
<pt x="354" y="69" on="1"/>
<pt x="423" y="76" on="0"/>
<pt x="486" y="135" on="0"/>
<pt x="486" y="183" on="1"/>
<pt x="486" y="211" on="0"/>
<pt x="462" y="250" on="0"/>
<pt x="405" y="275" on="0"/>
<pt x="354" y="285" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.BRACKET.500" xMin="29" yMin="-76" xMax="580" yMax="759">
<contour>
<pt x="264" y="759" on="1"/>
<pt x="354" y="759" on="1"/>
<pt x="354" y="715" on="1"/>
<pt x="415" y="709" on="0"/>
<pt x="519" y="662" on="0"/>
<pt x="562" y="620" on="1"/>
<pt x="509" y="548" on="1"/>
<pt x="464" y="592" on="0"/>
<pt x="370" y="630" on="0"/>
<pt x="308" y="630" on="1"/>
<pt x="226" y="630" on="0"/>
<pt x="137" y="562" on="0"/>
<pt x="137" y="502" on="1"/>
<pt x="137" y="470" on="0"/>
<pt x="160" y="428" on="0"/>
<pt x="214" y="402" on="0"/>
<pt x="261" y="392" on="1"/>
<pt x="360" y="372" on="1"/>
<pt x="469" y="350" on="0"/>
<pt x="580" y="263" on="0"/>
<pt x="580" y="184" on="1"/>
<pt x="580" y="102" on="0"/>
<pt x="459" y="-8" on="0"/>
<pt x="354" y="-18" on="1"/>
<pt x="354" y="-76" on="1"/>
<pt x="264" y="-76" on="1"/>
<pt x="264" y="-18" on="1"/>
<pt x="192" y="-12" on="0"/>
<pt x="72" y="34" on="0"/>
<pt x="29" y="74" on="1"/>
<pt x="81" y="146" on="1"/>
<pt x="115" y="118" on="0"/>
<pt x="180" y="83" on="0"/>
<pt x="259" y="67" on="0"/>
<pt x="310" y="67" on="1"/>
<pt x="403" y="67" on="0"/>
<pt x="486" y="128" on="0"/>
<pt x="486" y="183" on="1"/>
<pt x="486" y="212" on="0"/>
<pt x="461" y="251" on="0"/>
<pt x="401" y="277" on="0"/>
<pt x="348" y="286" on="1"/>
<pt x="249" y="304" on="1"/>
<pt x="148" y="323" on="0"/>
<pt x="43" y="420" on="0"/>
<pt x="43" y="502" on="1"/>
<pt x="43" y="559" on="0"/>
<pt x="99" y="650" on="0"/>
<pt x="199" y="707" on="0"/>
<pt x="264" y="715" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.bold" xMin="29" yMin="-76" xMax="580" yMax="759">
<contour>
<pt x="264" y="759" on="1"/>
<pt x="354" y="759" on="1"/>
<pt x="354" y="715" on="1"/>
<pt x="415" y="709" on="0"/>
<pt x="519" y="662" on="0"/>
<pt x="562" y="620" on="1"/>
<pt x="509" y="548" on="1"/>
<pt x="464" y="592" on="0"/>
<pt x="370" y="630" on="0"/>
<pt x="308" y="630" on="1"/>
<pt x="226" y="630" on="0"/>
<pt x="137" y="562" on="0"/>
<pt x="137" y="502" on="1"/>
<pt x="137" y="470" on="0"/>
<pt x="160" y="428" on="0"/>
<pt x="214" y="402" on="0"/>
<pt x="261" y="392" on="1"/>
<pt x="360" y="372" on="1"/>
<pt x="469" y="350" on="0"/>
<pt x="580" y="263" on="0"/>
<pt x="580" y="184" on="1"/>
<pt x="580" y="102" on="0"/>
<pt x="459" y="-8" on="0"/>
<pt x="354" y="-18" on="1"/>
<pt x="354" y="-76" on="1"/>
<pt x="264" y="-76" on="1"/>
<pt x="264" y="-18" on="1"/>
<pt x="192" y="-12" on="0"/>
<pt x="72" y="34" on="0"/>
<pt x="29" y="74" on="1"/>
<pt x="81" y="146" on="1"/>
<pt x="115" y="118" on="0"/>
<pt x="180" y="83" on="0"/>
<pt x="259" y="67" on="0"/>
<pt x="310" y="67" on="1"/>
<pt x="403" y="67" on="0"/>
<pt x="486" y="128" on="0"/>
<pt x="486" y="183" on="1"/>
<pt x="486" y="212" on="0"/>
<pt x="461" y="251" on="0"/>
<pt x="401" y="277" on="0"/>
<pt x="348" y="286" on="1"/>
<pt x="249" y="304" on="1"/>
<pt x="148" y="323" on="0"/>
<pt x="43" y="420" on="0"/>
<pt x="43" y="502" on="1"/>
<pt x="43" y="559" on="0"/>
<pt x="99" y="650" on="0"/>
<pt x="199" y="707" on="0"/>
<pt x="264" y="715" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="space"/><!-- contains no outline data -->
</glyf>
<name>
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
Regular
</namerecord>
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
1.000;NONE;SimpleTwoAxis-Regular
</namerecord>
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis Regular
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
Version 1.000
</namerecord>
<namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
SimpleTwoAxis-Regular
</namerecord>
</name>
<post>
<formatType value="2.0"/>
<italicAngle value="0.0"/>
<underlinePosition value="-100"/>
<underlineThickness value="50"/>
<isFixedPitch value="0"/>
<minMemType42 value="0"/>
<maxMemType42 value="0"/>
<minMemType1 value="0"/>
<maxMemType1 value="0"/>
<psNames>
<!-- This file uses unique glyph names based on the information
found in the 'post' table. Since these names might not be unique,
we have to invent artificial names in case of clashes. In order to
be able to retain the original information, we need a name to
ps name mapping for those cases where they differ. That's what
you see below.
-->
</psNames>
<extraNames>
<!-- following are the name that are not taken from the standard Mac glyph order -->
<psName name="dollar.bold"/>
<psName name="acutecomb"/>
<psName name="dollar.BRACKET.500"/>
</extraNames>
</post>
<GDEF>
<Version value="0x00010000"/>
<GlyphClassDef Format="2">
<ClassDef glyph="A" class="1"/>
<ClassDef glyph="Aacute" class="1"/>
<ClassDef glyph="acutecomb" class="3"/>
</GlyphClassDef>
</GDEF>
<GPOS>
<Version value="0x00010000"/>
<ScriptList>
<!-- ScriptCount=1 -->
<ScriptRecord index="0">
<ScriptTag value="DFLT"/>
<Script>
<DefaultLangSys>
<ReqFeatureIndex value="65535"/>
<!-- FeatureCount=2 -->
<FeatureIndex index="0" value="0"/>
<FeatureIndex index="1" value="1"/>
</DefaultLangSys>
<!-- LangSysCount=0 -->
</Script>
</ScriptRecord>
</ScriptList>
<FeatureList>
<!-- FeatureCount=2 -->
<FeatureRecord index="0">
<FeatureTag value="kern"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="0"/>
</Feature>
</FeatureRecord>
<FeatureRecord index="1">
<FeatureTag value="mark"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="1"/>
</Feature>
</FeatureRecord>
</FeatureList>
<LookupList>
<!-- LookupCount=2 -->
<Lookup index="0">
<LookupType value="2"/>
<LookupFlag value="8"/><!-- ignoreMarks -->
<!-- SubTableCount=1 -->
<PairPos index="0" Format="1">
<Coverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
<Glyph value="V"/>
</Coverage>
<ValueFormat1 value="4"/>
<ValueFormat2 value="0"/>
<!-- PairSetCount=3 -->
<PairSet index="0">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="1">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="2">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="O"/>
<Value1 XAdvance="-20"/>
</PairValueRecord>
</PairSet>
</PairPos>
</Lookup>
<Lookup index="1">
<LookupType value="4"/>
<LookupFlag value="0"/>
<!-- SubTableCount=1 -->
<MarkBasePos index="0" Format="1">
<MarkCoverage Format="1">
<Glyph value="acutecomb"/>
</MarkCoverage>
<BaseCoverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
</BaseCoverage>
<!-- ClassCount=1 -->
<MarkArray>
<!-- MarkCount=1 -->
<MarkRecord index="0">
<Class value="0"/>
<MarkAnchor Format="1">
<XCoordinate value="4"/>
<YCoordinate value="623"/>
</MarkAnchor>
</MarkRecord>
</MarkArray>
<BaseArray>
<!-- BaseCount=2 -->
<BaseRecord index="0">
<BaseAnchor index="0" Format="1">
<XCoordinate value="406"/>
<YCoordinate value="753"/>
</BaseAnchor>
</BaseRecord>
<BaseRecord index="1">
<BaseAnchor index="0" Format="1">
<XCoordinate value="406"/>
<YCoordinate value="753"/>
</BaseAnchor>
</BaseRecord>
</BaseArray>
</MarkBasePos>
</Lookup>
</LookupList>
</GPOS>
</ttFont>

View File

@ -0,0 +1,622 @@
<?xml version="1.0" encoding="UTF-8"?>
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.20">
<GlyphOrder>
<!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
<GlyphID id="0" name=".notdef"/>
<GlyphID id="1" name="A"/>
<GlyphID id="2" name="Aacute"/>
<GlyphID id="3" name="O"/>
<GlyphID id="4" name="V"/>
<GlyphID id="5" name="space"/>
<GlyphID id="6" name="dollar"/>
<GlyphID id="7" name="dollar.bold"/>
<GlyphID id="8" name="acutecomb"/>
<GlyphID id="9" name="dollar.BRACKET.500"/>
</GlyphOrder>
<head>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="1.0"/>
<fontRevision value="1.0"/>
<checkSumAdjustment value="0x10cb3f3"/>
<magicNumber value="0x5f0f3cf5"/>
<flags value="00000000 00000011"/>
<unitsPerEm value="1000"/>
<created value="Fri Jan 15 14:37:13 2021"/>
<modified value="Mon Mar 15 12:57:03 2021"/>
<xMin value="-141"/>
<yMin value="-200"/>
<xMax value="906"/>
<yMax value="949"/>
<macStyle value="00000000 00000001"/>
<lowestRecPPEM value="6"/>
<fontDirectionHint value="2"/>
<indexToLocFormat value="0"/>
<glyphDataFormat value="0"/>
</head>
<hhea>
<tableVersion value="0x00010000"/>
<ascent value="1000"/>
<descent value="-200"/>
<lineGap value="0"/>
<advanceWidthMax value="911"/>
<minLeftSideBearing value="-141"/>
<minRightSideBearing value="-125"/>
<xMaxExtent value="906"/>
<caretSlopeRise value="1"/>
<caretSlopeRun value="0"/>
<caretOffset value="0"/>
<reserved0 value="0"/>
<reserved1 value="0"/>
<reserved2 value="0"/>
<reserved3 value="0"/>
<metricDataFormat value="0"/>
<numberOfHMetrics value="10"/>
</hhea>
<maxp>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="0x10000"/>
<numGlyphs value="10"/>
<maxPoints value="52"/>
<maxContours value="3"/>
<maxCompositePoints value="16"/>
<maxCompositeContours value="4"/>
<maxZones value="1"/>
<maxTwilightPoints value="0"/>
<maxStorage value="0"/>
<maxFunctionDefs value="0"/>
<maxInstructionDefs value="0"/>
<maxStackElements value="0"/>
<maxSizeOfInstructions value="0"/>
<maxComponentElements value="2"/>
<maxComponentDepth value="1"/>
</maxp>
<OS_2>
<!-- The fields 'usFirstCharIndex' and 'usLastCharIndex'
will be recalculated by the compiler -->
<version value="4"/>
<xAvgCharWidth value="672"/>
<usWeightClass value="400"/>
<usWidthClass value="5"/>
<fsType value="00000000 00001000"/>
<ySubscriptXSize value="650"/>
<ySubscriptYSize value="600"/>
<ySubscriptXOffset value="0"/>
<ySubscriptYOffset value="75"/>
<ySuperscriptXSize value="650"/>
<ySuperscriptYSize value="600"/>
<ySuperscriptXOffset value="0"/>
<ySuperscriptYOffset value="350"/>
<yStrikeoutSize value="50"/>
<yStrikeoutPosition value="300"/>
<sFamilyClass value="0"/>
<panose>
<bFamilyType value="0"/>
<bSerifStyle value="0"/>
<bWeight value="0"/>
<bProportion value="0"/>
<bContrast value="0"/>
<bStrokeVariation value="0"/>
<bArmStyle value="0"/>
<bLetterForm value="0"/>
<bMidline value="0"/>
<bXHeight value="0"/>
</panose>
<ulUnicodeRange1 value="00000000 00000000 00000000 01000011"/>
<ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
<achVendID value="NONE"/>
<fsSelection value="00000000 00100000"/>
<usFirstCharIndex value="32"/>
<usLastCharIndex value="769"/>
<sTypoAscender value="800"/>
<sTypoDescender value="-200"/>
<sTypoLineGap value="200"/>
<usWinAscent value="1000"/>
<usWinDescent value="200"/>
<ulCodePageRange1 value="00000000 00000000 00000000 00000001"/>
<ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
<sxHeight value="500"/>
<sCapHeight value="700"/>
<usDefaultChar value="0"/>
<usBreakChar value="32"/>
<usMaxContext value="2"/>
</OS_2>
<hmtx>
<mtx name=".notdef" width="500" lsb="50"/>
<mtx name="A" width="911" lsb="5"/>
<mtx name="Aacute" width="911" lsb="5"/>
<mtx name="O" width="715" lsb="15"/>
<mtx name="V" width="911" lsb="5"/>
<mtx name="acutecomb" width="0" lsb="-141"/>
<mtx name="dollar" width="600" lsb="1"/>
<mtx name="dollar.BRACKET.500" width="600" lsb="1"/>
<mtx name="dollar.bold" width="600" lsb="1"/>
<mtx name="space" width="300" lsb="0"/>
</hmtx>
<cmap>
<tableVersion version="0"/>
<cmap_format_4 platformID="0" platEncID="3" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
<cmap_format_4 platformID="3" platEncID="1" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
</cmap>
<loca>
<!-- The 'loca' table will be calculated by the compiler -->
</loca>
<glyf>
<!-- The xMin, yMin, xMax and yMax values
will be recalculated by the compiler. -->
<TTGlyph name=".notdef" xMin="50" yMin="-200" xMax="450" yMax="800">
<contour>
<pt x="50" y="-200" on="1"/>
<pt x="50" y="800" on="1"/>
<pt x="450" y="800" on="1"/>
<pt x="450" y="-200" on="1"/>
</contour>
<contour>
<pt x="100" y="-150" on="1"/>
<pt x="400" y="-150" on="1"/>
<pt x="400" y="750" on="1"/>
<pt x="100" y="750" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="A" xMin="5" yMin="0" xMax="906" yMax="700">
<contour>
<pt x="705" y="0" on="1"/>
<pt x="906" y="0" on="1"/>
<pt x="556" y="700" on="1"/>
<pt x="355" y="700" on="1"/>
</contour>
<contour>
<pt x="5" y="0" on="1"/>
<pt x="206" y="0" on="1"/>
<pt x="556" y="700" on="1"/>
<pt x="355" y="700" on="1"/>
</contour>
<contour>
<pt x="640" y="311" on="1"/>
<pt x="190" y="311" on="1"/>
<pt x="190" y="191" on="1"/>
<pt x="640" y="191" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="Aacute" xMin="5" yMin="0" xMax="906" yMax="949">
<component glyphName="A" x="0" y="0" flags="0x204"/>
<component glyphName="acutecomb" x="479" y="124" flags="0x4"/>
</TTGlyph>
<TTGlyph name="O" xMin="15" yMin="-10" xMax="670" yMax="710">
<contour>
<pt x="342" y="-10" on="1"/>
<pt x="172" y="-10" on="0"/>
<pt x="15" y="163" on="0"/>
<pt x="15" y="350" on="1"/>
<pt x="15" y="538" on="0"/>
<pt x="172" y="710" on="0"/>
<pt x="342" y="710" on="1"/>
<pt x="513" y="710" on="0"/>
<pt x="670" y="538" on="0"/>
<pt x="670" y="350" on="1"/>
<pt x="670" y="163" on="0"/>
<pt x="513" y="-10" on="0"/>
</contour>
<contour>
<pt x="342" y="153" on="1"/>
<pt x="419" y="153" on="0"/>
<pt x="490" y="247" on="0"/>
<pt x="490" y="350" on="1"/>
<pt x="490" y="453" on="0"/>
<pt x="419" y="547" on="0"/>
<pt x="342" y="547" on="1"/>
<pt x="266" y="547" on="0"/>
<pt x="195" y="453" on="0"/>
<pt x="195" y="350" on="1"/>
<pt x="195" y="247" on="0"/>
<pt x="266" y="153" on="0"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="V" xMin="5" yMin="0" xMax="906" yMax="700">
<contour>
<pt x="355" y="0" on="1"/>
<pt x="705" y="700" on="1"/>
<pt x="906" y="700" on="1"/>
<pt x="556" y="0" on="1"/>
</contour>
<contour>
<pt x="355" y="0" on="1"/>
<pt x="5" y="700" on="1"/>
<pt x="206" y="700" on="1"/>
<pt x="556" y="0" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="acutecomb" xMin="-141" yMin="630" xMax="125" yMax="825">
<contour>
<pt x="-118" y="756" on="1"/>
<pt x="-141" y="630" on="1"/>
<pt x="102" y="699" on="1"/>
<pt x="125" y="825" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar" xMin="1" yMin="-98" xMax="595" yMax="789">
<contour>
<pt x="249" y="789" on="1"/>
<pt x="369" y="789" on="1"/>
<pt x="369" y="743" on="1"/>
<pt x="427" y="735" on="0"/>
<pt x="537" y="681" on="0"/>
<pt x="590" y="623" on="1"/>
<pt x="510" y="515" on="1"/>
<pt x="479" y="549" on="0"/>
<pt x="411" y="588" on="0"/>
<pt x="369" y="595" on="1"/>
<pt x="369" y="400" on="1"/>
<pt x="476" y="378" on="0"/>
<pt x="595" y="278" on="0"/>
<pt x="595" y="184" on="1"/>
<pt x="595" y="93" on="0"/>
<pt x="474" y="-32" on="0"/>
<pt x="369" y="-46" on="1"/>
<pt x="369" y="-98" on="1"/>
<pt x="249" y="-98" on="1"/>
<pt x="249" y="-47" on="1"/>
<pt x="176" y="-39" on="0"/>
<pt x="52" y="17" on="0"/>
<pt x="1" y="69" on="1"/>
<pt x="80" y="179" on="1"/>
<pt x="118" y="144" on="0"/>
<pt x="195" y="106" on="0"/>
<pt x="249" y="100" on="1"/>
<pt x="249" y="273" on="1"/>
<pt x="246" y="274" on="1"/>
<pt x="144" y="294" on="0"/>
<pt x="28" y="405" on="0"/>
<pt x="28" y="502" on="1"/>
<pt x="28" y="567" on="0"/>
<pt x="84" y="667" on="0"/>
<pt x="184" y="732" on="0"/>
<pt x="249" y="742" on="1"/>
</contour>
<contour>
<pt x="152" y="502" on="1"/>
<pt x="152" y="480" on="0"/>
<pt x="166" y="453" on="0"/>
<pt x="208" y="434" on="0"/>
<pt x="249" y="424" on="1"/>
<pt x="249" y="595" on="1"/>
<pt x="199" y="587" on="0"/>
<pt x="152" y="538" on="0"/>
</contour>
<contour>
<pt x="369" y="100" on="1"/>
<pt x="426" y="107" on="0"/>
<pt x="471" y="150" on="0"/>
<pt x="471" y="183" on="1"/>
<pt x="471" y="201" on="0"/>
<pt x="456" y="225" on="0"/>
<pt x="412" y="243" on="0"/>
<pt x="369" y="252" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.BRACKET.500" xMin="1" yMin="-98" xMax="595" yMax="789">
<contour>
<pt x="249" y="789" on="1"/>
<pt x="369" y="789" on="1"/>
<pt x="369" y="743" on="1"/>
<pt x="427" y="735" on="0"/>
<pt x="537" y="681" on="0"/>
<pt x="590" y="623" on="1"/>
<pt x="510" y="515" on="1"/>
<pt x="468" y="560" on="0"/>
<pt x="374" y="600" on="0"/>
<pt x="308" y="600" on="1"/>
<pt x="227" y="600" on="0"/>
<pt x="152" y="548" on="0"/>
<pt x="152" y="502" on="1"/>
<pt x="152" y="479" on="0"/>
<pt x="168" y="450" on="0"/>
<pt x="217" y="431" on="0"/>
<pt x="264" y="421" on="1"/>
<pt x="363" y="401" on="1"/>
<pt x="473" y="379" on="0"/>
<pt x="595" y="279" on="0"/>
<pt x="595" y="184" on="1"/>
<pt x="595" y="93" on="0"/>
<pt x="474" y="-32" on="0"/>
<pt x="369" y="-46" on="1"/>
<pt x="369" y="-98" on="1"/>
<pt x="249" y="-98" on="1"/>
<pt x="249" y="-47" on="1"/>
<pt x="176" y="-39" on="0"/>
<pt x="52" y="17" on="0"/>
<pt x="1" y="69" on="1"/>
<pt x="80" y="179" on="1"/>
<pt x="112" y="150" on="0"/>
<pt x="176" y="114" on="0"/>
<pt x="256" y="97" on="0"/>
<pt x="310" y="97" on="1"/>
<pt x="402" y="97" on="0"/>
<pt x="471" y="143" on="0"/>
<pt x="471" y="183" on="1"/>
<pt x="471" y="203" on="0"/>
<pt x="453" y="228" on="0"/>
<pt x="399" y="247" on="0"/>
<pt x="345" y="256" on="1"/>
<pt x="246" y="274" on="1"/>
<pt x="144" y="293" on="0"/>
<pt x="28" y="405" on="0"/>
<pt x="28" y="502" on="1"/>
<pt x="28" y="567" on="0"/>
<pt x="84" y="667" on="0"/>
<pt x="184" y="732" on="0"/>
<pt x="249" y="742" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.bold" xMin="1" yMin="-98" xMax="595" yMax="789">
<contour>
<pt x="249" y="789" on="1"/>
<pt x="369" y="789" on="1"/>
<pt x="369" y="743" on="1"/>
<pt x="427" y="735" on="0"/>
<pt x="537" y="681" on="0"/>
<pt x="590" y="623" on="1"/>
<pt x="510" y="515" on="1"/>
<pt x="468" y="560" on="0"/>
<pt x="374" y="600" on="0"/>
<pt x="308" y="600" on="1"/>
<pt x="227" y="600" on="0"/>
<pt x="152" y="548" on="0"/>
<pt x="152" y="502" on="1"/>
<pt x="152" y="479" on="0"/>
<pt x="168" y="450" on="0"/>
<pt x="217" y="431" on="0"/>
<pt x="264" y="421" on="1"/>
<pt x="363" y="401" on="1"/>
<pt x="473" y="379" on="0"/>
<pt x="595" y="279" on="0"/>
<pt x="595" y="184" on="1"/>
<pt x="595" y="93" on="0"/>
<pt x="474" y="-32" on="0"/>
<pt x="369" y="-46" on="1"/>
<pt x="369" y="-98" on="1"/>
<pt x="249" y="-98" on="1"/>
<pt x="249" y="-47" on="1"/>
<pt x="176" y="-39" on="0"/>
<pt x="52" y="17" on="0"/>
<pt x="1" y="69" on="1"/>
<pt x="80" y="179" on="1"/>
<pt x="112" y="150" on="0"/>
<pt x="176" y="114" on="0"/>
<pt x="256" y="97" on="0"/>
<pt x="310" y="97" on="1"/>
<pt x="402" y="97" on="0"/>
<pt x="471" y="143" on="0"/>
<pt x="471" y="183" on="1"/>
<pt x="471" y="203" on="0"/>
<pt x="453" y="228" on="0"/>
<pt x="399" y="247" on="0"/>
<pt x="345" y="256" on="1"/>
<pt x="246" y="274" on="1"/>
<pt x="144" y="293" on="0"/>
<pt x="28" y="405" on="0"/>
<pt x="28" y="502" on="1"/>
<pt x="28" y="567" on="0"/>
<pt x="84" y="667" on="0"/>
<pt x="184" y="732" on="0"/>
<pt x="249" y="742" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="space"/><!-- contains no outline data -->
</glyf>
<name>
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
Bold
</namerecord>
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
1.000;NONE;SimpleTwoAxis-Bold
</namerecord>
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis Bold
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
Version 1.000
</namerecord>
<namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
SimpleTwoAxis-Bold
</namerecord>
</name>
<post>
<formatType value="2.0"/>
<italicAngle value="0.0"/>
<underlinePosition value="-100"/>
<underlineThickness value="50"/>
<isFixedPitch value="0"/>
<minMemType42 value="0"/>
<maxMemType42 value="0"/>
<minMemType1 value="0"/>
<maxMemType1 value="0"/>
<psNames>
<!-- This file uses unique glyph names based on the information
found in the 'post' table. Since these names might not be unique,
we have to invent artificial names in case of clashes. In order to
be able to retain the original information, we need a name to
ps name mapping for those cases where they differ. That's what
you see below.
-->
</psNames>
<extraNames>
<!-- following are the name that are not taken from the standard Mac glyph order -->
<psName name="dollar.bold"/>
<psName name="acutecomb"/>
<psName name="dollar.BRACKET.500"/>
</extraNames>
</post>
<GDEF>
<Version value="0x00010000"/>
<GlyphClassDef Format="2">
<ClassDef glyph="A" class="1"/>
<ClassDef glyph="Aacute" class="1"/>
<ClassDef glyph="acutecomb" class="3"/>
</GlyphClassDef>
</GDEF>
<GPOS>
<Version value="0x00010000"/>
<ScriptList>
<!-- ScriptCount=1 -->
<ScriptRecord index="0">
<ScriptTag value="DFLT"/>
<Script>
<DefaultLangSys>
<ReqFeatureIndex value="65535"/>
<!-- FeatureCount=2 -->
<FeatureIndex index="0" value="0"/>
<FeatureIndex index="1" value="1"/>
</DefaultLangSys>
<!-- LangSysCount=0 -->
</Script>
</ScriptRecord>
</ScriptList>
<FeatureList>
<!-- FeatureCount=2 -->
<FeatureRecord index="0">
<FeatureTag value="kern"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="0"/>
</Feature>
</FeatureRecord>
<FeatureRecord index="1">
<FeatureTag value="mark"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="1"/>
</Feature>
</FeatureRecord>
</FeatureList>
<LookupList>
<!-- LookupCount=2 -->
<Lookup index="0">
<LookupType value="2"/>
<LookupFlag value="8"/><!-- ignoreMarks -->
<!-- SubTableCount=1 -->
<PairPos index="0" Format="1">
<Coverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
<Glyph value="V"/>
</Coverage>
<ValueFormat1 value="4"/>
<ValueFormat2 value="0"/>
<!-- PairSetCount=3 -->
<PairSet index="0">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="1">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="2">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="O"/>
<Value1 XAdvance="-20"/>
</PairValueRecord>
</PairSet>
</PairPos>
</Lookup>
<Lookup index="1">
<LookupType value="4"/>
<LookupFlag value="0"/>
<!-- SubTableCount=1 -->
<PairPos index="0" Format="1">
<Coverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
<Glyph value="V"/>
</Coverage>
<ValueFormat1 value="4"/>
<ValueFormat2 value="0"/>
<!-- PairSetCount=3 -->
<PairSet index="0">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="1">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="2">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="O"/>
<Value1 XAdvance="-20"/>
</PairValueRecord>
</PairSet>
</PairPos>
</Lookup>
</LookupList>
</GPOS>
</ttFont>

View File

@ -0,0 +1,626 @@
<?xml version="1.0" encoding="UTF-8"?>
<ttFont sfntVersion="\x00\x01\x00\x00" ttLibVersion="4.20">
<GlyphOrder>
<!-- The 'id' attribute is only for humans; it is ignored when parsed. -->
<GlyphID id="0" name=".notdef"/>
<GlyphID id="1" name="A"/>
<GlyphID id="2" name="Aacute"/>
<GlyphID id="3" name="O"/>
<GlyphID id="4" name="V"/>
<GlyphID id="5" name="space"/>
<GlyphID id="6" name="dollar"/>
<GlyphID id="7" name="dollar.bold"/>
<GlyphID id="8" name="acutecomb"/>
<GlyphID id="9" name="dollar.BRACKET.500"/>
</GlyphOrder>
<head>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="1.0"/>
<fontRevision value="1.0"/>
<checkSumAdjustment value="0x3c7bc79b"/>
<magicNumber value="0x5f0f3cf5"/>
<flags value="00000000 00000011"/>
<unitsPerEm value="1000"/>
<created value="Fri Jan 15 14:37:13 2021"/>
<modified value="Mon Mar 15 12:57:03 2021"/>
<xMin value="-141"/>
<yMin value="-200"/>
<xMax value="751"/>
<yMax value="915"/>
<macStyle value="00000000 00000000"/>
<lowestRecPPEM value="6"/>
<fontDirectionHint value="2"/>
<indexToLocFormat value="0"/>
<glyphDataFormat value="0"/>
</head>
<hhea>
<tableVersion value="0x00010000"/>
<ascent value="1000"/>
<descent value="-200"/>
<lineGap value="0"/>
<advanceWidthMax value="756"/>
<minLeftSideBearing value="-141"/>
<minRightSideBearing value="-125"/>
<xMaxExtent value="751"/>
<caretSlopeRise value="1"/>
<caretSlopeRun value="0"/>
<caretOffset value="0"/>
<reserved0 value="0"/>
<reserved1 value="0"/>
<reserved2 value="0"/>
<reserved3 value="0"/>
<metricDataFormat value="0"/>
<numberOfHMetrics value="10"/>
</hhea>
<maxp>
<!-- Most of this table will be recalculated by the compiler -->
<tableVersion value="0x10000"/>
<numGlyphs value="10"/>
<maxPoints value="52"/>
<maxContours value="3"/>
<maxCompositePoints value="16"/>
<maxCompositeContours value="4"/>
<maxZones value="1"/>
<maxTwilightPoints value="0"/>
<maxStorage value="0"/>
<maxFunctionDefs value="0"/>
<maxInstructionDefs value="0"/>
<maxStackElements value="0"/>
<maxSizeOfInstructions value="0"/>
<maxComponentElements value="2"/>
<maxComponentDepth value="1"/>
</maxp>
<OS_2>
<!-- The fields 'usFirstCharIndex' and 'usLastCharIndex'
will be recalculated by the compiler -->
<version value="4"/>
<xAvgCharWidth value="604"/>
<usWeightClass value="400"/>
<usWidthClass value="5"/>
<fsType value="00000000 00001000"/>
<ySubscriptXSize value="650"/>
<ySubscriptYSize value="600"/>
<ySubscriptXOffset value="0"/>
<ySubscriptYOffset value="75"/>
<ySuperscriptXSize value="650"/>
<ySuperscriptYSize value="600"/>
<ySuperscriptXOffset value="0"/>
<ySuperscriptYOffset value="350"/>
<yStrikeoutSize value="50"/>
<yStrikeoutPosition value="300"/>
<sFamilyClass value="0"/>
<panose>
<bFamilyType value="0"/>
<bSerifStyle value="0"/>
<bWeight value="0"/>
<bProportion value="0"/>
<bContrast value="0"/>
<bStrokeVariation value="0"/>
<bArmStyle value="0"/>
<bLetterForm value="0"/>
<bMidline value="0"/>
<bXHeight value="0"/>
</panose>
<ulUnicodeRange1 value="00000000 00000000 00000000 01000011"/>
<ulUnicodeRange2 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange3 value="00000000 00000000 00000000 00000000"/>
<ulUnicodeRange4 value="00000000 00000000 00000000 00000000"/>
<achVendID value="NONE"/>
<fsSelection value="00000000 01000000"/>
<usFirstCharIndex value="32"/>
<usLastCharIndex value="769"/>
<sTypoAscender value="800"/>
<sTypoDescender value="-200"/>
<sTypoLineGap value="200"/>
<usWinAscent value="1000"/>
<usWinDescent value="200"/>
<ulCodePageRange1 value="00000000 00000000 00000000 00000001"/>
<ulCodePageRange2 value="00000000 00000000 00000000 00000000"/>
<sxHeight value="500"/>
<sCapHeight value="700"/>
<usDefaultChar value="0"/>
<usBreakChar value="32"/>
<usMaxContext value="2"/>
</OS_2>
<hmtx>
<mtx name=".notdef" width="500" lsb="50"/>
<mtx name="A" width="756" lsb="5"/>
<mtx name="Aacute" width="756" lsb="5"/>
<mtx name="O" width="664" lsb="30"/>
<mtx name="V" width="756" lsb="5"/>
<mtx name="acutecomb" width="0" lsb="-141"/>
<mtx name="dollar" width="600" lsb="29"/>
<mtx name="dollar.BRACKET.500" width="600" lsb="29"/>
<mtx name="dollar.bold" width="600" lsb="29"/>
<mtx name="space" width="200" lsb="0"/>
</hmtx>
<cmap>
<tableVersion version="0"/>
<cmap_format_4 platformID="0" platEncID="3" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
<cmap_format_4 platformID="3" platEncID="1" language="0">
<map code="0x20" name="space"/><!-- SPACE -->
<map code="0x24" name="dollar"/><!-- DOLLAR SIGN -->
<map code="0x41" name="A"/><!-- LATIN CAPITAL LETTER A -->
<map code="0x4f" name="O"/><!-- LATIN CAPITAL LETTER O -->
<map code="0x56" name="V"/><!-- LATIN CAPITAL LETTER V -->
<map code="0xc1" name="Aacute"/><!-- LATIN CAPITAL LETTER A WITH ACUTE -->
<map code="0x301" name="acutecomb"/><!-- COMBINING ACUTE ACCENT -->
</cmap_format_4>
</cmap>
<loca>
<!-- The 'loca' table will be calculated by the compiler -->
</loca>
<glyf>
<!-- The xMin, yMin, xMax and yMax values
will be recalculated by the compiler. -->
<TTGlyph name=".notdef" xMin="50" yMin="-200" xMax="450" yMax="800">
<contour>
<pt x="50" y="-200" on="1"/>
<pt x="50" y="800" on="1"/>
<pt x="450" y="800" on="1"/>
<pt x="450" y="-200" on="1"/>
</contour>
<contour>
<pt x="100" y="-150" on="1"/>
<pt x="400" y="-150" on="1"/>
<pt x="400" y="750" on="1"/>
<pt x="100" y="750" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="A" xMin="5" yMin="0" xMax="751" yMax="700">
<contour>
<pt x="641" y="0" on="1"/>
<pt x="751" y="0" on="1"/>
<pt x="433" y="700" on="1"/>
<pt x="323" y="700" on="1"/>
</contour>
<contour>
<pt x="5" y="0" on="1"/>
<pt x="115" y="0" on="1"/>
<pt x="433" y="700" on="1"/>
<pt x="323" y="700" on="1"/>
</contour>
<contour>
<pt x="567" y="284" on="1"/>
<pt x="152" y="284" on="1"/>
<pt x="152" y="204" on="1"/>
<pt x="567" y="204" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="Aacute" xMin="5" yMin="0" xMax="751" yMax="915">
<component glyphName="A" x="0" y="0" flags="0x204"/>
<component glyphName="acutecomb" x="402" y="130" flags="0x4"/>
</TTGlyph>
<TTGlyph name="O" xMin="30" yMin="-10" xMax="634" yMax="710">
<contour>
<pt x="332" y="-10" on="1"/>
<pt x="181" y="-10" on="0"/>
<pt x="30" y="169" on="0"/>
<pt x="30" y="350" on="1"/>
<pt x="30" y="531" on="0"/>
<pt x="181" y="710" on="0"/>
<pt x="332" y="710" on="1"/>
<pt x="484" y="710" on="0"/>
<pt x="634" y="531" on="0"/>
<pt x="634" y="350" on="1"/>
<pt x="634" y="169" on="0"/>
<pt x="484" y="-10" on="0"/>
</contour>
<contour>
<pt x="332" y="74" on="1"/>
<pt x="438" y="74" on="0"/>
<pt x="544" y="212" on="0"/>
<pt x="544" y="350" on="1"/>
<pt x="544" y="488" on="0"/>
<pt x="438" y="626" on="0"/>
<pt x="332" y="626" on="1"/>
<pt x="226" y="626" on="0"/>
<pt x="120" y="488" on="0"/>
<pt x="120" y="350" on="1"/>
<pt x="120" y="212" on="0"/>
<pt x="226" y="74" on="0"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="V" xMin="5" yMin="0" xMax="751" yMax="700">
<contour>
<pt x="323" y="0" on="1"/>
<pt x="641" y="700" on="1"/>
<pt x="751" y="700" on="1"/>
<pt x="433" y="0" on="1"/>
</contour>
<contour>
<pt x="323" y="0" on="1"/>
<pt x="5" y="700" on="1"/>
<pt x="115" y="700" on="1"/>
<pt x="433" y="0" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="acutecomb" xMin="-141" yMin="630" xMax="125" yMax="785">
<contour>
<pt x="-118" y="716" on="1"/>
<pt x="-141" y="630" on="1"/>
<pt x="102" y="699" on="1"/>
<pt x="125" y="785" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar" xMin="29" yMin="-68" xMax="580" yMax="759">
<contour>
<pt x="264" y="759" on="1"/>
<pt x="354" y="759" on="1"/>
<pt x="354" y="715" on="1"/>
<pt x="415" y="709" on="0"/>
<pt x="519" y="662" on="0"/>
<pt x="562" y="620" on="1"/>
<pt x="509" y="548" on="1"/>
<pt x="473" y="584" on="0"/>
<pt x="398" y="621" on="0"/>
<pt x="354" y="627" on="1"/>
<pt x="354" y="373" on="1"/>
<pt x="467" y="351" on="0"/>
<pt x="580" y="263" on="0"/>
<pt x="580" y="184" on="1"/>
<pt x="580" y="102" on="0"/>
<pt x="459" y="-8" on="0"/>
<pt x="354" y="-18" on="1"/>
<pt x="354" y="-68" on="1"/>
<pt x="264" y="-68" on="1"/>
<pt x="264" y="-18" on="1"/>
<pt x="192" y="-12" on="0"/>
<pt x="72" y="34" on="0"/>
<pt x="29" y="74" on="1"/>
<pt x="81" y="146" on="1"/>
<pt x="123" y="110" on="0"/>
<pt x="207" y="73" on="0"/>
<pt x="264" y="69" on="1"/>
<pt x="264" y="301" on="1"/>
<pt x="249" y="304" on="1"/>
<pt x="148" y="323" on="0"/>
<pt x="43" y="420" on="0"/>
<pt x="43" y="502" on="1"/>
<pt x="43" y="559" on="0"/>
<pt x="99" y="650" on="0"/>
<pt x="199" y="707" on="0"/>
<pt x="264" y="715" on="1"/>
</contour>
<contour>
<pt x="137" y="502" on="1"/>
<pt x="137" y="470" on="0"/>
<pt x="160" y="428" on="0"/>
<pt x="214" y="402" on="0"/>
<pt x="261" y="392" on="1"/>
<pt x="264" y="627" on="1"/>
<pt x="203" y="618" on="0"/>
<pt x="137" y="553" on="0"/>
</contour>
<contour>
<pt x="354" y="69" on="1"/>
<pt x="423" y="76" on="0"/>
<pt x="486" y="135" on="0"/>
<pt x="486" y="183" on="1"/>
<pt x="486" y="211" on="0"/>
<pt x="462" y="250" on="0"/>
<pt x="405" y="275" on="0"/>
<pt x="354" y="285" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.BRACKET.500" xMin="29" yMin="-76" xMax="580" yMax="759">
<contour>
<pt x="264" y="759" on="1"/>
<pt x="354" y="759" on="1"/>
<pt x="354" y="715" on="1"/>
<pt x="415" y="709" on="0"/>
<pt x="519" y="662" on="0"/>
<pt x="562" y="620" on="1"/>
<pt x="509" y="548" on="1"/>
<pt x="464" y="592" on="0"/>
<pt x="370" y="630" on="0"/>
<pt x="308" y="630" on="1"/>
<pt x="226" y="630" on="0"/>
<pt x="137" y="562" on="0"/>
<pt x="137" y="502" on="1"/>
<pt x="137" y="470" on="0"/>
<pt x="160" y="428" on="0"/>
<pt x="214" y="402" on="0"/>
<pt x="261" y="392" on="1"/>
<pt x="360" y="372" on="1"/>
<pt x="469" y="350" on="0"/>
<pt x="580" y="263" on="0"/>
<pt x="580" y="184" on="1"/>
<pt x="580" y="102" on="0"/>
<pt x="459" y="-8" on="0"/>
<pt x="354" y="-18" on="1"/>
<pt x="354" y="-76" on="1"/>
<pt x="264" y="-76" on="1"/>
<pt x="264" y="-18" on="1"/>
<pt x="192" y="-12" on="0"/>
<pt x="72" y="34" on="0"/>
<pt x="29" y="74" on="1"/>
<pt x="81" y="146" on="1"/>
<pt x="115" y="118" on="0"/>
<pt x="180" y="83" on="0"/>
<pt x="259" y="67" on="0"/>
<pt x="310" y="67" on="1"/>
<pt x="403" y="67" on="0"/>
<pt x="486" y="128" on="0"/>
<pt x="486" y="183" on="1"/>
<pt x="486" y="212" on="0"/>
<pt x="461" y="251" on="0"/>
<pt x="401" y="277" on="0"/>
<pt x="348" y="286" on="1"/>
<pt x="249" y="304" on="1"/>
<pt x="148" y="323" on="0"/>
<pt x="43" y="420" on="0"/>
<pt x="43" y="502" on="1"/>
<pt x="43" y="559" on="0"/>
<pt x="99" y="650" on="0"/>
<pt x="199" y="707" on="0"/>
<pt x="264" y="715" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="dollar.bold" xMin="29" yMin="-76" xMax="580" yMax="759">
<contour>
<pt x="264" y="759" on="1"/>
<pt x="354" y="759" on="1"/>
<pt x="354" y="715" on="1"/>
<pt x="415" y="709" on="0"/>
<pt x="519" y="662" on="0"/>
<pt x="562" y="620" on="1"/>
<pt x="509" y="548" on="1"/>
<pt x="464" y="592" on="0"/>
<pt x="370" y="630" on="0"/>
<pt x="308" y="630" on="1"/>
<pt x="226" y="630" on="0"/>
<pt x="137" y="562" on="0"/>
<pt x="137" y="502" on="1"/>
<pt x="137" y="470" on="0"/>
<pt x="160" y="428" on="0"/>
<pt x="214" y="402" on="0"/>
<pt x="261" y="392" on="1"/>
<pt x="360" y="372" on="1"/>
<pt x="469" y="350" on="0"/>
<pt x="580" y="263" on="0"/>
<pt x="580" y="184" on="1"/>
<pt x="580" y="102" on="0"/>
<pt x="459" y="-8" on="0"/>
<pt x="354" y="-18" on="1"/>
<pt x="354" y="-76" on="1"/>
<pt x="264" y="-76" on="1"/>
<pt x="264" y="-18" on="1"/>
<pt x="192" y="-12" on="0"/>
<pt x="72" y="34" on="0"/>
<pt x="29" y="74" on="1"/>
<pt x="81" y="146" on="1"/>
<pt x="115" y="118" on="0"/>
<pt x="180" y="83" on="0"/>
<pt x="259" y="67" on="0"/>
<pt x="310" y="67" on="1"/>
<pt x="403" y="67" on="0"/>
<pt x="486" y="128" on="0"/>
<pt x="486" y="183" on="1"/>
<pt x="486" y="212" on="0"/>
<pt x="461" y="251" on="0"/>
<pt x="401" y="277" on="0"/>
<pt x="348" y="286" on="1"/>
<pt x="249" y="304" on="1"/>
<pt x="148" y="323" on="0"/>
<pt x="43" y="420" on="0"/>
<pt x="43" y="502" on="1"/>
<pt x="43" y="559" on="0"/>
<pt x="99" y="650" on="0"/>
<pt x="199" y="707" on="0"/>
<pt x="264" y="715" on="1"/>
</contour>
<instructions/>
</TTGlyph>
<TTGlyph name="space"/><!-- contains no outline data -->
</glyf>
<name>
<namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis
</namerecord>
<namerecord nameID="2" platformID="3" platEncID="1" langID="0x409">
Regular
</namerecord>
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
1.000;NONE;SimpleTwoAxis-Regular
</namerecord>
<namerecord nameID="4" platformID="3" platEncID="1" langID="0x409">
Simple Two Axis Regular
</namerecord>
<namerecord nameID="5" platformID="3" platEncID="1" langID="0x409">
Version 1.000
</namerecord>
<namerecord nameID="6" platformID="3" platEncID="1" langID="0x409">
SimpleTwoAxis-Regular
</namerecord>
</name>
<post>
<formatType value="2.0"/>
<italicAngle value="0.0"/>
<underlinePosition value="-100"/>
<underlineThickness value="50"/>
<isFixedPitch value="0"/>
<minMemType42 value="0"/>
<maxMemType42 value="0"/>
<minMemType1 value="0"/>
<maxMemType1 value="0"/>
<psNames>
<!-- This file uses unique glyph names based on the information
found in the 'post' table. Since these names might not be unique,
we have to invent artificial names in case of clashes. In order to
be able to retain the original information, we need a name to
ps name mapping for those cases where they differ. That's what
you see below.
-->
</psNames>
<extraNames>
<!-- following are the name that are not taken from the standard Mac glyph order -->
<psName name="dollar.bold"/>
<psName name="acutecomb"/>
<psName name="dollar.BRACKET.500"/>
</extraNames>
</post>
<GDEF>
<Version value="0x00010000"/>
<GlyphClassDef Format="2">
<ClassDef glyph="A" class="1"/>
<ClassDef glyph="Aacute" class="1"/>
<ClassDef glyph="acutecomb" class="3"/>
</GlyphClassDef>
</GDEF>
<GPOS>
<Version value="0x00010000"/>
<ScriptList>
<!-- ScriptCount=1 -->
<ScriptRecord index="0">
<ScriptTag value="DFLT"/>
<Script>
<DefaultLangSys>
<ReqFeatureIndex value="65535"/>
<!-- FeatureCount=2 -->
<FeatureIndex index="0" value="0"/>
<FeatureIndex index="1" value="1"/>
</DefaultLangSys>
<!-- LangSysCount=0 -->
</Script>
</ScriptRecord>
</ScriptList>
<FeatureList>
<!-- FeatureCount=2 -->
<FeatureRecord index="0">
<FeatureTag value="kern"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="0"/>
</Feature>
</FeatureRecord>
<FeatureRecord index="1">
<FeatureTag value="mark"/>
<Feature>
<!-- LookupCount=1 -->
<LookupListIndex index="0" value="1"/>
</Feature>
</FeatureRecord>
</FeatureList>
<LookupList>
<!-- LookupCount=2 -->
<Lookup index="0">
<LookupType value="2"/>
<LookupFlag value="8"/><!-- ignoreMarks -->
<!-- SubTableCount=1 -->
<PairPos index="0" Format="1">
<Coverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
<Glyph value="V"/>
</Coverage>
<ValueFormat1 value="4"/>
<ValueFormat2 value="0"/>
<!-- PairSetCount=3 -->
<PairSet index="0">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="1">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="V"/>
<Value1 XAdvance="-80"/>
</PairValueRecord>
</PairSet>
<PairSet index="2">
<!-- PairValueCount=1 -->
<PairValueRecord index="0">
<SecondGlyph value="O"/>
<Value1 XAdvance="-20"/>
</PairValueRecord>
</PairSet>
</PairPos>
</Lookup>
<Lookup index="1">
<LookupType value="4"/>
<LookupFlag value="0"/>
<!-- SubTableCount=1 -->
<MarkBasePos index="0" Format="1">
<MarkCoverage Format="1">
<Glyph value="acutecomb"/>
</MarkCoverage>
<BaseCoverage Format="1">
<Glyph value="A"/>
<Glyph value="Aacute"/>
</BaseCoverage>
<!-- ClassCount=1 -->
<MarkArray>
<!-- MarkCount=1 -->
<MarkRecord index="0">
<Class value="0"/>
<MarkAnchor Format="1">
<XCoordinate value="4"/>
<YCoordinate value="623"/>
</MarkAnchor>
</MarkRecord>
</MarkArray>
<BaseArray>
<!-- BaseCount=2 -->
<BaseRecord index="0">
<BaseAnchor index="0" Format="3">
<XCoordinate value="406"/>
<YCoordinate value="753"/>
</BaseAnchor>
</BaseRecord>
<BaseRecord index="1">
<BaseAnchor index="0" Format="1">
<XCoordinate value="406"/>
<YCoordinate value="753"/>
</BaseAnchor>
</BaseRecord>
</BaseArray>
</MarkBasePos>
</Lookup>
</LookupList>
</GPOS>
</ttFont>

View File

@ -2,6 +2,7 @@ from fontTools.misc.py23 import *
from fontTools.ttLib import TTFont, newTable
from fontTools.varLib import build, load_designspace
from fontTools.varLib.errors import VarLibValidationError
import fontTools.varLib.errors as varLibErrors
from fontTools.varLib.mutator import instantiateVariableFont
from fontTools.varLib import main as varLib_main, load_masters
from fontTools.varLib import set_default_weight_width_slant
@ -813,6 +814,62 @@ class BuildTest(unittest.TestCase):
assert ds_loaded.instances[0].location == {"weight": 0, "width": 50}
def test_varlib_build_incompatible_features(self):
with pytest.raises(
varLibErrors.ShouldBeConstant,
match = """
Couldn't merge the fonts, because some values were different, but should have
been the same. This happened while performing the following operation:
GPOS.table.FeatureList.FeatureCount
The problem is likely to be in Simple Two Axis Bold:
Incompatible features between masters.
Expected: kern, mark.
Got: kern.
"""):
self._run_varlib_build_test(
designspace_name="IncompatibleFeatures",
font_name="IncompatibleFeatures",
tables=["GPOS"],
expected_ttx_name="IncompatibleFeatures",
save_before_dump=True,
)
def test_varlib_build_incompatible_lookup_types(self):
with pytest.raises(
varLibErrors.MismatchedTypes,
match = r"MarkBasePos, instead saw PairPos"
):
self._run_varlib_build_test(
designspace_name="IncompatibleLookupTypes",
font_name="IncompatibleLookupTypes",
tables=["GPOS"],
expected_ttx_name="IncompatibleLookupTypes",
save_before_dump=True,
)
def test_varlib_build_incompatible_arrays(self):
with pytest.raises(
varLibErrors.ShouldBeConstant,
match = """
Couldn't merge the fonts, because some values were different, but should have
been the same. This happened while performing the following operation:
GPOS.table.ScriptList.ScriptCount
The problem is likely to be in Simple Two Axis Bold:
Expected to see .ScriptCount==1, instead saw 0"""
):
self._run_varlib_build_test(
designspace_name="IncompatibleArrays",
font_name="IncompatibleArrays",
tables=["GPOS"],
expected_ttx_name="IncompatibleArrays",
save_before_dump=True,
)
def test_load_masters_layerName_without_required_font():
ds = DesignSpaceDocument()