concept CSnippet { long id; // Whoa - clash with superclass field - and it still works S type; S title, md5; O text; S text() { ret fromUtf8_generic(text); } void legacyCompaction() { if (text instanceof S) cset(this, text := toUtf8_generic(text)); } }