refactored SingletomnFactory and CreateRouteInfo