nested menu-building