let node = this.root;
for (const part of key) {
const next = new Node<V>();
node.children = new Map([[part, next]]);
node = next;
} else if (!node.children.has(part)) {
const next = new Node<V>();
node.children.set(part, next);