routes refactored