finish the context class
merge mr with dfs