implement new layouts