refactor part 5