added recursive route lookup support