// @dart = 2.6
class Class {
  Map<String, Set<String>> map;
  List<String> method(String node, Set<String> set) => set.add(node)
      ? [node, ...?map[node]?.expand((node) => method(node, set))?.toList()]
      : [];
}

main(args) {}
