completing the refactoring...