public Node clone() {
            try {
                Node clone = (Node)super.clone();
                Map<String, Node> cloneChildren = new HashMap<>();
                for (Map.Entry<String, Node> child : this.children.entrySet()) {
                    cloneChildren.put(child.getKey(), child.getValue().clone());
                }
                clone.children = cloneChildren;
                return clone;
            }
            catch (CloneNotSupportedException e) {
                throw new RuntimeException("Won't happen");
            }
        }
Returns a deep copy of this node and all nodes below it
zkfacade/src/main/java/com/yahoo/vespa/curator/mock/MemoryFileSystem.java