s/!v:/[aeiouy]H/g; # unstressed long vowel s/!v/[aeiouyx][HJW]?/g; # any vowel s/!V[:V]/[AEIOUY]H/g; # stressed long vowel s/!V/[AEIOUY][HJW]?/g; # stressed vowel s/!y$/[aeiouy][^HJW]/; # unstressed short vowel s/!y/[aeiouy]/g; # s/!Y$/[AEIOUY][^HJW]/; # stressed short vowel s/!Y/[AEIOUY]/g; # s/!d/[aeiouy][JW]/g; # unstressed diphthong s/!D/[AEIOUY][JW]/g; # stressed diphthong s/!~c/[^ptkbdgCGfTsSvDzZmnNlrjwh# ]/g; s/!~h/!s/g; s/!~p/[^ptkbdgaeiouyxAEIOUYHJW# ]/g; s/!~C/[^CGaeiouyxAEIOUYHJW# ]/g; s/!~f/[^fTsSvDzZaeiouyxAEIOUYHJW# ]/g; s/!~\?/[^ptkbdgCGmnNaeiouyxAEIOUYHJW# ]/g; s/!~H/[^ptkCfTsSaeiouyxAEIOUYHJW# ]/g; s/!~L/[^bdgGvDzZaeiouyxAEIOUYHJW# ]/g; s/!~s/!h/g; s/!~g/[^jwhaeiouyxAEIOUYHJW# ]/g; s/!~n/[^mnNaeiouyxAEIOUYHJW# ]/g; s/!~l/[^lraeiouyxAEIOUYHJW# ]/g; s/!~S/[^CGSZszaeiouyxAEIOUYHJW# ]/g; s/!~P/[^pbmfvwaeiouyxAEIOUYHJW# ]/g; s/!~T/[^tdCGTDszSZnlrjaeiouyxAEIOUYHJW# ]/g; s/!~J/[^CGSZrjaeiouyxAEIOUYHJW# ]/g; s/!~K/[^kgNaeiouyxAEIOUYHJW# ]/g; s/!b/([pbf][lrj]|[tdT][rjw]|[kg][lrjw])/g; # branching onset s/!\$/[ptkbdgCGfTsSvDzZmnNlrjwh# ]/g; # end of syllable s/!c/[ptkbdgCGfTsSvDzZmnNlrjwh]/g; # consonant s/!h/[ptkbdgCGfTsSvDzZ]/g; # obstruent s/!p/[ptkbdg]/g; # plosive s/!C/[CG]/g; # affricate s/!f/[fTsSvDzZ]/g; # fricative s/!\?/[ptkbdgCGmnN]/g; # stop s/!H/[ptkCfTsS]/g; # fortis s/!L/[bdgGvDzZ]/g; # lenis obstruent s/!s/[mnNlrjwh]/g; # sonorant s/!g/[jwh]/g; # glide s/!n/[mnN]/g; # nasal s/!l/[lr]/g; # liquid s/!S/[CGSZsz]/g; # sibilant s/!P/[pbmfvw]/g; # labial s/!T/[tdCGTDszSZnlrj]/g; # coronal s/!J/[CGSZrj]/g; # palatal s/!K/[kgN]/g; # velar