# Monish define Root [{ruuzod} | {tsarlOk} | {ntonOl} | {bunoots} | {vEsiimb} | {yAAqin} | {fesEEng}]; define Suff1 ["+Int": ["^U" "^U" k] ]; define Suff2 ["+Perf":["^O" n] | "+Imperf":["^0" m b] | "+Opt":["^U" d d]]; define Suff3 ["+True":["^A" n k] | "+Belief":["^A" "^A" v "^O" t] | "+Doubt":["^U" "^U" z] | "+False":["^0" q]]; define Suff4 ["+1P+Sg":["^A" "^A" b "^A"] | "+2P+Sg":["^0" m "^A"] | "+3P+Sg":["^U" v v "^U"] | "+1P+Pl+Excl":["^A" "^A" b "^O" r "^A"] | "+1P+Pl+Incl":["^A" "^A" b "^U" g "^A"] | "+2P+Pl":["^0" m "^O" r "^A"] | "+3P+Pl":["^U" v v "^O" r "^U"]]; define Morphology [Root (Suff1) Suff2 (Suff3) Suff4]; define Front [i | e | E | A]; define Back [u | o | O | a]; define Phonology ["^U" -> i, "^O" -> e, "^0" -> E, "^A" -> A || Front ?* _ ] | ["^U" -> u, "^O" -> o, "^0" -> O, "^A" -> a || Back ?* _ ]; read regex [Morphology .o. Phonology];