public function FindControllerClassName($controllerName, $FrameworkControllers, $ApplicationControllers, \Puzzlout\Framework\Core\Router $router) {
        $FrameworkControllers = $FrameworkControllers::GetList();
        $ApplicationControllers = $ApplicationControllers::GetList();
        $controllerClass = "\Puzzlout\Framework\Controllers\ErrorController";
        if (array_key_exists($controllerName, $FrameworkControllers)) {
            $frameworkCtrlFolderPath = NameSpaceName::LibFolderName . NameSpaceName::LibControllersFolderName;
            $controllerClass = $frameworkCtrlFolderPath . $controllerName;
            $router->isWsCall = true;
        } else if (array_key_exists($controllerName, $ApplicationControllers)) {
            $appCtrlFolderPath = NameSpaceName::AppsFolderName . "\\" . $this->name . NameSpaceName::AppsControllersFolderName;
            $controllerClass = $appCtrlFolderPath . $controllerName;
        } else {
            error_log("The controller requested '$controllerClass' doesn't exist.");
            $router->currentRoute()->setModule("Error");
            $router->currentRoute()->setAction("ControllerNotFound");
        }
        return $controllerClass;
    }