Add new 'item_layout' concept to fight code duplication between layouts