static S nlMakeUnusedVar(S text) { L tok = nlTok(text); new TreeSet usedVars; for (int i = 1; i < l(tok); i += 2) { S t = tok.get(i); if (t.startsWith("$") && l(t) > 1) usedVars.add(t); } for (int i = 0; i < 26; i++) { S var = "$" + (char) (((int) 'a') + i); if (!usedVars.contains(var)) ret var; } throw fail("Help help help too many variables!"); }