Further refactoring steps