21 using SetIter = std::vector<std::unique_ptr<SetNode>>::iterator;
22 using Group = std::vector<GraphNode *>;
35 void Solve(std::function<
void(
const Group &)> &&f);
42 void VisitSingle(
SetNode *node);
55 std::stack<GraphNode *> stack_;
57 std::vector<std::vector<GraphNode *>> sccs_;