todo: DFS tree e.g. traversal