ColumnNode (@NotNull String name) { if (children.containsKey(name)) { return children.get(name); } else { ColumnNode newNode = new ColumnNode(); children = children.plus(name, newNode); return newNode; } }