@override void removeNode(Node node) { if (!_subtreeNodes.contains(node)) { throw StateError('Node "${node.key}" is not in the subtree'); } originalGraph.removeNode(node); _subtreeNodes.remove(node); }