added a little bit more advanced routing