// @dart = 2.6
import 'dart:async';

void main() async {}

class Node {
  final List<Node> nested;
  final String name;
  Node(this.name, [this.nested]) {}
  String toString() => '<$name:[${nested?.join(', ')}]>';
  toSimpleString() {}
}
