Further refactoring changes