Added more structure and thought