sclass StringTree2 { O leafValue; new HashMap children; StringTree2 getOrAdd(S s) { StringTree2 t = children.get(s); if (t == null) children.put(s, t = new StringTree1); ret t; } }