<?php
/**
 * @package embed-sharepoint-onedrive-documents
 * @author miniOrange
 * @link https://plugins.miniorange.com
 */


namespace MoSharePointObjectSync\API;

use MoSharePointObjectSync\Wrappers\pluginConstants;
use MoSharePointObjectSync\Wrappers\wpWrapper;
class Authorization
{
    private static $instance;
    public static function getController()
    {
        if (isset(self::$instance)) {
            goto c5;
        }
        $pj = __CLASS__;
        self::$instance = new $pj();
        c5:
        return self::$instance;
    }
    public function mo_sps_get_access_token_using_client_credentials($SO, $QC, $h5)
    {
        $D2 = wpWrapper::mo_sps_decrypt_data($QC["\x63\154\151\145\x6e\x74\x5f\x73\145\143\x72\x65\x74"], hash("\163\x68\141\62\x35\x36", $QC["\143\154\151\145\x6e\164\137\x69\144"]));
        $rZ = array("\142\x6f\x64\171" => array("\147\162\x61\156\x74\x5f\164\171\160\145" => "\x63\154\x69\145\156\164\137\x63\162\x65\x64\x65\156\164\x69\x61\154\163", "\x63\154\x69\145\156\164\137\x73\x65\x63\162\x65\x74" => $D2, "\x63\154\x69\x65\156\x74\137\x69\144" => $QC["\143\x6c\x69\145\156\x74\137\x69\x64"], "\x73\x63\x6f\x70\x65" => $h5), "\x68\x65\x61\x64\145\x72\163" => array("\x43\x6f\156\164\145\x6e\x74\55\x74\x79\x70\145" => "\x61\160\x70\154\x69\143\141\164\x69\157\x6e\57\x78\x2d\167\x77\167\x2d\x66\x6f\x72\x6d\55\x75\162\154\145\156\x63\x6f\144\145\x64"));
        $Rz = wp_remote_post(esc_url_raw($SO["\164\x6f\153\145\156"]), $rZ);
        if (is_wp_error($Rz)) {
            goto lS;
        }
        $rM = json_decode($Rz["\142\157\x64\171"], true);
        if (isset($rM["\141\143\143\145\163\163\137\x74\x6f\153\145\156"])) {
            goto C7;
        }
        if (isset($rM["\145\162\x72\x6f\x72"])) {
            goto SE;
        }
        goto Bx;
        C7:
        return array("\163\164\x61\x74\165\x73" => true, "\x64\141\x74\x61" => array("\x61\x63\x63\x65\163\x73\137\x74\157\153\x65\156" => $rM["\141\x63\143\145\163\163\137\x74\157\153\145\x6e"], "\x65\x78\x70\151\x72\x79" => $rM["\x65\x78\160\x69\162\145\x73\137\151\156"]));
        goto Bx;
        SE:
        return array("\163\164\141\x74\165\x73" => false, "\144\x61\164\x61" => $rM);
        Bx:
        goto Ms;
        lS:
        return array("\x73\164\141\164\x75\163" => false, "\x64\141\164\x61" => array("\x65\162\x72\x6f\x72" => "\122\x65\161\x75\x65\x73\164\x20\164\151\155\145\157\165\x74", "\x65\162\x72\157\162\137\x64\145\x73\x63\162\151\160\164\151\157\x6e" => "\125\x6e\145\x78\160\x65\x63\164\145\144\40\145\x72\162\x6f\162\x20\x6f\x63\143\x75\x72\162\x65\x64\x21\40\x50\154\x65\141\163\x65\x20\143\150\145\143\153\x20\x79\157\x75\x72\40\x69\156\164\145\162\x6e\x65\164\40\143\x6f\156\x6e\145\x63\164\151\157\156\x20\141\156\x64\x20\164\162\x79\x20\141\147\x61\x69\x6e\x2e"));
        $Pr = $Rz->get_error_message();
        wp_die("\105\x72\162\157\162\x20\x4f\x63\x63\165\x72\162\x65\144\x20\72\40" . esc_html($Pr));
        Ms:
        return array("\163\x74\141\164\165\x73" => false, "\144\141\164\141" => array("\145\162\x72\x6f\162" => "\125\156\x65\x78\x70\145\143\x74\145\144\40\x45\x72\x72\157\162", "\145\x72\162\x6f\x72\137\144\145\x73\143\162\x69\160\164\x69\x6f\x6e" => "\x43\x68\x65\143\153\x20\x79\x6f\165\x72\x20\x63\157\x6e\146\x69\147\x75\x72\x61\x74\151\157\x6e\163\40\157\x6e\143\145\40\141\x67\141\151\x6e"));
    }
    public function mo_sps_get_access_token_using_authorization_code($SO, $QC, $h5, $FJ = false)
    {
        $qN = pluginConstants::CID;
        $RQ = pluginConstants::CSEC;
        $w2 = pluginConstants::CONNECT_SERVER_URI;
        $no = wpWrapper::mo_sps_get_option(pluginConstants::SPS_RFTK);
        if (empty($no)) {
            goto EN;
        }
        $rZ = array("\142\x6f\x64\171" => array("\147\162\x61\156\x74\x5f\x74\x79\x70\x65" => "\162\x65\x66\x72\x65\163\x68\137\x74\157\x6b\145\156", "\143\x6c\151\145\x6e\x74\x5f\x73\145\x63\x72\145\164" => $RQ, "\143\x6c\x69\x65\156\x74\x5f\151\x64" => $qN, "\162\145\146\162\145\x73\x68\x5f\164\157\153\145\156" => $no), "\150\x65\141\x64\145\x72\x73" => array("\103\x6f\x6e\164\145\x6e\x74\x2d\x74\x79\160\x65" => "\141\160\160\x6c\151\x63\141\x74\x69\157\x6e\x2f\170\x2d\167\x77\167\55\146\157\162\155\55\x75\x72\x6c\145\156\x63\x6f\144\145\144"));
        goto oH;
        EN:
        $Cf = wpWrapper::mo_sps_get_option(pluginConstants::SPSAUTHCODE);
        $rZ = array("\x62\157\144\171" => array("\x67\x72\x61\156\x74\x5f\164\171\160\x65" => "\141\165\x74\150\157\x72\151\172\x61\x74\151\x6f\156\x5f\143\x6f\x64\145", "\143\x6c\x69\145\x6e\x74\137\x73\145\x63\162\x65\164" => $RQ, "\x63\x6c\151\145\156\164\137\151\x64" => $qN, "\143\x6f\144\x65" => $Cf, "\162\x65\144\151\x72\x65\x63\164\137\x75\162\151" => $w2), "\x68\x65\141\x64\145\x72\x73" => array("\x43\157\x6e\164\x65\x6e\164\x2d\x74\x79\x70\145" => "\x61\x70\x70\154\x69\143\141\164\151\x6f\x6e\57\x78\x2d\x77\x77\167\x2d\x66\157\162\x6d\x2d\x75\x72\x6c\x65\156\143\x6f\144\x65\144"));
        oH:
        if ("\160\145\162\163\x6f\x6e\x61\154" === $QC["\143\x6f\x6e\156\145\x63\164\x6f\162"]) {
            goto uY;
        }
        $Rz = wp_remote_post(esc_url_raw($SO["\163\160\163\137\x63\x6f\155\155\157\156\x5f\x74\x6f\153\145\x6e"]), $rZ);
        goto mq;
        uY:
        $Rz = wp_remote_post(esc_url_raw($SO["\163\x70\x73\137\x70\145\x72\163\x6f\156\x61\x6c\x5f\157\x6e\145\144\x72\x69\166\x65"]), $rZ);
        mq:
        if (is_wp_error($Rz)) {
            goto Xc;
        }
        $rM = json_decode($Rz["\142\x6f\144\171"], true);
        if (!isset($rM["\162\145\x66\x72\x65\x73\x68\x5f\x74\157\153\145\156"])) {
            goto xQ;
        }
        wpWrapper::mo_sps_set_option(pluginConstants::SPS_RFTK, $rM["\162\x65\x66\162\x65\x73\150\x5f\164\157\x6b\145\x6e"]);
        $no = $rM["\162\145\x66\162\x65\163\x68\x5f\164\x6f\153\145\x6e"];
        if (!$FJ) {
            goto S4;
        }
        $qa = array("\x73\164\141\x74\165\163" => true, "\x64\141\164\x61" => array("\x72\145\146\x72\145\x73\150\x5f\x74\x6f\153\145\x6e" => $no));
        if (!isset($rM["\x61\143\x63\x65\163\163\x5f\x74\157\153\145\156"])) {
            goto V1;
        }
        $qa["\144\x61\x74\141"]["\x61\x63\x63\x65\x73\x73\x5f\164\157\153\145\x6e"] = $rM["\141\143\143\x65\x73\x73\137\164\x6f\x6b\x65\x6e"];
        $qa["\144\141\164\x61"]["\145\170\x70\151\162\171"] = $rM["\x65\170\x70\151\x72\145\x73\137\151\156"];
        V1:
        if (!("\160\x65\162\163\157\156\x61\x6c" === $QC["\143\157\x6e\x6e\x65\143\164\x6f\x72"] && isset($rM["\151\x64\x5f\164\x6f\x6b\x65\x6e"]))) {
            goto sm;
        }
        $qa["\x64\x61\164\x61"]["\x69\144\137\x74\157\x6b\x65\x6e"] = $rM["\151\144\137\164\157\x6b\x65\x6e"];
        sm:
        return $qa;
        S4:
        xQ:
        if (isset($rM["\141\x63\x63\145\163\x73\x5f\164\157\153\145\156"])) {
            goto R9;
        }
        if (isset($rM["\145\x72\x72\x6f\x72"])) {
            goto yt;
        }
        goto ph;
        R9:
        return array("\x73\x74\141\164\165\x73" => true, "\144\x61\164\x61" => array("\x61\x63\143\x65\163\x73\x5f\164\157\x6b\145\x6e" => $rM["\141\143\x63\145\x73\163\137\x74\157\x6b\x65\156"], "\145\170\x70\151\x72\171" => $rM["\145\170\160\x69\x72\145\163\137\151\x6e"]));
        goto ph;
        yt:
        return array("\x73\164\141\x74\x75\163" => false, "\x64\x61\164\x61" => $rM);
        ph:
        goto lw;
        Xc:
        return array("\163\164\141\x74\x75\x73" => false, "\x64\x61\x74\x61" => array("\x65\162\162\x6f\162" => "\122\x65\x71\x75\x65\x73\x74\x20\164\151\155\x65\157\165\164", "\x65\162\x72\157\x72\137\144\x65\163\143\x72\x69\160\x74\151\157\156" => "\x55\x6e\x65\x78\160\x65\143\164\x65\x64\40\145\x72\x72\157\162\40\157\143\143\165\162\x72\145\x64\41\40\120\x6c\145\141\x73\145\x20\143\x68\145\143\x6b\x20\171\157\165\x72\40\151\156\164\145\x72\x6e\145\164\x20\x63\x6f\156\x6e\x65\x63\x74\151\x6f\156\40\x61\156\x64\40\164\x72\x79\40\x61\147\x61\151\156\x2e"));
        $Pr = $Rz->get_error_message();
        wp_die("\x45\162\162\157\162\40\117\143\x63\x75\162\162\145\x64\x20\72\x20" . esc_html($Pr));
        lw:
        return array("\163\x74\x61\x74\x75\x73" => false, "\144\x61\x74\x61" => array("\145\x72\x72\157\x72" => "\x55\156\x65\x78\x70\145\x63\x74\145\144\x20\105\x72\162\157\162", "\145\162\x72\157\162\x5f\x64\145\163\143\162\151\160\164\x69\x6f\156" => "\103\x68\x65\143\x6b\x20\x79\x6f\x75\162\x20\143\x6f\156\146\151\x67\165\x72\141\164\151\x6f\x6e\163\x20\157\156\143\145\x20\141\x67\x61\x69\x6e"));
    }
    public function mo_sps_get_request($xr, $Ig)
    {
        $rZ = array("\x68\x65\x61\x64\145\162\x73" => $Ig);
        $Rz = wp_remote_get(esc_url_raw($xr), $rZ);
        if (is_array($Rz) && !is_wp_error($Rz)) {
            goto Tv;
        }
        return array("\x73\164\141\x74\x75\x73" => false, "\144\x61\x74\141" => array("\x65\162\162\x6f\162" => "\122\x65\161\165\x65\163\x74\x20\164\x69\x6d\x65\x6f\165\x74", "\x65\x72\162\157\x72\x5f\x64\145\163\143\x72\x69\160\164\x69\157\156" => "\125\156\145\170\160\x65\143\x74\x65\144\x20\x65\162\x72\157\162\x20\157\143\x63\165\162\162\145\144\41\40\x50\x6c\x65\x61\163\145\x20\143\150\x65\x63\x6b\x20\x79\157\165\x72\x20\151\156\x74\x65\x72\x6e\x65\x74\40\x63\157\x6e\156\145\143\x74\x69\157\x6e\x20\141\156\x64\x20\164\x72\171\x20\x61\147\141\151\x6e\56"));
        wp_die("\105\x72\162\157\x72\x20\157\143\143\165\162\x72\145\x64\72\40" . esc_html($Rz->get_error_message()));
        goto Ih;
        Tv:
        $rM = json_decode($Rz["\x62\x6f\x64\171"], true);
        if (empty($rM)) {
            goto nq;
        }
        if (isset($rM["\145\x72\x72\157\x72"])) {
            goto wH;
        }
        goto RO;
        nq:
        return array("\x73\x74\x61\x74\165\x73" => false, "\144\x61\164\x61" => array("\x65\x72\x72\157\162" => "\125\x6e\x61\x75\164\150\157\x72\151\172\x65\144", "\145\x72\162\x6f\162\x5f\144\145\x73\143\162\151\160\164\x69\157\156" => "\125\x6e\145\x78\x70\x65\143\164\145\x64\40\x65\162\162\x6f\162\x20\157\x63\x63\x75\x72\145\x64"));
        goto RO;
        wH:
        return array("\x73\x74\141\x74\165\163" => false, "\x64\141\x74\x61" => array("\x65\x72\162\157\x72" => $rM["\145\162\x72\x6f\162"]["\143\157\144\145"], "\145\x72\162\157\162\x5f\x64\145\x73\x63\162\151\160\x74\x69\157\x6e" => $rM["\x65\162\162\x6f\x72"]["\155\145\163\x73\141\147\x65"]));
        RO:
        return array("\163\164\141\x74\x75\163" => true, "\x64\141\164\141" => $rM);
        Ih:
    }
    public function mo_sps_get_request_for_url($xr, $Ig)
    {
        $rZ = array("\x68\x65\x61\144\x65\x72\163" => $Ig);
        $Rz = wp_remote_get(esc_url_raw($xr), $rZ);
        if (is_array($Rz) && !is_wp_error($Rz)) {
            goto bz;
        }
        return array("\x73\164\141\164\165\x73" => false, "\144\141\x74\x61" => array("\x65\x72\x72\x6f\x72" => "\x52\145\x71\x75\145\x73\x74\40\164\151\x6d\x65\x6f\x75\x74", "\x65\x72\x72\x6f\x72\x5f\x64\145\163\x63\x72\x69\160\x74\151\x6f\x6e" => "\x55\156\145\170\x70\145\143\164\x65\144\40\x65\162\162\157\162\40\x6f\x63\x63\x75\x72\162\x65\144\41\40\120\x6c\145\x61\x73\x65\40\x63\x68\145\x63\x6b\40\171\x6f\x75\162\40\x69\x6e\164\x65\x72\x6e\145\164\x20\143\157\156\156\x65\143\x74\151\x6f\x6e\x20\141\156\x64\40\x74\162\x79\x20\x61\147\141\151\x6e\x2e"));
        wp_die("\105\162\x72\x6f\162\x20\157\143\143\165\x72\x72\x65\x64\72\40" . esc_html($Rz->get_error_message()));
        goto zf;
        bz:
        $rM = $Rz["\142\157\144\x79"];
        if (empty($rM)) {
            goto kk;
        }
        if (isset($rM["\145\162\x72\x6f\162"])) {
            goto S8;
        }
        goto Mz;
        kk:
        return array("\x73\164\x61\x74\x75\x73" => false, "\144\141\164\141" => array("\145\x72\x72\x6f\162" => "\125\156\141\x75\164\x68\x6f\162\x69\172\145\144", "\145\x72\162\x6f\162\137\144\x65\163\143\x72\x69\x70\164\151\x6f\x6e" => "\x55\156\145\x78\160\145\x63\164\145\x64\x20\x65\162\162\x6f\x72\40\x6f\143\143\x75\x72\x65\144"));
        goto Mz;
        S8:
        return array("\163\x74\x61\x74\x75\x73" => false, "\144\x61\164\141" => array("\145\162\x72\157\162" => $rM["\145\162\x72\x6f\162"]["\143\157\x64\x65"], "\145\162\162\x6f\162\x5f\144\145\x73\x63\x72\151\160\x74\x69\157\156" => $rM["\145\162\x72\x6f\162"]["\x6d\145\x73\163\x61\147\145"]));
        Mz:
        return array("\163\x74\141\164\x75\x73" => true, "\144\x61\164\141" => $rM);
        zf:
    }
    public function mo_sps_post_request($xr, $Ig, $rM)
    {
        $rZ = array("\142\157\x64\171" => $rM, "\x68\145\x61\x64\145\162\163" => $Ig);
        $Rz = wp_remote_post(esc_url_raw($xr), $rZ);
        if (is_array($Rz) && !is_wp_error($Rz)) {
            goto Mt;
        }
        return array("\163\x74\x61\164\x75\x73" => false, "\x64\x61\164\141" => array("\x65\162\162\157\162" => "\x52\145\x71\x75\x65\x73\x74\40\x74\x69\x6d\x65\x6f\x75\164", "\145\x72\x72\x6f\x72\x5f\x64\145\163\143\x72\151\160\x74\x69\157\156" => "\125\156\145\x78\x70\x65\143\164\x65\x64\40\145\162\x72\157\x72\40\x6f\x63\x63\x75\162\x72\145\144\41\x20\x50\154\x65\141\163\145\x20\143\x68\x65\143\x6b\x20\171\x6f\x75\x72\40\x69\156\164\x65\x72\156\x65\164\x20\x63\x6f\156\x6e\145\143\164\x69\157\x6e\x20\141\x6e\144\40\164\x72\x79\x20\x61\147\141\x69\x6e\56"));
        wp_die("\x45\x72\162\x6f\162\x20\x6f\x63\143\165\162\162\145\x64\x3a\x20" . esc_html($Rz->get_error_message()));
        goto SR;
        Mt:
        $rM = json_decode($Rz["\142\157\144\x79"], true);
        if (empty($rM)) {
            goto BJ;
        }
        if (isset($rM["\x65\162\x72\157\162"])) {
            goto eo;
        }
        goto NE;
        BJ:
        return array("\163\164\141\164\x75\x73" => false, "\x64\141\x74\x61" => array("\x65\x72\x72\x6f\x72" => "\x55\x6e\141\x75\164\x68\157\162\151\x7a\x65\144", "\x65\x72\162\157\162\x5f\144\x65\x73\x63\162\x69\160\x74\151\157\x6e" => "\125\x6e\145\170\160\145\x63\164\145\144\40\x65\162\162\x6f\162\40\x6f\x63\143\165\162\x65\x64"));
        goto NE;
        eo:
        return array("\163\x74\141\164\x75\x73" => false, "\x64\x61\x74\141" => array("\x65\162\162\x6f\162" => $rM["\145\162\x72\157\x72"]["\143\x6f\x64\x65"], "\x65\x72\162\157\x72\x5f\x64\145\163\143\x72\x69\x70\164\x69\157\x6e" => $rM["\x65\162\x72\x6f\162"]["\x6d\145\163\x73\141\x67\145"]));
        NE:
        return array("\163\x74\x61\x74\x75\x73" => true, "\x64\141\164\x61" => $rM);
        SR:
    }
    public function mo_sps_get_media_request($xr, $Ig)
    {
        $rZ = array("\150\x65\141\x64\x65\x72\x73" => $Ig);
        $Rz = wp_remote_get(esc_url_raw($xr), $rZ);
        if (is_array($Rz) && !is_wp_error($Rz)) {
            goto zt;
        }
        return array("\163\164\141\x74\x75\163" => false, "\x64\x61\x74\141" => array("\145\162\x72\157\162" => "\x52\x65\x71\165\145\x73\x74\x20\x74\151\155\x65\157\165\x74", "\x65\x72\x72\x6f\x72\x5f\144\x65\x73\x63\x72\x69\160\164\151\x6f\156" => "\x55\x6e\x65\x78\x70\145\143\164\x65\x64\x20\145\x72\162\x6f\162\40\157\x63\143\165\162\x72\145\x64\x21\40\x50\154\145\x61\163\x65\x20\143\x68\145\143\x6b\x20\171\x6f\x75\162\40\151\x6e\x74\x65\162\x6e\145\x74\40\143\x6f\156\x6e\x65\143\x74\x69\x6f\x6e\40\141\x6e\144\x20\x74\162\171\x20\x61\x67\141\x69\156\56"));
        goto Uq;
        zt:
        $rM = $Rz["\x62\157\x64\x79"];
        if (empty($rM)) {
            goto L3;
        }
        if (isset($rM["\x65\x72\x72\x6f\x72"])) {
            goto BI;
        }
        goto AB;
        L3:
        return array("\x73\x74\141\x74\165\163" => false, "\x64\x61\164\141" => array("\145\162\162\x6f\x72" => "\x55\156\x61\165\164\x68\x6f\x72\151\x7a\145\x64", "\145\x72\162\157\162\137\x64\x65\x73\143\162\x69\160\164\x69\x6f\156" => "\125\x6e\145\x78\x70\x65\x63\164\145\x64\40\x65\x72\x72\157\162\40\157\x63\143\x75\162\145\x64"));
        goto AB;
        BI:
        return array("\x73\x74\141\164\x75\x73" => false, "\144\x61\164\x61" => array("\x65\x72\162\157\x72" => $rM["\145\162\x72\157\162"]["\x63\157\x64\x65"], "\145\x72\x72\x6f\162\137\144\x65\x73\x63\x72\x69\160\164\151\157\x6e" => $rM["\145\162\x72\157\x72"]["\x6d\145\163\163\x61\147\x65"]));
        AB:
        return array("\x73\x74\x61\x74\165\x73" => true, "\x64\141\x74\141" => $rM);
        Uq:
    }
    public function mo_sps_get_media_request_response($xr, $Ig)
    {
        $rZ = array("\150\145\141\x64\145\162\x73" => $Ig);
        $Rz = wp_remote_get(esc_url_raw($xr), $rZ);
        if (is_array($Rz) && !is_wp_error($Rz)) {
            goto vO;
        }
        return array("\163\164\141\x74\165\163" => false, "\144\141\164\141" => array("\145\x72\x72\x6f\x72" => "\x52\145\x71\165\145\x73\164\x20\164\x69\155\x65\x6f\165\164", "\x65\162\162\157\x72\x5f\144\145\x73\x63\x72\151\160\x74\151\x6f\x6e" => "\125\x6e\x65\x78\x70\x65\x63\164\x65\x64\40\145\x72\x72\157\162\40\157\x63\143\x75\162\162\145\x64\41\x20\120\154\x65\141\x73\x65\40\143\150\x65\x63\153\40\171\157\x75\x72\40\x69\156\164\145\x72\x6e\x65\164\x20\143\157\x6e\x6e\x65\143\x74\x69\x6f\x6e\40\x61\x6e\144\x20\x74\162\x79\40\x61\x67\141\x69\x6e\x2e"));
        goto ca;
        vO:
        $rM = $Rz["\142\157\x64\x79"];
        if (empty($rM)) {
            goto ym;
        }
        if (isset($rM["\145\162\162\157\162"])) {
            goto qV;
        }
        goto O0;
        ym:
        return array("\x73\164\x61\x74\165\x73" => false, "\144\x61\164\x61" => array("\x65\162\x72\x6f\162" => "\125\156\x61\x75\164\x68\x6f\x72\151\x7a\x65\144", "\x65\x72\162\x6f\x72\x5f\144\145\163\143\162\x69\x70\x74\x69\157\x6e" => "\x55\x6e\x65\170\160\145\143\x74\x65\144\40\x65\x72\162\157\x72\40\x6f\x63\x63\x75\162\145\144"));
        goto O0;
        qV:
        return array("\x73\164\141\164\x75\x73" => false, "\x64\x61\164\141" => array("\x65\x72\162\x6f\162" => $rM["\x65\x72\x72\157\162"]["\143\157\144\145"], "\x65\162\162\157\x72\137\x64\x65\163\x63\162\x69\x70\x74\151\157\156" => $rM["\145\162\x72\x6f\x72"]["\x6d\x65\x73\x73\141\x67\x65"]));
        O0:
        return array("\x73\164\x61\164\x75\163" => true, "\142\x6f\144\171" => $rM);
        ca:
    }
}
