refactoring with layouts