More refactoring again