refactored navi