DirectedDFS