refactoring layour