router mechanism added