lookup ccmpManual1 { sub [i cyrUkraniani j cyrje uni012F]' @MG_above by [dotlessi dotlessi dotlessj dotlessj iogonek.dotless]; sub eta iotaBelow' by iotaLF; sub eta @MG_above iotaBelow' by iotaLF; sub eta @MG_above @MG_above iotaBelow' by iotaLF; sub eta @MG_above @MG_above @MG_above iotaBelow' by iotaLF; sub [a A u cyra cyrA] ogonekBelow' by ogonekTR; sub [a A u cyra cyrA] @MG_above ogonekBelow' by ogonekTR; sub [a A u cyra cyrA] @MG_above @MG_above ogonekBelow' by ogonekTR; sub [a A u cyra cyrA] @MG_above @MG_above @MG_above ogonekBelow' by ogonekTR; } ccmpManual1; lookup ccmpManual2 { sub commaAbove graveAbove by psilivaria; sub commaAbove acuteAbove by psilioxia; sub commaAbove perispomeniAbove by psiliperispomeni; sub revCommaAbove graveAbove by dasiavaria; sub revCommaAbove acuteAbove by dasiaoxia; sub revCommaAbove perispomeniAbove by dasiaperispomeni; } ccmpManual2; feature ccmp { script latn; language dflt; lookup ccmpManual1; lookup ccmpManual2; script grek; language dflt; lookup ccmpManual1; lookup ccmpManual2; script cyrl; language dflt; lookup ccmpManual1; lookup ccmpManual2; script dflt; language dflt; lookup ccmpManual1; lookup ccmpManual2; } ccmp; feature mark { script latn; language dflt; lookup markAuto; script grek; language dflt; lookup markAuto; script cyrl; language dflt; lookup markAuto; script dflt; language dflt; lookup markAuto; } mark; feature mkmk { script latn; language dflt; lookup mkmkAuto; script grek; language dflt; lookup mkmkAuto; script cyrl; language dflt; lookup mkmkAuto; script dflt; language dflt; lookup mkmkAuto; } mkmk;