/** Copyright (C) 2020-2026 Kedron Holdings LLC, All Rights Reserved. This file is part of Reactor.
 *  For info and license terms please see https://reactor.toggledbits.com/
 *  ------------------------------------------------------------------------------
*/
const a34_0x3d07da = a34_0xf720;
function a34_0xf720(_0x42da61, _0x5f1be9) {
    _0x42da61 = _0x42da61 - 0xf8;
    const _0x3ba44e = a34_0x3ba4();
    let _0xf720ed = _0x3ba44e[_0x42da61];
    return _0xf720ed;
}
(function (_0x2ff343, _0x5f1a62) {
    const _0x364faf = a34_0xf720, _0x1c102e = _0x2ff343();
    while (!![]) {
        try {
            const _0x53e54f = -parseInt(_0x364faf(0xfb)) / 0x1 + parseInt(_0x364faf(0xf8)) / 0x2 + parseInt(_0x364faf(0xff)) / 0x3 * (-parseInt(_0x364faf(0x108)) / 0x4) + -parseInt(_0x364faf(0x105)) / 0x5 + -parseInt(_0x364faf(0xfe)) / 0x6 + parseInt(_0x364faf(0x107)) / 0x7 + parseInt(_0x364faf(0x10e)) / 0x8;
            if (_0x53e54f === _0x5f1a62)
                break;
            else
                _0x1c102e['push'](_0x1c102e['shift']());
        } catch (_0x132d0a) {
            _0x1c102e['push'](_0x1c102e['shift']());
        }
    }
}(a34_0x3ba4, 0xa6f86));
const version = 0x6235, MessageBus = require(a34_0x3d07da(0x100));
module[a34_0x3d07da(0x10f)] = class Observable {
    [a34_0x3d07da(0x10b)]() {
        const _0x4647f3 = a34_0x3d07da;
        if (!Object['getPrototypeOf'](this)['toString'])
            throw new TypeError(_0x4647f3(0x109));
        return this[_0x4647f3(0xfc)]();
    }
    async [a34_0x3d07da(0xf9)](_0x28ead8, _0x22d71a, ..._0x307a8a) {
        const _0x35dcfd = a34_0x3d07da;
        _0x28ead8 = _0x28ead8 || this;
        _0x35dcfd(0x10a) === typeof _0x22d71a && (this['log'] ? this[_0x35dcfd(0x10c)][_0x35dcfd(0xfd)](_0x35dcfd(0x101), this) : console['log'](String(this) + _0x35dcfd(0x102)), _0x22d71a = _0x35dcfd(0x103));
        let _0x21dd4c = {
            'sender': this,
            'currentSender': this,
            'type': _0x22d71a,
            'data': _0x28ead8,
            'args': _0x307a8a
        };
        try {
            throw new Error('OK');
        } catch (_0x19d928) {
            _0x21dd4c[_0x35dcfd(0x104)] = _0x19d928[_0x35dcfd(0x10d)];
        }
        return MessageBus[_0x35dcfd(0x106)](this['getBusName'](), this, _0x21dd4c);
    }
    [a34_0x3d07da(0xfa)]() {
        const _0x3e51c9 = a34_0x3d07da;
        MessageBus[_0x3e51c9(0xfa)](this[_0x3e51c9(0x10b)](), ![], ![]);
    }
};
function a34_0x3ba4() {
    const _0x3d02ea = [
        'getBusName',
        'log',
        'stack',
        '9487776MdUIwH',
        'exports',
        '1868034GRgPnX',
        'publish',
        'disconnect',
        '522272DWwSyC',
        'toString',
        'warn',
        '7244394SxXyYH',
        '15951gZVDET',
        './MessageBus.js',
        '%1\x20publishing\x20without\x20specifying\x20event\x20type',
        '\x20publishing\x20without\x20specifying\x20event\x20type',
        'update',
        'sentFrom',
        '2115190YDwJfC',
        'send',
        '7472864tIugfU',
        '264YCmzAO',
        'Current\x20(Observable)\x20object\x20does\x20not\x20implement\x20getBusName()\x20or\x20toString()',
        'undefined'
    ];
    a34_0x3ba4 = function () {
        return _0x3d02ea;
    };
    return a34_0x3ba4();
}