Implement remaining precomposed accented letters.
This commit is contained in:
parent
7ad6563c45
commit
bcec6ed4ca
4 changed files with 130 additions and 17 deletions
|
@ -9,12 +9,49 @@ glyph-block Letter-Greek-Orthography : begin
|
||||||
|
|
||||||
# Link localization forms
|
# Link localization forms
|
||||||
|
|
||||||
link-gr LocalizedForm.IPPH 'a' 'a/doubleStorey'
|
link-gr LocalizedForm.IPPH 'a' 'a/doubleStorey'
|
||||||
link-gr LocalizedForm.IPPH 'aDieresis' 'aDieresis/doubleStorey'
|
link-gr LocalizedForm.IPPH 'aGrave' 'aGrave/doubleStorey'
|
||||||
link-gr LocalizedForm.IPPH 'aRetroflexHook' 'aRetroflexHook/doubleStorey'
|
link-gr LocalizedForm.IPPH 'aAcute' 'aAcute/doubleStorey'
|
||||||
link-gr LocalizedForm.IPPH 'g' 'g/doubleStorey'
|
link-gr LocalizedForm.IPPH 'aCircum' 'aCircum/doubleStorey'
|
||||||
link-gr LocalizedForm.IPPH 'gBar' 'gScriptBar'
|
link-gr LocalizedForm.IPPH 'aTilde' 'aTilde/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aDieresis' 'aDieresis/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aRing' 'aRing/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aMacron' 'aMacron/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aBreve' 'aBreve/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aOgonek' 'aOgonek/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aCaron' 'aCaron/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aDieresisMacron' 'aDieresisMacron/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aDotMacron' 'aDotMacron/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aRingAcute' 'aRingAcute/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aDblGrave' 'aDblGrave/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aInvBreve' 'aInvBreve/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aDot' 'aDot/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aRetroflexHook' 'aRetroflexHook/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aBelowring' 'aBelowring/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aRightHalfRing' 'aRightHalfRing/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aBelowdot' 'aBelowdot/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aHook' 'aHook/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aCircumAcute' 'aCircumAcute/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aCircumGrave' 'aCircumGrave/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aCircumHook' 'aCircumHook/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aCircumTilde' 'aCircumTilde/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aCircumBelowdot' 'aCircumBelowdot/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aBreveAcute' 'aBreveAcute/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aBreveGrave' 'aBreveGrave/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aBreveHook' 'aBreveHook/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aBreveTilde' 'aBreveTilde/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'aBreveBelowdot' 'aBreveBelowdot/doubleStorey'
|
||||||
|
|
||||||
link-gr LocalizedForm.IPPH 'grek/beta' 'latn/beta'
|
link-gr LocalizedForm.IPPH 'g' 'g/doubleStorey'
|
||||||
link-gr LocalizedForm.IPPH 'grek/theta' 'grek/theta/nonCursive'
|
link-gr LocalizedForm.IPPH 'gCircum' 'gCircum/doubleStorey'
|
||||||
link-gr LocalizedForm.IPPH 'grek/chi' 'latn/chi'
|
link-gr LocalizedForm.IPPH 'gBreve' 'gBreve/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'gDot' 'gDot/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'gCedilla' 'gCedilla/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'gBar' 'gScriptBar'
|
||||||
|
link-gr LocalizedForm.IPPH 'gCaron' 'gCaron/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'gAcute' 'gAcute/doubleStorey'
|
||||||
|
link-gr LocalizedForm.IPPH 'gMacron' 'gMacron/doubleStorey'
|
||||||
|
|
||||||
|
link-gr LocalizedForm.IPPH 'grek/beta' 'latn/beta'
|
||||||
|
link-gr LocalizedForm.IPPH 'grek/theta' 'grek/theta/nonCursive'
|
||||||
|
link-gr LocalizedForm.IPPH 'grek/chi' 'latn/chi'
|
||||||
|
|
|
@ -9,7 +9,7 @@ glyph-block Letter-Latin-Lower-A : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
glyph-block-import Common-Derivatives
|
glyph-block-import Common-Derivatives
|
||||||
glyph-block-import Mark-Shared-Metrics : markHalfStroke
|
glyph-block-import Mark-Shared-Metrics : markHalfStroke
|
||||||
glyph-block-import Letter-Shared : CreateAccentedComposition CreateTurnedLetter
|
glyph-block-import Letter-Shared : CreateAccentedComposition CreateMultiAccentedComposition CreateTurnedLetter
|
||||||
glyph-block-import Letter-Shared-Shapes : SerifFrame OBarLeft OBarRight ArcStartSerif
|
glyph-block-import Letter-Shared-Shapes : SerifFrame OBarLeft OBarRight ArcStartSerif
|
||||||
glyph-block-import Letter-Shared-Shapes : RightwardTailedBar RetroflexHook
|
glyph-block-import Letter-Shared-Shapes : RightwardTailedBar RetroflexHook
|
||||||
glyph-block-import Letter-Shared-Shapes : InwardSlabArcStart
|
glyph-block-import Letter-Shared-Shapes : InwardSlabArcStart
|
||||||
|
@ -299,7 +299,68 @@ glyph-block Letter-Latin-Lower-A : begin
|
||||||
CreateTurnedLetter 'turnaScript' 0x252 'aScript' HalfAdvance (XH / 2)
|
CreateTurnedLetter 'turnaScript' 0x252 'aScript' HalfAdvance (XH / 2)
|
||||||
CreateTurnedLetter 'turnAScript' 0x2C70 'AScript' HalfAdvance (CAP / 2)
|
CreateTurnedLetter 'turnAScript' 0x2C70 'AScript' HalfAdvance (CAP / 2)
|
||||||
|
|
||||||
CreateAccentedComposition 'aDieresis' 0xE4 'a' 'dieresisAbove'
|
CreateAccentedComposition 'aGrave' 0xE0 'a' 'graveAbove'
|
||||||
CreateAccentedComposition 'aDieresis/doubleStorey' null 'a/doubleStorey' 'dieresisAbove'
|
CreateAccentedComposition 'aAcute' 0xE1 'a' 'acuteAbove'
|
||||||
|
CreateAccentedComposition 'aCircum' 0xE2 'a' 'circumflexAbove'
|
||||||
|
CreateAccentedComposition 'aTilde' 0xE3 'a' 'tildeAbove'
|
||||||
|
CreateAccentedComposition 'aDieresis' 0xE4 'a' 'dieresisAbove'
|
||||||
|
CreateAccentedComposition 'aRing' 0xE5 'a' 'ringAbove'
|
||||||
|
CreateAccentedComposition 'aMacron' 0x101 'a' 'macronAbove'
|
||||||
|
CreateAccentedComposition 'aBreve' 0x103 'a' 'breveAbove'
|
||||||
|
CreateAccentedComposition 'aOgonek' 0x105 'a' 'ogonekBelow'
|
||||||
|
CreateAccentedComposition 'aCaron' 0x1CE 'a' 'caronAbove'
|
||||||
|
CreateAccentedComposition 'aDblGrave' 0x201 'a' 'doubleGraveAbove'
|
||||||
|
CreateAccentedComposition 'aInvBreve' 0x203 'a' 'archAbove'
|
||||||
|
CreateAccentedComposition 'aDot' 0x227 'a' 'dotAbove'
|
||||||
|
CreateAccentedComposition 'aBelowring' 0x1E01 'a' 'ringBelow'
|
||||||
|
CreateAccentedComposition 'aBelowdot' 0x1EA1 'a' 'dotBelow'
|
||||||
|
CreateAccentedComposition 'aHook' 0x1EA3 'a' 'hookAbove'
|
||||||
|
CreateAccentedComposition 'aRightHalfRing' 0x1E9A 'a' 'rightHalfCircleTR'
|
||||||
|
|
||||||
|
CreateMultiAccentedComposition 'aDieresisMacron' 0x1DF 'a' { 'dieresisAbove' 'macronAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aDotMacron' 0x1E1 'a' { 'dotAbove' 'macronAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aRingAcute' 0x1FB 'a' { 'ringAbove' 'acuteAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumAcute' 0x1EA5 'a' { 'circumflexAbove' 'acuteAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumGrave' 0x1EA7 'a' { 'circumflexAbove' 'graveAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumHook' 0x1EA9 'a' { 'circumflexAbove' 'hookAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumTilde' 0x1EAB 'a' { 'circumflexAbove' 'tildeAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumBelowdot' 0x1EAD 'a' { 'circumflexAbove' 'dotBelow' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveAcute' 0x1EAF 'a' { 'breveAbove' 'acuteAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveGrave' 0x1EB1 'a' { 'breveAbove' 'graveAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveHook' 0x1EB3 'a' { 'breveAbove' 'hookAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveTilde' 0x1EB5 'a' { 'breveAbove' 'tildeAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveBelowdot' 0x1EB7 'a' { 'breveAbove' 'dotBelow' }
|
||||||
|
|
||||||
|
CreateAccentedComposition 'aGrave/doubleStorey' null 'a/doubleStorey' 'graveAbove'
|
||||||
|
CreateAccentedComposition 'aAcute/doubleStorey' null 'a/doubleStorey' 'acuteAbove'
|
||||||
|
CreateAccentedComposition 'aCircum/doubleStorey' null 'a/doubleStorey' 'circumflexAbove'
|
||||||
|
CreateAccentedComposition 'aTilde/doubleStorey' null 'a/doubleStorey' 'tildeAbove'
|
||||||
|
CreateAccentedComposition 'aDieresis/doubleStorey' null 'a/doubleStorey' 'dieresisAbove'
|
||||||
|
CreateAccentedComposition 'aRing/doubleStorey' null 'a/doubleStorey' 'ringAbove'
|
||||||
|
CreateAccentedComposition 'aMacron/doubleStorey' null 'a/doubleStorey' 'macronAbove'
|
||||||
|
CreateAccentedComposition 'aBreve/doubleStorey' null 'a/doubleStorey' 'breveAbove'
|
||||||
|
CreateAccentedComposition 'aOgonek/doubleStorey' null 'a/doubleStorey' 'ogonekBelow'
|
||||||
|
CreateAccentedComposition 'aCaron/doubleStorey' null 'a/doubleStorey' 'caronAbove'
|
||||||
|
CreateAccentedComposition 'aDblGrave/doubleStorey' null 'a/doubleStorey' 'doubleGraveAbove'
|
||||||
|
CreateAccentedComposition 'aInvBreve/doubleStorey' null 'a/doubleStorey' 'archAbove'
|
||||||
|
CreateAccentedComposition 'aDot/doubleStorey' null 'a/doubleStorey' 'dotAbove'
|
||||||
|
CreateAccentedComposition 'aBelowring/doubleStorey' null 'a/doubleStorey' 'ringBelow'
|
||||||
|
CreateAccentedComposition 'aBelowdot/doubleStorey' null 'a/doubleStorey' 'dotBelow'
|
||||||
|
CreateAccentedComposition 'aHook/doubleStorey' null 'a/doubleStorey' 'hookAbove'
|
||||||
|
CreateAccentedComposition 'aRightHalfRing/doubleStorey' null 'a/doubleStorey' 'rightHalfCircleAbove'
|
||||||
|
|
||||||
|
CreateMultiAccentedComposition 'aDieresisMacron/doubleStorey' null 'a/doubleStorey' { 'dieresisAbove' 'macronAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aDotMacron/doubleStorey' null 'a/doubleStorey' { 'dotAbove' 'macronAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aRingAcute/doubleStorey' null 'a/doubleStorey' { 'ringAbove' 'acuteAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumAcute/doubleStorey' null 'a/doubleStorey' { 'circumflexAbove' 'acuteAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumGrave/doubleStorey' null 'a/doubleStorey' { 'circumflexAbove' 'graveAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumHook/doubleStorey' null 'a/doubleStorey' { 'circumflexAbove' 'hookAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumTilde/doubleStorey' null 'a/doubleStorey' { 'circumflexAbove' 'tildeAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aCircumBelowdot/doubleStorey' null 'a/doubleStorey' { 'circumflexAbove' 'dotBelow' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveAcute/doubleStorey' null 'a/doubleStorey' { 'breveAbove' 'acuteAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveGrave/doubleStorey' null 'a/doubleStorey' { 'breveAbove' 'graveAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveHook/doubleStorey' null 'a/doubleStorey' { 'breveAbove' 'hookAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveTilde/doubleStorey' null 'a/doubleStorey' { 'breveAbove' 'tildeAbove' }
|
||||||
|
CreateMultiAccentedComposition 'aBreveBelowdot/doubleStorey' null 'a/doubleStorey' { 'breveAbove' 'dotBelow' }
|
||||||
|
|
||||||
CreateAccentedComposition 'aSbRsbUnderlineBelow' null 'a' 'sbRsbUnderlineBelow'
|
CreateAccentedComposition 'aSbRsbUnderlineBelow' null 'a' 'sbRsbUnderlineBelow'
|
||||||
|
|
|
@ -9,7 +9,7 @@ glyph-block Letter-Latin-Lower-G : begin
|
||||||
glyph-block-import CommonShapes
|
glyph-block-import CommonShapes
|
||||||
glyph-block-import Common-Derivatives
|
glyph-block-import Common-Derivatives
|
||||||
glyph-block-import Mark-Adjustment : ExtendAboveBaseAnchors LeaningAnchor
|
glyph-block-import Mark-Adjustment : ExtendAboveBaseAnchors LeaningAnchor
|
||||||
glyph-block-import Letter-Shared : CreateTurnedLetter
|
glyph-block-import Letter-Shared : CreateAccentedComposition CreateTurnedLetter
|
||||||
glyph-block-import Letter-Shared-Shapes : OBarLeft OBarRight FlatHookDepth
|
glyph-block-import Letter-Shared-Shapes : OBarLeft OBarRight FlatHookDepth
|
||||||
glyph-block-import Letter-Shared-Shapes : CurlyTail PalatalHook TopHook
|
glyph-block-import Letter-Shared-Shapes : CurlyTail PalatalHook TopHook
|
||||||
|
|
||||||
|
@ -208,10 +208,10 @@ glyph-block Letter-Latin-Lower-G : begin
|
||||||
CreateTurnedLetter 'turng' 0x1D77 'g' HalfAdvance [mix Descender XH 0.5]
|
CreateTurnedLetter 'turng' 0x1D77 'g' HalfAdvance [mix Descender XH 0.5]
|
||||||
select-variant "gBar" 0x1E5 (follow -- 'g')
|
select-variant "gBar" 0x1E5 (follow -- 'g')
|
||||||
|
|
||||||
select-variant 'gScript' 0x261 (follow -- [conditional-follow SLAB 'g/singleStorey/autoSerifed/slab' 'g/singleStorey/autoSerifed/sans']) (shapeFrom -- 'g')
|
select-variant 'gScript' 0x261 (follow -- [conditional-follow SLAB 'g/singleStorey/autoSerifed/slab' 'g/singleStorey/autoSerifed/sans']) (shapeFrom -- 'g')
|
||||||
select-variant 'GScript' 0xA7AC (follow -- [conditional-follow SLAB 'g/singleStorey/autoSerifed/slab' 'g/singleStorey/autoSerifed/sans'])
|
select-variant 'GScript' 0xA7AC (follow -- [conditional-follow SLAB 'g/singleStorey/autoSerifed/slab' 'g/singleStorey/autoSerifed/sans'])
|
||||||
select-variant 'gScriptPalatalHook' 0x1D83 (follow -- [conditional-follow SLAB 'g/singleStorey/autoSerifed/slab' 'g/singleStorey/autoSerifed/sans']) (shapeFrom -- 'gPalatalHook')
|
select-variant 'gScriptPalatalHook' 0x1D83 (follow -- [conditional-follow SLAB 'g/singleStorey/autoSerifed/slab' 'g/singleStorey/autoSerifed/sans']) (shapeFrom -- 'gPalatalHook')
|
||||||
select-variant 'gScriptBar' (follow -- [conditional-follow SLAB 'g/singleStorey/autoSerifed/slab' 'g/singleStorey/autoSerifed/sans']) (shapeFrom -- 'gBar')
|
select-variant 'gScriptBar' (follow -- [conditional-follow SLAB 'g/singleStorey/autoSerifed/slab' 'g/singleStorey/autoSerifed/sans']) (shapeFrom -- 'gBar')
|
||||||
select-variant 'gScriptCrossedTail' 0xAB36 (follow -- [conditional-follow SLAB 'g/singleStoreyBentHook/autoSerifed/slab' 'g/singleStoreyBentHook/autoSerifed/sans'])
|
select-variant 'gScriptCrossedTail' 0xAB36 (follow -- [conditional-follow SLAB 'g/singleStoreyBentHook/autoSerifed/slab' 'g/singleStoreyBentHook/autoSerifed/sans'])
|
||||||
|
|
||||||
alias 'cyrl/de.BGR' null 'gScript'
|
alias 'cyrl/de.BGR' null 'gScript'
|
||||||
|
@ -238,3 +238,20 @@ glyph-block Letter-Latin-Lower-G : begin
|
||||||
include : intersection
|
include : intersection
|
||||||
VBar.r (RightSB - BBD) Descender XH BBS
|
VBar.r (RightSB - BBD) Descender XH BBS
|
||||||
SingleStorey.BentHookT spiro-outline [DivFrame 1] XH 1 BBS
|
SingleStorey.BentHookT spiro-outline [DivFrame 1] XH 1 BBS
|
||||||
|
|
||||||
|
CreateAccentedComposition 'gCircum' 0x11D 'g' 'circumflexAbove'
|
||||||
|
CreateAccentedComposition 'gBreve' 0x11F 'g' 'breveAbove'
|
||||||
|
CreateAccentedComposition 'gDot' 0x121 'g' 'dotAbove'
|
||||||
|
CreateAccentedComposition 'gCedilla' 0x123 'g' 'turnCommaAbove'
|
||||||
|
CreateAccentedComposition 'gCaron' 0x1E7 'g' 'caronAbove'
|
||||||
|
CreateAccentedComposition 'gAcute' 0x1F5 'g' 'acuteAbove'
|
||||||
|
CreateAccentedComposition 'gMacron' 0x1E21 'g' 'macronAbove'
|
||||||
|
|
||||||
|
CreateAccentedComposition 'gCircum/doubleStorey' null 'g/doubleStorey' 'circumflexAbove'
|
||||||
|
CreateAccentedComposition 'gBreve/doubleStorey' null 'g/doubleStorey' 'breveAbove'
|
||||||
|
CreateAccentedComposition 'gDot/doubleStorey' null 'g/doubleStorey' 'dotAbove'
|
||||||
|
CreateAccentedComposition 'gCaron/doubleStorey' null 'g/doubleStorey' 'caronAbove'
|
||||||
|
CreateAccentedComposition 'gAcute/doubleStorey' null 'g/doubleStorey' 'acuteAbove'
|
||||||
|
CreateAccentedComposition 'gMacron/doubleStorey' null 'g/doubleStorey' 'macronAbove'
|
||||||
|
|
||||||
|
derive-composites 'gCedilla/doubleStorey' null 'g/doubleStorey' 'cedillaExtShapeBelowSOArc'
|
||||||
|
|
|
@ -38,7 +38,6 @@ export : define decompOverrides : object
|
||||||
# Latvians use comma instead of cedillas in several letters.
|
# Latvians use comma instead of cedillas in several letters.
|
||||||
# Record them as custom decomposition.
|
# Record them as custom decomposition.
|
||||||
0x122 { 'G' 'commaBelow' }
|
0x122 { 'G' 'commaBelow' }
|
||||||
0x123 { 'g' 'turnCommaAbove' }
|
|
||||||
0x136 { 'K' 'commaBelow' }
|
0x136 { 'K' 'commaBelow' }
|
||||||
0x137 { 'k' 'commaBelow' }
|
0x137 { 'k' 'commaBelow' }
|
||||||
0x13B { 'L' 'commaBelow' }
|
0x13B { 'L' 'commaBelow' }
|
||||||
|
@ -165,7 +164,6 @@ export : define decompOverrides : object
|
||||||
|
|
||||||
0x1E08 { 'CCedilla' 'acuteAbove' }
|
0x1E08 { 'CCedilla' 'acuteAbove' }
|
||||||
0x1E09 { 'cCedilla' 'acuteAbove' }
|
0x1E09 { 'cCedilla' 'acuteAbove' }
|
||||||
0x1E9A { 'a' 'rightHalfCircleTR' }
|
|
||||||
0x1E9C { 'longs' 'shortSlashOver' }
|
0x1E9C { 'longs' 'shortSlashOver' }
|
||||||
0x1EDA { 'OHorn' 'acuteAbove' }
|
0x1EDA { 'OHorn' 'acuteAbove' }
|
||||||
0x1EDB { 'oHorn' 'acuteAbove' }
|
0x1EDB { 'oHorn' 'acuteAbove' }
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue