finish router refactory