extract router to separate file