finished basics, next is dfs