refactor navigation partial