final protected static function getNewExceptionInstance($message, $code, array $arguments = [])
    {
        $exceptionClassName = get_called_class();

        return new $exceptionClassName(
            vsprintf($message, $arguments),
            $code
        );
    }