+export const appendSubtree = <T>(id: string, subtree: Tree<T>) => (tree: Tree<T>) =>
+ pipe(
+ getNodeDescendants(''),
+ map(node => node.parent === '' ? { ...node, parent: id } : node),
+ reduce((newTree, node) => setNode(node)(newTree), tree)
+ )(subtree) as Tree<T>;
+