Revert "Revert "DFS""

This reverts commit fc97162813760f6cfecd6ed2f86d49ac2dc7816c.