sclass CountingVarMaker implements VarMaker { S prefix = ""; Set<S> taken = ciSet(); int i; *() {} *(S *prefix) {} *(S *prefix, Cl<S> taken) { addAll(this.taken, taken); } public void addTaken(S s) { taken.add(s); } public S get() { S s; do ping { s = prefix + ++i; } while (taken.contains(s)); ret s; } }