L igdgfdddgfdddgfdgdfd d d gfd gd fdddgfdddgfdgdfdgfdgdfdddgfdgdfddd gfd!gd"fd#gd$fd%gd&fd'gd(fd)gd*fd+gd,fd-gd.fd/gd0fd1gd2fd3gd4fd5gd6fd7gd8fd9d:d;gfdgd?fd@dAgfdBdCdDgfdEgdFfdGdHdIgfdJgdKfdLdMdNgfdOdPgfdQgdRfdSdTdUgfdVdWdXgfdYdZgfd[gd\fd]d^d_gfd`dagfdbdcddgfdegdffdgdhdigfdjgdkfdlgdmfdndodpgfdqgdrfdsgdtfdugdvfdwdxdygfdzgd{fd|gd}fd~ddgfdgdfdgdfdgdfdgdfdgdfdgdfdddgfdddgfdgdfdgdfdgdfdgdfdddgfdgdfdddgfdgdfdddgfdgdfddddgfdgdfdddgfdgdfdgdfdddgfdgdfdgdfdgdfdddgfdgd¢fdgdĢfdddgfdgdɢfdgdˢfdgd͢fdgdϢfdgdѢfdgdӢfdddgfdgdآfdddgfdddgfdddgfdgdfdgdfdgdfdddgfdddgfdddgfdddgfdgdfdddgfdgdfdgdfdgdfdddgfdgdfdgdfdgdfddd gfd gd fd d dgfdddgfdddgfdgdfdddgfdddgfdddgfdgd fd!d"gfd#gd$fd%d&gfd'gd(fd)gd*fd+gd,fd-gd.fd/d0d1gfd2gd3fd4d5d6gfd7d8d9gfd:d;dfd?gd@fdAgdBfdCgdDfdEdFdGgfdHgdIfdJdKdLgfdMgdNfdOdPgfdQgdRfdSgdTfdUgdVfdWgdXfdYgdZfd[gd\fd]gd^fd_d`dagfdbdcddgfdegdffdggdhfdigdjfdkdlgfdmdngfdogdpfdqgdrfdsgdtfdugdvfdwgdxfdydzd{gfd|gd}fd~gdfdgdfdgdfdgdfdgdfdgdfdgdfdgdfdddgfdgdfdgdfdgdfddgfdgdfdddgfdddgfdddgfdgdfdgdfdgdfdgdfddgfdgdfdddgfdgdfdgdfddgfdddgfddgfdgdfdddgfdÐdĐdgfdƐdĐdgfdȐdɐdgfdːdɐdgfdgd΢fdgdТfdgdҢfdgdԢfdgd֢fdgdآfdgdڢfdgdܢfdݐdgfdߐdgfddgfddgfddgfddgfdddgfdddgfdgdfdddgfdddgfdddgfdgdfdgdfdgdfddgfdgdfdgdfddgfdgd fd d gfd d dgfdddgfdddgfdddgfdgdfdgdfdgdfdgdfd gd!fd"gd#fd$gd%fd&gd'fd(gd)fd*gd+fd,gd-fd.gd/fd0gd1fd2gd3fd4gd5fd6gd7fd8gd9fd:gd;fdgd?fd@dAdBgfdCgdDfdEgdFfdGgdHfdIgdJfdKgdLfdMgdNfdOgdPfdQgdRfdSgdTfdUgdVfdWgdXfdYgdZfd[gd\fd]gd^fd_gd`fdagdbfdcgddfdegdffdggdhfdigdjfdkgdlfdmdndogfdpdqdrgfdsgdtfZyu(v LookupOrder ScriptList)uint16 ScriptCountNNzNumber of ScriptRecords)struct ScriptRecordrz:Array of ScriptRecords -listed alphabetically by ScriptTagr)Tag ScriptTagNNz4-byte ScriptTag identifier)OffsetScriptNNz3Offset to Script table-from beginning of ScriptListr ))r DefaultLangSysNNzIOffset to DefaultLangSys table-from beginning of Script table-may be NULL)r LangSysCountNNzENumber of LangSysRecords for this script-excluding the DefaultLangSys)r LangSysRecordrrz;Array of LangSysRecords-listed alphabetically by LangSysTagr)r LangSysTagNNz4-byte LangSysTag identifier)r LangSysNNz6Offset to LangSys table-from beginning of Script tabler))r rNNz5= NULL (reserved for an offset to a reordering table))rReqFeatureIndexNNzVIndex of a feature required for this language system- if no required features = 0xFFFF)r FeatureCountNNzTNumber of FeatureIndex values for this language system-excludes the required feature)r FeatureIndexrrz8Array of indices into the FeatureList-in arbitrary order FeatureList)rrNNz&Number of FeatureRecords in this table)r FeatureRecordrrzkArray of FeatureRecords-zero-based (first feature has FeatureIndex = 0)-listed alphabetically by FeatureTagr)r FeatureTagNNz!4-byte feature identification tag)r FeatureNNz5Offset to Feature table-from beginning of FeatureListr))r FeatureParamsNNz-= NULL (reserved for offset to FeatureParams))r LookupCountNNz-Number of LookupList indices for this feature)rLookupListIndexrrz^Array of LookupList indices for this feature -zero-based (first lookup is LookupListIndex = 0)rFeatureParamsSize)) DeciPoints DesignSizeNNz/The design size in 720/inch units (decipoints).)r SubfamilyIDNNz=Serves as an identifier that associates fonts in a subfamily.)NameIDSubfamilyNameIDNNzSubfamily NameID.)r RangeStartNNzCSmall end of recommended usage range (exclusive) in 720/inch units.)rRangeEndNNzCLarge end of recommended usage range (inclusive) in 720/inch units.FeatureParamsStylisticSet)rVersionNN Set to 0.)r UINameIDNNz UI NameID.FeatureParamsCharacterVariants))rFormatNNr&)r FeatUILabelNameIDNNzFeature UI label NameID.)r FeatUITooltipTextNameIDNNzFeature UI tooltip text NameID.)r SampleTextNameIDNNzSample text NameID.)rNumNamedParametersNNzNumber of named parameters.)r FirstParamUILabelNameIDNNz&First NameID of UI feature parameters.)r CharCountNNz=Count of characters this feature provides glyph variants for.)uint24 Characterr/rzBUnicode characters for which this feature provides glyph variants. LookupList)rrNNzNumber of lookups in this table)r LookuprrmArray of offsets to Lookup tables-from beginning of LookupList -zero based (first lookup is Lookup index = 0)r3))r LookupTypeNNz(Different enumerations for GSUB and GPOS) LookupFlagr6NNzLookup qualifiers)r SubTableCountNNz#Number of SubTables for this lookup)r SubTabler7rzStartNNzFirst GlyphID in the ranger>EndNNzLast GlyphID in the range)rStartCoverageIndexNNz(Coverage Index of first GlyphID in rangeClassDefFormat1))r ClassFormatNNr<)r> StartGlyphNNz$First GlyphID of the ClassValueArray)rr=NNzSize of the ClassValueArray)rClassValueArrayr=rz%Array of Class Values-one per GlyphIDClassDefFormat2))rrJNNrA)rClassRangeCountNNzNumber of ClassRangeRecords)rClassRangeRecordrNrz3Array of ClassRangeRecords-ordered by Start GlyphIDrO)rDrF)rClassNNz"Applied to all glyphs in the rangeDevice))r StartSizeNNz Smallest size to correct-in ppem)rEndSizeNNzLargest size to correct-in ppem)r DeltaFormatNNz+Format of DeltaValue array data: 1, 2, or 3) DeltaValuerUNzDeltaFormat in (1,2,3)Array of compressed dataGPOS))r%r%NNz3Version of the GPOS table- 0x00010000 or 0x00010001)r rNNz7Offset to ScriptList table-from beginning of GPOS table)r rNNz8Offset to FeatureList table-from beginning of GPOS table)r r2NNz7Offset to LookupList table-from beginning of GPOS table)LOffsetFeatureVariationsNVersion >= 0x00010001z>Offset to FeatureVariations table-from beginning of GPOS tableSinglePosFormat1)r PosFormatNNr<r CoverageNNz=Offset to Coverage table-from beginning of SinglePos subtabler ValueFormatNNz,Defines the types of data in the ValueRecord) ValueRecordValueNNzHDefines positioning value(s)-applied to all glyphs in the Coverage tableSinglePosFormat2)rr]NNrAr^r`)r ValueCountNNzNumber of ValueRecords)rbrcrfrz:Array of ValueRecords-positioning values applied to glyphsPairPosFormat1)r\)r r_NNz]Offset to Coverage table-from beginning of PairPos subtable-only the first glyph in each pair)r ValueFormat1NNzZDefines the types of data in ValueRecord1-for the first glyph in the pair -may be zero (0))r ValueFormat2NNz[Defines the types of data in ValueRecord2-for the second glyph in the pair -may be zero (0))r PairSetCountNNzNumber of PairSet tables)r PairSetrjrz_Array of offsets to PairSet tables-from beginning of PairPos subtable-ordered by Coverage Indexrk)rPairValueCountNNzNumber of PairValueRecords)rPairValueRecordrlrz@Array of PairValueRecords-ordered by GlyphID of the second glyphrm))r> SecondGlyphNNzOGlyphID of second glyph in the pair-first glyph is listed in the Coverage table)rbValue1NNz0Positioning data for the first glyph in the pair)rbValue2NNz1Positioning data for the second glyph in the pairPairPosFormat2) re)r r_NNz[Offset to Coverage table-from beginning of PairPos subtable-for the first glyph of the pair)rrhNNzFValueRecord definition-for the first glyph of the pair-may be zero (0))rriNNzGValueRecord definition-for the second glyph of the pair-may be zero (0))r ClassDef1NNz[Offset to ClassDef table-from beginning of PairPos subtable-for the first glyph of the pair)r ClassDef2NNz\Offset to ClassDef table-from beginning of PairPos subtable-for the second glyph of the pair)r Class1CountNNz4Number of classes in ClassDef1 table-includes Class0)r Class2CountNNz4Number of classes in ClassDef2 table-includes Class0)r Class1Recordrtrz)Array of Class1 records-ordered by Class1rv)r Class2Recordrurz)Array of Class2 records-ordered by Class2rw)rbroNNz5Positioning for first glyph-empty if ValueFormat1 = 0)rbrpNNz6Positioning for second glyph-empty if ValueFormat2 = 0CursivePosFormat1)r\)r r_NNz>Offset to Coverage table-from beginning of CursivePos subtable)rEntryExitCountNNzNumber of EntryExit records)rEntryExitRecordryrz2Array of EntryExit records-in Coverage Index orderrz)r EntryAnchorNNzMOffset to EntryAnchor table-from beginning of CursivePos subtable-may be NULL)r ExitAnchorNNzLOffset to ExitAnchor table-from beginning of CursivePos subtable-may be NULLMarkBasePosFormat1)r\)r MarkCoverageNNzCOffset to MarkCoverage table-from beginning of MarkBasePos subtable)r BaseCoverageNNzCOffset to BaseCoverage table-from beginning of MarkBasePos subtable)r ClassCountNNz#Number of classes defined for marks)r MarkArrayNNz@Offset to MarkArray table-from beginning of MarkBasePos subtable)r BaseArrayNNz@Offset to BaseArray table-from beginning of MarkBasePos subtabler)r BaseCountNNzNumber of BaseRecords)r BaseRecordrrz3Array of BaseRecords-in order of BaseCoverage Indexr)r BaseAnchorrrzoArray of offsets (one per class) to Anchor tables-from beginning of BaseArray table-ordered by class-zero-basedMarkLigPosFormat1)r\)r r~NNzCOffset to Mark Coverage table-from beginning of MarkLigPos subtable)r LigatureCoverageNNzGOffset to Ligature Coverage table-from beginning of MarkLigPos subtable)rrNNzNumber of defined mark classes)r rNNz?Offset to MarkArray table-from beginning of MarkLigPos subtable)r LigatureArrayNNzCOffset to LigatureArray table-from beginning of MarkLigPos subtabler)r LigatureCountNNz&Number of LigatureAttach table offsets)r LigatureAttachrrzqArray of offsets to LigatureAttach tables-from beginning of LigatureArray table-ordered by LigatureCoverage Indexr)rComponentCountNNz+Number of ComponentRecords in this ligature)rComponentRecordrrz7Array of Component records-ordered in writing directionr)r LigatureAnchorrrzArray of offsets (one per class) to Anchor tables-from beginning of LigatureAttach table-ordered by class-NULL if a component does not have an attachment for a class-zero-based arrayMarkMarkPosFormat1)r\)r Mark1CoverageNNzNOffset to Combining Mark Coverage table-from beginning of MarkMarkPos subtable)r Mark2CoverageNNzIOffset to Base Mark Coverage table-from beginning of MarkMarkPos subtable)rrNNz(Number of Combining Mark classes defined)r Mark1ArrayNNzJOffset to MarkArray table for Mark1-from beginning of MarkMarkPos subtable)r Mark2ArrayNNzKOffset to Mark2Array table for Mark2-from beginning of MarkMarkPos subtabler)r Mark2CountNNzNumber of Mark2 records)r Mark2Recordrrz(Array of Mark2 records-in Coverage orderr)r Mark2AnchorrrzeArray of offsets (one per class) to Anchor tables-from beginning of Mark2Array table-zero-based arrayPosLookupRecord)r SequenceIndexNNz-Index to input glyph sequence-first glyph = 0)rrNNz+Lookup to apply to that position-zero-basedContextPosFormat1)r\r r_NNz>Offset to Coverage table-from beginning of ContextPos subtable)rPosRuleSetCountNNzNumber of PosRuleSet tables)r PosRuleSetrrzeArray of offsets to PosRuleSet tables-from beginning of ContextPos subtable-ordered by Coverage Indexr)r PosRuleCountNNzNumber of PosRule tables)r PosRulerrzUArray of offsets to PosRule tables-from beginning of PosRuleSet-ordered by preferencer))rr=NNz,Number of glyphs in the Input glyph sequencerPosCountNNzNumber of PosLookupRecords)r>Inputr=z6Array of input GlyphIDs-starting with the second glyphrrrrz,Array of positioning lookups-in design orderContextPosFormat2)rer)r ClassDefNNz>Offset to ClassDef table-from beginning of ContextPos subtable)rPosClassSetCountNNzNumber of PosClassSet tables)r PosClassSetrrziArray of offsets to PosClassSet tables-from beginning of ContextPos subtable-ordered by class-may be NULLr)rPosClassRuleCountNNzNumber of PosClassRule tables)r PosClassRulerrz[Array of offsets to PosClassRule tables-from beginning of PosClassSet-ordered by preferencer))rr=NNzNumber of glyphs to be matchedr)rrPr=rzZArray of classes-beginning with the second class-to be matched to the input glyph sequencerContextPosFormat3)rr]NNFormat identifier-format = 3)rr=NNz&Number of glyphs in the input sequencer)r r_r=rzIArray of offsets to Coverage tables-from beginning of ContextPos subtablerChainContextPosFormat1)r\r)rChainPosRuleSetCountNNz Number of ChainPosRuleSet tables)r ChainPosRuleSetrrzjArray of offsets to ChainPosRuleSet tables-from beginning of ContextPos subtable-ordered by Coverage Indexr)rChainPosRuleCountNNzNumber of ChainPosRule tables)r ChainPosRulerrz_Array of offsets to ChainPosRule tables-from beginning of ChainPosRuleSet-ordered by preferencer)rBacktrackGlyphCountNNzhTotal number of glyphs in the backtrack sequence (number of glyphs to be matched before the first glyph)r> BacktrackrrzIArray of backtracking GlyphID's (to be matched before the input sequence)rInputGlyphCountNNzGTotal number of glyphs in the input sequence (includes the first glyph)r>rrrz1Array of input GlyphIDs (start with second glyph)rLookAheadGlyphCountNNzkTotal number of glyphs in the look ahead sequence (number of glyphs to be matched after the input sequence)r> LookAheadrrzEArray of lookahead GlyphID's (to be matched after the input sequence)rrrrrz+Array of PosLookupRecords (in design order)ChainContextPosFormat2)re)r r_NNzCOffset to Coverage table-from beginning of ChainContextPos subtable)r BacktrackClassDefNNziOffset to ClassDef table containing backtrack sequence context-from beginning of ChainContextPos subtable)r InputClassDefNNzeOffset to ClassDef table containing input sequence context-from beginning of ChainContextPos subtable)r LookAheadClassDefNNziOffset to ClassDef table containing lookahead sequence context-from beginning of ChainContextPos subtable)rChainPosClassSetCountNNz!Number of ChainPosClassSet tables)r ChainPosClassSetrrzyArray of offsets to ChainPosClassSet tables-from beginning of ChainContextPos subtable-ordered by input class-may be NULLr)rChainPosClassRuleCountNNz"Number of ChainPosClassRule tables)r ChainPosClassRulerrzeArray of offsets to ChainPosClassRule tables-from beginning of ChainPosClassSet-ordered by preferencer)rrrrrzFArray of backtracking classes(to be matched before the input sequence)rrNNzHTotal number of classes in the input sequence (includes the first class)rrrrz\Array of input classes(start with second class; to be matched with the input glyph sequence)rrNNzmTotal number of classes in the look ahead sequence (number of classes to be matched after the input sequence)rrrrzBArray of lookahead classes(to be matched after the input sequence)rrChainContextPosFormat3) rrrNNz-Number of glyphs in the backtracking sequencer BacktrackCoveragerrzUArray of offsets to coverage tables in backtracking sequence, in glyph sequence orderrrNNz"Number of glyphs in input sequencer InputCoveragerrzNArray of offsets to coverage tables in input sequence, in glyph sequence orderrrNNz&Number of glyphs in lookahead sequencer LookAheadCoveragerrzRArray of offsets to coverage tables in lookahead sequence, in glyph sequence orderr)rrrrz)Array of PosLookupRecords,in design orderExtensionPosFormat1)r ExtFormatNNzFormat identifier. Set to 1.rExtensionLookupTypeNNzTLookup type of subtable referenced by ExtensionOffset (i.e. the extension subtable).)rX ExtSubTableNNzOffset to SubTable AnchorFormat1))r AnchorFormatNNr<int16 XCoordinateNNz Horizontal value-in design unitsr YCoordinateNNzVertical value-in design units AnchorFormat2))rrNNrArr)r AnchorPointNNzIndex to glyph contour point AnchorFormat3))rrNNrrr)r XDeviceTableNNzUOffset to Device table for X coordinate- from beginning of Anchor table (may be NULL))r YDeviceTableNNzUOffset to Device table for Y coordinate- from beginning of Anchor table (may be NULL)r)r MarkCountNNzNumber of MarkRecords)r MarkRecordrrz&Array of MarkRecords-in Coverage orderr)rrPNNzClass defined for this mark)r MarkAnchorNNz8Offset to Anchor table-from beginning of MarkArray tableGSUB))r%r%NNz3Version of the GSUB table- 0x00010000 or 0x00010001)r rNNz7Offset to ScriptList table-from beginning of GSUB table)r rNNz8Offset to FeatureList table-from beginning of GSUB table)r r2NNz7Offset to LookupList table-from beginning of GSUB table)rXrYNrZz>Offset to FeatureVariations table-from beginning of GSUB tableSingleSubstFormat1)r SubstFormatNNr<r r_NNz=Offset to Coverage table-from beginning of Substitution table)r DeltaGlyphIDNNz>Add to original GlyphID modulo 65536 to get substitute GlyphIDSingleSubstFormat2)rrNNrArrr=NNz*Number of GlyphIDs in the Substitute array)r> Substituter=rz6Array of substitute GlyphIDs-ordered by Coverage IndexMultipleSubstFormat1)rr)r SequenceCountNNz6Number of Sequence table offsets in the Sequence array)r SequencerrzbArray of offsets to Sequence tables-from beginning of Substitution table-ordered by Coverage Indexr)rr=NNzQNumber of GlyphIDs in the Substitute array. This should always be greater than 0.)r>rr=rz String of GlyphIDs to substituteAlternateSubstFormat1)rr)rAlternateSetCountNNzNumber of AlternateSet tables)r AlternateSetrrzfArray of offsets to AlternateSet tables-from beginning of Substitution table-ordered by Coverage Indexr)rr=NNz)Number of GlyphIDs in the Alternate array)r> Alternater=rz.Array of alternate GlyphIDs-in arbitrary orderLigatureSubstFormat1)rr)r LigSetCountNNzNumber of LigatureSet tables)r LigatureSetrrzeArray of offsets to LigatureSet tables-from beginning of Substitution table-ordered by Coverage Indexr)rrNNzNumber of Ligature tables)r Ligaturerrz]Array of offsets to Ligature tables-from beginning of LigatureSet table-ordered by preferencer))r>LigGlyphNNz!GlyphID of ligature to substitute)r CompCountNNz$Number of components in the ligature)r> ComponentrrzXArray of component GlyphIDs-start with the second component-ordered in writing directionSubstLookupRecord)rrNNz1Index into current glyph sequence-first glyph = 0ContextSubstFormat1)rr)rSubRuleSetCountNNzCNumber of SubRuleSet tables-must equal GlyphCount in Coverage table)r SubRuleSetrrzdArray of offsets to SubRuleSet tables-from beginning of Substitution table-ordered by Coverage Indexr)r SubRuleCountNNzNumber of SubRule tables)r SubRulerrz[Array of offsets to SubRule tables-from beginning of SubRuleSet table-ordered by preferencer))rr=NNzGTotal number of glyphs in input glyph sequence-includes the first glyphr SubstCountNNzNumber of SubstLookupRecords)r>rr=rz/Array of input GlyphIDs-start with second glyphrrrrz+Array of SubstLookupRecords-in design orderContextSubstFormat2)rr)r rNNzCOffset to glyph ClassDef table-from beginning of Substitution table)rSubClassSetCountNNzNumber of SubClassSet tables)r SubClassSetr rzhArray of offsets to SubClassSet tables-from beginning of Substitution table-ordered by class-may be NULLr )rSubClassRuleCountNNzNumber of SubClassRule tables)r SubClassRuler rz[Array of offsets to SubClassRule tables-from beginning of SubClassSet-ordered by preferencer))rr=NNzVTotal number of classes specified for the context in the rule-includes the first classr)rrPr=rz`Array of classes-beginning with the second class-to be matched to the input glyph class sequence)rrrrz-Array of Substitution lookups-in design orderContextSubstFormat3)rrNNr)rr=NNz,Number of glyphs in the input glyph sequencer)r r_r=rz_Array of offsets to Coverage table-from beginning of Substitution table-in glyph sequence orderr ChainContextSubstFormat1)rr)rChainSubRuleSetCountNNzHNumber of ChainSubRuleSet tables-must equal GlyphCount in Coverage table)r ChainSubRuleSetrrziArray of offsets to ChainSubRuleSet tables-from beginning of Substitution table-ordered by Coverage Indexr)rChainSubRuleCountNNzNumber of ChainSubRule tables)r ChainSubRulerrzeArray of offsets to ChainSubRule tables-from beginning of ChainSubRuleSet table-ordered by preferencer)rrrrrrrrrrrz-Array of SubstLookupRecords (in design order)ChainContextSubstFormat2)rr)r rNNzfOffset to glyph ClassDef table containing backtrack sequence data-from beginning of Substitution table)r rNNzbOffset to glyph ClassDef table containing input sequence data-from beginning of Substitution table)r rNNzfOffset to glyph ClassDef table containing lookahead sequence data-from beginning of Substitution table)rChainSubClassSetCountNNz!Number of ChainSubClassSet tables)r ChainSubClassSetrrzsArray of offsets to ChainSubClassSet tables-from beginning of Substitution table-ordered by input class-may be NULLr)rChainSubClassRuleCountNNz"Number of ChainSubClassRule tables)r ChainSubClassRulerrzeArray of offsets to ChainSubClassRule tables-from beginning of ChainSubClassSet-ordered by preferencer)rrrrrrrrChainContextSubstFormat3) rrrrrrrr)rrrrz,Array of SubstLookupRecords, in design orderExtensionSubstFormat1)rr)rXrNNr4ReverseChainSingleSubstFormat1)r)r r_Nrz?Offset to Coverage table - from beginning of Substitution tablerrrrr)r>rr=rz6Array of substitute GlyphIDs-ordered by Coverage indexGDEF))r%r%NNz@Version of the GDEF table- 0x00010000, 0x00010002, or 0x00010003)r GlyphClassDefNNz[Offset to class definition table for glyph type-from beginning of GDEF header (may be NULL))r AttachListNNz[Offset to list of glyphs with attachment points-from beginning of GDEF header (may be NULL))r LigCaretListNNzdOffset to list of positioning points for ligature carets-from beginning of GDEF header (may be NULL))r MarkAttachClassDefNNzeOffset to class definition table for mark attachment type-from beginning of GDEF header (may be NULL))r MarkGlyphSetsDefNzVersion >= 0x00010002zWOffset to the table of mark set definitions-from beginning of GDEF header (may be NULL))rXVarStoreNzVersion >= 0x00010003'Offset to variation store (may be NULL)r!))r r_NNz=Offset to Coverage table - from beginning of AttachList table)rr=NNz'Number of glyphs with attachment points)r AttachPointr=rzaArray of offsets to AttachPoint tables-from beginning of AttachList table-in Coverage Index orderr')r PointCountNNz)Number of attachment points on this glyph)r PointIndexr(rz=Array of contour point indices -in increasing numerical orderr"))r r_NNz?Offset to Coverage table - from beginning of LigCaretList table)r LigGlyphCountNNzNumber of ligature glyphs)r rr*rz`Array of offsets to LigGlyph tables-from beginning of LigCaretList table-in Coverage Index orderr)r CaretCountNNz8Number of CaretValues for this ligature (components - 1))r CaretValuer+rzeArray of offsets to CaretValue tables-from beginning of LigGlyph table-in increasing coordinate orderCaretValueFormat1)rCaretValueFormatNNr<r CoordinateNNzX or Y value, in design unitsCaretValueFormat2)rr.NNrA)rCaretValuePointNNzContour point index on glyphCaretValueFormat3))rr.NNrr/)r DeviceTableNNzJOffset to Device table for X or Y value-from beginning of CaretValue tabler$))rMarkSetTableFormatNNzFormat identifier == 1)r MarkSetCountNNzNumber of mark sets defined)rXr_r6rz-Array of offsets to mark set coverage tables.BASE))r%r%NNz.Version of the BASE table-initially 0x00010000)r HorizAxisNNzHOffset to horizontal Axis table-from beginning of BASE table-may be NULL)r VertAxisNNzFOffset to vertical Axis table-from beginning of BASE table-may be NULL)rXr%NrZr&Axis)r BaseTagListNNzDOffset to BaseTagList table-from beginning of Axis table-may be NULL)r BaseScriptListNNz;Offset to BaseScriptList table-from beginning of Axis tabler;)r BaseTagCountNNzMNumber of baseline identification tags in this text direction-may be zero (0))r BaselineTagr=rzJArray of 4-byte baseline identification tags-must be in alphabetical orderr<)rBaseScriptCountNNz#Number of BaseScriptRecords defined)rBaseScriptRecordr?rzAArray of BaseScriptRecords-in alphabetical order by BaseScriptTagr@)r BaseScriptTagNNz 4-byte script identification tag)r BaseScriptNNz;Offset to BaseScript table-from beginning of BaseScriptListrB))r BaseValuesNNzIOffset to BaseValues table-from beginning of BaseScript table-may be NULL)r DefaultMinMaxNNzFOffset to MinMax table- from beginning of BaseScript table-may be NULL)rBaseLangSysCountNNz4Number of BaseLangSysRecords defined-may be zero (0))rBaseLangSysRecordrErzCArray of BaseLangSysRecords-in alphabetical order by BaseLangSysTagrF)r BaseLangSysTagNNz)4-byte language system identification tag)r MinMaxNNz9Offset to MinMax table-from beginning of BaseScript tablerC))r DefaultIndexNNzzIndex number of default baseline for this script-equals index position of baseline tag in BaselineArray of the BaseTagList)rBaseCoordCountNNzONumber of BaseCoord tables defined-should equal BaseTagCount in the BaseTagList)r BaseCoordrJrzsArray of offsets to BaseCoord-from beginning of BaseValues table-order matches BaselineTag array in the BaseTagListrH))r MinCoordNNzeOffset to BaseCoord table-defines minimum extent value-from the beginning of MinMax table-may be NULL)r MaxCoordNNzeOffset to BaseCoord table-defines maximum extent value-from the beginning of MinMax table-may be NULL)rFeatMinMaxCountNNz+Number of FeatMinMaxRecords-may be zero (0))rFeatMinMaxRecordrNrzDArray of FeatMinMaxRecords-in alphabetical order, by FeatureTableTagrO))r FeatureTableTagNNzF4-byte feature identification tag-must match FeatureTag in FeatureList)r rLNNzaOffset to BaseCoord table-defines minimum extent value-from beginning of MinMax table-may be NULL)r rMNNzaOffset to BaseCoord table-defines maximum extent value-from beginning of MinMax table-may be NULLBaseCoordFormat1)rBaseCoordFormatNNr<BaseCoordFormat2))rrRNNrAr/)r>ReferenceGlyphNNzGlyphID of control glyph)rBaseCoordPointNNz,Index of contour point on the ReferenceGlyphBaseCoordFormat3))rrRNNrr/)r r4NNz'Offset to Device table for X or Y valueJSTF))r%r%NNz5Version of the JSTF table-initially set to 0x00010000)rJstfScriptCountNNz)Number of JstfScriptRecords in this table)rJstfScriptRecordrXrzBArray of JstfScriptRecords-in alphabetical order, by JstfScriptTagrY)r JstfScriptTagNNz 4-byte JstfScript identification)r JstfScriptNNz8Offset to JstfScript table-from beginning of JSTF Headerr[))r ExtenderGlyphNNzLOffset to ExtenderGlyph table-from beginning of JstfScript table-may be NULL)r DefJstfLangSysNNzROffset to Default JstfLangSys table-from beginning of JstfScript table-may be NULL)rJstfLangSysCountNNz;Number of JstfLangSysRecords in this table- may be zero (0))rJstfLangSysRecordr^rzDArray of JstfLangSysRecords-in alphabetical order, by JstfLangSysTagr_)r JstfLangSysTagNNz4-byte JstfLangSys identifier)r JstfLangSysNNz>Offset to JstfLangSys table-from beginning of JstfScript tabler\)rr=NNz(Number of Extender Glyphs in this script)r>r\r=rz&GlyphIDs-in increasing numerical orderra)rJstfPriorityCountNNzNumber of JstfPriority tables)r JstfPriorityrbrz]Array of offsets to JstfPriority tables-from beginning of JstfLangSys table-in priority orderrc) )r ShrinkageEnableGSUBNNzaOffset to Shrinkage Enable JstfGSUBModList table-from beginning of JstfPriority table-may be NULL)r ShrinkageDisableGSUBNNzbOffset to Shrinkage Disable JstfGSUBModList table-from beginning of JstfPriority table-may be NULL)r ShrinkageEnableGPOSNNzaOffset to Shrinkage Enable JstfGPOSModList table-from beginning of JstfPriority table-may be NULL)r ShrinkageDisableGPOSNNzbOffset to Shrinkage Disable JstfGPOSModList table-from beginning of JstfPriority table-may be NULL)r ShrinkageJstfMaxNNzSOffset to Shrinkage JstfMax table-from beginning of JstfPriority table -may be NULL)r ExtensionEnableGSUBNNrzTArray of MathValueRecords defining italics correction values for each covered glyph.r;))r TopAccentCoverageNNzPOffset to Coverage table - from the beginning of MathTopAccentAttachment table.)rTopAccentAttachmentCountNNz_Number of top accent attachment point values. Should coincide with the number of covered glyphs)rTopAccentAttachmentrArzVArray of MathValueRecords defining top accent attachment points for each covered glyphr=))r MathKernCoverageNNzHOffset to Coverage table - from the beginning of the MathKernInfo table.)r MathKernCountNNzNumber of MathKernInfoRecords.)MathKernInfoRecordMathKernInfoRecordsrDrzpArray of MathKernInfoRecords, per-glyph information for mathematical positioning of subscripts and superscripts.rE))r TopRightMathKernNNzfOffset to MathKern table for top right corner - from the beginning of MathKernInfo table. May be NULL.)r TopLeftMathKernNNziOffset to MathKern table for the top left corner - from the beginning of MathKernInfo table. May be NULL.)r BottomRightMathKernNNziOffset to MathKern table for bottom right corner - from the beginning of MathKernInfo table. May be NULL.)r BottomLeftMathKernNNzhOffset to MathKern table for bottom left corner - from the beginning of MathKernInfo table. May be NULL.MathKern))r HeightCountNNz2Number of heights on which the kern value changes.)rCorrectionHeightrLrzhArray of correction heights at which the kern value changes. Sorted by the height value in design units.)r KernValuerLa5Array of kern values corresponding to heights. First value is the kern value for all heights less or equal than the first height in this table.Last value is the value to be applied for all heights greater than the last height in this table. Negative values are interpreted as move glyphs closer to each other.r))rMinConnectorOverlapNNzQMinimum overlap of connecting glyphs during glyph construction, in design units.)r VertGlyphCoverageNNDOffset to Coverage table - from the beginning of MathVariants table.)r HorizGlyphCoverageNNrR)rVertGlyphCountNNzSNumber of glyphs for which information is provided for vertically growing variants.)rHorizGlyphCountNNzUNumber of glyphs for which information is provided for horizontally growing variants.)r VertGlyphConstructionrTrzArray of offsets to MathGlyphConstruction tables - from the beginning of the MathVariants table, for shapes growing in vertical direction.)r HorizGlyphConstructionrUrzArray of offsets to MathGlyphConstruction tables - from the beginning of the MathVariants table, for shapes growing in horizontal direction.MathGlyphConstruction))r GlyphAssemblyNNzmOffset to GlyphAssembly table for this shape - from the beginning of MathGlyphConstruction table. May be NULL)r VariantCountNNz/Count of glyph growing variants for this glyph.)MathGlyphVariantRecordr[rZrz?MathGlyphVariantRecords for alternative variants of the glyphs.r[)r> VariantGlyphNNzGlyph ID for the variant.)rAdvanceMeasurementNNzeAdvance width/height, in design units, of the variant, in the direction of requested glyph extension.rY))rr?NNzQItalics correction of this GlyphAssembly. Should not depend on the assembly size.)r PartCountNNz!Number of parts in this assembly.)GlyphPartRecord PartRecordsr^rzglyphNNzGlyph ID for the part.)rStartConnectorLengthNNzAdvance width/ height of the straight bar connector material, in design units, is at the beginning of the glyph, in the direction of the extension.)rEndConnectorLengthNNzAdvance width/ height of the straight bar connector material, in design units, is at the end of the glyph, in the direction of the extension.)r FullAdvanceNNz\Full advance width/height for this part, in the direction of the extension. In design units.)r PartFlagsNNzPart qualifiers. PartFlags enumeration currently uses only one bit: 0x0001 fExtender: If set, the part can be skipped or repeated. 0xFFFE ReservedAATLookupSegment))r lastGlyphNNz!Last glyph index in this segment.)r firstGlyphNNz"First glyph index in this segment.)rvalueNNz8A 16-bit offset from the start of the table to the data.ankr)r AnchorPointsNNzAnchor points table.AnchorPointsFormat0))rr)NNz'Format of the anchor points table, = 0.)rrNNz$Flags. Currenty unused, set to zero.)z(AATLookupWithDataOffset(AnchorGlyphData)AnchorsNNz.Table of with anchor overrides for each glyph.AnchorGlyphData)rAnchorPointCountNNz'Number of anchor points for this glyph.)rrrorzIndividual anchor points.r)rrNNz"X coordinate of this anchor point.)rrNNz"Y coordinate of this anchor point.bsln)r%r%NNzNVersion number of the AAT baseline table (0x00010000 for the initial version).)rBaselineNNzBaseline table.BaselineFormat0))rr)NNz"Format of the baseline table, = 0.rDefaultBaselineNNzKDefault baseline value for all glyphs. This value can be from 0 through 31.rDelta ruThese are the FUnit distance deltas from the font’s natural baseline to the other baselines used in the font. A total of 32 deltas must be assigned.BaselineFormat1)rr)NNz"Format of the baseline table, = 1.rsruAATLookup(uint16)BaselineValuesNNz7Lookup table that maps glyphs to their baseline values.BaselineFormat2)ryrsr> StandardGlyphNNzGlyph index of the glyph in this font to be used to set the baseline values. This glyph must contain a set of control points (whose numbers are contained in the following field) that determines baseline distances.r ControlPointrwrzArray of 32 control point numbers, associated with the standard glyph. A value of 0xFFFF means there is no corresponding control point in the standard glyph.BaselineFormat3)ryrsr~rrzcidg)rCIDGlyphMappingNNzCID-to-glyph mapping table.CIDGlyphMappingFormat0) )rr)NNz.Format of the CID-to-glyph mapping table, = 0.r DataFormatNNzCurrenty unused, set to zero.r StructLengthNNzSize of the table in bytes.rRegistryNNzThe registry ID.char64 RegistryNameNNz= 1zOOffset (from beginning of COLR table) to array of Version-1 Base Glyph records.)rX LayerListNrz3Offset (from beginning of COLR table) to LayerList.)rXClipListNrz&Offset to ClipList table (may be NULL))LOffsetTo(DeltaSetIndexMap) VarIndexMapNrz.Offset to DeltaSetIndexMap table (may be NULL))rXr%Nrr&r)BaseGlyphRecordrrrzBase Glyph records.r))r> BaseGlyphNNz\Glyph ID of reference glyph. This glyph is for reference only and is not rendered for color.)rFirstLayerIndexNNzIndex (from beginning of the Layer Records) to the layer record. There will be numLayers consecutive entries for this base glyph.)r NumLayersNNz2Number of color layers associated with this glyph.r) LayerRecordrrrzLayer records.r)r> LayerGlyphNNz@Glyph ID of layer glyph (must be in z-order from bottom to top).)r PaletteIndexNNz1Index value to use with a selected color palette.r)rBaseGlyphCountNNz&Number of Version-1 Base Glyph records)rBaseGlyphPaintRecordr rz%Array of Version-1 Base Glyph recordsr )r>rNNzGlyph ID of reference glyph.)rXPaintNNzVOffset (from beginning of BaseGlyphPaintRecord) to Paint, typically a PaintColrLayers.r)r LayerCountNNzNumber of Version-1 Layers)rXr rrzHArray of offsets to Paint tables, from the start of the LayerList table.ClipListFormat1))rr)NNz+Format for ClipList with 16bit glyph IDs: 1)r ClipCountNNzNumber of Clip records.)r ClipRecordrrz)Array of Clip records sorted by glyph ID.r))r StartGlyphIDNNzFirst glyph ID in the range.)r EndGlyphIDNNzLast glyph ID in the range.)rClipBoxNNzOffset to a ClipBox table.ClipBoxFormat1))rr)NNz/Format for ClipBox without variation: set to 1.)rxMinNNzMinimum x of clip box.)ryMinNNzMinimum y of clip box.)rxMaxNNzMaximum x of clip box.)ryMaxNNzMaximum y of clip box.ClipBoxFormat2))rr)NNz&Format for variable ClipBox: set to 2.)rrNNz(Minimum x of clip box. VarIndexBase + 0.)rrNNz(Minimum y of clip box. VarIndexBase + 1.)rrNNz(Maximum x of clip box. VarIndexBase + 2.)rrNNz(Maximum y of clip box. VarIndexBase + 3.VarIndex VarIndexBaseNNz!Base index into DeltaSetIndexMap. Affine2x3))rxxNNzx-part of x basis vector)ryxNNzy-part of x basis vector)rxyNNzx-part of y basis vector)ryyNNzy-part of y basis vector)rdxNNzTranslation in x direction)rdyNNzTranslation in y direction VarAffine2x3))rrNNz+x-part of x basis vector. VarIndexBase + 0.)rr NNz+y-part of x basis vector. VarIndexBase + 1.)rr!NNz+x-part of y basis vector. VarIndexBase + 2.)rr"NNz+y-part of y basis vector. VarIndexBase + 3.)rr#NNz-Translation in x direction. VarIndexBase + 4.)rr$NNz-Translation in y direction. VarIndexBase + 5.r ColorStop))r StopOffsetNNrrr NNzIndex for a CPAL palette entry.rAlphaNNz Values outsided [0.,1.] reserved VarColorStop))rr'NNVarIndexBase + 0.r()rr*NNz3Values outsided [0.,1.] reserved. VarIndexBase + 1.r ColorLine) ExtendModeExtendNNz'Enum {PAD = 0, REPEAT = 1, REFLECT = 2}r StopCountNNzNumber of Color stops.)r&r&r2rArray of Color stops. VarColorLine)r.r1)r+r&r2rr3 PaintFormat1))r PaintFormatNNr<)rrNNz2Number of offsets to Paint to read from LayerList.)rrNNzIndex into LayerList. PaintFormat2))rr6NNrAr(r) PaintFormat3))rr6NNrr()rr*NNz3Values outsided [0.,1.] reserved. VarIndexBase + 0.r PaintFormat4))rr6NNzFormat identifier-format = 4)rr-NNzKOffset (from beginning of PaintLinearGradient table) to ColorLine subtable.rx0NNrry0NNrrx1NNrry1NNr)rx2NNr)ry2NNr PaintFormat5) )rr6NNzFormat identifier-format = 5)LOffset24To(VarColorLine)r-NNzQOffset (from beginning of PaintVarLinearGradient table) to VarColorLine subtable.rr;NNr,rr=NNVarIndexBase + 1.)rr?NNVarIndexBase + 2.)rrANNVarIndexBase + 3.)rrBNNVarIndexBase + 4.)rrCNNVarIndexBase + 5.r PaintFormat6))rr6NNzFormat identifier-format = 6)rr-NNzKOffset (from beginning of PaintRadialGradient table) to ColorLine subtable.r:r<)rr0NNrr>r@)rr1NNr PaintFormat7) )rr6NNzFormat identifier-format = 7)rEr-NNzQOffset (from beginning of PaintVarRadialGradient table) to VarColorLine subtable.rFrG)rrNNNrI)rr?NNrJ)rrANNrK)rrONNrLr PaintFormat8))rr6NNzFormat identifier-format = 8)rr-NNzJOffset (from beginning of PaintSweepGradient table) to ColorLine subtable.)rcenterXNNzCenter x coordinate.)rcenterYNNzCenter y coordinate.) BiasedAngle startAngleNNz+Start of the angular range of the gradient.)rTendAngleNNz)End of the angular range of the gradient. PaintFormat9))rr6NNzFormat identifier-format = 9)rEr-NNzPOffset (from beginning of PaintVarSweepGradient table) to VarColorLine subtable.)rrRNNz&Center x coordinate. VarIndexBase + 0.)rrSNNz&Center y coordinate. VarIndexBase + 1.)rTrUNNz=Start of the angular range of the gradient. VarIndexBase + 2.)rTrVNNz;End of the angular range of the gradient. VarIndexBase + 3.r PaintFormat10))rr6NNzFormat identifier-format = 10)rr NNz>Offset (from beginning of PaintGlyph table) to Paint subtable.)r>GlyphNNz Glyph ID for the source outline. PaintFormat11)rr6NNzFormat identifier-format = 11)r>rYNNz0Virtual glyph ID for a BaseGlyphList base glyph. PaintFormat12))rr6NNzFormat identifier-format = 12)rr NNzBOffset (from beginning of PaintTransform table) to Paint subtable.)zLOffset24To(Affine2x3) TransformNN)2x3 matrix for 2D affine transformations. PaintFormat13))rr6NNzFormat identifier-format = 13)rr NNzEOffset (from beginning of PaintVarTransform table) to Paint subtable.)zLOffset24To(VarAffine2x3)r\NNr] PaintFormat14))rr6NNzFormat identifier-format = 14)rr NNzBOffset (from beginning of PaintTranslate table) to Paint subtable.)rr#NNzTranslation in x direction.)rr$NNzTranslation in y direction. PaintFormat15))rr6NNzFormat identifier-format = 15)rr NNzEOffset (from beginning of PaintVarTranslate table) to Paint subtable.)rr#NNz-Translation in x direction. VarIndexBase + 0.)rr$NNz-Translation in y direction. VarIndexBase + 1.r PaintFormat16))rr6NNzFormat identifier-format = 16)rr NNz>Offset (from beginning of PaintScale table) to Paint subtable.rscaleXNNrrscaleYNNr PaintFormat17))rr6NNzFormat identifier-format = 17)rr NNzAOffset (from beginning of PaintVarScale table) to Paint subtable.rrcNNr,rreNNrHr PaintFormat18))rr6NNzFormat identifier-format = 18)rr NNzJOffset (from beginning of PaintScaleAroundCenter table) to Paint subtable.rbrdrrRNNrrrSNNr PaintFormat19))rr6NNzFormat identifier-format = 19)rr NNzMOffset (from beginning of PaintVarScaleAroundCenter table) to Paint subtable.rgrhrrRNNrIrrSNNrJr PaintFormat20))rr6NNzFormat identifier-format = 20)rr NNzEOffset (from beginning of PaintScaleUniform table) to Paint subtable.rscaleNNr PaintFormat21))rr6NNzFormat identifier-format = 21)rr NNzHOffset (from beginning of PaintVarScaleUniform table) to Paint subtable.)rrqNNr,r PaintFormat22))rr6NNzFormat identifier-format = 22)rr NNzQOffset (from beginning of PaintScaleUniformAroundCenter table) to Paint subtable.rprjrk PaintFormat23))rr6NNzFormat identifier-format = 23)rr NNzTOffset (from beginning of PaintVarScaleUniformAroundCenter table) to Paint subtable.)rrqNNzVarIndexBase + 0)rrRNNzVarIndexBase + 1)rrSNNzVarIndexBase + 2r PaintFormat24))rr6NNzFormat identifier-format = 24)rr NNz?Offset (from beginning of PaintRotate table) to Paint subtable.AngleangleNNr PaintFormat25))rr6NNzFormat identifier-format = 25)rr NNzBOffset (from beginning of PaintVarRotate table) to Paint subtable.rwrxNNr,r PaintFormat26))rr6NNzFormat identifier-format = 26)rr NNzKOffset (from beginning of PaintRotateAroundCenter table) to Paint subtable.rvrjrk PaintFormat27))rr6NNzFormat identifier-format = 27)rr NNzNOffset (from beginning of PaintVarRotateAroundCenter table) to Paint subtable.rz)rrRNNrH)rrSNNrIr PaintFormat28))rr6NNzFormat identifier-format = 28)rr NNz=Offset (from beginning of PaintSkew table) to Paint subtable.rw xSkewAngleNNrrw ySkewAngleNNr PaintFormat29))rr6NNzFormat identifier-format = 29)rr NNz@Offset (from beginning of PaintVarSkew table) to Paint subtable.rwrNNr,rwrNNrHr PaintFormat30))rr6NNzFormat identifier-format = 30)rr NNzIOffset (from beginning of PaintSkewAroundCenter table) to Paint subtable.r~rrjrk PaintFormat31))rr6NNzFormat identifier-format = 31)rr NNzLOffset (from beginning of PaintVarSkewAroundCenter table) to Paint subtable.rrrmrnr PaintFormat32))rr6NNzFormat identifier-format = 32)LOffset24To(Paint) SourcePaintNNzIOffset (from beginning of PaintComposite table) to source Paint subtable.) CompositeModerNNz"A CompositeMode enumeration value.)r BackdropPaintNNzKOffset (from beginning of PaintComposite table) to backdrop Paint subtable. AxisValueMap)rFromCoordinateNNzBA normalized coordinate value obtained using default normalization)r ToCoordinateNNz)The modified, normalized coordinate valueAxisSegmentMap)rPositionMapCountNNz0The number of correspondence pairs for this axis)rrrrz1The array of axis value map records for this axisavar))r%r%NNz3Version of the avar table- 0x00010000 or 0x00020000)rrNNz!Permanently reserved; set to zero)rrNNziThe number of variation axes for this font. This must be the same number as axisCount in the "fvar" table)rrrrulThe segment maps array — one segment map for each axis, in the order of axes specified in the "fvar" table)rrNVersion >= 0x00020000r)rXr%NrrN)otDatac/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/fontTools/ttLib/tables/otData.pyrsc B c   L    c &  K   %c @  ?c t  M   sc N   Mc P    Oc v  R   uc P  Oc BbCc F  !Ec J $ : < Ic X )! $Wc b  T   ac |  !{c @   c \   [ c x   w c T  S c ~   } c Z  Y c j  i c Z $ 'Y c j  i c `  _c X  "Wc ^  R   ]c x  wc l : =kc h    gc @    c f  ec P    Oc v  "uc |  H   {c V    Uc n  "mc t    sc Z    Yc @    c X % (Wc j  K   ic D    Cc \    [c B  Ac l  N   kc F  Ec |  {c t    sc Z  Y c D!  C!c |! ! {!c r"    q"c X# 3 6W#c F% !, /E%c f&    e&c L' 3 6K'c z( !4 7y(c j*   i*c Z+  Y+c j+  i+c |+  {+c h,  H   g,c B-  J   A-c b- $ 'a-c r.  q.c Z/  Y/c P0  O0c F1    E1c l1  k1c b2    a2c H3  G3c r3  P   q3c L4   K4c h4    g4c N5  M5c D6  N   C6c ^6  ]6c T7  S7c L8    K8c r8  q8c h9  g9c `: # _:c V;    U;c |; 3 6{;c j= #, /i=c J?    I?c p? 3 6o?c ^A #4 7]Ac NC  MCc vC )3 6uCc jE 2 5iEc VG  UGc JH    IHc pH  oHc XI    WIc ~I  V P }Ic LJ  V U KJc ZJ   YJc vJ   uJc XK   WKc ZL    YLc @M    Lc fM    eMc LN  T   KNc fN   eNc hO    gOc NP  MPc BQ   AQc DR  CRc xR  U P wRc FS  ESc dS   cSc FT  ETc zT  T   yTc TU   SUc VV  R   UVc pV    oVc VW    UWc |W G J{Wc RZ    QZc xZ    wZc ^[    ][c J\ & )I\c ^]  H ]]c j]   i]c l^  G k^c x^  w^c X_  W_c |_  {_c ^`  ]`c Ja   X  Iac la  kac `b !   _bc Fc    Ecc lc    kcc Rd  Qdc He  Gec pe  oec Xf  Wfc @g ;   fc Zg # Ygc Nh ) W   Mhc jh  ihc zh  A yhc Fi  Eic Vi   Uic ji  iic ~i  }ic Nj " Mjc `j " _jc tj  sjc Fk  ; I Ekc Tk  5 J Skc bk  akc tk  skc Hl  Glc jl  , ilc vl  H ulc Dm  Cmc dm  cmc Hn   Gnc dn  cnc Lo   Koc Np  O   Mpc hp C Fgpc v|   u|c x} $ w}c l~ " k~c `  _c H@   G@c JA  IAc ~A 2 5}Ac jC  iCc ^D ! P   ]Dc xD  wDc `E  !_Ec jF   iFc LG  J KGc XG   WGc tG    sGc ZH  V V YHc nH   B  mHc HI  GIc pI  oIc fJ  eJc \K  ![Kc fL  T eLc rL !" %qLc DN   O  CNc ^N  ]Nc HO  !GOc LP  L KPc XP  B   WPc xP  T wPc DQ !" %CQc VR   O  URc pR    oRc VS    USc |S  U   {Sc VT  U   UTc vT  uTc ^U + .]Uc |V  {Vc zW  yWc dX + .cXc BZ  AZc ~Z  }Zc x[   w[c z\    y\c R]    Q]c j]    i]c B^    A^c Z^    Y^c r^    q^c X_   K  W_c r_ ! <   q_c L` ! K`c z`   M  y`c Ta    Sac za    yac `b  _bc Vc   Ucc ^d  ]dc Pe  > Oec \e   [ec xe ; >wec vg    ugc Nh  Mhc Bi  S Aic Ni    Mic ti    sic Zj  P   Yjc tj  N   sjc Nk  Mkc vk  ukc Fl  Elc fl  elc Zm   Ymc pm  omc ln  knc |n  {nc fo   eoc Bp   Apc `p   _pc ~p  }pc Pq  Oqc |q  {qc dr  crc Zs  Ysc Bt  Atc xt  wtc tu  #suc ~v   }vc \w  Q   [wc xw  wwc bx  axc Ly  Kyc ly  !kyc rz  qzc R{  Q{c @|  {c d|  c|c V}   U}c t}  s}c `~  _~c B  Ac r   qc P@  O@c |@  {@c ^A  ]Ac NB  MBc nB  mBc \C  [Cc @D  Cc rD  qDc nE    mEc TF    SFc zF  "yFc r