static Lisp hygienicParse1(S s) { Lisp l = chooseBestArgumentHygiene(englishToLispWith_multi(s, ll("mcoswmplpqlieruo", "jcnbmtmfzktxhzyf", "bwqhmnorjpyomdbv"))); ret l == null ? lisp(s) : hygienicParse1_sub(l); } // parse the arguments which are original strings static Lisp hygienicParse1_sub(Lisp l) { if (l == null || l.isLeaf()) ret l; Lisp x = lisp(l.head); for (Lisp a : l.args) x.add(or(hygienicParse1(a.raw()), a)); ret x; }