Redid the implementation for dependencies between steps