refactor deepen