separated controllers and routers