void removeEmptyNodesByPath(@NotNull String path) {
    VfsImplUtil.PathFromRoot pair = VfsImplUtil.extractRootFromPath(myFS, path);
    if (pair != null) {
      int rootIndex = binarySearchChildByName(pair.root().getNameSequence());
      if (rootIndex >= 0) {
        if (children[rootIndex].removeEmptyNodesByPath(FilePartNodeRoot.splitNames(pair.pathFromRoot()))) {
          children = children.length == 1 ? EMPTY_ARRAY : ArrayUtil.remove(children, rootIndex);
        }
      }
    }
    else {
      removeEmptyNodesByPath(FilePartNodeRoot.splitNames(path));
    }
  }
void removeEmptyNodesByPath(@NotNull String path)