<?php
namespace Claromentis\Core\Ai\Controller;

$GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"] = (@$GLOBALS["__65da1b1e" . "c2d6653e8a" . "0ab7848e53" . "6215"] ?: array()) + array("_9a122dd9e0255ca418" . "d473b4ba68f14b" => base64_decode("bWV0YWRhd" . "GFbXQ=="), "_54faabe694dfa8d" . "05dc6c0827a214f8" . "2" => base64_decode("aW1hZ" . "2U="), "_eac6791b" . "be0decdc5" . "761307838" . "b277de" => base64_decode("Y29tbW9uLmFpLnVuZXhwZWN0ZWRf" . "cmVzcG9uc2U="), "_7669a8431d2368b1dc09581496a" . "ea68e" => base64_decode("Zm" . "lu" . "aX" . "No"), "_1ab2691b0149e6c0f5bef2e" . "034d68c11" => base64_decode("JywgJw=" . "="), "_e05e0022a2e5ad3" . "44b9c4a0d3f64e1a" . "5" => base64_decode("bWVzc2FnZ" . "Q=="), "_321258308ef" . "09879cd18418" . "8c6cd2744" => base64_decode("dGVybWluYXRlZA" . "=="), "_f083878fb61180fbf68b" . "a3a77b8d7de3" => base64_decode("aW" . "1h" . "Z2" . "Vz"), "_475c4ddf787" . "3ea4e9044df1" . "0ae31d01e" => base64_decode("QUkgaW1hZ2UgZ2VuZXJhdGlvbiBpcyBkaXNhYmx" . "lZA=="), "_bd71c3b5c201f" . "c11db82ed14ce4" . "24de5" => base64_decode("aW5fYXJyY" . "Xk="), "_d1071a03221" . "5f0eb5c4a8ef" . "175f7049d" => base64_decode("cm9sZ" . "Q=="), "dat" . "a" => base64_decode("ZGF0" . "YQ=="), "_b2ffc45fa7bfe7aac72914a57d0f9" . "162" => base64_decode("SW52YWxpZCBtb2R1bGUg" . "Jw=="), "modul" . "e" => base64_decode("bW9kdWx" . "l"), "_f73dab606630b388645c4f7d3f" . "bb13bb" => base64_decode("YXJyYX" . "lfbWVy" . "Z2U="), "_8dacf526543365460ea3a88a" . "3a0904a1" => base64_decode("JzsgdmFsaWQgbW9kdWxlcyBhc" . "mUg"), "_967e161e" . "d500fcf11" . "d56175ec7" . "9897dc" => base64_decode("QUkgaXMgbm9" . "0IGVuYWJsZW" . "QgZm9yIGFue" . "SBtb2R1bGVz"), "_a1b32522d3c9a793e0e430746" . "6b172d9" => base64_decode("ZGF" . "0YT" . "og"), "_cfab5a4a6804604f4998a7244eba86" . "bd" => base64_decode("Cg" . "o="), "_c2900f14e63513f00" . "ce80edbb045506c" => base64_decode("b2JfZmx1c" . "2g="), "_ea8229a1" . "21285ee64" . "9a72fd880" . "bac39b" => base64_decode("YXJyYXlfZmls" . "dGVy"), "_a7442cd7a4d3c557bf6b6b4b0d72" . "4559" => base64_decode("cHJ" . "vbX" . "B0"), "languag" . "e" => base64_decode("bGFuZ3V" . "hZ2U="), "_4d707fab93bebb00" . "bbe69e8159697c90" => base64_decode(""), "_38f12d8b8c719a8ce0fc2fae" . "fc225f35" => base64_decode("YXJyY" . "XlfbW" . "Fw"), "_e956b2bd945b591c54805c9582d" . "15a3b" => base64_decode("b3B0aW9uc1" . "td"), "_2e384775c6854f15e613f8d" . "a88db608d" => base64_decode("Y2ZnX2FpX2VuYWJsZWRfbW9kdWxlcw=" . "="), "_e10fcb42c3" . "14666506097" . "58a397def43" => base64_decode("Y29tbW9uLm" . "FpLmJsb2Nr" . "ZWRfcHJvbX" . "B0"), "_839809c6beb4465bd21e037814ee468" . "3" => base64_decode("Y29tbW9uLmFpLmludm" . "FsaWRfcHJvbXB0"), "_e608e5b5c4c34a67ba97ef84c1e1619" . "9" => base64_decode("Jw" . "=="), "_655a561f4e34bbdfa745dc1" . "3393471b3" => base64_decode("bWltZV9" . "0eXBl"), "sta" . "tus" => base64_decode("c3RhdHV" . "z"), "_1128df95b" . "e7b7ba48e9" . "31c0662b15" . "8c1" => base64_decode("Zmx1c2g" . "="), "te" . "xt" => base64_decode("dGV4d" . "A=="), "_7aefd482de7885f4293c2926df28c2" . "35" => base64_decode("anNvb" . "l9lbm" . "NvZGU" . "="), "_5159b3572969" . "eca46acd1b2e1" . "418459c" => base64_decode("aW1wbG9kZ" . "Q=="), "_df34c069de43011ade22c720a" . "3318f60" => base64_decode("aGlzdG9" . "yeVtd"), "_d962cfd1735adb2dfba46f69" . "c7f15cb8" => base64_decode("cGF" . "ydA" . "=="));
use Claromentis\Core\Ai\Adapters\Vertex\Responses\Text\VertexAiGenerateTextResponse;
use Claromentis\Core\Ai\Ai;
use Claromentis\Core\Ai\AiConfigurationInterface;
use Claromentis\Core\Ai\AiImageConfiguration;
use Claromentis\Core\Ai\AiPluginInterface;
use Claromentis\Core\Ai\AiTextGenerationConfiguration;
use Claromentis\Core\Ai\Exceptions\AiContentFilterException;
use Claromentis\Core\Ai\Exceptions\AiInvalidRequestException;
use Claromentis\Core\Ai\Exceptions\AiInvalidResponseException;
use Claromentis\Core\Ai\Exceptions\AiServerResponseException;
use Claromentis\Core\Ai\Parts\FilePart;
use Claromentis\Core\Ai\Parts\PartInterface;
use Claromentis\Core\Ai\Parts\TextPart;
use Claromentis\Core\Ai\Util\Util;
use Claromentis\Core\Config\Config;
use Claromentis\Core\Http\JsonPrettyResponse;
use Claromentis\Core\Http\RequestData;
use Claromentis\Core\Http\ResponseFactory;
use Claromentis\Core\Localization\Lmsg;
use Claromentis\Core\TextUtil\ClaText;
use Parsedown;
use RestExBadRequest;
use RestExError;
use Symfony\Component\HttpFoundation\Response;
use Throwable;




