refactored layout (the long way)