- refactored routing