So much refactoring 2.