public function pack($data, $isUncrypted = false)
    {
        //====================================================================//
        // Debug Log
        Splash::log()->deb('MsgWsPack');

        //====================================================================//
        // Encode Data Buffer
        //====================================================================//
        if ('XML' == Splash::configuration()->WsEncode) {
            //====================================================================//
            // Convert Data Buffer To XML
            $serial = Splash::xml()->objectToXml($data);
        } else {
            //====================================================================//
            // Serialize Data Buffer
            $serial = serialize($data);
        }

        //====================================================================//
        // Encrypt serialized data buffer
        //====================================================================//
        if (!$isUncrypted) {
            $out = $this->crypt('encrypt', $serial, $this->key, $this->id);
        //====================================================================//
        // Else, switch to base64
        } else {
            $out = base64_encode($serial);
        }

        //====================================================================//
        //  Debug Informations
        //====================================================================//
        if (defined('SPLASH_SERVER_MODE') && !empty(SPLASH_SERVER_MODE) && (Splash::configuration()->TraceOut)) {
            Splash::log()->war('MsgWsFinalPack', print_r($serial, true));
        }

        return $out;
    }