class RestAiController
{
    
    
    
    
    private Ai $ai;
    
    
    
    
    protected Config $config;
    
    
    
    
    private ResponseFactory $responseFactory;
    
    
    
    
    private ClaText $claText;
    
    
    
    
    private Lmsg $lmsg;
    
    
    
    
    
    
    
    
    public function __construct(Ai $ai, Config $config, ResponseFactory $responseFactory, ClaText $cla_text, Lmsg $lmsg)
    {
        $this->ai = $ai;
        $this->config = $config;
        $this->responseFactory = $responseFactory;
        $this->claText = $cla_text;
        $this->lmsg = $lmsg;
    }
    
    
    
    
    
    
    
    public function generateTextStream(RequestData $requestData) : Response
    {
        $_a7442cd7a4d3c557bf6b6b4b0d724559 = $requestData->get($GLOBALS["__65da1b1ec2d6653e" . "8a0ab7848e536215"]["_a7442cd7a4d3c557bf6b6b4b0d72" . "4559"]);
        $module = $requestData->get($GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["mod" . "ule"], $GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_4d707fab93bebb00bbe69e81596" . "97c90"]);
        $language = $requestData->get($GLOBALS["__65da1b1ec2d6653e8a0ab7848e536" . "215"]["lang" . "uage"]);
        $this->validateModule($module);
        $_a7442cd7a4d3c557bf6b6b4b0d724559 = $this->initializePrompt($module, AiPluginInterface::TYPE_TEXT_GENERATION, $language, $_a7442cd7a4d3c557bf6b6b4b0d724559);
        $_f9aef021fb8e50005cc6aa3a9d7e2117 = $this->responseFactory->GetEventStreamResponse(function () use($_a7442cd7a4d3c557bf6b6b4b0d724559) {
            $_e696d5598f94156853fd8b977b8c344c = new Parsedown();
            $_77ab044ee5ed2012c760c0fbb7bd34f9 = $GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["_4d707fab93bebb00b" . "be69e8159697c90"];
            $this->ai->generateTextStream(function (VertexAiGenerateTextResponse $_fd5a3a643834299cbdadfc3540ba0bcb) use($_e696d5598f94156853fd8b977b8c344c, &$_77ab044ee5ed2012c760c0fbb7bd34f9) {
                if ($_fd5a3a643834299cbdadfc3540ba0bcb->hasTerminated()) {
                    $this->flush($GLOBALS["__65da1b1ec2d665" . "3e8a0ab7848e5362" . "15"]["_321258308" . "ef09879cd1" . "84188c6cd2" . "744"]);
                } else {
                    try {
                        $_77ab044ee5ed2012c760c0fbb7bd34f9 .= $_fd5a3a643834299cbdadfc3540ba0bcb->getGeneratedText();
                    } catch (Throwable $throwable) {
                        $this->handleException($throwable);
                    }
                    $this->flush($GLOBALS["__65da1b1ec" . "2d6653e8a0a" . "b7848e53621" . "5"]["_e05e0022a" . "2e5ad344b9" . "c4a0d3f64e" . "1a5"], $this->claText->SanitizeHtml($_e696d5598f94156853fd8b977b8c344c->text($_77ab044ee5ed2012c760c0fbb7bd34f9)));
                }
            }, $_a7442cd7a4d3c557bf6b6b4b0d724559);
            $this->flush($GLOBALS["__65da1b1e" . "c2d6653e8a" . "0ab7848e53" . "6215"]["_7669a8431d2368b1dc09581496a" . "ea68e"]);
        });
        return $_f9aef021fb8e50005cc6aa3a9d7e2117;
    }
    
    
    
    
    
    
    
    
    
    public function generateText(RequestData $requestData) : Response
    {
        $_a7442cd7a4d3c557bf6b6b4b0d724559 = $requestData->get($GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"]["_a7442cd7a4d3c557" . "bf6b6b4b0d724559"]);
        $module = $requestData->get($GLOBALS["__65da1b1ec2d6653e8a0" . "ab7848e536215"]["mod" . "ule"], $GLOBALS["__65da1b1ec2d66" . "53e8a0ab7848e53" . "6215"]["_4d707fab93bebb00bb" . "e69e8159697c90"]);
        $language = $requestData->get($GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"]["langu" . "age"]);
        $metadata = $requestData->get($GLOBALS["__65da1b1ec2d6653e8a0ab784" . "8e536215"]["_9a122dd9e025" . "5ca418d473b4b" . "a68f14b"], []);
        $this->validateModule($module);
        $_a7442cd7a4d3c557bf6b6b4b0d724559 = $this->initializePrompt($module, AiPluginInterface::TYPE_TEXT_GENERATION, $language, $_a7442cd7a4d3c557bf6b6b4b0d724559, $metadata);
        try {
            $_fd5a3a643834299cbdadfc3540ba0bcb = $this->ai->generateText($_a7442cd7a4d3c557bf6b6b4b0d724559);
        } catch (Throwable $throwable) {
            $this->handleException($throwable);
        }
        return $this->responseFactory->GetJsonPrettyResponse([$GLOBALS["__65da1b1ec2d6653e" . "8a0ab7848e536215"]["t" . "e" . "x" . "t"] => $this->claText->SanitizeHtml($_fd5a3a643834299cbdadfc3540ba0bcb)]);
    }
    
    
    
    
    
    
    
    public function generateImages(RequestData $requestData) : Response
    {
        $_a7442cd7a4d3c557bf6b6b4b0d724559 = $requestData->get($GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"]["_a7442cd7a4d3c55" . "7bf6b6b4b0d72455" . "9"]);
        $options = $requestData->get($GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_e956b2bd945b591c54805c95" . "82d15a3b"]);
        if (!($this->config->get($GLOBALS["__65da1b1ec2d6653e8a0" . "ab7848e536215"]["_2e384775c6854f1" . "5e613f8da88db608" . "d"])[$GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_54faabe694dfa8d05dc6c0827a" . "214f82"]] ?? false)) {
            throw new RestExBadRequest($GLOBALS["__65da1b1ec2d6653e8a0ab7848e5" . "36215"]["_475c4ddf7873ea4e9044df10a" . "e31d01e"]);
        }
        $_d2c06c4cf8a9682c756442538657aa7e = $GLOBALS["__65da1b1ec2d6653e8a0" . "ab7848e536215"]["_f73dab606630b388" . "645c4f7d3fbb13bb"]($this->initializePrompt($GLOBALS["__65da1b1ec2d6653e" . "8a0ab7848e536215"]["_54faabe694dfa8d05dc6c0827a" . "214f82"], AiPluginInterface::TYPE_IMAGE_GENERATION), [new TextPart($_a7442cd7a4d3c557bf6b6b4b0d724559)]);
        try {
            $_f083878fb61180fbf68ba3a77b8d7de3 = $this->ai->generateImages(Util::extractText($_d2c06c4cf8a9682c756442538657aa7e), new AiImageConfiguration($options ?? []));
        } catch (Throwable $throwable) {
            $this->handleException($throwable);
        }
        return $this->responseFactory->GetJsonPrettyResponse([$GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_f083878fb61180fbf68ba3a77b" . "8d7de3"] => $GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_38f12d8b8c719" . "a8ce0fc2faefc2" . "25f35"](function ($_54faabe694dfa8d05dc6c0827a214f82) {
            return [$GLOBALS["__65da1b1ec2d6653e8a0ab7848e5362" . "15"]["_655a561f4e34bbdfa745dc1339347" . "1b3"] => $_54faabe694dfa8d05dc6c0827a214f82->getMimeType(), $GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["dat" . "a"] => $_54faabe694dfa8d05dc6c0827a214f82->getValue()];
        }, $_f083878fb61180fbf68ba3a77b8d7de3)]);
    }
    
    
    
    
    
    
    
    public function generateChat(RequestData $requestData) : JsonPrettyResponse
    {
        $_a82e7c9cba13670954fbe01d604c242a = $requestData->get($GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"]["_df34c06" . "9de43011" . "ade22c72" . "0a3318f6" . "0"], []);
        $module = $requestData->get($GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"]["mo" . "du" . "le"], $GLOBALS["__65da1b1ec2d6653e8a0" . "ab7848e536215"]["_4d707fab" . "93bebb00b" . "be69e8159" . "697c90"]);
        $language = $requestData->get($GLOBALS["__65da1b1ec2d6653e8a0ab7848e5" . "36215"]["langu" . "age"]);
        $metadata = $requestData->get($GLOBALS["__65da1b1ec2d6653e8a0ab7" . "848e536215"]["_9a122dd9e0255ca418" . "d473b4ba68f14b"], []);
        $this->validateModule($module);
        $_6f77ebd0332e42368c37efd859b74de7 = $this->ai->getInitializationPrompt($module, AiPluginInterface::TYPE_CHAT_GENERATION, $language, $metadata);
        $_9961f986823b4be7f5c4cc8379c6b228 = $GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_38f12d8b8c719" . "a8ce0fc2faefc2" . "25f35"](function ($_9258ac851c9bc3180b251966de4a02bc) {
            if (isset($_9258ac851c9bc3180b251966de4a02bc[$GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["d" . "a" . "t" . "a"]], $_9258ac851c9bc3180b251966de4a02bc[$GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["_655a561f4e34bbdfa7" . "45dc13393471b3"]], $_9258ac851c9bc3180b251966de4a02bc[$GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["_d1071a032215f" . "0eb5c4a8ef175f" . "7049d"]])) {
                return new FilePart($_9258ac851c9bc3180b251966de4a02bc[$GLOBALS["__65da1b1ec2d66" . "53e8a0ab7848e53" . "6215"]["d" . "a" . "t" . "a"]], $_9258ac851c9bc3180b251966de4a02bc[$GLOBALS["__65da1b1ec2d6653e8a0ab784" . "8e536215"]["_655a561" . "f4e34bbd" . "fa745dc1" . "3393471b" . "3"]], $_9258ac851c9bc3180b251966de4a02bc[$GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["_d1071a032215f0eb5" . "c4a8ef175f7049d"]]);
            }
            return new TextPart($_9258ac851c9bc3180b251966de4a02bc[$GLOBALS["__65da1b1ec2d6653e8a0ab7848e536" . "215"]["tex" . "t"]], $_9258ac851c9bc3180b251966de4a02bc[$GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_d1071a032215f0eb5c" . "4a8ef175f7049d"]]);
        }, $_a82e7c9cba13670954fbe01d604c242a);
        if ($_6f77ebd0332e42368c37efd859b74de7) {
            $_9961f986823b4be7f5c4cc8379c6b228 = $GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"]["_f73dab606630b3" . "88645c4f7d3fbb1" . "3bb"]($_6f77ebd0332e42368c37efd859b74de7, $_9961f986823b4be7f5c4cc8379c6b228);
        }
        try {
            $text = $this->ai->generateChat($_9961f986823b4be7f5c4cc8379c6b228);
        } catch (Throwable $throwable) {
            $this->handleException($throwable);
        }
        $_e696d5598f94156853fd8b977b8c344c = new Parsedown();
        return $this->responseFactory->GetJsonPrettyResponse([$GLOBALS["__65da1b1ec2d66" . "53e8a0ab7848e53" . "6215"]["_d962cfd" . "1735adb2" . "dfba46f6" . "9c7f15cb" . "8"] => [$GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_d1071a032215f0eb5c4a8ef17" . "5f7049d"] => PartInterface::PART_ROLE_MODEL, $GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"]["te" . "xt"] => $this->claText->SanitizeHtml($_e696d5598f94156853fd8b977b8c344c->text($text))]]);
    }
    
    
    
    
    
    
    
    
    
    
    private function initializePrompt(string $module, string $pluginType, ?string $languageCode = null, ?string $userPrompt = null, ?array $metadata = null) : ?array
    {
        $_cec480cefdb389e4790714f70ba7809c = $this->ai->getInitializationPrompt($module, $pluginType, $languageCode, $metadata);
        return $GLOBALS["__65da1b1ec2d6653e" . "8a0ab7848e536215"]["_ea8229a121285ee649a72f" . "d880bac39b"]($GLOBALS["__65da1b1ec2d6653e8a0ab7848e5362" . "15"]["_f73dab606630b388645c4f7d3fbb1" . "3bb"]($_cec480cefdb389e4790714f70ba7809c, [new TextPart($userPrompt ?? $GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"]["_4d707fab93bebb00" . "bbe69e8159697c90"])]), function ($_59cdb5ce92fcf760d09d3c6ed5b03aaa) {
            return $_59cdb5ce92fcf760d09d3c6ed5b03aaa !== null && !empty($_59cdb5ce92fcf760d09d3c6ed5b03aaa->getValue());
        });
    }
    
    
    
    
    
    
    
    
    private function flush(string $status, string $text = '')
    {
        echo $GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_a1b32522d3c9a793e" . "0e4307466b172d9"] . $GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["_7aefd482de788" . "5f4293c2926df2" . "8c235"]([$GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["st" . "at" . "us"] => $status, $GLOBALS["__65da1b1ec2d6" . "653e8a0ab7848e" . "536215"]["t" . "e" . "x" . "t"] => $text]) . $GLOBALS["__65da1b1ec2d6653e8a0ab7848e53" . "6215"]["_cfab5a4a6804604f4" . "998a7244eba86bd"];
        $GLOBALS["__65da1b1ec2d6653" . "e8a0ab7848e536215"]["_c2900f14e63513f00ce80edbb0455" . "06c"]();
        $GLOBALS["__65da1b1ec2d6653e8" . "a0ab7848e536215"]["_1128df9" . "5be7b7ba" . "48e931c0" . "662b158c" . "1"]();
    }
    
    
    
    
    
    
    
    
    
    
    private function handleException($throwable) : void
    {
        if ($throwable instanceof AiInvalidRequestException) {
            throw new RestExBadRequest(($this->lmsg)($GLOBALS["__65da1b1ec2" . "d6653e8a0ab7" . "848e536215"]["_839809c6beb4465bd21" . "e037814ee4683"]), $throwable->getCode(), $throwable);
        } elseif ($throwable instanceof AiContentFilterException) {
            throw new RestExBadRequest(($this->lmsg)($GLOBALS["__65da1b1" . "ec2d6653e" . "8a0ab7848" . "e536215"]["_e10fcb42c31466650609758a397def" . "43"]), $throwable->getCode(), $throwable);
        } elseif ($throwable instanceof AiInvalidResponseException || $throwable instanceof AiServerResponseException) {
            throw new RestExError(($this->lmsg)($GLOBALS["__65da1b1ec2d665" . "3e8a0ab7848e5362" . "15"]["_eac6791bbe0decdc57613" . "07838b277de"], $throwable->getCode()), $throwable->getCode(), $throwable);
        }
        throw new RestExError($throwable->getMessage(), $throwable->getCode(), $throwable);
    }
    
    
    
    
    
    
    private function validateModule(string $module) : void
    {
        $_7e868a0f1e76721d67a3c57a1406d916 = $this->ai->getModules();
        if (empty($_7e868a0f1e76721d67a3c57a1406d916)) {
            throw new RestExBadRequest($GLOBALS["__65da1b1ec2d6653e8a0ab78" . "48e536215"]["_967e161e" . "d500fcf11" . "d56175ec7" . "9897dc"]);
        }
        if (!$GLOBALS["__65da1b1ec2d6653e8a" . "0ab7848e536215"]["_bd71c3b5" . "c201fc11d" . "b82ed14ce" . "424de5"]($module, $_7e868a0f1e76721d67a3c57a1406d916)) {
            $_de3bcb12af58b547f987c780da4b95d3 = $GLOBALS["__65da1b1ec2d" . "6653e8a0ab784" . "8e536215"]["_e608e5b5c4c34a6" . "7ba97ef84c1e1619" . "9"] . $GLOBALS["__65da1b1ec2d6653e8a0ab7848e536" . "215"]["_5159b35" . "72969eca" . "46acd1b2" . "e1418459" . "c"]($GLOBALS["__65da1b1ec2d" . "6653e8a0ab784" . "8e536215"]["_1ab2691b0149e6c0" . "f5bef2e034d68c11"], $_7e868a0f1e76721d67a3c57a1406d916) . $GLOBALS["__65da1b1ec2d6653e8a0ab7848e53621" . "5"]["_e608e5b5c4c34" . "a67ba97ef84c1e" . "16199"];
            throw new RestExBadRequest($GLOBALS["__65da1b1ec2d6653e8a0ab7" . "848e536215"]["_b2ffc45fa7b" . "fe7aac72914a" . "57d0f9162"] . $module . $GLOBALS["__65da1b1ec2d6653e8a0ab" . "7848e536215"]["_8dacf526543365460ea3a8" . "8a3a0904a1"] . $_de3bcb12af58b547f987c780da4b95d3);
        }
    }
}