function add(iRoute $router, $allowOverride = true, $priority = null)
    {
        $router = $this->_prepareRouter($router);


        # Add Router in Stack:
        #
        $this->_priorityQueue()->insert($router, ['order' => $priority]);
        $this->routesAdd[$router->getName()] = $router;


        # Allow Override
        #
        $allowOverride = (bool) $allowOverride;
        if (false === $allowOverride)
            $this->_routes_strict_override[$router->getName()] = true;

        return $this;
    }