diving into the problem of selecting deeper and maybe refactoring afterwards