route refactoring