var _random = Math.random

var v_saf;
!function () {
    var n = Function.toString, t = [], i = [], o = [].indexOf.bind(t), e = [].push.bind(t), r = [].push.bind(i);

    function u(n, t) {
        return -1 == o(n) && (e(n), r(`function ${t || n.name || ""}() { [native code] }`)), n
    }

    Object.defineProperty(Function.prototype, "toString", {
        enumerable: !1,
        configurable: !0,
        writable: !0,
        value: function () {
            return "function" == typeof this && i[o(this)] || n.call(this)
        }
    }), u(Function.prototype.toString, "toString"), v_saf = u
}();
const fss = require("fs");
var ENVS = JSON.parse(fss.readFileSync('env.json').toString())
// dc6a639f12738c9276d68c74
// let keys = Object.keys(ENVS);
// for (let i = 0; i <keys.length; i++) {
//     console.log(keys[i], ENVS[keys[i]].navigatorparams.useragent)
//
// }
// let ENV = ENVS[process.argv[2] || keys[parseInt(Math.random() * keys.length)]]
let ENV = ENVS[process.argv[2] || 'd849c3286d37b521717482d0']
ENV.navigatorparams.hardwareconcurrency = 4
const crypto = require('crypto');
const {proxy} = require("./jsdom/lib/jsdom/living/generated/utils");
const {randomNumberRange} = require("ghost-cursor/lib/math");
var stackTrace = {};
var idx = 0;
var arrs = {};
console.time("处理完毕，耗时");
Object.defineProperty(console, 'Console', {
    enumerable:false,
    configurable:false,
    writable:false,
})
console.Console = undefined;
console.log(Object.keys(Object.getOwnPropertyDescriptors(console)))
Date.now = function now() { return 1685096207545 };
Date.parse = function () { return 1685096207545 };
Date.prototype.valueOf = function () { return 1685096207545 };
Date.prototype.getTime = function () { return 1685096207545 };
Date.prototype.toString = function () { return 1685096207545 };
Performance.prototype.now = function now(){ return Number('1685096207545'.slice(8))}

Math.random = function random() { return 0.08636862211354912 };


Date.prototype.toString = v_saf(function () {
    try {
        return this.getTime()
    } catch (e) {
        return Date.now()
    }
}, 'toString')
process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';
debug = false;
dtavm = {}
v_events = {}
v_start_stamp = Date.now()
print = console.log
dtavm.log = console.log
let con3 = console.log
let con4 = console.log
con3 = function (){}
con4 = function (){}



var v_console_logger = console.log
var v_console_log = function () {
    if (true) {
        v_console_logger.apply(this, arguments)
    }
}
// console.log = function () {}
window = this;

window = v_saf(window)
window.window = window
window.Promise = Promise
window.ReadableStream = v_saf(function ReadableStream() {})
window.TransformStream = v_saf(function TransformStream() {})
window.SubmitEvent = v_saf(function SubmitEvent() {})



window.CSS = proxy({
    supports: function (){
        print('CSS.supports', arguments)
        return true;
    }
}, 'CSS')
// window = new Proxy(window, {
//     get(target, p, receiver) {
//         // if (p === 'addEventListener'){
//         //     debugger;
//         // }
//         let res = Reflect.get(target, p, receiver);
//         console.log('get window', p, typeof res)
//         // console.log(Reflect.get(target, '_cf_chl_ctx', receiver))
//
//         // if (!['_registeredHandlers'].includes(p) && res && typeof res === 'object' && typeof p !== 'symbol' && p !== 'removeEventListener') {
//         //     return proxy(res, p)
//         // }
//         return res;
//     },
//     set(target, p, newValue, receiver) {
//         console.log('set window', p, newValue)
//         if (typeof newValue === 'string' && newValue.startsWith('3g')) {
//             _console(newValue)
//             // process.exit(0)
//         }
//         Reflect.set(target, p, newValue, receiver)
//     }
// });


// let HeaderGeneratorOptions = require('header-generator').HeaderGeneratorOptions


_console2 = console.log
// Math.random = function (){
//     _console2("call random")
//     return 0.12364546
// }
//
// _date = Date
// ssssssss = new _date('2023-05-14T03:24:00')
// Date = function() {
//     return ssssssss;
// }
// Date.__proto__ = _date

// var _hasOwnProperty = Object.hasOwnProperty;
// Object.hasOwnProperty = function (){
//     let res =  _hasOwnProperty.apply(this, arguments);
//     print('Object.hasOwnProperty', arguments, res === undefined);
//     if (arguments[1] === 'createElement')debugger;
//     return res;
// }
// var _getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
// Object.getOwnPropertyDescriptor = function (){
//     let res =  _getOwnPropertyDescriptor.apply(this, arguments);
//     print('Object.getOwnPropertyDescriptor', arguments[1], res === undefined);
//     if (arguments[1] === 'createElement')debugger;
//
//     return res;
// }
function aaProxy(obj, name) {
    // return obj;
    return new Proxy(obj, {
        get(target, propKey, receiver) { //拦截对象属性的读取，比如proxy.foo和proxy['foo']。
            let temp = Reflect.get(target, propKey, receiver);
            print(`${name} -> get ${propKey.toString()} return -> ${temp == undefined}`);
            if (typeof temp == 'object') {
                temp = myProxy(temp, name + " => " + propKey)
            }
            return temp;
        },
        set(target, propKey, value, receiver) { //拦截对象属性的设置，比如proxy.foo = v或proxy['foo'] = v，返回一个布尔值。
            const temp = Reflect.set(target, propKey, value, receiver);
            print(`${name} -> set ${propKey} value -> ${value}`);
            // if (propKey == 'pathname')debugger;
            return temp;
        },
        has(target, propKey) { //拦截propKey in proxy的操作，返回一个布尔值。
            const temp = Reflect.has(target, propKey);
            try {
                print(`${name} -> has ${propKey}`, temp);
            } catch (e) {
            }
            return temp;
        },
        deleteProperty(target, propKey) { //拦截delete proxy[propKey]的操作，返回一个布尔值。
            const temp = Reflect.deleteProperty(target, propKey);
            return temp;
        },
        ownKeys(target) { //拦截Object.getOwnPropertyNames(proxy)、Object.getOwnPropertySymbols(proxy)、Object.keys(proxy)、for...in循环，返回一个数组。该方法返回目标对象所有自身的属性的属性名，而Object.keys()的返回结果仅包括目标对象自身的可遍历属性。
            const temp = Reflect.ownKeys(target);
            return temp;
        },
        getOwnPropertyDescriptor(target, propKey) { //拦截Object.getOwnPropertyDescriptor(proxy, propKey)，返回属性的描述对象。
            const temp = Reflect.getOwnPropertyDescriptor(target, propKey);
            return temp;
        },
        defineProperty(target, propKey, propDesc) { //拦截Object.defineProperty(proxy, propKey, propDesc）、Object.defineProperties(proxy, propDescs)，返回一个布尔值。
            const temp = Reflect.defineProperty(target, propKey, propDesc);
            return temp;
        },
        preventExtensions(target) { //拦截Object.preventExtensions(proxy)，返回一个布尔值。
            const temp = Reflect.preventExtensions(target);
            return temp;
        },
        getPrototypeOf(target) { //拦截Object.getPrototypeOf(proxy)，返回一个对象。
            const temp = Reflect.getPrototypeOf(target);
            return temp;
        },
        isExtensible(target) { //拦截Object.isExtensible(proxy)，返回一个布尔值。
            const temp = Reflect.isExtensible(target);
            return temp;
        },
        setPrototypeOf(target, proto) { //拦截Object.setPrototypeOf(proxy, proto)，返回一个布尔值。如果目标对象是函数，那么还有两种额外操作可以拦截。
            const temp = Reflect.setPrototypeOf(target, proto);
            return temp;
        },
        apply(target, object, args) { //拦截 Proxy 实例作为函数调用的操作，比如proxy(...args)、proxy.call(object, ...args)、proxy.apply(...)。
            const temp = Reflect.apply(target, object, args);
            return temp;
        },
        construct(target, args) { //拦截 Proxy 实例作为构造函数调用的操作，比如new proxy(...args)。
            const temp = Reflect.construct(target, args);
            return temp;
        }
    })
}

// dtavm.proxy =
debug = false
var v_saf;
!function () {
    var n = Function.toString, t = [], i = [], o = [].indexOf.bind(t), e = [].push.bind(t), r = [].push.bind(i);

    function u(n, t, nn) {
        tt = ''
        if (nn) {
            tt = ' ' + nn
        }
        return -1 == o(n) && (e(n), r(`function${tt} ${t || n.name || ""}() { [native code] }`)), n
    }

    Object.defineProperty(Function.prototype, "toString", {
        enumerable: !1,
        configurable: !0,
        writable: !0,
        value: function () {
            let res = "function" == typeof this && i[o(this)] || n.call(this)
            // print('toString', arguments, '|||', 'res', res)

            return res;
        }
    }), u(Function.prototype.toString, "toString"), v_saf = u
}();

function v_hook_href(obj, name, initurl) {
    var r = Object.defineProperty(obj, 'href', {
        get: function () {
            if (!(this.protocol) && !(this.host)) {
                r = ''
            } else {
                r = this.protocol + "//" + this.host + (this.port ? ":" + this.port : "") + this.pathname + this.search + this.hash;
            }
            // v_console_log(`  [*] ${name||obj.constructor.name} -> href[get]:`, JSON.stringify(r))
            return r
        },
        set: function (href) {
            href = href.trim()
            v_console_log(`  [*] ${name || obj.constructor.name} -> href[set]:`, JSON.stringify(href))
            if (href.startsWith("http://") || href.startsWith("https://")) {/*ok*/
            } else if (href.startsWith("//")) {
                href = (this.protocol ? this.protocol : 'http:') + href
            } else {
                href = this.protocol + "//" + this.host + (this.port ? ":" + this.port : "") + '/' + ((href[0] == '/') ? href.slice(1) : href)
            }
            var a = href.match(/([^:]+:)\/\/([^/:?#]+):?(\d+)?([^?#]*)?(\?[^#]*)?(#.*)?/);
            this.protocol = a[1] ? a[1] : "";
            this.host = a[2] ? a[2] : "";
            this.port = a[3] ? a[3] : "";
            this.pathname = a[4] ? a[4] : "";
            this.search = a[5] ? a[5] : "";
            this.hash = a[6] ? a[6] : "";
            this.hostname = this.host;
            this.origin = this.protocol + "//" + this.host + (this.port ? ":" + this.port : "");
        }
    });
    // r = Object.defineProperty(r, 'search', {
    //     get: function(){
    //         v_console_log(`  [*] ${name||obj.constructor.name} -> search[get]:`, this.search)
    //
    //         // v_console_log(`  [*] ${name||obj.constructor.name} -> href[get]:`, JSON.stringify(r))
    //         return this.search_
    //     },
    //     set: function(href){
    //         v_console_log(`  [*] ${name||obj.constructor.name} -> search[set]:`, href)
    //
    //         this.search_ = href
    //     }
    // });
    if (initurl && initurl.trim()) {
        var temp = v_new_toggle;
        v_new_toggle = true;
        r.href = initurl;
        v_new_toggle = temp;
    }

    return r
}

function _inherits(t, e) {
    t.prototype = Object.create(e.prototype, {
        constructor: {value: t, writable: !0, configurable: !0}
    }), e && Object.setPrototypeOf(t, e)
}

// Object.defineProperty(Object.prototype, Symbol.toStringTag, {
//     get() { return Object.getPrototypeOf(this).constructor.name }
// });
var v_new_toggle = true
Object.freeze(console)//only for javascript-obfuscator anti console debug.

v_console_log = function () {
}
var v_random = (function () {
    var seed = 276951438;
    return function random() {
        return seed = (seed * 9301 + 49297) % 233280, (seed / 233280)
    }
})()
var v_new = function (v) {
    var temp = v_new_toggle;
    v_new_toggle = true;
    var r = new v;
    v_new_toggle = temp;
    return r
}


RTCSessionDescription = v_saf(function RTCSessionDescription() {
    ;
})

EventTarget = v_saf(function EventTarget() {
    ;
})
CanvasRenderingContext2D = v_saf(function CanvasRenderingContext2D() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
CanvasGradient = v_saf(function CanvasGradient() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
WebGL2RenderingContext = v_saf(function WebGL2RenderingContext() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
MutationObserver = v_saf(function MutationObserver() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
OffscreenCanvasRenderingContext2D = v_saf(function OffscreenCanvasRenderingContext2D() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
NavigatorUAData = v_saf(function NavigatorUAData() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
FeaturePolicy = v_saf(function FeaturePolicy() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
NodeList = v_saf(function NodeList() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
HTMLCollection = v_saf(function HTMLCollection() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
HTMLAllCollection = v_saf(function HTMLAllCollection(arrs) {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;this.items == allNodes
})
Object.defineProperties(HTMLAllCollection.prototype, {
    items: {value: {}},
    item: {
        value: v_saf(function item() {

        })
    },
    length: {
        value: 0
    },
    namedItem: {
        value: v_saf(function namedItem() {

        })
    }
})
DOMTokenList = v_saf(function DOMTokenList() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
Event = v_saf(function Event() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
RTCIceCandidate = v_saf(function RTCIceCandidate() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
Bluetooth = v_saf(function Bluetooth() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
CredentialsContainer = v_saf(function CredentialsContainer() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
Navigator = v_saf(function Navigator() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;this._plugins = typeof PluginArray == 'undefined' ? [] : v_new(PluginArray);
    this._mimeTypes = typeof MimeTypeArray == 'undefined' ? [] : v_new(MimeTypeArray)
})


navis = {
    appCodeName: "Mozilla",
    appName: ENV.navigatorparams.appname,
    appVersion: ENV.navigatorparams.appversion,
    language: "en-US",
    languages: ['en-US', 'en', 'ru'],
    maxTouchPoints: 0,
    platform: ENV.navigatorparams.platform,
    product: ENV.navigatorparams.product,
    productSub: ENV.navigatorparams.productsub,
    userAgent: ENV.navigatorparams.useragent,
    vendor: ENV.navigatorparams.vendor,
    vendorSub: "",
    webdriver: false,
    hardwareconcurrency: ENV.navigatorparams.hardwareconcurrency
}

// navis = fingerprint.navigator
Object.defineProperties(Navigator.prototype, {
    mediaDevices: {
        get() {
            v_console_log("  [*] Navigator -> mediaDevices[get]",);
            return v_new(MediaDevices)
        }
    },
    // cpuClass: {
    //     get(){
    //         v_console_log("  [*] Navigator -> cpuClass[get]", this._plugins || []);
    //         return ''
    //     }
    // },
    plugins: {
        get: v_saf(function plugins() {
            v_console_log("  [*] Navigator -> plugins[get]", this._plugins || []);
            if (Object.keys(ENV.plugins).length === 0){
                return [];
            }
            return this._plugins || []
        }, undefined, 'get')
    },
    mimeTypes: {
        get: v_saf(function mimeTypes() {
            v_console_log("  [*] Navigator -> mimeTypes[get]", this._mimeTypes || []);
            if (ENV.mimetypes.length === 0){
                return [];
            }
            return this._mimeTypes || []
        }, undefined, 'get')
    },
    appCodeName: {
        get() {
            v_console_log("  [*] Navigator -> appCodeName[get]", "Mozilla");
            // return "Mozilla"
            return navis.appCodeName
        }
    },
    appName: {
        get() {
            v_console_log("  [*] Navigator -> appName[get]", "Netscape");
            // return "Netscape"
            return navis.appName
        }
    },
    appVersion: {
        get() {
            v_console_log("  [*] Navigator -> appVersion[get]", "5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.62");
            // return "5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.62"
            return navis.appVersion
        }
    },
    hardwareConcurrency: {
        get() {
            v_console_log("  [*] Navigator -> hardwareConcurrency[get]", 8);
            return navis.hardwareconcurrency
        }
    },
    maxTouchPoints: {
        get() {
            v_console_log("  [*] Navigator -> maxTouchPoints[get]", 0);
            return 0
        }
    },
    platform: {
        get() {
            v_console_log("  [*] Navigator -> platform[get]", "MacIntel");
            return navis.platform
        }
    },
    product: {
        get() {
            v_console_log("  [*] Navigator -> product[get]", "Gecko");
            return navis.product
        }
    },
    productSub: {
        get() {
            v_console_log("  [*] Navigator -> productSub[get]", "20030107");
            return navis.productSub
        }
    },
    userAgent: {
        get: v_saf(function userAgent() {

            v_console_log("  [*] Navigator -> userAgent[get]", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.62");
            // return "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36 Edg/111.0.1661.62"
            return navis.userAgent
        }, undefined, 'get')
    },
    vendor: {
        get: v_saf(function vendor() {
            v_console_log("  [*] Navigator -> vendor[get]", "Google Inc.");
            return navis.vendor
        }, undefined, 'get')
    },
    vendorSub: {
        get() {
            v_console_log("  [*] Navigator -> vendorSub[get]", "");
            return ""
        }
    },
    doNotTrack: {
        get() {
            v_console_log("  [*] Navigator -> doNotTrack[get]", null);
            return null
        }
    },
    webdriver: {
        get() {
            v_console_log("  [*] Navigator -> webdriver[get]", false);
            return false
        }
    },
    geolocation: {
        get() {
            v_console_log("  [*] Navigator -> geolocation[get]", {});
            return {}
        }
    },
    bluetooth: {
        get() {
            v_console_log("  [*] Navigator -> bluetooth[get]", {});
            return v_new(Bluetooth)
        }
    },
    credentials: {
        get() {
            v_console_log("  [*] Navigator -> credentials[get]", {});
            return v_new(CredentialsContainer)
        }
    },
    languages: {
        get() {
            v_console_log("  [*] Navigator -> languages[get]", {});
            return ['en-US', 'en', 'ru']
            return {}
        }
    },
    language: {
        get() {
            v_console_log("  [*] Navigator -> language[get]", {});
            return 'en-US'
        }
    },
    connection: {
        get() {
            v_console_log("  [*] Navigator -> connection[get]", {});
            return {}
        }
    },
    vibrate: {
        get() {
            v_console_log("  [*] Navigator -> vibrate[get]", {});
            return {}
        }
    },
    storage: {
        get() {
            v_console_log("  [*] Navigator -> storage[get]", {});
            return {}
        }
    },
    requestMediaKeySystemAccess: {
        get() {
            v_console_log("  [*] Navigator -> requestMediaKeySystemAccess[get]", {});
            return v_saf(function requestMediaKeySystemAccess() {
            })
        }
    },
    [Symbol.toStringTag]: {value: "Navigator", writable: false, enumerable: false, configurable: true},
})
TextMetrics = v_saf(function TextMetrics() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
Plugin = v_saf(function Plugin() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
MimeType = v_saf(function MimeType() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
Object.defineProperties(Plugin.prototype, {
    name: {value: '', writable: true},
    description: {value: '', writable: true},
    filename: {value: '', writable: true},
    length: {value: '', writable: true},
})
PluginArray = v_saf(function PluginArray() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
    for (let i = 0; i <Object.keys(ENV.plugins).length; i++) {
        this[i] = v_new(Plugin);
        let plugin = ENV.plugins[i];
        this[i].description = plugin.description;
        this[i].filename = plugin.filename;
        this[i].length = plugin.length;
        this[i].name = plugin.name;
    }
    console.log()
    // this[0] = v_new(Plugin);
    // this[0].description = "Portable Document Format";
    // this[0].filename = "internal-pdf-viewer";
    // this[0].length = 2;z
    // this[0].name = "PDF Viewer";
    // this[1] = v_new(Plugin);
    // this[1].description = "Portable Document Format";
    // this[1].filename = "internal-pdf-viewer";
    // this[1].length = 2;
    // this[1].name = "Chrome PDF Viewer";
    // this[2] = v_new(Plugin);
    // this[2].description = "Portable Document Format";
    // this[2].filename = "internal-pdf-viewer";
    // this[2].length = 2;
    // this[2].name = "Chromium PDF Viewer";
    // this[3] = v_new(Plugin);
    // this[3].description = "Portable Document Format";
    // this[3].filename = "internal-pdf-viewer";
    // this[3].length = 2;
    // this[3].name = "Microsoft Edge PDF Viewer";
    // this[4] = v_new(Plugin);
    // this[4].description = "Portable Document Format";
    // this[4].filename = "internal-pdf-viewer";
    // this[4].length = 2;
    // this[4].name = "WebKit built-in PDF";
})
PluginArray = new Proxy(PluginArray, {
    get(target, p, receiver) {
        let temp = Reflect.get(target, p, receiver);
        console.log('PluginArray get ', p);
        return temp;
    }
})
Object.defineProperties(PluginArray.prototype, {
    [Symbol.toStringTag]: {
        value: 'PluginArray',
    }
})
MimeType = v_saf(function MimeType() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
WebKitMutationObserver = v_saf(function WebKitMutationObserver() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
// Crypto = v_saf(function Crypto(){if (!v_new_toggle){ throw TypeError("Illegal constructor") };
//     this.getRandomValues = function(){
//         v_console_log('  [*] Crypto -> getRandomValues[func]')
//         var e=arguments[0]; return e.map(function(x, i){return e[i]=v_random()*1073741824});}
//     this.randomUUID = function(){
//         v_console_log('  [*] Crypto -> randomUUID[func]')
//         function get2(){return (v_random()*255^0).toString(16).padStart(2,'0')}
//         function rpt(func,num){var r=[];for(var i=0;i<num;i++){r.push(func())};return r.join('')}
//         return [rpt(get2,4),rpt(get2,2),rpt(get2,2),rpt(get2,2),rpt(get2,6)].join('-')}})
Image = v_saf(function Image() {
    ;
    return v_new(HTMLImageElement)
})
webkitResolveLocalFileSystemURL = v_saf(function webkitResolveLocalFileSystemURL() {
})
webkitRequestAnimationFrame = v_saf(function webkitRequestAnimationFrame() {
})
requestAnimationFrame = v_saf(function requestAnimationFrame() {
})
File = v_saf(function File() {
})

RTCDataChannel = v_saf(function RTCDataChannel() {
    ;
});
_inherits(RTCDataChannel, EventTarget)
Object.defineProperties(RTCDataChannel.prototype, {
    binaryType: {
        get() {
            print('  [*] RTCDataChannel -> binaryType[get] ', 'arraybuffer')
            return 'arraybuffer'
        }
    }
})
window.RTCDataChannel = RTCDataChannel;
Node = v_saf(function Node() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Node, EventTarget)
OffscreenCanvas = v_saf(function OffscreenCanvas() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(OffscreenCanvas, EventTarget)
WebSocket = v_saf(function WebSocket() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(WebSocket, EventTarget)
let RTCPeerConnectionIceEvent = v_saf(function RTCPeerConnectionIceEvent() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(RTCPeerConnectionIceEvent, Event)
CompressionStream = v_saf(function CompressionStream() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.CompressionStream = CompressionStream;
LayoutShiftAttribution = v_saf(function LayoutShiftAttribution() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.LayoutShiftAttribution = LayoutShiftAttribution;
FeaturePolicy = v_saf(function FeaturePolicy() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.FeaturePolicy = FeaturePolicy;
XRHitTestResult = v_saf(function XRHitTestResult() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.XRHitTestResult = XRHitTestResult;
// todo hasOwnProperty 的环境
window.crossOriginIsolated = false
window.AbstractRange = v_saf(function AbstractRange() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.RTCDtlsTransport = v_saf(function RTCDtlsTransport() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.BarcodeDetector = v_saf(function BarcodeDetector() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.EventCounts = v_saf(function EventCounts() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.VisualViewport = v_saf(function VisualViewport() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.FinalizationRegistry = v_saf(function FinalizationRegistry() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.WritableStreamDefaultController = v_saf(function WritableStreamDefaultController() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.HID = v_saf(function HID() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.CSSCounterStyleRule = v_saf(function CSSCounterStyleRule() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.FileSystemDirectoryHandle = v_saf(function FileSystemDirectoryHandle() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.PerformancePaintTiming = v_saf(function PerformancePaintTiming() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.AudioData = v_saf(function AudioData() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.DOMRectList = v_saf(function DOMRectList() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.FragmentDirective = v_saf(function FragmentDirective() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.Sanitizer = v_saf(function Sanitizer() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.Lock = v_saf(function Lock() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.EyeDropper = v_saf(function EyeDropper() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.CSSLayerBlockRule = v_saf(function CSSLayerBlockRule() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.ServiceWorkerContainer = v_saf(function ServiceWorkerContainer() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.IdleDetector = v_saf(function IdleDetector() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.HTMLDialogElement = v_saf(function HTMLDialogElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.CSSFontPaletteValuesRule = v_saf(function CSSFontPaletteValuesRule() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.CSSMathClamp = v_saf(function CSSMathClamp() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.NavigationPreloadManager = v_saf(function NavigationPreloadManager() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.LaunchParams = v_saf(function LaunchParams() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.BrowserCaptureMediaStreamTrack = v_saf(function BrowserCaptureMediaStreamTrack() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.FontData = v_saf(function FontData() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.ReadableByteStreamController = v_saf(function ReadableByteStreamController() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.OffscreenCanvas = v_saf(function OffscreenCanvas() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.MediaSourceHandle = v_saf(function MediaSourceHandle() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
window.XRCamera = v_saf(function XRCamera() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});


MessageEvent = v_saf(function MessageEvent() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(MessageEvent, Event)
MediaQueryList = v_saf(function MediaQueryList() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(MediaQueryList, EventTarget)
UIEvent = v_saf(function UIEvent() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(UIEvent, Event)
Worker = v_saf(function Worker() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Worker, EventTarget)
Performance = v_saf(function Performance() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Performance, EventTarget)
XMLHttpRequestEventTarget = v_saf(function XMLHttpRequestEventTarget() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(XMLHttpRequestEventTarget, EventTarget)
Object.defineProperties(XMLHttpRequestEventTarget.prototype, {
    onloadstart: {enumerable: true, configurable: true, writable: true},
    onprogress: {enumerable: true, configurable: true, writable: true},
    onabort: {enumerable: true, configurable: true, writable: true},
    onerror: {enumerable: true, configurable: true, writable: true},
    onload: {enumerable: true, configurable: true, writable: true},
    ontimeout: {enumerable: true, configurable: true, writable: true},
    onloadend: {enumerable: true, configurable: true, writable: true},
    status: {
        get() {
            console.log("status_call222", arguments);
            return 0;
        }, enumerable: true, configurable: true
    },

})
Document = v_saf(function Document() {
    ;
});
_inherits(Document, Node)
Element = v_saf(function Element() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
MouseEvent = v_saf(function MouseEvent() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(MouseEvent, UIEvent)
KeyboardEvent = v_saf(function KeyboardEvent() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(KeyboardEvent, UIEvent)
XMLHttpRequest = v_saf(function XMLHttpRequest() {
    ;
});
_inherits(XMLHttpRequest, XMLHttpRequestEventTarget)
Object.defineProperties(XMLHttpRequest.prototype, {
    onreadystatechange: {
        get() {
            console.log("onreadystatechange_call", arguments)
        }, enumerable: true, configurable: true
    },
    headers: {enumerable: true, configurable: true, value: {}},
    readyState: {
        get() {
            console.log("readyState_call", arguments)
        }, enumerable: true, configurable: true
    },
    timeout: {
        get() {
            console.log("timeout_call", arguments)
        }, enumerable: true, configurable: true
    },
    withCredentials: {
        get() {
            console.log("withCredentials_call", arguments)
        }, enumerable: true, configurable: true
    },
    upload: {
        get() {
            console.log("upload_call", arguments)
        }, enumerable: true, configurable: true
    },
    responseURL: {
        get() {
            console.log("responseURL_call", arguments)
        }, enumerable: true, configurable: true
    },
    status: {
        get() {
            console.log("status_call", arguments);
            return 0;
        }, enumerable: true, configurable: true
    },
    statusText: {
        get() {
            console.log("statusText_call", arguments)
        }, enumerable: true, configurable: true
    },
    responseType: {
        get() {
            console.log("responseType_call", arguments)
        }, enumerable: true, configurable: true
    },
    response: {
        get() {
            console.log("response_call", arguments)
        }, enumerable: true, configurable: true
    },
    responseText: {
        // value:
        get() {
            console.log("responseText_call", arguments);
            return ' uPF3AwEoJlHlzWNlesZQyw==nEDp0BiUXDVv+kZI0xmvWA2l1/2Sd+cwEqZ/dab98vw/EW9vHnlu0ewwQ6/XbKoC/4OMgkSZlMatR5Juv64BjfveRzkJCkOxeOqOk82GovL+Lz68K0ps6QBt+rFSkT/Q9/HmcE+4gxnSBp2rS1FPXpuulY3PxlibjQHx4beX+JTnZBN+EC9mU+dCite0S5/uqq5SVVm7QQhHJikbu5oY0H72574dVVA22nEDH4QT4XKjfzPsPqdxUEOh77Y+H5aA6X6gLPtQz7L2uWO/naJhfodv6ngafMaz/pgYGIbCZJySNifAsPDEXTRsJIIi+mmCMOjadxgmYo7x2ZZXHUS4ATT7yIBYRsPHoWEyk37f7zzyNJ8N+LXhZF4vc++yBopxHJpDrCevB8zHA6mJPl+vdaojopVeOjMllg9CNemDelw0IPKj7hRp2ohhjMISI8tVlX9FdgAG5GcXAxs1tJNvZ72tOiEueFcY4qxjgK+9ZrfEjvVWx5qdnYjUHSruCn6wAd3yd7qG0/9tZjKjSogKOYsa8HXyuBaMEcb3DZc9dvzi8CqM6kCMaztIfwnklpbrufz9+CKOkcCAbJQnff8rb286T90uXbhcEBQGY6a8K4vYSEXsL0YaO+KcErqGyn6Eb6jQDdhr+ahQYcX4GaObwz5SLL0fZd9tML5R30G0hO5KFT1kw6kpPHtDUtQMtq6/OQB0jSioN+AQrNrHHG369g1v02danTP9BM03yNDL06f3yaVzQgiWf9uk4iSCwDGyWaciKnOWyMDtkWa+aRrrc6fLE/cBaOMPeHC9tU6o6q71k6SkV6LY/cNTn4InnVV3ZOeTZSNYSq7ufeTSbRnbr5sdWLLFUyWClwAPzf6bzaHwIy839XZoSFSLVeVOlCuf0xWLJ5b4BDCX2/5ZiXBK08qKsPWYipmfAwG+6R7HiyAIzYma6x8JBcEbMVxUSeUnOwqXWK5mF4YGXpnv3WpxuU5TLWHNI4RuljlOOM01K2tssd0XUrUSkbE4YpAlzT9rQFuUHHL98n0tf6gLT6dRqpGx5LjI8BLwatS6KMEzoa++BVtJKGWvUi6aP0xSVy9axRQxUFsFpeaJt4/u+jjclIqIkscTd1v+VKKMYLcoSDFfYbtF1005RUaIlSuHhsP9u6BM7QtanQD7Q/t1I91gRYekXgeJ/1PJdzVSSrGAY0DGkcl9oNgV5XaAY/PzNx6YmKk7YQx50/ynwSG9Wz8jBO0tx6K5dwfEB6tWvS+5VFN8QPBzXwBs/e2hQTnN/nT/hz9F3r6M3UGjp2Wey2dyolw2noQ4BTpMLls8Y9Bk9LHN4kW9u1x7TU2HTwx754VVcy/iEhvFJQcT1i8VT7Ozg2p5Gdh2hwRyr5lHXutAlFYad698dYVFu5Ow5tVu0lnj0QQZ6D3GUi0yYcTCImyVY6AbqIzGZxlTN0NzokG1aqSbUSJmHLLxsZ4jaKK4NegXQVlAxcN3NzXvexdB5NXQRD49Mj6FQ3BxEXrPuKRKKLqlTvFbDpZp3BC0rqtXgk+tYCg+FP3rwXWnNPlZSuAoyeJOdmTtcVMTyO50M+VS3caWHf3MNpBrwzMkQh8BRw3XKwf1mvENc4rOYqSgtlzSFQ+BdjExHNdU1Z1HFClDekC0gU4Ep9UFz2vL+ZHKGXGcSDED78NJXWJdS0Kz2FJhTKFM69pa7bnQEunY3MEfAw4=';
        }
    },
    responseXML: {
        get() {
            console.log("responseXML_call", arguments)
        }, enumerable: true, configurable: true
    },
    UNSENT: {
        get() {
            console.log("UNSENT_call", arguments)
        }, enumerable: true, configurable: true
    },
    OPENED: {
        get() {
            console.log("OPENED_call", arguments)
        }, enumerable: true, configurable: true
    },
    HEADERS_RECEIVED: {
        get() {
            console.log("HEADERS_RECEIVED_call", arguments)
        }, enumerable: true, configurable: true
    },
    LOADING: {
        get() {
            console.log("LOADING_call", arguments)
        }, enumerable: true, configurable: true
    },
    DONE: {
        get() {
            console.log("DONE_call", arguments)
        }, enumerable: true, configurable: true
    },
    abort: {
        get() {
            console.log("abort_call", arguments)
        }, enumerable: true, configurabled: true
    },
    getAllResponseHeaders: {
        get() {
            console.log("getAllResponseHeaders_call", arguments)
        }, enumerable: true, configurable: true
    },
    getResponseHeader: {
        get() {
            console.log("getResponseHeader_call", arguments)
        }, enumerable: true, configurable: true
    },
    open: {
        value: v_saf(function open() {
            console.log("open_call", arguments)
        }, undefined, ''), enumerable: true, configurable: true
    },
    overrideMimeType: {
        get() {
            console.log("overrideMimeType_call", arguments)
        }, enumerable: true, configurable: true
    },
    send: {
        value: v_saf(function () {
            console.log("send_call", arguments);
            debugger;
            this.onload && this.onload()
        }), enumerable: true, configurable: true
    },
    setRequestHeader: {
        value: v_saf(function () {
            print("setRequestHeader_call", arguments, arguments[1].length);
            this.headers[arguments[0].toLowerCase()] = arguments[1];
            if (arguments[0] === 'EE30zvQLWf-b') {
                console.log(this.headers)
            }
            ;
        }, undefined, undefined), enumerable: true, configurable: true
    },
})
// XMLHttpRequest.prototype.open = function(){
//     console.log("xhr_call_open", arguments)
// }
// XMLHttpRequest.prototype.send = function(){
//     console.log("xhr_call_send", arguments)
// }
// XMLHttpRequest.prototype.setRequestHeader = function(){
//     console.log("xhr_setRequestHeader_send", arguments)
// }


function v_init_event_target() {

    function _mk_mouse_event(type, canBubble, cancelable, view, detail, screenX, screenY, clientX, clientY, ctrlKey, altKey, shiftKey, metaKey, button, relatedTarget) {
        if (type == 'click') {
            var m = new PointerEvent()
            m.pointerType = "mouse"
        } else {
            var m = new MouseEvent()
        }
        m.isTrusted = true
        m.type = type
        m.canBubble = canBubble
        m.cancelable = cancelable
        m.view = view
        m.detail = detail
        m.screenX = screenX;
        m.movementX = screenX
        m.screenY = screenY;
        m.movementY = screenY
        m.clientX = clientX;
        m.layerX = clientX;
        m.offsetX = clientX;
        m.pageX = clientX;
        m.x = clientX;
        m.clientY = clientY;
        m.layerY = clientY;
        m.offsetY = clientY;
        m.pageY = clientY;
        m.y = clientY;
        m.ctrlKey = ctrlKey
        m.altKey = altKey
        m.shiftKey = shiftKey
        m.metaKey = metaKey
        m.button = button
        m.relatedTarget = relatedTarget
        // print(m   )
        return m
    }

    function  make_mouse(type, x, y) {
        return _mk_mouse_event(type, true, true, window, 0, 0, 0, x, y, false, false, false, false, 0, null)
    }

    function mouse_click(x, y) {
        for (var i = 0; i < (v_events['click'] || []).length; i++) {
            v_events['click'][i][1](make_mouse('click', x, y))
        }
        for (var i = 0; i < (v_events['mousedown'] || []).length; i++) {
            v_events['mousedown'][i][1](make_mouse('mousedown', x, y))
        }
        for (var i = 0; i < (v_events['mouseup'] || []).length; i++) {
            v_events['mouseup'][i][1](make_mouse('mouseup', x, y))
        }
    }

    var offr = Math.random()

    function make_touch(_this, type, x, y, timeStamp) {
        var offx = Math.random()
        var offy = Math.random()
        var t = v_new(new v_saf(function Touch() {
        }))
        t = clientX = offx + x
        t = clientY = offy + y
        t = force = 1
        t = identifier = 0
        t = pageX = offx + x
        t = pageY = offy + y
        t = radiusX = 28 + offr
        t = radiusY = 28 + offr
        t = rotationAngle = 0
        t = screenX = 0
        t = screenY = 0
        var e = v_new(new v_saf(function TouchEvent() {
        }))
        e.isTrusted = true
        e.altKey = false
        e.bubbles = true
        e.cancelBubble = false
        e.cancelable = false
        e.changedTouches = e.targetTouches = e.touches = [t]
        e.composed = true
        e.ctrlKey = false
        e.currentTarget = null
        e.defaultPrevented = false
        e.detail = 0
        e.eventPhase = 0
        e.metaKey = false
        e.path = _this == window ? [window] : [_this, window]
        e.returnValue = true
        e.shiftKey = false
        e.sourceCapabilities = new v_saf(function InputDeviceCapabilities() {
            this.firesTouchEvents = true
        })
        e.srcElement = _this
        e.target = _this
        e.type = type
        e.timeStamp = timeStamp == undefined ? (new Date - v_start_stamp) : ((v_fake_stamp += Math.random() * 20) - v_start_stamp)
        e.view = window
        e.which = 0
        return e
    }

    function make_trace(x1, y1, x2, y2) {
        // 贝塞尔曲线
        function step_len(x1, y1, x2, y2) {
            var ln = ((x2 - x1) ** 2 + (y2 - y1) ** 2) ** 0.5
            return (ln / 10) ^ 0
        }

        var slen = step_len(x1, y1, x2, y2)
        if (slen < 3) {
            return []
        }

        function factorial(x) {
            for (var y = 1; x > 1; x--) {
                y *= x
            }
            return y;
        }

        var lp = Math.random()
        var rp = Math.random()
        var xx1 = (x1 + (x2 - x1) / 12 * (4 - lp * 4)) ^ 0
        var yy1 = (y1 + (y2 - y1) / 12 * (8 + lp * 4)) ^ 0
        var xx2 = (x1 + (x2 - x1) / 12 * (8 + rp * 4)) ^ 0
        var yy2 = (y1 + (y2 - y1) / 12 * (4 - rp * 4)) ^ 0
        var points = [[x1, y1], [xx1, yy1], [xx2, yy2], [x2, y2]]
        var N = points.length
        var n = N - 1
        var traces = []
        var step = slen
        for (var T = 0; T < step + 1; T++) {
            var t = T * (1 / step)
            var x = 0
            var y = 0
            for (var i = 0; i < N; i++) {
                var B = factorial(n) * t ** i * (1 - t) ** (n - i) / (factorial(i) * factorial(n - i))
                x += points[i][0] * B
                y += points[i][1] * B
            }
            traces.push([x ^ 0, y ^ 0])
        }
        return traces
    }

    function touch(x1, y1, x2, y2) {
        if (x2 == undefined && y2 == undefined) {
            x2 = x1
            y2 = y1
        }
        var traces = make_trace(x1, y1, x2, y2)
        console.log('traces:', traces)
        for (var i = 0; i < (v_events['touchstart'] || []).length; i++) {
            v_events['touchstart'][i][1](make_touch(v_events['touchstart'][i][0], 'touchstart', x1, y1))
        }
        for (var j = 0; j < traces.length; j++) {
            var x = traces[j][0]
            var y = traces[j][0]
            for (var i = 0; i < (v_events['touchmove'] || []).length; i++) {
                v_events['touchmove'][i][1](make_touch(v_events['touchmove'][i][0], 'touchmove', x, y))
            }
        }
        for (var i = 0; i < (v_events['touchend'] || []).length; i++) {
            v_events['touchend'][i][1](make_touch(v_events['touchend'][i][0], 'touchend', x2, y2))
        }
    }

    function mouse_move(x1, y1, x2, y2) {
        if (x2 == undefined && y2 == undefined) {
            x2 = x1
            y2 = y1
        }
        var traces = make_trace(x1, y1, x2, y2)
        // console.log('traces:', traces)
        for (var j = 0; j < traces.length; j++) {
            var x = traces[j][0]
            var y = traces[j][0]
            // for (var i = 0; i < (v_events['mousemove'] || []).length; i++) {
            v_events['mousemove'](make_mouse(v_events['mousemove'], x, y))
            // }
        }
    }

    window.make_mouse = make_mouse
    window.mouse_click = mouse_click
    window.mouse_move = mouse_move
    window.touch = touch
    // EventTarget.prototype.addEventListener = function(){v_console_log('  [*] EventTarget -> addEventListener[func]', this===window?'[Window]':this===document?'[Document]':this, [].slice.call(arguments)); add_event(this, [].slice.call(arguments)); return null}
    // EventTarget.prototype.dispatchEvent = function(){v_console_log('  [*] EventTarget -> dispatchEvent[func]', this===window?'[Window]':this===document?'[Document]':this, [].slice.call(arguments)); add_event(this, [].slice.call(arguments)); return null}
    // EventTarget.prototype.removeEventListener = function(){v_console_log('  [*] EventTarget -> removeEventListener[func]', this===window?'[Window]':this===document?'[Document]':this, [].slice.call(arguments)); add_event(this, [].slice.call(arguments)); return null}
}

HTMLElement = v_saf(function HTMLElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLElement, Element)
HTMLScriptElement = v_saf(function HTMLScriptElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLScriptElement, HTMLElement)
HTMLBodyElement = v_saf(function HTMLBodyElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLBodyElement, HTMLElement)
Object.defineProperties(HTMLBodyElement.prototype, {
    [Symbol.toStringTag]: {value: "HTMLBodyElement", writable: false, enumerable: false, configurable: true},
})
HTMLCanvasElement = v_saf(function HTMLCanvasElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLCanvasElement, HTMLElement)
HTMLAnchorElement = v_saf(function HTMLAnchorElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
    return v_hook_href(this, 'HTMLAnchorElement', location.href)
}, undefined, undefined);
// _inherits(HTMLAnchorElement, HTMLElement)
// Object.defineProperties(HTMLAnchorElement.prototype, {
//     // href: {
//     //     get() {
//     //         print("  [*] HTMLAnchorElement -> href[get]", "https://www.jetblue.com/booking/flights?from=LAS&to=BOS&depart=2023-07-10&isMultiCity=false&noOfRoute=1&lang=en&adults=1&children=0&infants=0&sharedMarket=false&roundTripFaresFlag=false&usePoints=false")
//     //         return 'https://www.jetblue.com/booking/flights?from=LAS&to=BOS&depart=2023-07-10&isMultiCity=false&noOfRoute=1&lang=en&adults=1&children=0&infants=0&sharedMarket=false&roundTripFaresFlag=false&usePoints=false'
//     //     }, set() {
//     //         v_console_log("  [*] HTMLAnchorElement -> href[set]", [].slice.call(arguments));
//     //     }
//     // },
//     // host: {
//     //     set(){
//     //         v_console_log("  [*] HTMLAnchorElement -> host[set]");
//     //     },
//     //     get() {
//     //         v_console_log("  [*] HTMLAnchorElement -> host[get]", "www.southwest.com");
//     //         return "www.southwest.com"
//     //     }
//     // },
//     // protocol: {
//     //     set(){
//     //         v_console_log("  [*] HTMLAnchorElement -> protocol[set]");
//     //     },
//     //     get() {
//     //         v_console_log("  [*] HTMLAnchorElement -> protocol[get]", "https:");
//     //         return "https:"
//     //     }
//     // },
//     // pathname: {
//     //     set(){
//     //         v_console_log("  [*] HTMLAnchorElement -> pathname[set]");
//     //     },
//     //     get() {
//     //         v_console_log("  [*] HTMLAnchorElement -> pathname[get]", "/air/booking/index.html");
//     //         return "/air/booking/index.html"
//     //     }
//     // },
//     // search: {
//     //     set(){
//     //         v_console_log("  [*] HTMLAnchorElement -> search[set]");
//     //     },
//     //     get() {
//     //         v_console_log("  [*] HTMLAnchorElement -> search[get]", "?adultPassengersCount=1&adultsCount=1&departureDate=2023-05-13&departureTimeOfDay=ALL_DAY&destinationAirportCode=BOS&fareType=USD&from=&int=HOMEQBOMAIR&originationAirportCode=LAS&passengerType=ADULT&promoCode=&reset=true&returnDate=&returnTimeOfDay=ALL_DAY&to=&tripType=oneway&validate=true")
//     //         return "?adultPassengersCount=1&adultsCount=1&departureDate=2023-05-13&departureTimeOfDay=ALL_DAY&destinationAirportCode=BOS&fareType=USD&from=&int=HOMEQBOMAIR&originationAirportCode=LAS&passengerType=ADULT&promoCode=&reset=true&returnDate=&returnTimeOfDay=ALL_DAY&to=&tripType=oneway&validate=true"
//     //     }
//     // },
//     // hash: {
//     //     set(){
//     //         v_console_log("  [*] HTMLAnchorElement -> hash[set]");
//     //     },
//     //     get() {
//     //         v_console_log("  [*] HTMLAnchorElement -> hash[get]", "");
//     //         return ""
//     //     }
//     // },
//     // port: {
//     //     set(){
//     //         v_console_log("  [*] HTMLAnchorElement -> port[set]");
//     //     },
//     //     get() {
//     //         v_console_log("  [*] HTMLAnchorElement -> port[get]", "");
//     //         return ""
//     //     }
//     // },
//     // hostname: {
//     //     set(){
//     //         v_console_log("  [*] HTMLAnchorElement -> hostname[set]");
//     //     },
//     //     get() {
//     //         v_console_log("  [*] HTMLAnchorElement -> hostname[get]", "www.southwest.com");
//     //         return "www.southwest.com"
//     //     }
//     // },
//     [Symbol.toStringTag]: {value: "HTMLAnchorElement", writable: false, enumerable: false, configurable: true},
// })

HTMLImageElement = v_saf(function HTMLImageElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLImageElement, HTMLElement)
HTMLIFrameElement = v_saf(function HTMLIFrameElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLIFrameElement, HTMLElement)

HTMLMediaElement = v_saf(function HTMLMediaElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLMediaElement, HTMLElement)
Object.defineProperties(HTMLMediaElement.prototype, {
    canPlayType: {
        value: v_saf(function canPlayType() {
            v_console_log("  [*] HTMLMediaElement -> canPlayType[func]", [].slice.call(arguments));
            let values = {
                'audio/aac; codecs="flac"': '',
                'audio/flac': 'probably',
                'audio/mpeg; codecs="mp3"': "probably",
                'audio/mpeg; codecs="vp9"': "",
                'audio/webm; codecs="vp8"': "",
                'audio/webz': "",
                'audio/x-m4a; codecs="mp3"': "",
                'audio/x-m4a; codecs="vp8, mp4a.40"': "",
                'audio/x-m4a; codecs="vp9, mp4a.40.2"': "",
                'video/mp4': 'maybe',
                'video/mp4; codecs="ac-3"': "",
                'video/mp4; codecs="avc1.42011E"': "",
                'video/mp4; codecs="avc1.42E009"': 'maybe',
                'video/mp4; codecs="avc1.42E034"': 'probably',
                'video/mp4; codecs="avc1.42F01E"': 'probably',
                'video/mp4; codecs="avc1.4D001E"': 'probably',
                'video/mp4; codecs="avc3.42001E"': 'probably',
                'video/mp4; codecs="avc3.42E01E, mp4a.40.29"': 'probably',
                'video/mp4; codecs="flac"': 'probably',
                'video/mp4; codecs="hev1"': "",
                'video/mp4; codecs="hvc1x"': "",
                'video/mp4; codecs="lavc1337"': "",
                'video/mp4; codecs="mp4a.40.02"': 'probably',
                'video/mp4; codecs="mp4a.40.5"': 'probably',
                'video/mp4; codecs="mp4a.67"': 'probably',
                'video/mp4; codecs="opus"': 'probably',
                'video/ogg; codecs="flac"': 'probably',
                'video/ogg; codecs="opus"': 'probably',
                'video/ogg; codecs="vp8"': 'probably',
                'video/webm': 'maybe',
                'video/webm; codecs="av01.0.04M.08"': 'probably',
                'video/webm; codecs="vp09.02.10.08"': "probably",
                'video/x-dv': "",
                'video/x-m4v; codecs="avc1.42AC23"': "maybe",
            }
        })
    },
    NETWORK_EMPTY: {"value": 0, "writable": false, "enumerable": true, "configurable": false},
    NETWORK_IDLE: {"value": 1, "writable": false, "enumerable": true, "configurable": false},
    NETWORK_LOADING: {"value": 2, "writable": false, "enumerable": true, "configurable": false},
    NETWORK_NO_SOURCE: {"value": 3, "writable": false, "enumerable": true, "configurable": false},
    HAVE_NOTHING: {"value": 0, "writable": false, "enumerable": true, "configurable": false},
    HAVE_METADATA: {"value": 1, "writable": false, "enumerable": true, "configurable": false},
    HAVE_CURRENT_DATA: {"value": 2, "writable": false, "enumerable": true, "configurable": false},
    HAVE_FUTURE_DATA: {"value": 3, "writable": false, "enumerable": true, "configurable": false},
    HAVE_ENOUGH_DATA: {"value": 4, "writable": false, "enumerable": true, "configurable": false},
    [Symbol.toStringTag]: {value: "HTMLMediaElement", writable: false, enumerable: false, configurable: true},
})
WindowProperties = v_saf(function WindowProperties() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(WindowProperties, EventTarget)

// _inherits(Window, WindowProperties)

var Screen = v_saf(function Screen() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Screen, EventTarget)
// Screen = dtavm.proxy(Screen, 'Screen')
Object.defineProperties(Screen.prototype, {
    availWidth: {
        get: v_saf(function availWidth() {
            v_console_log("  [*] Screen -> availWidth[get]", screens.availWidth);

            // return 2560
            return screens.availWidth
        }, undefined, 'get'), enumerable: true, configurable: true
    },
    availHeight: {
        get: v_saf(function availHeight() {
            v_console_log("  [*] Screen -> availHeight[get]", screens.availHeight);

            // return 2560
            return screens.availHeight
        }, undefined, 'get'), enumerable: true, configurable: true
    },
    width: {
        get: v_saf(function width() {
            v_console_log("  [*] Screen -> width[get]", screens.width);

            // return 2560
            return screens.width

        }, undefined, 'get'), enumerable: true, configurable: true
    },
    height: {
        get: v_saf(function height() {
            v_console_log("  [*] Screen -> height[get]", screens.height);

            // return 2560
            return screens.height
        }, undefined, 'get'), enumerable: true, configurable: true
    },
    colorDepth: {
        get() {
            v_console_log("  [*] Screen -> colorDepth[get]", screens.colorDepth);

            // return 24
            return screens.colorDepth

        }, enumerable: true, configurable: true
    },
    pixelDepth: {
        get() {
            v_console_log("  [*] Screen -> pixelDepth[get]", screens.pixelDepth);

            // return 24
            return screens.pixelDepth

        }, enumerable: true, configurable: true
    },
    availLeft: {
        get() {
            v_console_log("  [*] Screen -> availLeft[get]", screens.availLeft);

            // return 0
            return screens.availLeft

        }, enumerable: true, configurable: true
    },
    availTop: {
        get() {
            v_console_log("  [*] Screen -> availTop[get]", screens.availTop);

            // return 25
            return screens.availTop

        }, enumerable: true, configurable: true
    },
    orientation: {
        get() {
            v_console_log("  [*] Screen -> orientation[get]");
            return {}
        }, enumerable: true, configurable: true
    },
    onchange: {
        get() {
            return null
        }, enumerable: true, configurable: true
    },
    isExtended: {
        get() {
            return true
        }, enumerable: true, configurable: true
    },
    [Symbol.toStringTag]: {value: "Screen", writable: false, enumerable: false, configurable: true},
})
// Screen.prototype = dtavm.proxy(Screen.prototype, ' Screen.prototype')
HTMLDocument = v_saf(function HTMLDocument() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;Object.defineProperty(this, 'location', {
        get() {
            return location
        }
    })
});
_inherits(HTMLDocument, Document)
HTMLHeadElement = v_saf(function HTMLHeadElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLHeadElement, HTMLElement)
HTMLBodyElement = v_saf(function HTMLBodyElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLBodyElement, HTMLElement)
External = v_saf(function External() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
External(HTMLBodyElement, Event)
WebGLShaderPrecisionFormat = v_saf(function WebGLShaderPrecisionFormat() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
Object.defineProperties(WebGLShaderPrecisionFormat.prototype, {
    precision: {
        get() {
            v_console_log('WebGLShaderPrecisionFormat.prototype precision')
            return 23
        }
    },
    rangeMax: {
        get() {
            v_console_log('WebGLShaderPrecisionFormat.prototype rangeMax')

            return 127
        }
    },
    rangeMin: {
        get() {
            v_console_log('WebGLShaderPrecisionFormat.prototype rangeMin')

            return 127
        }
    },
})
MimeTypeArray = v_saf(function MimeTypeArray() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
    this[0] = v_new(Plugin);
    this[0].description = "Portable Document Format";
    this[0].enabledPlugin = {"0": {}, "1": {}};
    this[0].suffixes = "pdf";
    this[0].type = "application/pdf";
    this[1] = v_new(Plugin);
    this[1].description = "Portable Document Format";
    this[1].enabledPlugin = {"0": {}, "1": {}};
    this[1].suffixes = "pdf";
    this[1].type = "text/pdf";
})
CSSStyleDeclaration = v_saf(function CSSStyleDeclaration() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
EXTTextureFilterAnisotropic = v_saf(function EXTTextureFilterAnisotropic() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
Object.defineProperties(EXTTextureFilterAnisotropic.prototype, {
    MAX_TEXTURE_MAX_ANISOTROPY_EXT: {value: 34047},
    TEXTURE_MAX_ANISOTROPY_EXT: {value: 34047},

})
Location = v_saf(function Location() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
Object.defineProperties(Location.prototype,{
    href: {
        get: function () {
            if (!(this.protocol) && !(this.host)) {
                r = ''
            } else {
                r = this.protocol + "//" + this.host + (this.port ? ":" + this.port : "") + this.pathname + this.search + this.hash;
            }
            // v_console_log(`  [*] ${name||obj.constructor.name} -> href[get]:`, JSON.stringify(r))
            return r
        },
        set: function (href) {
            href = href.trim()
            v_console_log(`  href[set]:`, JSON.stringify(href))
            if (href.startsWith("http://") || href.startsWith("https://")) {/*ok*/
            } else if (href.startsWith("//")) {
                href = (this.protocol ? this.protocol : 'http:') + href
            } else {
                href = this.protocol + "//" + this.host + (this.port ? ":" + this.port : "") + '/' + ((href[0] == '/') ? href.slice(1) : href)
            }
            var a = href.match(/([^:]+:)\/\/([^/:?#]+):?(\d+)?([^?#]*)?(\?[^#]*)?(#.*)?/);
            this.protocol = a[1] ? a[1] : "";
            this.host = a[2] ? a[2] : "";
            this.port = a[3] ? a[3] : "";
            this.pathname = a[4] ? a[4] : "";
            this.search = a[5] ? a[5] : "";
            this.hash = a[6] ? a[6] : "";
            this.hostname = this.host;
            this.origin = this.protocol + "//" + this.host + (this.port ? ":" + this.port : "");
        }
    },
  assign: {
        value: v_saf(function assign(){

        }),
      enumerable:true,

    },
    ancestorOrigins: {
        get: v_saf(function ancestorOrigins(){
            return new DOMStringList()
        }),
        enumerable:true,
        configurable:false,

    },
  // fragmentDirective: 'c',
  // hash: {set: function(arg){this._hash = arg}, get:function(){return this._hash}, enumerable:true},
  // host: {set: function(arg){this._host = arg}, get:function(){return this._host}, enumerable:true},
  // hostname: {set: function(arg){this._hostname = arg}, get:function(){return this._hostname}, enumerable:true},
  origin: {set: function(arg){this._origin = arg}, get:function(){return this._origin}, enumerable:true},
  // pathname: {set: function(arg){this._pathname = arg}, get:function(){return this._pathname}, enumerable:true},
  // port: {set: function(arg){this._port = arg}, get:function(){return this._port}, enumerable:true},
  // protocol: {set: function(arg){this._protocol = arg}, get:function(){return this._protocol}, enumerable:true},
  // host: 'e',
  // hostname: 'f',
  // href: 'g',
  // origin: 'h',
  // pathname: 'i',
  // port: 'j',
  // protocol: 'k',
  reload: {
        value: v_saf(function reload(){

        }),
      enumerable:true,

    },
  replace: {
        value: v_saf(function replace(){

        }),
      enumerable:true,
    },
  toString: {
        value: v_saf(function toString(){
            return ''
        }),
      enumerable:true,

    },
})
WebGLRenderingContext = v_saf(function WebGLRenderingContext() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;

    function WebGLBuffer() {
    }

    function WebGLProgram() {
    }

    function WebGLShader() {
    }

    this._toggle = {}
    this.createBuffer = function () {
        v_console_log('  [*] WebGLRenderingContext -> createBuffer[func]');
        return v_new(WebGLBuffer)
    }
    this.createProgram = function () {
        v_console_log('  [*] WebGLRenderingContext -> createProgram[func]');
        return v_new(WebGLProgram)
    }
    this.createShader = function () {
        v_console_log('  [*] WebGLRenderingContext -> createShader[func]');
        return v_new(WebGLShader)
    }
    this.getSupportedExtensions = function () {
        v_console_log('  [*] WebGLRenderingContext -> getSupportedExtensions[func]')
        return [
            "ANGLE_instanced_arrays",
            "EXT_blend_minmax",
            "EXT_color_buffer_half_float",
            "EXT_disjoint_timer_query",
            "EXT_float_blend",
            "EXT_frag_depth",
            "EXT_shader_texture_lod",
            "EXT_texture_compression_rgtc",
            "EXT_texture_filter_anisotropic",
            "EXT_sRGB",
            "KHR_parallel_shader_compile",
            "OES_element_index_uint",
            "OES_fbo_render_mipmap",
            "OES_standard_derivatives",
            "OES_texture_float",
            "OES_texture_float_linear",
            "OES_texture_half_float",
            "OES_texture_half_float_linear",
            "OES_vertex_array_object",
            "WEBGL_color_buffer_float",
            "WEBGL_compressed_texture_s3tc",
            "WEBGL_compressed_texture_s3tc_srgb",
            "WEBGL_debug_renderer_info",
            "WEBGL_debug_shaders",
            "WEBGL_depth_texture",
            "WEBGL_draw_buffers",
            "WEBGL_lose_context",
            "WEBGL_multi_draw"
        ]
    }
    var self = this
    this.getExtension = function (key) {
        v_console_log('  [*] WebGLRenderingContext -> getExtension[func]:', key)

        class WebGLDebugRendererInfo {
            get UNMASKED_VENDOR_WEBGL() {
                self._toggle[37445] = 1;
                return 37445
            }

            get UNMASKED_RENDERER_WEBGL() {
                self._toggle[37446] = 1;
                return 37446
            }
        }

        class WebGLLoseContext {
            loseContext() {
            }

            restoreContext() {
            }
        }

        if (key == 'WEBGL_debug_renderer_info') {
            var r = new WebGLDebugRendererInfo
        } else if (key == 'EXT_texture_filter_anisotropic') {
            var r = v_new(EXTTextureFilterAnisotropic)
        } else if (key == 'WEBGL_lose_context') {
            var r = new WebGLLoseContext
        } else {
            var r = new WebGLDebugRendererInfo
        }
        return aaProxy(r, key)
    }
    this.getParameter = function (key) {
        v_console_log('  [*] WebGLRenderingContext -> getParameter[func]:', key)
        if (this._toggle[key]) {
            if (key == 37445) {
                return "Google Inc. (ATI Technologies Inc.)"
            }
            if (key == 37446) {
                return "ANGLE (ATI Technologies Inc., AMD Radeon RX 560 OpenGL Engine, OpenGL 4.1)"
            }
        } else {
            if (key == 33902) {
                return new Float32Array([1, 1])
            }
            if (key == 33901) {
                return new Float32Array([1, 1024])
            }
            if (key == 35661) {
                return 32
            }
            if (key == 34047) {
                return 16
            }
            if (key == 34076) {
                return 16384
            }
            if (key == 36349) {
                return 1024
            }
            if (key == 34024) {
                return 16384
            }
            if (key == 34930) {
                return 16
            }
            if (key == 3379) {
                return 16384
            }
            if (key == 36348) {
                return 30
            }
            if (key == 34921) {
                return 16
            }
            if (key == 35660) {
                return 16
            }
            if (key == 36347) {
                return 4095
            }
            if (key == 3386) {
                return new Int32Array([32767, 32767])
            }
            if (key == 3410) {
                return 8
            }
            if (key == 7937) {
                return "WebKit WebGL"
            }
            if (key == 35724) {
                return "WebGL GLSL ES 1.0 (OpenGL ES GLSL ES 1.0 Chromium)"
            }
            if (key == 3415) {
                return 0
            }
            if (key == 7936) {
                return "WebKit"
            }
            if (key == 7938) {
                return "WebGL 1.0 (OpenGL ES 2.0 Chromium)"
            }
            if (key == 3411) {
                return 8
            }
            if (key == 3412) {
                return 8
            }
            if (key == 3413) {
                return 8
            }
            if (key == 3414) {
                return 24
            }
            return null
        }
    }
    this.getContextAttributes = function () {
        v_console_log('  [*] WebGLRenderingContext -> getContextAttributes[func]')
        return {
            alpha: true,
            antialias: true,
            depth: true,
            desynchronized: false,
            failIfMajorPerformanceCaveat: false,
            powerPreference: "default",
            premultipliedAlpha: true,
            preserveDrawingBuffer: false,
            stencil: false,
            xrCompatible: false,
        }
    }
    this.getShaderPrecisionFormat = function (a, b) {
        v_console_log('  [*] WebGLRenderingContext -> getShaderPrecisionFormat[func]', a, b)

        var r1 = v_new(WebGLShaderPrecisionFormat)
        r1.rangeMin = 127
        r1.rangeMax = 127
        r1.precision = 23
        var r2 = v_new(WebGLShaderPrecisionFormat)
        r2.rangeMin = 31
        r2.rangeMax = 30
        r2.precision = 0
        if (a == 35633 && b == 36338) {
            return r1
        }
        if (a == 35633 && b == 36337) {
            return r1
        }
        if (a == 35633 && b == 36336) {
            return r1
        }
        if (a == 35633 && b == 36341) {
            return r2
        }
        if (a == 35633 && b == 36340) {
            return r2
        }
        if (a == 35633 && b == 36339) {
            return r2
        }
        if (a == 35632 && b == 36338) {
            return r1
        }
        if (a == 35632 && b == 36337) {
            return r1
        }
        if (a == 35632 && b == 36336) {
            return r1
        }
        if (a == 35632 && b == 36341) {
            return r2
        }
        if (a == 35632 && b == 36340) {
            return r2
        }
        if (a == 35632 && b == 36339) {
            return r2
        }
        throw Error('getShaderPrecisionFormat')
    }
    v_saf(this.createBuffer, 'createBuffer')
    v_saf(this.createProgram, 'createProgram')
    v_saf(this.createShader, 'createShader')
    v_saf(this.getSupportedExtensions, 'getSupportedExtensions')
    v_saf(this.getExtension, 'getExtension')
    v_saf(this.getParameter, 'getParameter')
    v_saf(this.getContextAttributes, 'getContextAttributes')
    v_saf(this.getShaderPrecisionFormat, 'getShaderPrecisionFormat')
})
PerformanceEntry = v_saf(function PerformanceEntry() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
MediaDevices = v_saf(function MediaDevices() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(MediaDevices, EventTarget)
Object.defineProperties(MediaDevices.prototype, {
    ondevicechange: {
        value: v_saf(function ondevicechange() {
            v_console_log("MediaDevices ondevicechange", arguments)
        })
    },
    enumerateDevices: {
        value: function () {
            return {
                then: function () {
                    return this
                }, catch: function () {
                }
            }
        }
    }
})
PerformanceElementTiming = v_saf(function PerformanceElementTiming() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(PerformanceElementTiming, PerformanceEntry)
PerformanceEventTiming = v_saf(function PerformanceEventTiming() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(PerformanceEventTiming, PerformanceEntry)
PerformanceLongTaskTiming = v_saf(function PerformanceLongTaskTiming() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(PerformanceLongTaskTiming, PerformanceEntry)
PerformanceMark = v_saf(function PerformanceMark() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(PerformanceMark, PerformanceEntry)
PerformanceMeasure = v_saf(function PerformanceMeasure() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(PerformanceMeasure, PerformanceEntry)
PerformanceNavigation = v_saf(function PerformanceNavigation() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
PerformanceResourceTiming = v_saf(function PerformanceResourceTiming() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(PerformanceResourceTiming, PerformanceEntry)
PerformanceNavigationTiming = v_saf(function PerformanceNavigationTiming() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(PerformanceNavigationTiming, PerformanceResourceTiming)
PerformanceObserver = v_saf(function PerformanceObserver() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
PerformanceObserverEntryList = v_saf(function PerformanceObserverEntryList() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
PerformancePaintTiming = v_saf(function PerformancePaintTiming() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(PerformancePaintTiming, PerformanceEntry)
PerformanceServerTiming = v_saf(function PerformanceServerTiming() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
PerformanceTiming = v_saf(function PerformanceTiming() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
HTMLUnknownElement = v_saf(function HTMLUnknownElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLUnknownElement, HTMLElement)
HTMLVideoElement = v_saf(function HTMLVideoElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLVideoElement, HTMLMediaElement)

Storage = v_saf(function Storage() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
ImageData = v_saf(function ImageData() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
Object.defineProperties(ImageData.prototype, {
    data: {
        value: Uint8ClampedArray.from([0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255]),
        writable: true
    },
    height: {value: 5, writable: true},
    width: {value: 5, writable: true},
    colorSpace: {value: 'srgb', writable: true},
})
Touch = v_saf(function Touch() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
TouchEvent = v_saf(function TouchEvent() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(TouchEvent, UIEvent)
window.TouchEvent = TouchEvent
window.StaticRange = v_saf(function StaticRange() {
})
PointerEvent = v_saf(function PointerEvent() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(PointerEvent, MouseEvent)
HTMLHtmlElement = v_saf(function HTMLHtmlElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLHtmlElement, HTMLElement)
HTMLMetaElement = v_saf(function HTMLMetaElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLMetaElement, HTMLElement)
HTMLTitleElement = v_saf(function HTMLTitleElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLTitleElement, HTMLElement)
HTMLScriptElement = v_saf(function HTMLScriptElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLScriptElement, HTMLElement)
HTMLStyleElement = v_saf(function HTMLScriptElement() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(HTMLStyleElement, HTMLElement)
Object.defineProperties(Node.prototype, {
    attrs: {
        value: {}
    },
    setAttribute: {
        value: function (key, value) {
            this.attrs[key] = value
        }
    },
    parentNode: {
        value: v_new(HTMLScriptElement)
    },
    insertBefore: {
        value: function (tag, newNode) {
            return tag
        }
    }
})

getRanHex = size => {
    let result = [];
    let hexRef = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'];

    for (let n = 0; n < size; n++) {
        result.push(hexRef[Math.floor(_random() * 16)].toUpperCase() + hexRef[Math.floor(_random() * 16)].toUpperCase());
    }
    return result;
}
Object.defineProperties(RTCSessionDescription.prototype, {
    sdp: {
        get: v_saf(function get() {
            let t1 = parseInt(Math.random() * (9145445486224659982 / 2) + 9145445486224659982 / 1.2)
            let hex = getRanHex(32).join(':');
            let res = `v=0
o=- ${t1} 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE 0
a=extmap-allow-mixed
a=msid-semantic: WMS
m=application 9 UDP/DTLS/SCTP webrtc-datachannel
c=IN IP4 0.0.0.0
a=ice-ufrag:Pz1P
a=ice-pwd:2RkyfgKRyILQtDZZ5mluUlPS
a=ice-options:trickle
a=fingerprint:sha-256 ${hex}
a=setup:actpass
a=mid:0
a=sctp-port:5000
a=max-message-size:262144`
            console.log("  [*] RTCSessionDescription -> sdp[get]", res);

            return res

        })
    },
    type: {
        get: v_saf(function get() {
            print("  [*] RTCSessionDescription -> type[get]", "offer");
            return "offer"
        })
    },
    [Symbol.toStringTag]: {value: "RTCSessionDescription", writable: false, enumerable: false, configurable: true},
})

Object.defineProperties(EventTarget.prototype, {
    [Symbol.toStringTag]: {value: "EventTarget", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(CanvasRenderingContext2D.prototype, {
    filleStyleVal: {value: '', writable: true},
    rectVal: {value: '', writable: true},
    // filleStyleVal: {value:'', writable:true},
    fillRect: {
        value: v_saf(function fillRect() {
            v_console_log("  [*] CanvasRenderingContext2D -> fillRect[func]", [].slice.call(arguments));
            this.rectVal = arguments;
        })
    },
    arc: {
        value: v_saf(function arc() {
            v_console_log("  [*] CanvasRenderingContext2D -> arc[func]", [].slice.call(arguments));
        })
    },
    createLinearGradient: {
        value: v_saf(function createLinearGradient() {
            v_console_log("  [*] CanvasRenderingContext2D -> createLinearGradient[func]", [].slice.call(arguments));
        })
    },
    moveTo: {
        value: v_saf(function moveTo() {
            v_console_log("  [*] CanvasRenderingContext2D -> moveTo[func]", [].slice.call(arguments));
            this.moveToText = arguments;
        })
    },
    lineTo: {
        value: v_saf(function lineTo() {
            v_console_log("  [*] CanvasRenderingContext2D -> lineTo[func]", [].slice.call(arguments));
            this.lineToText = arguments
        })
    },
    getImageData: {
        value: v_saf(function getImageData() {
            print("  [*] CanvasRenderingContext2D -> getImageData[func]", [].slice.call(arguments));
            let t = v_new(ImageData)
            if (arguments[0] == 18 && arguments[1] == 90) {
                console.log('ggiggg')
                t.data = Uint8ClampedArray.from([214, 122, 6, 255])
                t.width = 1;
                t.height = 1;
            }
            if (arguments[0] == 38 && arguments[1] == 77) {
                console.log('ggiggg')
                t.data = Uint8ClampedArray.from([255, 255, 255, 255])
                t.width = 1;
                t.height = 1;
            }
            t.imageData = arguments;
            console.log(t)
            return t
        }, undefined, ''),
        enumerable:true,
        configurable: true
    },
    measureText: {
        value: v_saf(function measureText() {
            v_console_log("  [*] CanvasRenderingContext2D -> measureText[func]", [].slice.call(arguments));
            let t = v_new(TextMetrics)
            t.text = arguments
            t.fontval = this.fontVal

            console.log(t, this)
            return t
        })
    },
    fillText: {
        value: v_saf(function fillText() {
            v_console_log("  [*] CanvasRenderingContext2D -> fillText[func]", [].slice.call(arguments));
            this.fillTextVal = arguments
        }, undefined, ''),
        enumerable:true,
        configurable: true
    },
    fillStyle: {
        set: v_saf(function fillStyle() {
            v_console_log("  [*] CanvasRenderingContext2D -> fillStyle[set]", [].slice.call(arguments));
            this.filleStyleVal = arguments;
        }, undefined, 'set'),
        get: v_saf(function fillStyle() {
            v_console_log("  [*] CanvasRenderingContext2D -> fillStyle[get]", [].slice.call(arguments));
            return this.filleStyleVal
        }, undefined, 'get'),
        enumerable:true,
        configurable: true
    },
    lineWidth: {
        set() {
            v_console_log("  [*] CanvasRenderingContext2D -> lineWidth[set]", [].slice.call(arguments));
        },
        enumerable:true,
        configurable: true
    },
    strokeStyle: {
        set: v_saf(function strokeStyle() {
            v_console_log("  [*] CanvasRenderingContext2D -> strokeStyle[set]", [].slice.call(arguments));
            this._strokeStyle = arguments
        }, undefined, 'set'),
        get: v_saf(function strokeStyle() {
            v_console_log("  [*] CanvasRenderingContext2D -> strokeStyle[get]", [].slice.call(arguments));
            return this._strokeStyle;
        }, undefined, 'get'),
        enumerable:true,
        configurable: true
    },
    textBaseline: {
        set() {
            v_console_log("  [*] CanvasRenderingContext2D -> textBaseline[set]", [].slice.call(arguments));
        },
        enumerable:true,
        configurable: true
    },
    font: {
        set: v_saf(function font() {
            v_console_log("  [*] CanvasRenderingContext2D -> font[set]", [].slice.call(arguments));
            this.fontVal = arguments[0];
        }, undefined, 'set'),
        get: v_saf(function font() {
            v_console_log("  [*] CanvasRenderingContext2D -> font[get]", [].slice.call(arguments));
            return this.fontVal
        }, undefined, 'get'),
        enumerable:true,
        configurable: true
    },
    shadowOffsetX: {
        set() {
            v_console_log("  [*] CanvasRenderingContext2D -> shadowOffsetX[set]", [].slice.call(arguments));
            this.shadowOffsetXText = arguments[0]
        }
    },
    shadowOffsetY: {
        set() {
            v_console_log("  [*] CanvasRenderingContext2D -> shadowOffsetY[set]", [].slice.call(arguments));
            this.shadowOffsetYText = arguments[0]
        }
    },
    shadowBlur: {
        set() {
            v_console_log("  [*] CanvasRenderingContext2D -> shadowBlur[set]", [].slice.call(arguments));
            this.shadowBlurText = arguments[0]
        }
    },
    shadowColor: {
        set() {
            v_console_log("  [*] CanvasRenderingContext2D -> shadowColor[set]", [].slice.call(arguments));
            this.shadowColorText = arguments[0]
        }
    },
    beginPath: {
        value: v_saf(function beginPath() {
            v_console_log("  [*] CanvasRenderingContext2D -> beginPath[func]", [].slice.call(arguments));
        })
    },
    stroke: {
        value: v_saf(function stroke() {
            v_console_log("  [*] CanvasRenderingContext2D -> stroke[func]", [].slice.call(arguments));
        })
    },
    closePath: {
        value: v_saf(function closePath() {
            v_console_log("  [*] CanvasRenderingContext2D -> closePath[func]", [].slice.call(arguments));
        })
    },
    fill: {
        value: v_saf(function fill() {
            v_console_log("  [*] CanvasRenderingContext2D -> fill[func]", [].slice.call(arguments));
        })
    },
    drawImage: {
        value: v_saf(function drawImage() {
            v_console_log("  [*] CanvasRenderingContext2D -> drawImage[func]", [].slice.call(arguments));
        })
    },
    [Symbol.toStringTag]: {value: "CanvasRenderingContext2D", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(CanvasGradient.prototype, {
    addColorStop: {
        value: v_saf(function addColorStop() {
            v_console_log("  [*] CanvasGradient -> addColorStop[func]", [].slice.call(arguments));
        })
    },
    [Symbol.toStringTag]: {value: "CanvasGradient", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(WebGL2RenderingContext.prototype, {
    createShader: {
        value: v_saf(function createShader() {
            v_console_log("  [*] WebGL2RenderingContext -> createShader[func]", [].slice.call(arguments));
        })
    },
    shaderSource: {
        value: v_saf(function shaderSource() {
            v_console_log("  [*] WebGL2RenderingContext -> shaderSource[func]", [].slice.call(arguments));
        })
    },
    compileShader: {
        value: v_saf(function compileShader() {
            v_console_log("  [*] WebGL2RenderingContext -> compileShader[func]", [].slice.call(arguments));
        })
    },
    getShaderParameter: {
        value: v_saf(function getShaderParameter() {
            v_console_log("  [*] WebGL2RenderingContext -> getShaderParameter[func]", [].slice.call(arguments));
        })
    },
    attachShader: {
        value: v_saf(function attachShader() {
            v_console_log("  [*] WebGL2RenderingContext -> attachShader[func]", [].slice.call(arguments));
        })
    },
    linkProgram: {
        value: v_saf(function linkProgram() {
            v_console_log("  [*] WebGL2RenderingContext -> linkProgram[func]", [].slice.call(arguments));
        })
    },
    getProgramParameter: {
        value: v_saf(function getProgramParameter() {
            v_console_log("  [*] WebGL2RenderingContext -> getProgramParameter[func]", [].slice.call(arguments));
        })
    },
    bindBuffer: {
        value: v_saf(function bindBuffer() {
            v_console_log("  [*] WebGL2RenderingContext -> bindBuffer[func]", [].slice.call(arguments));
        })
    },
    bufferData: {
        value: v_saf(function bufferData() {
            v_console_log("  [*] WebGL2RenderingContext -> bufferData[func]", [].slice.call(arguments));
        })
    },
    getAttribLocation: {
        value: v_saf(function getAttribLocation() {
            v_console_log("  [*] WebGL2RenderingContext -> getAttribLocation[func]", [].slice.call(arguments));
        })
    },
    vertexAttribPointer: {
        value: v_saf(function vertexAttribPointer() {
            v_console_log("  [*] WebGL2RenderingContext -> vertexAttribPointer[func]", [].slice.call(arguments));
        })
    },
    enableVertexAttribArray: {
        value: v_saf(function enableVertexAttribArray() {
            v_console_log("  [*] WebGL2RenderingContext -> enableVertexAttribArray[func]", [].slice.call(arguments));
        })
    },
    useProgram: {
        value: v_saf(function useProgram() {
            v_console_log("  [*] WebGL2RenderingContext -> useProgram[func]", [].slice.call(arguments));
        })
    },
    getUniformLocation: {
        value: v_saf(function getUniformLocation() {
            v_console_log("  [*] WebGL2RenderingContext -> getUniformLocation[func]", [].slice.call(arguments));
        })
    },
    uniform4fv: {
        value: v_saf(function uniform4fv() {
            v_console_log("  [*] WebGL2RenderingContext -> uniform4fv[func]", [].slice.call(arguments));
        })
    },
    drawArrays: {
        value: v_saf(function drawArrays() {
            v_console_log("  [*] WebGL2RenderingContext -> drawArrays[func]", [].slice.call(arguments));
        })
    },
    readPixels: {
        value: v_saf(function readPixels() {
            v_console_log("  [*] WebGL2RenderingContext -> readPixels[func]", [].slice.call(arguments));
        })
    },
    createProgram: {
        value: v_saf(function createProgram() {
            v_console_log("  [*] WebGL2RenderingContext -> createProgram[func]", [].slice.call(arguments));
        })
    },
    createBuffer: {
        value: v_saf(function createBuffer() {
            v_console_log("  [*] WebGL2RenderingContext -> createBuffer[func]", [].slice.call(arguments));
        })
    },
    DEPTH_BUFFER_BIT: {"value": 256, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_BUFFER_BIT: {"value": 1024, "writable": false, "enumerable": true, "configurable": false},
    COLOR_BUFFER_BIT: {"value": 16384, "writable": false, "enumerable": true, "configurable": false},
    POINTS: {"value": 0, "writable": false, "enumerable": true, "configurable": false},
    LINES: {"value": 1, "writable": false, "enumerable": true, "configurable": false},
    LINE_LOOP: {"value": 2, "writable": false, "enumerable": true, "configurable": false},
    LINE_STRIP: {"value": 3, "writable": false, "enumerable": true, "configurable": false},
    TRIANGLES: {"value": 4, "writable": false, "enumerable": true, "configurable": false},
    TRIANGLE_STRIP: {"value": 5, "writable": false, "enumerable": true, "configurable": false},
    TRIANGLE_FAN: {"value": 6, "writable": false, "enumerable": true, "configurable": false},
    ZERO: {"value": 0, "writable": false, "enumerable": true, "configurable": false},
    ONE: {"value": 1, "writable": false, "enumerable": true, "configurable": false},
    SRC_COLOR: {"value": 768, "writable": false, "enumerable": true, "configurable": false},
    ONE_MINUS_SRC_COLOR: {"value": 769, "writable": false, "enumerable": true, "configurable": false},
    SRC_ALPHA: {"value": 770, "writable": false, "enumerable": true, "configurable": false},
    ONE_MINUS_SRC_ALPHA: {"value": 771, "writable": false, "enumerable": true, "configurable": false},
    DST_ALPHA: {"value": 772, "writable": false, "enumerable": true, "configurable": false},
    ONE_MINUS_DST_ALPHA: {"value": 773, "writable": false, "enumerable": true, "configurable": false},
    DST_COLOR: {"value": 774, "writable": false, "enumerable": true, "configurable": false},
    ONE_MINUS_DST_COLOR: {"value": 775, "writable": false, "enumerable": true, "configurable": false},
    SRC_ALPHA_SATURATE: {"value": 776, "writable": false, "enumerable": true, "configurable": false},
    FUNC_ADD: {"value": 32774, "writable": false, "enumerable": true, "configurable": false},
    BLEND_EQUATION: {"value": 32777, "writable": false, "enumerable": true, "configurable": false},
    BLEND_EQUATION_RGB: {"value": 32777, "writable": false, "enumerable": true, "configurable": false},
    BLEND_EQUATION_ALPHA: {"value": 34877, "writable": false, "enumerable": true, "configurable": false},
    FUNC_SUBTRACT: {"value": 32778, "writable": false, "enumerable": true, "configurable": false},
    FUNC_REVERSE_SUBTRACT: {"value": 32779, "writable": false, "enumerable": true, "configurable": false},
    BLEND_DST_RGB: {"value": 32968, "writable": false, "enumerable": true, "configurable": false},
    BLEND_SRC_RGB: {"value": 32969, "writable": false, "enumerable": true, "configurable": false},
    BLEND_DST_ALPHA: {"value": 32970, "writable": false, "enumerable": true, "configurable": false},
    BLEND_SRC_ALPHA: {"value": 32971, "writable": false, "enumerable": true, "configurable": false},
    CONSTANT_COLOR: {"value": 32769, "writable": false, "enumerable": true, "configurable": false},
    ONE_MINUS_CONSTANT_COLOR: {"value": 32770, "writable": false, "enumerable": true, "configurable": false},
    CONSTANT_ALPHA: {"value": 32771, "writable": false, "enumerable": true, "configurable": false},
    ONE_MINUS_CONSTANT_ALPHA: {"value": 32772, "writable": false, "enumerable": true, "configurable": false},
    BLEND_COLOR: {"value": 32773, "writable": false, "enumerable": true, "configurable": false},
    ARRAY_BUFFER: {"value": 34962, "writable": false, "enumerable": true, "configurable": false},
    ELEMENT_ARRAY_BUFFER: {"value": 34963, "writable": false, "enumerable": true, "configurable": false},
    ARRAY_BUFFER_BINDING: {"value": 34964, "writable": false, "enumerable": true, "configurable": false},
    ELEMENT_ARRAY_BUFFER_BINDING: {"value": 34965, "writable": false, "enumerable": true, "configurable": false},
    STREAM_DRAW: {"value": 35040, "writable": false, "enumerable": true, "configurable": false},
    STATIC_DRAW: {"value": 35044, "writable": false, "enumerable": true, "configurable": false},
    DYNAMIC_DRAW: {"value": 35048, "writable": false, "enumerable": true, "configurable": false},
    BUFFER_SIZE: {"value": 34660, "writable": false, "enumerable": true, "configurable": false},
    BUFFER_USAGE: {"value": 34661, "writable": false, "enumerable": true, "configurable": false},
    CURRENT_VERTEX_ATTRIB: {"value": 34342, "writable": false, "enumerable": true, "configurable": false},
    FRONT: {"value": 1028, "writable": false, "enumerable": true, "configurable": false},
    BACK: {"value": 1029, "writable": false, "enumerable": true, "configurable": false},
    FRONT_AND_BACK: {"value": 1032, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_2D: {"value": 3553, "writable": false, "enumerable": true, "configurable": false},
    CULL_FACE: {"value": 2884, "writable": false, "enumerable": true, "configurable": false},
    BLEND: {"value": 3042, "writable": false, "enumerable": true, "configurable": false},
    DITHER: {"value": 3024, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_TEST: {"value": 2960, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_TEST: {"value": 2929, "writable": false, "enumerable": true, "configurable": false},
    SCISSOR_TEST: {"value": 3089, "writable": false, "enumerable": true, "configurable": false},
    POLYGON_OFFSET_FILL: {"value": 32823, "writable": false, "enumerable": true, "configurable": false},
    SAMPLE_ALPHA_TO_COVERAGE: {"value": 32926, "writable": false, "enumerable": true, "configurable": false},
    SAMPLE_COVERAGE: {"value": 32928, "writable": false, "enumerable": true, "configurable": false},
    NO_ERROR: {"value": 0, "writable": false, "enumerable": true, "configurable": false},
    INVALID_ENUM: {"value": 1280, "writable": false, "enumerable": true, "configurable": false},
    INVALID_VALUE: {"value": 1281, "writable": false, "enumerable": true, "configurable": false},
    INVALID_OPERATION: {"value": 1282, "writable": false, "enumerable": true, "configurable": false},
    OUT_OF_MEMORY: {"value": 1285, "writable": false, "enumerable": true, "configurable": false},
    CW: {"value": 2304, "writable": false, "enumerable": true, "configurable": false},
    CCW: {"value": 2305, "writable": false, "enumerable": true, "configurable": false},
    LINE_WIDTH: {"value": 2849, "writable": false, "enumerable": true, "configurable": false},
    ALIASED_POINT_SIZE_RANGE: {"value": 33901, "writable": false, "enumerable": true, "configurable": false},
    ALIASED_LINE_WIDTH_RANGE: {"value": 33902, "writable": false, "enumerable": true, "configurable": false},
    CULL_FACE_MODE: {"value": 2885, "writable": false, "enumerable": true, "configurable": false},
    FRONT_FACE: {"value": 2886, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_RANGE: {"value": 2928, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_WRITEMASK: {"value": 2930, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_CLEAR_VALUE: {"value": 2931, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_FUNC: {"value": 2932, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_CLEAR_VALUE: {"value": 2961, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_FUNC: {"value": 2962, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_FAIL: {"value": 2964, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_PASS_DEPTH_FAIL: {"value": 2965, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_PASS_DEPTH_PASS: {"value": 2966, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_REF: {"value": 2967, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_VALUE_MASK: {"value": 2963, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_WRITEMASK: {"value": 2968, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_BACK_FUNC: {"value": 34816, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_BACK_FAIL: {"value": 34817, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_BACK_PASS_DEPTH_FAIL: {"value": 34818, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_BACK_PASS_DEPTH_PASS: {"value": 34819, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_BACK_REF: {"value": 36003, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_BACK_VALUE_MASK: {"value": 36004, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_BACK_WRITEMASK: {"value": 36005, "writable": false, "enumerable": true, "configurable": false},
    VIEWPORT: {"value": 2978, "writable": false, "enumerable": true, "configurable": false},
    SCISSOR_BOX: {"value": 3088, "writable": false, "enumerable": true, "configurable": false},
    COLOR_CLEAR_VALUE: {"value": 3106, "writable": false, "enumerable": true, "configurable": false},
    COLOR_WRITEMASK: {"value": 3107, "writable": false, "enumerable": true, "configurable": false},
    UNPACK_ALIGNMENT: {"value": 3317, "writable": false, "enumerable": true, "configurable": false},
    PACK_ALIGNMENT: {"value": 3333, "writable": false, "enumerable": true, "configurable": false},
    MAX_TEXTURE_SIZE: {"value": 3379, "writable": false, "enumerable": true, "configurable": false},
    MAX_VIEWPORT_DIMS: {"value": 3386, "writable": false, "enumerable": true, "configurable": false},
    SUBPIXEL_BITS: {"value": 3408, "writable": false, "enumerable": true, "configurable": false},
    RED_BITS: {"value": 3410, "writable": false, "enumerable": true, "configurable": false},
    GREEN_BITS: {"value": 3411, "writable": false, "enumerable": true, "configurable": false},
    BLUE_BITS: {"value": 3412, "writable": false, "enumerable": true, "configurable": false},
    ALPHA_BITS: {"value": 3413, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_BITS: {"value": 3414, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_BITS: {"value": 3415, "writable": false, "enumerable": true, "configurable": false},
    POLYGON_OFFSET_UNITS: {"value": 10752, "writable": false, "enumerable": true, "configurable": false},
    POLYGON_OFFSET_FACTOR: {"value": 32824, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_BINDING_2D: {"value": 32873, "writable": false, "enumerable": true, "configurable": false},
    SAMPLE_BUFFERS: {"value": 32936, "writable": false, "enumerable": true, "configurable": false},
    SAMPLES: {"value": 32937, "writable": false, "enumerable": true, "configurable": false},
    SAMPLE_COVERAGE_VALUE: {"value": 32938, "writable": false, "enumerable": true, "configurable": false},
    SAMPLE_COVERAGE_INVERT: {"value": 32939, "writable": false, "enumerable": true, "configurable": false},
    COMPRESSED_TEXTURE_FORMATS: {"value": 34467, "writable": false, "enumerable": true, "configurable": false},
    DONT_CARE: {"value": 4352, "writable": false, "enumerable": true, "configurable": false},
    FASTEST: {"value": 4353, "writable": false, "enumerable": true, "configurable": false},
    NICEST: {"value": 4354, "writable": false, "enumerable": true, "configurable": false},
    GENERATE_MIPMAP_HINT: {"value": 33170, "writable": false, "enumerable": true, "configurable": false},
    BYTE: {"value": 5120, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_BYTE: {"value": 5121, "writable": false, "enumerable": true, "configurable": false},
    SHORT: {"value": 5122, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_SHORT: {"value": 5123, "writable": false, "enumerable": true, "configurable": false},
    INT: {"value": 5124, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT: {"value": 5125, "writable": false, "enumerable": true, "configurable": false},
    FLOAT: {"value": 5126, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_COMPONENT: {"value": 6402, "writable": false, "enumerable": true, "configurable": false},
    ALPHA: {"value": 6406, "writable": false, "enumerable": true, "configurable": false},
    RGB: {"value": 6407, "writable": false, "enumerable": true, "configurable": false},
    RGBA: {"value": 6408, "writable": false, "enumerable": true, "configurable": false},
    LUMINANCE: {"value": 6409, "writable": false, "enumerable": true, "configurable": false},
    LUMINANCE_ALPHA: {"value": 6410, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_SHORT_4_4_4_4: {"value": 32819, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_SHORT_5_5_5_1: {"value": 32820, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_SHORT_5_6_5: {"value": 33635, "writable": false, "enumerable": true, "configurable": false},
    FRAGMENT_SHADER: {"value": 35632, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_SHADER: {"value": 35633, "writable": false, "enumerable": true, "configurable": false},
    MAX_VERTEX_ATTRIBS: {"value": 34921, "writable": false, "enumerable": true, "configurable": false},
    MAX_VERTEX_UNIFORM_VECTORS: {"value": 36347, "writable": false, "enumerable": true, "configurable": false},
    MAX_VARYING_VECTORS: {"value": 36348, "writable": false, "enumerable": true, "configurable": false},
    MAX_COMBINED_TEXTURE_IMAGE_UNITS: {"value": 35661, "writable": false, "enumerable": true, "configurable": false},
    MAX_VERTEX_TEXTURE_IMAGE_UNITS: {"value": 35660, "writable": false, "enumerable": true, "configurable": false},
    MAX_TEXTURE_IMAGE_UNITS: {"value": 34930, "writable": false, "enumerable": true, "configurable": false},
    MAX_FRAGMENT_UNIFORM_VECTORS: {"value": 36349, "writable": false, "enumerable": true, "configurable": false},
    SHADER_TYPE: {"value": 35663, "writable": false, "enumerable": true, "configurable": false},
    DELETE_STATUS: {"value": 35712, "writable": false, "enumerable": true, "configurable": false},
    LINK_STATUS: {"value": 35714, "writable": false, "enumerable": true, "configurable": false},
    VALIDATE_STATUS: {"value": 35715, "writable": false, "enumerable": true, "configurable": false},
    ATTACHED_SHADERS: {"value": 35717, "writable": false, "enumerable": true, "configurable": false},
    ACTIVE_UNIFORMS: {"value": 35718, "writable": false, "enumerable": true, "configurable": false},
    ACTIVE_ATTRIBUTES: {"value": 35721, "writable": false, "enumerable": true, "configurable": false},
    SHADING_LANGUAGE_VERSION: {"value": 35724, "writable": false, "enumerable": true, "configurable": false},
    CURRENT_PROGRAM: {"value": 35725, "writable": false, "enumerable": true, "configurable": false},
    NEVER: {"value": 512, "writable": false, "enumerable": true, "configurable": false},
    LESS: {"value": 513, "writable": false, "enumerable": true, "configurable": false},
    EQUAL: {"value": 514, "writable": false, "enumerable": true, "configurable": false},
    LEQUAL: {"value": 515, "writable": false, "enumerable": true, "configurable": false},
    GREATER: {"value": 516, "writable": false, "enumerable": true, "configurable": false},
    NOTEQUAL: {"value": 517, "writable": false, "enumerable": true, "configurable": false},
    GEQUAL: {"value": 518, "writable": false, "enumerable": true, "configurable": false},
    ALWAYS: {"value": 519, "writable": false, "enumerable": true, "configurable": false},
    KEEP: {"value": 7680, "writable": false, "enumerable": true, "configurable": false},
    REPLACE: {"value": 7681, "writable": false, "enumerable": true, "configurable": false},
    INCR: {"value": 7682, "writable": false, "enumerable": true, "configurable": false},
    DECR: {"value": 7683, "writable": false, "enumerable": true, "configurable": false},
    INVERT: {"value": 5386, "writable": false, "enumerable": true, "configurable": false},
    INCR_WRAP: {"value": 34055, "writable": false, "enumerable": true, "configurable": false},
    DECR_WRAP: {"value": 34056, "writable": false, "enumerable": true, "configurable": false},
    VENDOR: {"value": 7936, "writable": false, "enumerable": true, "configurable": false},
    RENDERER: {"value": 7937, "writable": false, "enumerable": true, "configurable": false},
    VERSION: {"value": 7938, "writable": false, "enumerable": true, "configurable": false},
    NEAREST: {"value": 9728, "writable": false, "enumerable": true, "configurable": false},
    LINEAR: {"value": 9729, "writable": false, "enumerable": true, "configurable": false},
    NEAREST_MIPMAP_NEAREST: {"value": 9984, "writable": false, "enumerable": true, "configurable": false},
    LINEAR_MIPMAP_NEAREST: {"value": 9985, "writable": false, "enumerable": true, "configurable": false},
    NEAREST_MIPMAP_LINEAR: {"value": 9986, "writable": false, "enumerable": true, "configurable": false},
    LINEAR_MIPMAP_LINEAR: {"value": 9987, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_MAG_FILTER: {"value": 10240, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_MIN_FILTER: {"value": 10241, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_WRAP_S: {"value": 10242, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_WRAP_T: {"value": 10243, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE: {"value": 5890, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_CUBE_MAP: {"value": 34067, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_BINDING_CUBE_MAP: {"value": 34068, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_CUBE_MAP_POSITIVE_X: {"value": 34069, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_CUBE_MAP_NEGATIVE_X: {"value": 34070, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_CUBE_MAP_POSITIVE_Y: {"value": 34071, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_CUBE_MAP_NEGATIVE_Y: {"value": 34072, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_CUBE_MAP_POSITIVE_Z: {"value": 34073, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_CUBE_MAP_NEGATIVE_Z: {"value": 34074, "writable": false, "enumerable": true, "configurable": false},
    MAX_CUBE_MAP_TEXTURE_SIZE: {"value": 34076, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE0: {"value": 33984, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE1: {"value": 33985, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE2: {"value": 33986, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE3: {"value": 33987, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE4: {"value": 33988, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE5: {"value": 33989, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE6: {"value": 33990, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE7: {"value": 33991, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE8: {"value": 33992, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE9: {"value": 33993, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE10: {"value": 33994, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE11: {"value": 33995, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE12: {"value": 33996, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE13: {"value": 33997, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE14: {"value": 33998, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE15: {"value": 33999, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE16: {"value": 34000, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE17: {"value": 34001, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE18: {"value": 34002, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE19: {"value": 34003, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE20: {"value": 34004, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE21: {"value": 34005, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE22: {"value": 34006, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE23: {"value": 34007, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE24: {"value": 34008, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE25: {"value": 34009, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE26: {"value": 34010, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE27: {"value": 34011, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE28: {"value": 34012, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE29: {"value": 34013, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE30: {"value": 34014, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE31: {"value": 34015, "writable": false, "enumerable": true, "configurable": false},
    ACTIVE_TEXTURE: {"value": 34016, "writable": false, "enumerable": true, "configurable": false},
    REPEAT: {"value": 10497, "writable": false, "enumerable": true, "configurable": false},
    CLAMP_TO_EDGE: {"value": 33071, "writable": false, "enumerable": true, "configurable": false},
    MIRRORED_REPEAT: {"value": 33648, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_VEC2: {"value": 35664, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_VEC3: {"value": 35665, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_VEC4: {"value": 35666, "writable": false, "enumerable": true, "configurable": false},
    INT_VEC2: {"value": 35667, "writable": false, "enumerable": true, "configurable": false},
    INT_VEC3: {"value": 35668, "writable": false, "enumerable": true, "configurable": false},
    INT_VEC4: {"value": 35669, "writable": false, "enumerable": true, "configurable": false},
    BOOL: {"value": 35670, "writable": false, "enumerable": true, "configurable": false},
    BOOL_VEC2: {"value": 35671, "writable": false, "enumerable": true, "configurable": false},
    BOOL_VEC3: {"value": 35672, "writable": false, "enumerable": true, "configurable": false},
    BOOL_VEC4: {"value": 35673, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_MAT2: {"value": 35674, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_MAT3: {"value": 35675, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_MAT4: {"value": 35676, "writable": false, "enumerable": true, "configurable": false},
    SAMPLER_2D: {"value": 35678, "writable": false, "enumerable": true, "configurable": false},
    SAMPLER_CUBE: {"value": 35680, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ATTRIB_ARRAY_ENABLED: {"value": 34338, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ATTRIB_ARRAY_SIZE: {"value": 34339, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ATTRIB_ARRAY_STRIDE: {"value": 34340, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ATTRIB_ARRAY_TYPE: {"value": 34341, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ATTRIB_ARRAY_NORMALIZED: {"value": 34922, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ATTRIB_ARRAY_POINTER: {"value": 34373, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: {"value": 34975, "writable": false, "enumerable": true, "configurable": false},
    IMPLEMENTATION_COLOR_READ_TYPE: {"value": 35738, "writable": false, "enumerable": true, "configurable": false},
    IMPLEMENTATION_COLOR_READ_FORMAT: {"value": 35739, "writable": false, "enumerable": true, "configurable": false},
    COMPILE_STATUS: {"value": 35713, "writable": false, "enumerable": true, "configurable": false},
    LOW_FLOAT: {"value": 36336, "writable": false, "enumerable": true, "configurable": false},
    MEDIUM_FLOAT: {"value": 36337, "writable": false, "enumerable": true, "configurable": false},
    HIGH_FLOAT: {"value": 36338, "writable": false, "enumerable": true, "configurable": false},
    LOW_INT: {"value": 36339, "writable": false, "enumerable": true, "configurable": false},
    MEDIUM_INT: {"value": 36340, "writable": false, "enumerable": true, "configurable": false},
    HIGH_INT: {"value": 36341, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER: {"value": 36160, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER: {"value": 36161, "writable": false, "enumerable": true, "configurable": false},
    RGBA4: {"value": 32854, "writable": false, "enumerable": true, "configurable": false},
    RGB5_A1: {"value": 32855, "writable": false, "enumerable": true, "configurable": false},
    RGB565: {"value": 36194, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_COMPONENT16: {"value": 33189, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_INDEX8: {"value": 36168, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_STENCIL: {"value": 34041, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_WIDTH: {"value": 36162, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_HEIGHT: {"value": 36163, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_INTERNAL_FORMAT: {"value": 36164, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_RED_SIZE: {"value": 36176, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_GREEN_SIZE: {"value": 36177, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_BLUE_SIZE: {"value": 36178, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_ALPHA_SIZE: {"value": 36179, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_DEPTH_SIZE: {"value": 36180, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_STENCIL_SIZE: {"value": 36181, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: {"value": 36048, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: {"value": 36049, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: {
        "value": 36050,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: {
        "value": 36051,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    COLOR_ATTACHMENT0: {"value": 36064, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_ATTACHMENT: {"value": 36096, "writable": false, "enumerable": true, "configurable": false},
    STENCIL_ATTACHMENT: {"value": 36128, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_STENCIL_ATTACHMENT: {"value": 33306, "writable": false, "enumerable": true, "configurable": false},
    NONE: {"value": 0, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_COMPLETE: {"value": 36053, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_INCOMPLETE_ATTACHMENT: {"value": 36054, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: {
        "value": 36055,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    FRAMEBUFFER_INCOMPLETE_DIMENSIONS: {"value": 36057, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_UNSUPPORTED: {"value": 36061, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_BINDING: {"value": 36006, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_BINDING: {"value": 36007, "writable": false, "enumerable": true, "configurable": false},
    MAX_RENDERBUFFER_SIZE: {"value": 34024, "writable": false, "enumerable": true, "configurable": false},
    INVALID_FRAMEBUFFER_OPERATION: {"value": 1286, "writable": false, "enumerable": true, "configurable": false},
    UNPACK_FLIP_Y_WEBGL: {"value": 37440, "writable": false, "enumerable": true, "configurable": false},
    UNPACK_PREMULTIPLY_ALPHA_WEBGL: {"value": 37441, "writable": false, "enumerable": true, "configurable": false},
    CONTEXT_LOST_WEBGL: {"value": 37442, "writable": false, "enumerable": true, "configurable": false},
    UNPACK_COLORSPACE_CONVERSION_WEBGL: {"value": 37443, "writable": false, "enumerable": true, "configurable": false},
    BROWSER_DEFAULT_WEBGL: {"value": 37444, "writable": false, "enumerable": true, "configurable": false},
    READ_BUFFER: {"value": 3074, "writable": false, "enumerable": true, "configurable": false},
    UNPACK_ROW_LENGTH: {"value": 3314, "writable": false, "enumerable": true, "configurable": false},
    UNPACK_SKIP_ROWS: {"value": 3315, "writable": false, "enumerable": true, "configurable": false},
    UNPACK_SKIP_PIXELS: {"value": 3316, "writable": false, "enumerable": true, "configurable": false},
    PACK_ROW_LENGTH: {"value": 3330, "writable": false, "enumerable": true, "configurable": false},
    PACK_SKIP_ROWS: {"value": 3331, "writable": false, "enumerable": true, "configurable": false},
    PACK_SKIP_PIXELS: {"value": 3332, "writable": false, "enumerable": true, "configurable": false},
    COLOR: {"value": 6144, "writable": false, "enumerable": true, "configurable": false},
    DEPTH: {"value": 6145, "writable": false, "enumerable": true, "configurable": false},
    STENCIL: {"value": 6146, "writable": false, "enumerable": true, "configurable": false},
    RED: {"value": 6403, "writable": false, "enumerable": true, "configurable": false},
    RGB8: {"value": 32849, "writable": false, "enumerable": true, "configurable": false},
    RGBA8: {"value": 32856, "writable": false, "enumerable": true, "configurable": false},
    RGB10_A2: {"value": 32857, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_BINDING_3D: {"value": 32874, "writable": false, "enumerable": true, "configurable": false},
    UNPACK_SKIP_IMAGES: {"value": 32877, "writable": false, "enumerable": true, "configurable": false},
    UNPACK_IMAGE_HEIGHT: {"value": 32878, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_3D: {"value": 32879, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_WRAP_R: {"value": 32882, "writable": false, "enumerable": true, "configurable": false},
    MAX_3D_TEXTURE_SIZE: {"value": 32883, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_2_10_10_10_REV: {"value": 33640, "writable": false, "enumerable": true, "configurable": false},
    MAX_ELEMENTS_VERTICES: {"value": 33000, "writable": false, "enumerable": true, "configurable": false},
    MAX_ELEMENTS_INDICES: {"value": 33001, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_MIN_LOD: {"value": 33082, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_MAX_LOD: {"value": 33083, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_BASE_LEVEL: {"value": 33084, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_MAX_LEVEL: {"value": 33085, "writable": false, "enumerable": true, "configurable": false},
    MIN: {"value": 32775, "writable": false, "enumerable": true, "configurable": false},
    MAX: {"value": 32776, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_COMPONENT24: {"value": 33190, "writable": false, "enumerable": true, "configurable": false},
    MAX_TEXTURE_LOD_BIAS: {"value": 34045, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_COMPARE_MODE: {"value": 34892, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_COMPARE_FUNC: {"value": 34893, "writable": false, "enumerable": true, "configurable": false},
    CURRENT_QUERY: {"value": 34917, "writable": false, "enumerable": true, "configurable": false},
    QUERY_RESULT: {"value": 34918, "writable": false, "enumerable": true, "configurable": false},
    QUERY_RESULT_AVAILABLE: {"value": 34919, "writable": false, "enumerable": true, "configurable": false},
    STREAM_READ: {"value": 35041, "writable": false, "enumerable": true, "configurable": false},
    STREAM_COPY: {"value": 35042, "writable": false, "enumerable": true, "configurable": false},
    STATIC_READ: {"value": 35045, "writable": false, "enumerable": true, "configurable": false},
    STATIC_COPY: {"value": 35046, "writable": false, "enumerable": true, "configurable": false},
    DYNAMIC_READ: {"value": 35049, "writable": false, "enumerable": true, "configurable": false},
    DYNAMIC_COPY: {"value": 35050, "writable": false, "enumerable": true, "configurable": false},
    MAX_DRAW_BUFFERS: {"value": 34852, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER0: {"value": 34853, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER1: {"value": 34854, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER2: {"value": 34855, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER3: {"value": 34856, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER4: {"value": 34857, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER5: {"value": 34858, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER6: {"value": 34859, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER7: {"value": 34860, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER8: {"value": 34861, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER9: {"value": 34862, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER10: {"value": 34863, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER11: {"value": 34864, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER12: {"value": 34865, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER13: {"value": 34866, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER14: {"value": 34867, "writable": false, "enumerable": true, "configurable": false},
    DRAW_BUFFER15: {"value": 34868, "writable": false, "enumerable": true, "configurable": false},
    MAX_FRAGMENT_UNIFORM_COMPONENTS: {"value": 35657, "writable": false, "enumerable": true, "configurable": false},
    MAX_VERTEX_UNIFORM_COMPONENTS: {"value": 35658, "writable": false, "enumerable": true, "configurable": false},
    SAMPLER_3D: {"value": 35679, "writable": false, "enumerable": true, "configurable": false},
    SAMPLER_2D_SHADOW: {"value": 35682, "writable": false, "enumerable": true, "configurable": false},
    FRAGMENT_SHADER_DERIVATIVE_HINT: {"value": 35723, "writable": false, "enumerable": true, "configurable": false},
    PIXEL_PACK_BUFFER: {"value": 35051, "writable": false, "enumerable": true, "configurable": false},
    PIXEL_UNPACK_BUFFER: {"value": 35052, "writable": false, "enumerable": true, "configurable": false},
    PIXEL_PACK_BUFFER_BINDING: {"value": 35053, "writable": false, "enumerable": true, "configurable": false},
    PIXEL_UNPACK_BUFFER_BINDING: {"value": 35055, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_MAT2x3: {"value": 35685, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_MAT2x4: {"value": 35686, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_MAT3x2: {"value": 35687, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_MAT3x4: {"value": 35688, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_MAT4x2: {"value": 35689, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_MAT4x3: {"value": 35690, "writable": false, "enumerable": true, "configurable": false},
    SRGB: {"value": 35904, "writable": false, "enumerable": true, "configurable": false},
    SRGB8: {"value": 35905, "writable": false, "enumerable": true, "configurable": false},
    SRGB8_ALPHA8: {"value": 35907, "writable": false, "enumerable": true, "configurable": false},
    COMPARE_REF_TO_TEXTURE: {"value": 34894, "writable": false, "enumerable": true, "configurable": false},
    RGBA32F: {"value": 34836, "writable": false, "enumerable": true, "configurable": false},
    RGB32F: {"value": 34837, "writable": false, "enumerable": true, "configurable": false},
    RGBA16F: {"value": 34842, "writable": false, "enumerable": true, "configurable": false},
    RGB16F: {"value": 34843, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ATTRIB_ARRAY_INTEGER: {"value": 35069, "writable": false, "enumerable": true, "configurable": false},
    MAX_ARRAY_TEXTURE_LAYERS: {"value": 35071, "writable": false, "enumerable": true, "configurable": false},
    MIN_PROGRAM_TEXEL_OFFSET: {"value": 35076, "writable": false, "enumerable": true, "configurable": false},
    MAX_PROGRAM_TEXEL_OFFSET: {"value": 35077, "writable": false, "enumerable": true, "configurable": false},
    MAX_VARYING_COMPONENTS: {"value": 35659, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_2D_ARRAY: {"value": 35866, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_BINDING_2D_ARRAY: {"value": 35869, "writable": false, "enumerable": true, "configurable": false},
    R11F_G11F_B10F: {"value": 35898, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_10F_11F_11F_REV: {"value": 35899, "writable": false, "enumerable": true, "configurable": false},
    RGB9_E5: {"value": 35901, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_5_9_9_9_REV: {"value": 35902, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK_BUFFER_MODE: {"value": 35967, "writable": false, "enumerable": true, "configurable": false},
    MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: {
        "value": 35968,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    TRANSFORM_FEEDBACK_VARYINGS: {"value": 35971, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK_BUFFER_START: {"value": 35972, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK_BUFFER_SIZE: {"value": 35973, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: {
        "value": 35976,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    RASTERIZER_DISCARD: {"value": 35977, "writable": false, "enumerable": true, "configurable": false},
    MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: {
        "value": 35978,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: {
        "value": 35979,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    INTERLEAVED_ATTRIBS: {"value": 35980, "writable": false, "enumerable": true, "configurable": false},
    SEPARATE_ATTRIBS: {"value": 35981, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK_BUFFER: {"value": 35982, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK_BUFFER_BINDING: {"value": 35983, "writable": false, "enumerable": true, "configurable": false},
    RGBA32UI: {"value": 36208, "writable": false, "enumerable": true, "configurable": false},
    RGB32UI: {"value": 36209, "writable": false, "enumerable": true, "configurable": false},
    RGBA16UI: {"value": 36214, "writable": false, "enumerable": true, "configurable": false},
    RGB16UI: {"value": 36215, "writable": false, "enumerable": true, "configurable": false},
    RGBA8UI: {"value": 36220, "writable": false, "enumerable": true, "configurable": false},
    RGB8UI: {"value": 36221, "writable": false, "enumerable": true, "configurable": false},
    RGBA32I: {"value": 36226, "writable": false, "enumerable": true, "configurable": false},
    RGB32I: {"value": 36227, "writable": false, "enumerable": true, "configurable": false},
    RGBA16I: {"value": 36232, "writable": false, "enumerable": true, "configurable": false},
    RGB16I: {"value": 36233, "writable": false, "enumerable": true, "configurable": false},
    RGBA8I: {"value": 36238, "writable": false, "enumerable": true, "configurable": false},
    RGB8I: {"value": 36239, "writable": false, "enumerable": true, "configurable": false},
    RED_INTEGER: {"value": 36244, "writable": false, "enumerable": true, "configurable": false},
    RGB_INTEGER: {"value": 36248, "writable": false, "enumerable": true, "configurable": false},
    RGBA_INTEGER: {"value": 36249, "writable": false, "enumerable": true, "configurable": false},
    SAMPLER_2D_ARRAY: {"value": 36289, "writable": false, "enumerable": true, "configurable": false},
    SAMPLER_2D_ARRAY_SHADOW: {"value": 36292, "writable": false, "enumerable": true, "configurable": false},
    SAMPLER_CUBE_SHADOW: {"value": 36293, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_VEC2: {"value": 36294, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_VEC3: {"value": 36295, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_VEC4: {"value": 36296, "writable": false, "enumerable": true, "configurable": false},
    INT_SAMPLER_2D: {"value": 36298, "writable": false, "enumerable": true, "configurable": false},
    INT_SAMPLER_3D: {"value": 36299, "writable": false, "enumerable": true, "configurable": false},
    INT_SAMPLER_CUBE: {"value": 36300, "writable": false, "enumerable": true, "configurable": false},
    INT_SAMPLER_2D_ARRAY: {"value": 36303, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_SAMPLER_2D: {"value": 36306, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_SAMPLER_3D: {"value": 36307, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_SAMPLER_CUBE: {"value": 36308, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_SAMPLER_2D_ARRAY: {"value": 36311, "writable": false, "enumerable": true, "configurable": false},
    DEPTH_COMPONENT32F: {"value": 36012, "writable": false, "enumerable": true, "configurable": false},
    DEPTH32F_STENCIL8: {"value": 36013, "writable": false, "enumerable": true, "configurable": false},
    FLOAT_32_UNSIGNED_INT_24_8_REV: {"value": 36269, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: {
        "value": 33296,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: {
        "value": 33297,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    FRAMEBUFFER_ATTACHMENT_RED_SIZE: {"value": 33298, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: {"value": 33299, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: {"value": 33300, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: {"value": 33301, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: {"value": 33302, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: {"value": 33303, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_DEFAULT: {"value": 33304, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_INT_24_8: {"value": 34042, "writable": false, "enumerable": true, "configurable": false},
    DEPTH24_STENCIL8: {"value": 35056, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNED_NORMALIZED: {"value": 35863, "writable": false, "enumerable": true, "configurable": false},
    DRAW_FRAMEBUFFER_BINDING: {"value": 36006, "writable": false, "enumerable": true, "configurable": false},
    READ_FRAMEBUFFER: {"value": 36008, "writable": false, "enumerable": true, "configurable": false},
    DRAW_FRAMEBUFFER: {"value": 36009, "writable": false, "enumerable": true, "configurable": false},
    READ_FRAMEBUFFER_BINDING: {"value": 36010, "writable": false, "enumerable": true, "configurable": false},
    RENDERBUFFER_SAMPLES: {"value": 36011, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: {
        "value": 36052,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    MAX_COLOR_ATTACHMENTS: {"value": 36063, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT1: {"value": 36065, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT2: {"value": 36066, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT3: {"value": 36067, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT4: {"value": 36068, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT5: {"value": 36069, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT6: {"value": 36070, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT7: {"value": 36071, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT8: {"value": 36072, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT9: {"value": 36073, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT10: {"value": 36074, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT11: {"value": 36075, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT12: {"value": 36076, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT13: {"value": 36077, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT14: {"value": 36078, "writable": false, "enumerable": true, "configurable": false},
    COLOR_ATTACHMENT15: {"value": 36079, "writable": false, "enumerable": true, "configurable": false},
    FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: {"value": 36182, "writable": false, "enumerable": true, "configurable": false},
    MAX_SAMPLES: {"value": 36183, "writable": false, "enumerable": true, "configurable": false},
    HALF_FLOAT: {"value": 5131, "writable": false, "enumerable": true, "configurable": false},
    RG: {"value": 33319, "writable": false, "enumerable": true, "configurable": false},
    RG_INTEGER: {"value": 33320, "writable": false, "enumerable": true, "configurable": false},
    R8: {"value": 33321, "writable": false, "enumerable": true, "configurable": false},
    RG8: {"value": 33323, "writable": false, "enumerable": true, "configurable": false},
    R16F: {"value": 33325, "writable": false, "enumerable": true, "configurable": false},
    R32F: {"value": 33326, "writable": false, "enumerable": true, "configurable": false},
    RG16F: {"value": 33327, "writable": false, "enumerable": true, "configurable": false},
    RG32F: {"value": 33328, "writable": false, "enumerable": true, "configurable": false},
    R8I: {"value": 33329, "writable": false, "enumerable": true, "configurable": false},
    R8UI: {"value": 33330, "writable": false, "enumerable": true, "configurable": false},
    R16I: {"value": 33331, "writable": false, "enumerable": true, "configurable": false},
    R16UI: {"value": 33332, "writable": false, "enumerable": true, "configurable": false},
    R32I: {"value": 33333, "writable": false, "enumerable": true, "configurable": false},
    R32UI: {"value": 33334, "writable": false, "enumerable": true, "configurable": false},
    RG8I: {"value": 33335, "writable": false, "enumerable": true, "configurable": false},
    RG8UI: {"value": 33336, "writable": false, "enumerable": true, "configurable": false},
    RG16I: {"value": 33337, "writable": false, "enumerable": true, "configurable": false},
    RG16UI: {"value": 33338, "writable": false, "enumerable": true, "configurable": false},
    RG32I: {"value": 33339, "writable": false, "enumerable": true, "configurable": false},
    RG32UI: {"value": 33340, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ARRAY_BINDING: {"value": 34229, "writable": false, "enumerable": true, "configurable": false},
    R8_SNORM: {"value": 36756, "writable": false, "enumerable": true, "configurable": false},
    RG8_SNORM: {"value": 36757, "writable": false, "enumerable": true, "configurable": false},
    RGB8_SNORM: {"value": 36758, "writable": false, "enumerable": true, "configurable": false},
    RGBA8_SNORM: {"value": 36759, "writable": false, "enumerable": true, "configurable": false},
    SIGNED_NORMALIZED: {"value": 36764, "writable": false, "enumerable": true, "configurable": false},
    COPY_READ_BUFFER: {"value": 36662, "writable": false, "enumerable": true, "configurable": false},
    COPY_WRITE_BUFFER: {"value": 36663, "writable": false, "enumerable": true, "configurable": false},
    COPY_READ_BUFFER_BINDING: {"value": 36662, "writable": false, "enumerable": true, "configurable": false},
    COPY_WRITE_BUFFER_BINDING: {"value": 36663, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_BUFFER: {"value": 35345, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_BUFFER_BINDING: {"value": 35368, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_BUFFER_START: {"value": 35369, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_BUFFER_SIZE: {"value": 35370, "writable": false, "enumerable": true, "configurable": false},
    MAX_VERTEX_UNIFORM_BLOCKS: {"value": 35371, "writable": false, "enumerable": true, "configurable": false},
    MAX_FRAGMENT_UNIFORM_BLOCKS: {"value": 35373, "writable": false, "enumerable": true, "configurable": false},
    MAX_COMBINED_UNIFORM_BLOCKS: {"value": 35374, "writable": false, "enumerable": true, "configurable": false},
    MAX_UNIFORM_BUFFER_BINDINGS: {"value": 35375, "writable": false, "enumerable": true, "configurable": false},
    MAX_UNIFORM_BLOCK_SIZE: {"value": 35376, "writable": false, "enumerable": true, "configurable": false},
    MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: {
        "value": 35377,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: {
        "value": 35379,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    UNIFORM_BUFFER_OFFSET_ALIGNMENT: {"value": 35380, "writable": false, "enumerable": true, "configurable": false},
    ACTIVE_UNIFORM_BLOCKS: {"value": 35382, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_TYPE: {"value": 35383, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_SIZE: {"value": 35384, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_BLOCK_INDEX: {"value": 35386, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_OFFSET: {"value": 35387, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_ARRAY_STRIDE: {"value": 35388, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_MATRIX_STRIDE: {"value": 35389, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_IS_ROW_MAJOR: {"value": 35390, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_BLOCK_BINDING: {"value": 35391, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_BLOCK_DATA_SIZE: {"value": 35392, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_BLOCK_ACTIVE_UNIFORMS: {"value": 35394, "writable": false, "enumerable": true, "configurable": false},
    UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: {
        "value": 35395,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: {
        "value": 35396,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: {
        "value": 35398,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    INVALID_INDEX: {"value": 4294967295, "writable": false, "enumerable": true, "configurable": false},
    MAX_VERTEX_OUTPUT_COMPONENTS: {"value": 37154, "writable": false, "enumerable": true, "configurable": false},
    MAX_FRAGMENT_INPUT_COMPONENTS: {"value": 37157, "writable": false, "enumerable": true, "configurable": false},
    MAX_SERVER_WAIT_TIMEOUT: {"value": 37137, "writable": false, "enumerable": true, "configurable": false},
    OBJECT_TYPE: {"value": 37138, "writable": false, "enumerable": true, "configurable": false},
    SYNC_CONDITION: {"value": 37139, "writable": false, "enumerable": true, "configurable": false},
    SYNC_STATUS: {"value": 37140, "writable": false, "enumerable": true, "configurable": false},
    SYNC_FLAGS: {"value": 37141, "writable": false, "enumerable": true, "configurable": false},
    SYNC_FENCE: {"value": 37142, "writable": false, "enumerable": true, "configurable": false},
    SYNC_GPU_COMMANDS_COMPLETE: {"value": 37143, "writable": false, "enumerable": true, "configurable": false},
    UNSIGNALED: {"value": 37144, "writable": false, "enumerable": true, "configurable": false},
    SIGNALED: {"value": 37145, "writable": false, "enumerable": true, "configurable": false},
    ALREADY_SIGNALED: {"value": 37146, "writable": false, "enumerable": true, "configurable": false},
    TIMEOUT_EXPIRED: {"value": 37147, "writable": false, "enumerable": true, "configurable": false},
    CONDITION_SATISFIED: {"value": 37148, "writable": false, "enumerable": true, "configurable": false},
    WAIT_FAILED: {"value": 37149, "writable": false, "enumerable": true, "configurable": false},
    SYNC_FLUSH_COMMANDS_BIT: {"value": 1, "writable": false, "enumerable": true, "configurable": false},
    VERTEX_ATTRIB_ARRAY_DIVISOR: {"value": 35070, "writable": false, "enumerable": true, "configurable": false},
    ANY_SAMPLES_PASSED: {"value": 35887, "writable": false, "enumerable": true, "configurable": false},
    ANY_SAMPLES_PASSED_CONSERVATIVE: {"value": 36202, "writable": false, "enumerable": true, "configurable": false},
    SAMPLER_BINDING: {"value": 35097, "writable": false, "enumerable": true, "configurable": false},
    RGB10_A2UI: {"value": 36975, "writable": false, "enumerable": true, "configurable": false},
    INT_2_10_10_10_REV: {"value": 36255, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK: {"value": 36386, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK_PAUSED: {"value": 36387, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK_ACTIVE: {"value": 36388, "writable": false, "enumerable": true, "configurable": false},
    TRANSFORM_FEEDBACK_BINDING: {"value": 36389, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_IMMUTABLE_FORMAT: {"value": 37167, "writable": false, "enumerable": true, "configurable": false},
    MAX_ELEMENT_INDEX: {"value": 36203, "writable": false, "enumerable": true, "configurable": false},
    TEXTURE_IMMUTABLE_LEVELS: {"value": 33503, "writable": false, "enumerable": true, "configurable": false},
    TIMEOUT_IGNORED: {"value": -1, "writable": false, "enumerable": true, "configurable": false},
    MAX_CLIENT_WAIT_TIMEOUT_WEBGL: {"value": 37447, "writable": false, "enumerable": true, "configurable": false},
    [Symbol.toStringTag]: {value: "WebGL2RenderingContext", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(MutationObserver.prototype, {
    observe: {
        value: v_saf(function observe() {
            v_console_log("  [*] MutationObserver -> observe[func]", [].slice.call(arguments));
        })
    },
    [Symbol.toStringTag]: {value: "MutationObserver", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(OffscreenCanvasRenderingContext2D.prototype, {
    measureText: {
        value: v_saf(function measureText() {
            v_console_log("  [*] OffscreenCanvasRenderingContext2D -> measureText[func]", [].slice.call(arguments));
            this.measureTextVal = arguments[0]
        })
    },
    font: {
        set() {
            v_console_log("  [*] OffscreenCanvasRenderingContext2D -> font[set]", [].slice.call(arguments));
        }
    },
    [Symbol.toStringTag]: {
        value: "OffscreenCanvasRenderingContext2D",
        writable: false,
        enumerable: false,
        configurable: true
    },
})
Object.defineProperties(NavigatorUAData.prototype, {
    getHighEntropyValues: {
        value: v_saf(function getHighEntropyValues() {
            v_console_log("  [*] NavigatorUAData -> getHighEntropyValues[func]", [].slice.call(arguments));
        })
    },
    [Symbol.toStringTag]: {value: "NavigatorUAData", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(FeaturePolicy.prototype, {
    getAllowlistForFeature: {
        value: v_saf(function getAllowlistForFeature() {
            v_console_log("  [*] FeaturePolicy -> getAllowlistForFeature[func]", [].slice.call(arguments));
        })
    },
    features: {
        value: v_saf(function features() {
            v_console_log("  [*] FeaturePolicy -> features[func]", [].slice.call(arguments));
        })
    },
    allowedFeatures: {
        value: v_saf(function allowedFeatures() {
            v_console_log("  [*] FeaturePolicy -> allowedFeatures[func]", [].slice.call(arguments));
        })
    },
    [Symbol.toStringTag]: {value: "FeaturePolicy", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(NodeList.prototype, {
    length: {
        get() {
            v_console_log("  [*] NodeList -> length[get]", 0);
            return 0
        }
    },
    [Symbol.toStringTag]: {value: "NodeList", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(HTMLCollection.prototype, {
    length: {
        get() {
            v_console_log("  [*] HTMLCollection -> length[get]", 0);
            return 0
        }
    },
    [Symbol.toStringTag]: {value: "HTMLCollection", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(DOMTokenList.prototype, {
    length: {
        get() {
            v_console_log("  [*] DOMTokenList -> length[get]", 0);
            return 0
        }
    },
    [Symbol.toStringTag]: {value: "DOMTokenList", writable: false, enumerable: false, configurable: true},
})
// Object.defineProperties(Event.prototype, {
//     target: {get(){ v_console_log("  [*] Event -> target[get]", {});return {} }},
//     NONE: {"value":0,"writable":false,"enumerable":true,"configurable":false},
//     CAPTURING_PHASE: {"value":1,"writable":false,"enumerable":true,"configurable":false},
//     AT_TARGET: {"value":2,"writable":false,"enumerable":true,"configurable":false},
//     BUBBLING_PHASE: {"value":3,"writable":false,"enumerable":true,"configurable":false},
//     [Symbol.toStringTag]: {value:"Event",writable:false,enumerable:false,configurable:true},
// })
Object.defineProperties(RTCIceCandidate.prototype, {
    candidate: {
        get() {
            v_console_log("  [*] RTCIceCandidate -> candidate[get]", "candidate:1047676015 1 udp 2113937151 525b31c9-16e3-40af-98bd-98206a0caa63.local 51227 typ host generation 0 ufrag 4FAM network-cost 999");
            return "candidate:1047676015 1 udp 2113937151 525b31c9-16e3-40af-98bd-98206a0caa63.local 51227 typ host generation 0 ufrag 4FAM network-cost 999"
        }
    },
    [Symbol.toStringTag]: {value: "RTCIceCandidate", writable: false, enumerable: false, configurable: true},
})
let fonts = [];
let mTexts = {
    "50px  sans-serif": 152.84999084472656,
    "50px  serif": 132.39996337890625,
    "50px 'Andale Mono',  sans-serif": 180.029296875,
    "50px 'Andale Mono',  serif": 180.029296875,
    "50px 'Arial Narrow',  sans-serif": 111.6943359375,
    "50px 'Arial Narrow',  serif": 111.6943359375,
    "50px 'Arial Unicode MS',  sans-serif": 136.1572265625,
    "50px 'Arial Unicode MS',  serif": 136.1572265625,
    "50px 'Batang',  sans-serif": 152.84999084472656,
    "50px 'Batang',  serif": 132.39996337890625,
    "50px 'Bell MT',  sans-serif": 152.84999084472656,
    "50px 'Bell MT',  serif": 132.39996337890625,
    "50px 'Brush Script',  sans-serif": 152.84999084472656,
    "50px 'Brush Script',  serif": 132.39996337890625,
    "50px 'Brush Script MT',  sans-serif": 133.740234375,
    "50px 'Brush Script MT',  serif": 133.740234375,
    "50px 'Calibri',  sans-serif": 152.84999084472656,
    "50px 'Calibri',  serif": 132.39996337890625,
    "50px 'Charter',  sans-serif": 139.55078125,
    "50px 'Charter',  serif": 139.55078125,
    "50px 'Courier',  sans-serif": 180.029296875,
    "50px 'Courier',  serif": 180.029296875,
    "50px 'Courier New',  sans-serif": 180.029296875,
    "50px 'Courier New',  serif": 180.029296875,
    "50px 'Curlz MT',  sans-serif": 152.84999084472656,
    "50px 'Curlz MT',  serif": 132.39996337890625,
    "50px 'DejaVu Sans',  sans-serif": 152.84999084472656,
    "50px 'DejaVu Sans',  serif": 132.39996337890625,
    "50px 'DejaVu Sans Mono',  sans-serif": 152.84999084472656,
    "50px 'DejaVu Sans Mono',  serif": 132.39996337890625,
    "50px 'DejaVu Serif Condensed',  sans-serif": 152.84999084472656,
    "50px 'DejaVu Serif Condensed',  serif": 132.39996337890625,
    "50px 'Droid Sans',  sans-serif": 152.84999084472656,
    "50px 'Droid Sans',  serif": 132.39996337890625,
    "50px 'Droid Sans Fallback',  sans-serif": 152.84999084472656,
    "50px 'Droid Sans Fallback',  serif": 132.39996337890625,
    "50px 'Droid Serif',  sans-serif": 152.84999084472656,
    "50px 'Droid Serif',  serif": 132.39996337890625,
    "50px 'Forte',  sans-serif": 152.84999084472656,
    "50px 'Forte',  serif": 132.39996337890625,
    "50px 'Futura',  sans-serif": 139.35546875,
    "50px 'Futura',  serif": 139.35546875,
    "50px 'Geneva',  sans-serif": 162.3046875,
    "50px 'Geneva',  serif": 162.3046875,
    "50px 'Hei',  sans-serif": 153.41796875,
    "50px 'Hei',  serif": 153.41796875,
    "50px 'Leelawadee',  sans-serif": 152.84999084472656,
    "50px 'Leelawadee',  serif": 132.39996337890625,
    "50px 'Levenim MT',  sans-serif": 152.84999084472656,
    "50px 'Levenim MT',  serif": 132.39996337890625,
    "50px 'Liberation Sans',  sans-serif": 152.84999084472656,
    "50px 'Liberation Sans',  serif": 132.39996337890625,
    "50px 'Liberation Sans Narrow',  sans-serif": 152.84999084472656,
    "50px 'Liberation Sans Narrow',  serif": 132.39996337890625,
    "50px 'Marlett',  sans-serif": 152.84999084472656,
    "50px 'Marlett',  serif": 132.39996337890625,
    "50px 'Meiryo UI',  sans-serif": 152.84999084472656,
    "50px 'Meiryo UI',  serif": 132.39996337890625,
    "50px 'Microsoft Uighur',  sans-serif": 152.84999084472656,
    "50px 'Microsoft Uighur',  serif": 132.39996337890625,
    "50px 'Microsoft YaHei UI',  sans-serif": 152.84999084472656,
    "50px 'Microsoft YaHei UI',  serif": 132.39996337890625,
    "50px 'MS Mincho',  sans-serif": 152.84999084472656,
    "50px 'MS Mincho',  serif": 132.39996337890625,
    "50px 'MS UI Gothic',  sans-serif": 152.84999084472656,
    "50px 'MS UI Gothic',  serif": 132.39996337890625,
    "50px 'NanumGothic',  sans-serif": 148.39996337890625,
    "50px 'NanumGothic',  serif": 148.39996337890625,
    "50px 'Nirmala UI',  sans-serif": 152.84999084472656,
    "50px 'Nirmala UI',  serif": 132.39996337890625,
    "50px 'Palatino',  sans-serif": 132.91015625,
    "50px 'Palatino',  serif": 132.91015625,
    "50px 'Papyrus',  sans-serif": 139.84375,
    "50px 'Papyrus',  serif": 139.84375,
    "50px 'PMingLiU',  sans-serif": 152.84999084472656,
    "50px 'PMingLiU',  serif": 132.39996337890625,
    "50px 'PT Serif',  sans-serif": 134.0999755859375,
    "50px 'PT Serif',  serif": 134.0999755859375,
    "50px 'SimHei',  sans-serif": 152.84999084472656,
    "50px 'SimHei',  serif": 132.39996337890625,
    "50px 'STIXVariants',  sans-serif": 140.84999084472656,
    "50px 'STIXVariants',  serif": 124.79997253417969,
    "50px 'STSong',  sans-serif": 132.94996643066406,
    "50px 'STSong',  serif": 132.94996643066406,
    "50px 'Traditional Arabic',  sans-serif": 152.84999084472656,
    "50px 'Traditional Arabic',  serif": 132.39996337890625,
    "50px 'Urdu Typesetting',  sans-serif": 152.84999084472656,
    "50px 'Urdu Typesetting',  serif": 132.39996337890625,
    "50px 'Verdana',  sans-serif": 175.4150390625,
    "50px 'Verdana',  serif": 175.4150390625,
    "50px 'Wingdings',  sans-serif": 311.5966796875,
    "50px 'Wingdings',  serif": 311.5966796875,
    "50px 'Wingdings 3',  sans-serif": 244.5068359375,
    "50px 'Wingdings 3',  serif": 244.5068359375,
    "50px 'Helkevtrica',  sans-serif": 152.84999084472656,
    "50px 'Helkevtrica',  serif": 132.39996337890625
}

Object.defineProperties(TextMetrics.prototype, {
    width: {
        get() {
            // fonts.push(this.fontval[0])
            width = mTexts[this.fontval]
            v_console_log(this.text[0], "  [*] TextMetrics -> width[get]", width);

            return width
            // return 132.39996337890625
        }
    },
    actualBoundingBoxAscent: {
        get() {
            v_console_log("  [*] TextMetrics -> actualBoundingBoxAscent[get]", 556.640625);
            return 556.640625
        }
    },
    actualBoundingBoxDescent: {
        get() {
            v_console_log("  [*] TextMetrics -> actualBoundingBoxDescent[get]", -203.61328125);
            return -203.61328125
        }
    },
    actualBoundingBoxLeft: {
        get() {
            v_console_log("  [*] TextMetrics -> actualBoundingBoxLeft[get]", -22.94921875);
            return -22.94921875
        }
    },
    actualBoundingBoxRight: {
        get() {
            v_console_log("  [*] TextMetrics -> actualBoundingBoxRight[get]", 579.1015625);
            return 579.1015625
        }
    },
    [Symbol.toStringTag]: {value: "TextMetrics", writable: false, enumerable: false, configurable: true},
})
// PluginArray = myProxy(PluginArray, 'PluginArray')
// Object.defineProperties(PluginArray.prototype, {
//     length: {
//         get() {
//             v_console_log("  [*] PluginArray -> length[get]", 5);
//             return 5
//         }
//     },
//     [Symbol.toStringTag]: {value:"PluginArray",writable:false,enumerable:false,configurable:true},
// })

Object.defineProperties(Plugin.prototype, {
    [Symbol.toStringTag]: {value: "Plugin", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(MimeType.prototype, {
    [Symbol.toStringTag]: {value: "MimeType", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(WebKitMutationObserver.prototype, {
    observe: {
        value: v_saf(function observe() {
            v_console_log("  [*] WebKitMutationObserver -> observe[func]", [].slice.call(arguments));
        })
    },
    [Symbol.toStringTag]: {value: "WebKitMutationObserver", writable: false, enumerable: false, configurable: true},
})
// Object.defineProperties(Crypto.prototype, {
//     [Symbol.toStringTag]: {value:"Crypto",writable:false,enumerable:false,configurable:true},
// })
Object.defineProperties(Image.prototype, {
    src: {
        set() {
            v_console_log("  [*] Image -> src[set]", [].slice.call(arguments));
        }
    },
    [Symbol.toStringTag]: {value: "Image", writable: false, enumerable: false, configurable: true},
})
publicDescription = undefined;

class RTCPeerConnection {
    constructor(args) {
        console.log('RTCPeerConnection.new', args)

    }
}
Object.defineProperties(RTCPeerConnection.prototype, {
    localDescription: {
        value: {
            get: v_saf(function get() {
                print('get localDescription')
                return this._publicDescription
            }),
            set: function (arg) {
                this._publicDescription = arg
            }
        }
    },
    onicecandidate: {
        set() {
            print("  [*] RTCPeerConnection -> onicecandidate[set]", [].slice.call(arguments));
            this._onicecandidate = arguments[0]
        }
    },

    createDataChannel: {
        value: v_saf(function createDataChannel(label, option) {
            print("  [*] RTCPeerConnection -> createDataChannel[func]", [].slice.call(arguments));
            let res = new RTCDataChannel(label);
            return proxy(res, 'dataChannel')
        })
    },
    createOffer: {
        value: v_saf(function createOffer() {
            print("  [*] RTCPeerConnection -> createOffer[func]", [].slice.call(arguments));
            let p = new Promise(function (resolve, reject) {
                // 2. 执行异步操作任务
                print('RTCPeerConnection createOffer', resolve, reject);
                let res = new RTCSessionDescription()
                // resolve(proxy(res, 'newRTCSessionDescription'))
                resolve({
                    then: function (arg1, arg2) {
                        arg1(proxy(res, 'newRTCSessionDescription'))
                        arg2(proxy(res, 'newRTCSessionDescription'))
                    }
                })
            })
            return p;
            // return {
            //     then: function (func, func2) {
            //         v_console_log("  [*] RTCPeerConnection -> createOffer[func] then", [].slice.call(arguments));
            //         func2(v_new(RTCSessionDescription));
            //         func(v_new(RTCSessionDescription));
            //         return func(v_new(RTCSessionDescription));
            //     }, catch: function () {
            //     }
            // }
        })
    },
    setLocalDescription: {
        value: v_saf(function setLocalDescription() {
            var _this = this;
            print("  [*] RTCPeerConnection -> setLocalDescription[func]", [].slice.call(arguments));
            _this._onicecandidate(new RTCPeerConnectionIceEvent())
            this.localDescription = arguments[0]
            _this._onicecandidate(this.localDescription)
            let p = new Promise(function (resolve, reject) {
                // 2. 执行异步操作任务
                // let res = this.setLocalDescription(v_new(RTCSessionDescription))
                // console.log('RTCPeerConnection create',res);
                _this._onicecandidate(new RTCPeerConnectionIceEvent())

                print("  [*] RTCPeerConnection -> setLocalDescription[func] then", [].slice.call(arguments));
                // window.debug = true
                resolve(new RTCSessionDescription())
                // return res
            })
            return p;
        }),
        enumerable: true,
        configurable: true
    },
    [Symbol.toStringTag]: {value: "RTCPeerConnection", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(Node.prototype, {
    childs: {value: []},
    appendChild: {
        value: v_saf(function appendChild() {
            v_console_log("  [*] Node -> appendChild[func]", [].slice.call(arguments));
            this.childs.push(arguments[0])
            return arguments[0];
        })
    },
    removeChild: {
        value: v_saf(function removeChild() {
            v_console_log("  [*] Node -> removeChild[func]", [].slice.call(arguments));
        })
    },
    textContent: {
        set() {
            v_console_log("  [*] Node -> textContent[set]", [].slice.call(arguments));
            this.text = arguments[0]
        }
    },
    ELEMENT_NODE: {"value": 1, "writable": false, "enumerable": true, "configurable": false},
    ATTRIBUTE_NODE: {"value": 2, "writable": false, "enumerable": true, "configurable": false},
    TEXT_NODE: {"value": 3, "writable": false, "enumerable": true, "configurable": false},
    CDATA_SECTION_NODE: {"value": 4, "writable": false, "enumerable": true, "configurable": false},
    ENTITY_REFERENCE_NODE: {"value": 5, "writable": false, "enumerable": true, "configurable": false},
    ENTITY_NODE: {"value": 6, "writable": false, "enumerable": true, "configurable": false},
    PROCESSING_INSTRUCTION_NODE: {"value": 7, "writable": false, "enumerable": true, "configurable": false},
    COMMENT_NODE: {"value": 8, "writable": false, "enumerable": true, "configurable": false},
    DOCUMENT_NODE: {"value": 9, "writable": false, "enumerable": true, "configurable": false},
    DOCUMENT_TYPE_NODE: {"value": 10, "writable": false, "enumerable": true, "configurable": false},
    DOCUMENT_FRAGMENT_NODE: {"value": 11, "writable": false, "enumerable": true, "configurable": false},
    NOTATION_NODE: {"value": 12, "writable": false, "enumerable": true, "configurable": false},
    DOCUMENT_POSITION_DISCONNECTED: {"value": 1, "writable": false, "enumerable": true, "configurable": false},
    DOCUMENT_POSITION_PRECEDING: {"value": 2, "writable": false, "enumerable": true, "configurable": false},
    DOCUMENT_POSITION_FOLLOWING: {"value": 4, "writable": false, "enumerable": true, "configurable": false},
    DOCUMENT_POSITION_CONTAINS: {"value": 8, "writable": false, "enumerable": true, "configurable": false},
    DOCUMENT_POSITION_CONTAINED_BY: {"value": 16, "writable": false, "enumerable": true, "configurable": false},
    DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: {
        "value": 32,
        "writable": false,
        "enumerable": true,
        "configurable": false
    },
    [Symbol.toStringTag]: {value: "Node", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(OffscreenCanvas.prototype, {
    getContext: {
        value: v_saf(function getContext() {
            v_console_log("  [*] OffscreenCanvas -> getContext[func]", [].slice.call(arguments));
        })
    },
    [Symbol.toStringTag]: {value: "OffscreenCanvas", writable: false, enumerable: false, configurable: true},
})
Object.defineProperties(WebSocket.prototype, {
    onmessage: {
        set() {
            v_console_log("  [*] WebSocket -> onmessage[set]", [].slice.call(arguments));
        }
    },
    CONNECTING: {"value": 0, "writable": false, "enumerable": true, "configurable": false},
    OPEN: {"value": 1, "writable": false, "enumerable": true, "configurable": false},
    CLOSING: {"value": 2, "writable": false, "enumerable": true, "configurable": false},
    CLOSED: {"value": 3, "writable": false, "enumerable": true, "configurable": false},
    [Symbol.toStringTag]: {value: "WebSocket", writable: false, enumerable: false, configurable: true},
})
let t1 = parseInt(_random() * 2430043322 / 2 + 1430043322);
let t2 = parseInt(_random() * 2430043322 / 2 + 1430043322);
let t3 = parseInt(_random() * 5000 + 60199);
let ip = `192.168.${parseInt(_random() * 150 + 1)}.${parseInt(_random() * 150 + 1)}`
function guid() {
    return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
        var r = _random() * 16 | 0,
            v = c == 'x' ? r : (r & 0x3 | 0x8);
        return v.toString(16);
    });
}
var candidateGetTimes = 0;
Object.defineProperties(RTCPeerConnectionIceEvent.prototype, {
    candidate: {
        get: function () {

            let res = `candidate:${t1} 1 udp ${t2} ${guid()}.local ${t3} typ host generation 0 ufrag MiWK network-cost 999`
            res = `candidate:${t1} 1 udp ${t2} ${ip} ${t3} typ host generation 0 ufrag 5M7j network-id 1`
            // res = `candidate:${t1} 1 tcp ${t2} ${ip} 9 typ host tcptype active generation 0 ufrag ZZHV network-id 1`
            // res = 'candidate:2594513701 1 udp 2122260223 192.168.50.235 54336 typ host generation 0 ufrag 5M7j network-id 1 '
            // res = 'candidate:1678768049 1 tcp 1518280447 192.168.50.235 9 typ host tcptype active generation 0 ufrag 5M7j network-id 1 '

            console.log('RTCPeerConnectionIceEvent.candidate.get', res)

            let rrr = proxy(new RTCIceCandidate(
                ip, res, "rtp", t1, t2, t3, 'tcp', null, null, 0, "0", 'active', 'host', '5M7j'
            ), 'candidate[new]');
            candidateGetTimes++
            if (candidateGetTimes > 3) {
                rrr.candidate = null
                // return null
            }
            return rrr;


        },
        enumerable: true, configurable: true
    },
    type: {
        value: 'icecandidate'
    },
    isTrusted: {
        value: true,
    },
    [Symbol.toStringTag]: {value: "RTCPeerConnectionIceEvent", writable: false, enumerable: false, configurable: true},

})
Object.defineProperties(MessageEvent.prototype, {
    data: {
        get() {
            v_console_log("  [*] MessageEvent -> data[get]", {});
            return {}
        }
    },
    [Symbol.toStringTag]: {value: "MessageEvent", writable: false, enumerable: false, configurable: true},
})

Object.defineProperties(UIEvent.prototype, {
    which: {
        get() {
            v_console_log("  [*] UIEvent -> which[get]", 91);
            return 91
        }
    },
    [Symbol.toStringTag]: {value: "UIEvent", writable: false, enumerable: false, configurable: true},
})


window.RTCPeerConnectionIceEvent = RTCPeerConnectionIceEvent;
window.webkitResolveLocalFileSystemURL = webkitResolveLocalFileSystemURL;
window.webkitRequestAnimationFrame = webkitRequestAnimationFrame;
Object.defineProperties(HTMLIFrameElement.prototype, {
    id: {enumerable: true, configurable: true, writable: true},
    contentWindow: {value: window, enumerable: true, configurable: true, writable: true},
})
window.HTMLScriptElement = HTMLScriptElement
window.HTMLIFrameElement = HTMLIFrameElement
window.HTMLStyleElement = HTMLStyleElement
window.HTMLVideoElement = HTMLVideoElement
window.File = File;
SharedWorker = v_saf(function SharedWorker() {
})
window.SharedWorker = SharedWorker;
postMessage = v_saf(function postMessage() {
})
window.postMessage = postMessage;
PushManager = v_saf(function PushManager() {
})
window.PushManager = PushManager;
times = 0;
window.Event = Event;
window.devicePixelRatio = 1;

function v_getele(name, func) {
    if (name == "head" && func == "querySelector") {
        return v_new(HTMLHeadElement)
    }
    if (name == "head > title" && func == "querySelector") {
        return v_new(HTMLTitleElement)
    }
    if (name == "body" && func == "querySelector") {
        return v_new(HTMLBodyElement)
    }
    if (name == "base" && func == "querySelector") {
        return v_new(HTMLBaseElement)
    }
    if (name == "jb-app" && func == "querySelector") {
        return v_new(HTMLElement)
    }
    if (name == "svg" && func == "querySelector") {
        return v_new(SVGSVGElement)
    }
    if (name == "jtp-xsell-utils" && func == "getElementById") {
        return v_new(HTMLScriptElement)
    }
    if (name == "first-focus-fares-heading" && func == "getElementById") {
        return v_new(HTMLHeadingElement)
    }
    if (name == "jtp-xsell-default" && func == "getElementById") {
        return v_new(HTMLScriptElement)
    }
    if (name == "#jtp-packages" && func == "querySelector") {
        return v_new(HTMLDivElement)
    }
    if (name == "#vacations-cross-sell" && func == "querySelector") {
        return v_new(HTMLDivElement)
    }
    if (name == "html" && func == "querySelector") {
        return v_new(HTMLHtmlElement)
    }
    return null
}

function v_geteles(name, func) {
    if (name == "html" && func == "getElementsByTagName") {
        return [v_new(HTMLHtmlElement)]
    }
    if (name == "shouldRememberUser" && func == "getElementsByName") {
        return v_new(NodeList)
    }
    if (name == "script" && func == "getElementsByTagName") {
        return [v_new(HTMLScriptElement)]
    }
    if (name == "base" && func == "getElementsByTagName") {
        return [v_new(HTMLBaseElement)]
    }
    if (name == "script" && func == "getElementsByTagName") {
        return [v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement)]
    }
    if (name == "*" && func == "querySelectorAll") {
        return [v_new(HTMLHtmlElement), v_new(HTMLHeadElement), v_new(HTMLBaseElement), v_new(HTMLMetaElement), v_new(HTMLTitleElement), v_new(HTMLMetaElement), v_new(HTMLMetaElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLLinkElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLLinkElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLScriptElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLMetaElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLBodyElement), v_new(HTMLElement), v_new(HTMLElement), v_new(HTMLAnchorElement), v_new(HTMLElement), v_new(HTMLElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(SVGSVGElement), v_new(SVGGElement), v_new(SVGPathElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLAnchorElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(HTMLButtonElement), v_new(HTMLElement), v_new(SVGSVGElement), v_new(SVGTitleElement), v_new(SVGGElement), v_new(SVGGElement), v_new(SVGGElement), v_new(SVGGElement), v_new(SVGGElement), v_new(SVGPathElement), v_new(SVGPathElement), v_new(SVGPathElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(HTMLElement), v_new(HTMLElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(SVGSVGElement), v_new(SVGGElement), v_new(SVGPathElement), v_new(HTMLElement), v_new(SVGSVGElement), v_new(SVGGElement), v_new(SVGPathElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(SVGSVGElement), v_new(SVGGElement), v_new(SVGPathElement), v_new(SVGRectElement), v_new(SVGCircleElement), v_new(SVGPathElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(HTMLElement), v_new(HTMLElement), v_new(SVGSVGElement), v_new(SVGStyleElement), v_new(SVGCircleElement), v_new(SVGCircleElement), v_new(SVGCircleElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLSpanElement), v_new(HTMLDivElement), v_new(HTMLSpanElement), v_new(HTMLElement), v_new(HTMLAnchorElement), v_new(HTMLAnchorElement), v_new(HTMLDivElement), v_new(HTMLSpanElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLSpanElement), v_new(HTMLDivElement), v_new(HTMLSpanElement), v_new(HTMLElement), v_new(HTMLAnchorElement), v_new(HTMLAnchorElement), v_new(HTMLDivElement), v_new(HTMLSpanElement), v_new(HTMLElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLUListElement), v_new(HTMLLIElement), v_new(HTMLAnchorElement), v_new(HTMLLIElement), v_new(HTMLAnchorElement), v_new(HTMLLIElement), v_new(HTMLAnchorElement), v_new(HTMLLIElement), v_new(HTMLAnchorElement), v_new(HTMLElement), v_new(SVGSVGElement), v_new(SVGGElement), v_new(SVGPolygonElement), v_new(HTMLDivElement), v_new(HTMLDivElement), v_new(HTMLUListElement), v_new(HTMLLIElement), v_new(HTMLAnchorElement), v_new(HTMLLIElement), v_new(HTMLAnchorElement), v_new(HTMLLIElement), v_new(HTMLElement), v_new(SVGSVGElement), v_new(SVGPathElement), v_new(HTMLSpanElement), v_new(HTMLDivElement), v_new(HTMLElement), v_new(HTMLDivElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLScriptElement), v_new(HTMLDivElement), v_new(HTMLScriptElement)]
    }
    if (name == "style[ng-transition=\"resp-booking-airways\"]" && func == "querySelectorAll") {
        return [v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement), v_new(HTMLStyleElement)]
    }
    if (name == "cdk-live-announcer-element" && func == "getElementsByClassName") {
        return []
    }
    if (name == "#jtp-packages" && func == "querySelectorAll") {
        return [v_new(HTMLDivElement)]
    }
    if (name == "body" && func == "getElementsByTagName") {
        return [v_new(HTMLBodyElement)]
    }
    if (name == 'script[src^=chrome-extension][src$=prompt\\.js], script[src^=moz-extension][src$=prompt\\.js]' && func == 'querySelectorAll') {
        return v_new(NodeList)
    }
    return null
}

let _console = console.log


let events = {}
// window.Event = {
//     prototype:{
//         createEvent: function (type) {
//             return {
//                 "isTrusted": true,
//                 type: '',
//                 detail: '',
//                 initCustomEvent: function (type, canBubble, cancelable, detail) {
//                     this.type = type;
//                     this.detail = detail;
//                     return {type, canBubble, cancelable, detail}
//                 }
//             }
//         },
//     }
// }
Object.defineProperties(Event.prototype, {
    target: {
        get() {
            v_console_log("  [*] Event -> target[get]", {});
            return {}
        }
    },
    timeStamp: {
        get() {
            v_console_log("  [*] Event -> timeStamp[get]", 6122.799999713898);
            return 6122.799999713898
        }
    },
    // preventDefault: {value: v_saf(function preventDefault(){v_console_log("  [*] Event -> preventDefault[func]", [].slice.call(arguments));})},
    type: {
        get() {
            v_console_log("  [*] Event -> type[get]", "blur");
            return "blur"
        }
    },
    defaultPrevented: {
        get() {
            v_console_log("  [*] Event -> defaultPrevented[get]", true);
            return true
        },
    },
    composedPath: {
        value: v_saf(function composedPath() {
            v_console_log("  [*] Event -> composedPath[func]", [].slice.call(arguments));
        }),
        writable: true, enumerable: true, configurable: true
    },
    stopPropagation: {
        value: v_saf(function stopPropagation() {
            v_console_log("  [*] Event -> stopPropagation[func]", [].slice.call(arguments));
        }),
        writable: true, enumerable: true, configurable: true
    },
    preventDefault: {
        value: v_saf(function preventDefault() {
            v_console_log("  [*] Event -> preventDefault[func]", [].slice.call(arguments));
        }),
        writable: true, enumerable: true, configurable: true
    },
    cancelBubble: {
        // value: function cancelBubble() {
        //     v_console_log("  [*] Event -> cancelBubble[func]", [].slice.call(arguments));
        // },
        //     // get(){},
        //     // set(){},
    },
    stopImmediatePropagation: {
        value: v_saf(function preventDefault() {
            v_console_log("  [*] Event -> stopImmediatePropagation[func]", [].slice.call(arguments));
        }),
        writable: true, enumerable: true, configurable: true
    },
    NONE: {"value": 0, "writable": false, "enumerable": true, "configurable": false},
    CAPTURING_PHASE: {"value": 1, "writable": false, "enumerable": true, "configurable": false},
    AT_TARGET: {"value": 2, "writable": false, "enumerable": true, "configurable": false},
    BUBBLING_PHASE: {"value": 3, "writable": false, "enumerable": true, "configurable": false},
    [Symbol.toStringTag]: {value: "Event", writable: false, enumerable: false, configurable: true},
})


createPrototype = function (name, obj) {
    Object.assign(obj, {
        constructor: function () {
        },
        // name: name,
        prototype: {
            toString: function () {
                return `'function ${name}() { [native code] }'`
                // throw new TypeError('Illegal invocation')
            }
        },
        toString: function () {
            return `'function ${name}() { [native code] }'`
        }
    })
    // Object.defineProperty(obj.prototype, {
    //     [Symbol.toStringTag]: {value:name,writable:false,enumerable:false,configurable:true},
    //     prototype: {
    //         toString: function (){
    //             return `'function ${name}() { [native code] }'`
    //             // throw new TypeError('Illegal invocation')
    //         }
    //     },
    // })
    return obj

}


// for (let i = 0; i < O[47].length; i++) {
//     var t = O[47][i];
//
//
// }


PerformanceEntry = {
    name: 'PerformanceEntry',
    prototype: {}
}
Bluetooth = function Bluetooth() {
}
BluetoothDevice = function BluetoothDevice() {
}

AWSCInner = {
    register: function () {
        // _console2('AWSCInner register', arguments)
    }
}
Element = function Element() {
    prototype: {
        webkitMatchesSelector: function webkitMatchesSelector() {

        }
    }
}


chrome = {
    loadTimes: function () {
    },
    csi: function () {
    },
}

MimeTypeArray = v_saf(function MimeTypeArray() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
    this[0] = v_new(MimeType);
    this[0].description = "Portable Document Format";
    this[0].enabledPlugin = {"0": {}};
    this[0].suffixes = "pdf";
    this[0].type = "application/pdf";
    this[1] = v_new(Plugin);
    this[1].description = "Portable Document Format";
    this[1].enabledPlugin = {"0": {}};
    this[1].suffixes = "pdf";
    this[1].type = "text/pdf";

})
Object.defineProperties(MimeTypeArray.prototype, {
    length: {
        get() {
            v_console_log("  [*] MimeTypeArray -> length[get]", 3);
            return 3
        }
    },
    [Symbol.toStringTag]: {value: "MimeTypeArray", writable: false, enumerable: false, configurable: true},
})

navigator = v_new(Navigator)


// navigator = dtavm.proxy(navigator,'navigator')
location = v_new(Location)
location.href = 'https://www.jetblue.com/booking/flights?from=LAS&to=BOS&depart=2023-07-10&isMultiCity=false&noOfRoute=1&lang=en&adults=1&children=0&infants=0&sharedMarket=false&roundTripFaresFlag=false&usePoints=false'
// v_hook_href(location, "location", 'https://www.jetblue.com/booking/flights?from=LAS&to=BOS&depart=2023-07-10&isMultiCity=false&noOfRoute=1&lang=en&adults=1&children=0&infants=0&sharedMarket=false&roundTripFaresFlag=false&usePoints=false')
location.__proto__ = Location.prototype

DOMStringList = v_saf(function DOMStringList(){

            })
Object.defineProperties(location, {
    href: {
        value: 'https://www.jetblue.com/booking/flights?from=LAS&to=BOS&depart=2023-07-10&isMultiCity=false&noOfRoute=1&lang=en&adults=1&children=0&infants=0&sharedMarket=false&roundTripFaresFlag=false&usePoints=false'
    },
     ancestorOrigins: {
        get: v_saf(function ancestorOrigins(){
            return new DOMStringList()
        }),
      enumerable:true,
         configurable:false

    },
  assign: {
        value: v_saf(function assign(){

        }),
      enumerable:true,

    },
  // fragmentDirective: 'c',
  // hash: {set: function(arg){this._hash = arg}, get:function(){return this._hash}, enumerable:true},
  // host: {set: function(arg){this._host = arg}, get:function(){return this._host}, enumerable:true},
  // hostname: {set: function(arg){this._hostname = arg}, get:function(){return this._hostname}, enumerable:true},
  // origin: {set: function(arg){this._origin = arg}, get:function(){return this._origin}, enumerable:true},
  // pathname: {set: function(arg){this._pathname = arg}, get:function(){return this._pathname}, enumerable:true},
  // port: {set: function(arg){this._port = arg}, get:function(){return this._port}, enumerable:true},
  // protocol: {set: function(arg){this._protocol = arg}, get:function(){return this._protocol}, enumerable:true},
  // host: 'e',
  // hostname: 'f',
  // href: 'g',
  // origin: 'h',
  // pathname: 'i',
  // port: 'j',
  // protocol: 'k',
  reload: {
        value: v_saf(function reload(){

        }),
      enumerable:true,

    },
  replace: {
        value: v_saf(function replace(){

        }),
      enumerable:true,
    },
  toString: {
        value: v_saf(function toString(){
            return ''
        }),
      enumerable:true,

    },

})
window.location = new Proxy(location, {
    get(target, p, receiver) {
        console.log('locaiton get', p)
        return Reflect.get(target, p, receiver)
    },
    has(target, p) {
        let res = Reflect.has(target, p);
        console.log('locaiton has', p, res)
        return res;
    },
    getOwnPropertyDescriptor(target, p) {
        let res = Reflect.getOwnPropertyDescriptor(target, p);

        console.log('locaiton getOwnPropertyDescriptor', p, res)
        return res;
    }
})

origin = location.origin
self = window;
globalThis = window

let performanceNow = Math.random() * 200
window.performance = {
    now: function () {
        return performanceNow + Math.random() * 3000
    },
    "timeOrigin": 1684049607547.1,
    "timing": {
        "connectStart": 1684048540500,
        "navigationStart": 1684048540499,
        "secureConnectionStart": 0,
        "fetchStart": 1684048540500,
        "domContentLoadedEventStart": 0,
        "responseStart": 1684048540502,
        "domInteractive": 0,
        "domainLookupEnd": 1684048540500,
        "responseEnd": 1684048540502,
        "redirectStart": 0,
        "requestStart": 1684048540501,
        "unloadEventEnd": 1684048540503,
        "unloadEventStart": 1684048540503,
        "domLoading": 1684048540507,
        "domComplete": 0,
        "domainLookupStart": 1684048540500,
        "loadEventStart": 0,
        "domContentLoadedEventEnd": 0,
        "loadEventEnd": 0,
        "redirectEnd": 0,
        "connectEnd": 1684048540500
    },
    "navigation": {
        "type": 1,
        "redirectCount": 0
    },
    getEntriesByName: function getEntriesByName() {
    },
    memory: {
        jsHeapSizeLimit: 4294705152,
        totalJSHeapSize: 11528626,
        usedJSHeapSize: 9311362,
    }
}
// window.Proxy = window
window.BigInt = BigInt
window.OffscreenCanvas = function OffscreenCanvas() {
}
window.hasOwnProperty = function hasOwnProperty() {
    _console2('window hasOwnProperty', arguments)
    return window[arguments['0']]
}
DOMTokenList = function DOMTokenList() {

}
window.addEventListener = function (type, callback) {
    _console2('addEventListener111', type, callback)
    events[type] = callback;
    v_events[type] = callback;
    if (type === 'addEventListener11') {
        callback(v_new(Event))
    }
    return true;
}

window.removeEventListener = function removeEventListener(type, callback) {
    delete events[type]
    // callback()
    return true
}
// Object.getOwnPropertyDescriptor = function getOwnPropertyDescriptor() {
//
// }

screens = {
    availHeight: ENV.screenparams.availheight,
    availLeft: 0,
    availTop: 25,
    availWidth: ENV.screenparams.availwidth,
    colorDepth: ENV.screenparams.colordepth,
    height: ENV.screenparams.height,
    orientation: {angle: 0, type: 'landscape-primary', onchange: null},
    pixelDepth: ENV.screenparams.pixeldepth,
    width: ENV.screenparams.width
}
window.screen = v_new(Screen)

// window.screen = aaProxy(window.screen, 'screen')
window.screenX = 0
window.screenY = 25
window.isSecureContext = true
window.innerWidth = ENV.windowparams.innerwidth;
window.outerWidth =  ENV.windowparams.outerwidth;
window.innerHeight =  ENV.windowparams.innerheight;
// todo
window.innerHeight = 859
window.innerWidth = 2560
window.outerHeight = 970
window.outerWidth = 2560

window.outerHeight =  ENV.windowparams.outerheight;
window.screenLeft = 0;
window.screenTop =  ENV.windowparams.screeny || 120;
top = window
window.top = top;

htmlEle = {
    appendChild: function () {
        // _console2('appendChild', arguments);
        return {}
    },

    removeChild: function () {
        // _console2('removeChild', arguments);

    },
    clientHeight: 0,
    clientWidth: 1904
}
let allNodes = [];
var childNodes = []

function _createElement(name) {
    var htmlmap = {
        "HTMLElement": ["abbr", "address", "article", "aside", "b", "bdi", "bdo", "cite", "code", "dd", "dfn", "dt", "em", "figcaption", "figure", "footer", "header", "hgroup", "i", "kbd", "main", "mark", "nav", "noscript", "rp", "rt", "ruby", "s", "samp", "section", "small", "strong", "sub", "summary", "sup", "u", "var", "wbr"],
        "HTMLCanvasElement": ["canvas"],
        "HTMLAnchorElement": ["a"],
        "HTMLImageElement": ["img"],
        "HTMLIFrameElement": ["iframe"],
        "HTMLMediaElement": [],
        "HTMLHeadElement": ["head"],
        "HTMLBodyElement": ["body"],
        "HTMLUnknownElement": [],
        'HTMLScriptElement': ['script'],
        'HTMLVideoElement': ['video'],
        'HTMLStyleElement': ['style']
    }
    var ret, htmlmapkeys = Object.keys(htmlmap)
    name = name.toLocaleLowerCase()
    for (var i = 0; i < htmlmapkeys.length; i++) {
        if (htmlmap[htmlmapkeys[i]].indexOf(name) != -1) {
            ret = v_new(window[htmlmapkeys[i]])
            // if (htmlmapkeys[i] == "canvas"){
            // ret = dtavm.proxy(ret, htmlmapkeys[i])
            // }
            break
        }
    }
    if (!ret) {
        ret = v_new(HTMLUnknownElement);
        throw TypeError("为定义的类型")
    }
    if (typeof CSSStyleDeclaration != 'undefined') {
        ret.v_style = v_new(CSSStyleDeclaration)
    }
    ret.v_tagName = name.toUpperCase()
    allNodes.push(ret)
    print('_createElement name ', name, ret)

    return aaProxy(ret, 'name')
}

document = {
    all: HTMLAllCollection,
    characterSet: 'UTF-8',
    charset: 'UTF-8',
    compatMode: 'CSS1Compat',
    images: [],
    // createElementNS: v_saf(function createElementNS(){
    //     return _createElement.apply(this, arguments)
    // }),
    constructor: function () {

    },
    [Symbol.toPrimitive](hint) {
        if (hint === 'number') {
            return 42;
        }
        return this;
    },
    toString: function () {
        return '[object HTMLDocument]'
    },

    location: location,
    getElementsByTagName: function () {
        _console2(arguments);
        return v_geteles(...arguments, 'getElementsByTagName')
    },
    referrer: '',
    // createElement: v_saf(function createElement(name) {
    //     return _createElement(name)
    // }),
    getElementById: function getElementById(valId) {
        // if (valId === 'multiFormSubmit') return null;
        let res = v_getele(valId, 'getElementById')
        console.log('use getElementById', valId, res)
        return res
        // return null
        // return {
        //     name: valId + " ele"
        // }
    },
    currentScript: {nonce: ''},
    hasFocus: function hasFocus() {
        return false
    },
    documentElement: htmlEle,
    readyState: 'loading',
    visibilityState: 'visible',

    // addEventListener: function addEventListener(type, callback) {
    //     _console2('document2 addEventListener', arguments)
    //     events[type] = callback
    //     if (type == 'DOMContentLoaded'){
    //         _console2('callDOMContentLoaded' , callback )
    //         callback()
    //     }
    //     // debugger;
    //
    // },
    createEvent: function (type) {
        _console2('createEvent111', type)
        return {
            "isTrusted": true,
            type: '',
            detail: '',
            initCustomEvent: function (type, canBubble, cancelable, detail) {
                _console2('initCustomEvent', type, detail)
                this.type = type;
                this.detail = detail;
                // return {type, canBubble, cancelable, detail}
            }
        }
    },
    querySelector: function querySelector() {
        _console2('document querySelector', arguments)
        // if (arguments['0'] === '#baxia-dialog-content') debugger;
        // return null;
        return {
            name: 'querySelector',
            bind: function () {
                _console2('document querySelector bind', arguments)

            }
        }
    },
    hidden: false

}

_stri = JSON.stringify;
// JSON.stringify = v_saf(function stringify() {
//     console.log('stringify', arguments[0][0])
//     if (arguments[0].toString() === '[object Arguments]' && arguments[0][0].isTrusted == true) {
//         return '{"0":{"isTrusted":false}}'
//     }
//     return _stri.apply(this, arguments)
// })
// document = v_new(Document)
CustomEvent = v_saf(function CustomEvent() {
});
_inherits(CustomEvent, EventTarget)
Object.defineProperties(CustomEvent.prototype, {
    "isTrusted": {
        get() {
            return true
        }
    },
    type: {value: ''},
    detail: {
        get() {
            return this.d
        },

    },
    initCustomEvent: function (type, canBubble, cancelable, detail) {
        this.type = type
        this.detail = detail
        return {type, canBubble, cancelable, detail}
    }
})
Object.defineProperties(Document.prototype, {

    createEvent: {
        value: v_saf(function createEvent() {
            v_console_log("  [*] Document -> createEvent[func]", [].slice.call(arguments));
            if (arguments[0] == 'CustomEvent') {
                return CustomEvent()
            }
        })
    },
    createElement: {
        value:new Proxy(function (n) {
            return _createElement(n)
        }, {
            has(target, p) {
                if (p ==='prototype'){
                    return false;

                }
                else{
                    return Reflect.has(target, p)
                }
            },
        }),
        configurable: true,
        enumerable: true,
        writable: true
    },
    createElementNS: {
        value: v_saf(function createElementNS(name) {
            return _createElement(name, 'createElementNS')
        }),
        configurable: true,
        enumerable: true,
        writable: true
    },
    featurePolicy: {
        get() {
            v_console_log("  [*] Document -> featurePolicy[get]", {});
            return {}
        }
    },
    visibilityState: {
        get() {
            v_console_log("  [*] Document -> visibilityState[get]", "visible");
            return "visible"
        }
    },
    onreadystatechange: {"enumerable": true, "configurable": true},
    onmouseenter: {"enumerable": true, "configurable": true},
    onmouseleave: {"enumerable": true, "configurable": true},
    [Symbol.toStringTag]: {value: "Document", writable: false, enumerable: false, configurable: true},
})
Object.defineProperty(document, Symbol.toStringTag, {
    value: 'HTMLDocument'
})
Object.defineProperty(document, Symbol.iterator, {
    value: function f() {

    }
})
// Object.defineProperty(document,constructor, {
//     value: 'HTMLDocument'
// })
document.addEventListener = function (type, callback) {
    _console2('addEventListener11', type, callback)
    events[type] = callback;
    v_events[type] = callback;

    // if (type === 'DOMContentLoaded' || type === 'wheel'|| type === 'visibilitychange'){
    //     callback({
    //         "isTrusted": true,
    //         type:type,
    //         target: {
    //             visibilityState: 'visible'
    //         }
    //     })
    // }
    return true
}
window.addEventListener = function (type, callback) {
    _console2('addEventListener12', type, callback)
    events[type] = callback;
    if (type === 'DOMContentLoaded' || type == 'visibilitychange') {
        callback({
            "isTrusted": true,
            type: type
        })
    }
    return true
}
addEventListener = window.addEventListener
// window.document = dtavm.proxy(document, 'document');
// Object.assign(window.document, document)
// Date = dtavm.proxy(Date)
window.toString = function () {
    return '[object Window]'
}


window.HTMLAnchorElement = HTMLAnchorElement
//     [Symbol.toStringTag]: function (){
//         return 'HTMLAnchorElement'
//     },
//     [Symbol.iterator]: function (){
//     }
// })
window.HTMLFormElement = v_saf(function HTMLFormElement() {
})
_inherits(window.HTMLFormElement, HTMLElement)
Object.defineProperties(window.HTMLFormElement.prototype, {
    [Symbol.toStringTag]: {
        value: 'HTMLFormElement',
        [Symbol.iterator]: {
            value: function () {
            }
        }
    },
    submit: {
        value: v_saf(function submit() {
            _console2("HTMLFormElement.prototype.submit", arguments)
        }),
        configurable: true, writable: false
    }
})
window.CustomEvent = CustomEvent
Object.defineProperties(window.CustomEvent, {
    detail: {},
    constructor: {
        value: function () {
        },
        writable: true, enumerable: false, configurable: true
    },
    [Symbol.iterator]: {
        value: function () {
        }
    },
    [Symbol.toStringTag]: {
        value: function () {

        }
    }
})

// Object.defineProperties(window.HTMLAnchorElement.prototype, {
//     href: {
//         get: function (){},
//         set: function (){},
//          enumerable: true, configurable: true
//     }
// })
// Object.defineProperties(window.HTMLFormElement.prototype, {
//     submit: {
//         value: function (){},
//         "writable": true,
//         "enumerable": true,
//         "configurable": true
//     },
//     constructor: {
//         value: function (){},
//         "writable": true,
//         "enumerable": false,
//         "configurable": true
//     }
// })
// navigator = dtavm.proxy(navigator, 'navigator');


window.Math = Math

let storage = {
    items: {
        // "f": "Aybc2A2IAQAAV6ZBFR6AQE9OjvCO-QqU_KrlzuUUGRZlMAK4SiVVBgNsvYNrAS0rIPCuchZ2wH8AAOfvAAAAAA==",
    },
    setItem: function (name, value) {
        this.items[name] = value
    },
    getItem: function (name, value) {
        return this.items[name]
    },
    removeItem: function (name) {
        delete this.items[name]
    }

}

function dispatchEvent(event) {
    _console2('dispatchEvent', event)
    if (event && event.type in events) {
        events[event.type](event)
    }
    try {
        event.instrumented = v_saf(function instrumented() {
            v_console_log(" instrumented  call")
        })
        event.detail.exchange(event)
    } catch (e) {

    }
    return true

}

function v_init_document() {
    Document.prototype.getElementById = v_saf(function getElementById(name) {
        var r = v_getele(name, 'getElementById');
        v_console_log('  [*] Document -> getElementById', name, r);
        return r
    })
    Document.prototype.querySelector = v_saf(function querySelector(name) {
        var r = v_getele(name, 'querySelector');
        v_console_log('  [*] Document -> querySelector', name, r);
        return r
    })
    Document.prototype.getElementsByClassName = v_saf(function getElementsByClassName(name) {
        var r = v_geteles(name, 'getElementsByClassName');
        v_console_log('  [*] Document -> getElementsByClassName', name, r);
        return r
    })
    Document.prototype.getElementsByName = v_saf(function getElementsByName(name) {
        var r = v_geteles(name, 'getElementsByName');
        v_console_log('  [*] Document -> getElementsByName', name, r);
        return r
    })
    Document.prototype.getElementsByTagName = v_saf(function getElementsByTagName(name) {
        var r = v_geteles(name, 'getElementsByTagName');
        v_console_log('  [*] Document -> getElementsByTagName', name, r);
        return r
    })
    Document.prototype.getElementsByTagNameNS = v_saf(function getElementsByTagNameNS(name) {
        var r = v_geteles(name, 'getElementsByTagNameNS');
        v_console_log('  [*] Document -> getElementsByTagNameNS', name, r);
        return r
    })
    Document.prototype.querySelectorAll = v_saf(function querySelectorAll(name) {
        var r = v_geteles(name, 'querySelectorAll');
        v_console_log('  [*] Document -> querySelectorAll', name, r);
        return r
    })
    var v_head = v_new(HTMLHeadElement)
    var v_body = v_new(HTMLBodyElement)
    Object.defineProperties(Document.prototype, {
        head: {
            get() {
                v_console_log("  [*] Document -> head[get]", v_head);
                return v_head
            }
        },
        body: {
            get() {
                v_console_log("  [*] Document -> body[get]", v_body);

                return v_body
            }
        },
    })
}

function v_init_canvas() {
    HTMLCanvasElement.prototype.getContext = v_saf(function getContext() {
        console.log("GET getContext ");
        if (arguments[0] == '2d') {
            var r = v_new(CanvasRenderingContext2D);
            return r
        }
        ;
        if (arguments[0] == 'webgl' || arguments[0] == 'experimental-webgl') {
            var r = v_new(WebGLRenderingContext);
            r._canvas = this;
            return r
        }
        ;
        return null
    })
    HTMLCanvasElement.prototype.toDataURL = v_saf(function toDataURL() {
        console.log('HTMLCanvasElement.prototype.toDataURL', this);
        return "data:image/png;base64, "
    })
    HTMLCanvasElement.prototype.toBlob = v_saf(function toBlob() {
        return console.log('HTMLCanvasElement.prototype.toBlob')
    })
}

v_init_canvas();
v_init_document();
v_init_event_target()
window.dispatchEvent = dispatchEvent;
// _funcHasOwnprop = Function.prototype.hasOwnProperty
// Function.prototype.hasOwnProperty = function (){
//     console.log('Function.prototype.hasOwnProperty', arguments)
//     if (arguments[0] === 'value')return false;
//     return _funcHasOwnprop.apply(this, arguments)
// }
window.Notification = v_saf(function Notification(){})
window.requestAnimationFrame = v_saf(function requestAnimationFrame(){})
window.frameElement = null;
window.Function = Function;
window.event = undefined;
window.Object = Object;
window.Array = Array;
window.Date = Date;
window.String = String;
window.RegExp = RegExp;
window.Float32Array = Float32Array;
window.Float64Array = Float64Array;
window.Int32Array = Int32Array;
window.Reflect = Reflect;
window.Uint8Array = Uint8Array;
window.ArrayBuffer = ArrayBuffer;
window.Int8Array = Int8Array;
window.isNaN = isNaN;
window.parseInt = parseInt;
window.parseFloat = parseFloat;
window.encodeURI = encodeURI;
window.encodeURIComponent = encodeURIComponent;
window.decodeURI = decodeURI;
window.decodeURIComponent = decodeURIComponent;
window.Number = Number;
window.Uint8ClampedArray = Uint8ClampedArray;
window.Int16Array = Int16Array;
window.Uint16Array = Uint16Array;
window.Map = Map;
window.Set = Set;
window.WeakMap = WeakMap;
window.WeakSet = WeakSet;
window.Buffer = undefined

Animation = v_saf(function Animation() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Animation, Node)
Comment = v_saf(function Comment() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Comment, Node)
DOMMatrixReadOnly = v_saf(function DOMMatrixReadOnly() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
MediaQueryList = v_saf(function MediaQueryList() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(MediaQueryList, EventTarget)
let medias = [];
let mediaRes = {
    "(max-aspect-ratio: 33/32)": false,
    "(max-aspect-ratio: 67/64)": true,
    "(max-aspect-ratio: 135/128)": true,
    "(max-aspect-ratio: 271/256)": true,
    "(max-aspect-ratio: 543/512)": true,
    "(max-aspect-ratio: 1087/1024)": true,
    "(max-aspect-ratio: 2175/2048)": true,
    "(max-aspect-ratio: 4351/4096)": true,
    "(max-aspect-ratio: 8703/8192)": true,
    "(max-aspect-ratio: 17407/16384)": true,
    "(max-aspect-ratio: 34815/32768)": true,
    "(max-aspect-ratio: 69631/65536)": true,
    "(max-aspect-ratio: 139263/131072)": true,
    "(max-aspect-ratio: 278527/262144)": true,
    "(max-aspect-ratio: 557055/524288)": true,
    "(max-aspect-ratio: 1114111/1048576)": true,
    "(max-aspect-ratio: 2228223/2097152)": true,
    "(max-aspect-ratio: 4456447/4194304)": true,
    "(max-aspect-ratio: 8912895/8388608)": true,
    "(max-aspect-ratio: 17825791/16777216)": true,
    "(max-aspect-ratio: 35651583/33554432)": true,
    "(max-aspect-ratio: 71303167/67108864)": true,
    "(max-aspect-ratio: 142606335/134217728)": true,
    "(max-aspect-ratio: 285212671/268435456)": true,
    "(max-aspect-ratio: 570425343/536870912)": true,
    "(max-aspect-ratio: 1140850687/1073741824)": true,
    "(max-aspect-ratio: 2281701375/2147483648)": true,
    "(max-aspect-ratio: 4563402751/4294967296)": true,
    "(max-aspect-ratio: 9126805503/8589934592)": true,
    "(max-aspect-ratio: 18253611007/17179869184)": true,
    "(max-aspect-ratio: 36507222015/34359738368)": true,
    "(max-aspect-ratio: 73014444031/68719476736)": true,
    "(max-aspect-ratio: 146028888063/137438953472)": true,
    "(max-aspect-ratio: 292057776127/274877906944)": true,
    "(max-aspect-ratio: 584115552255/549755813888)": true,
    "(max-aspect-ratio: 1168231104511/1099511627776)": true,
    "(max-aspect-ratio: 2336462209023/2199023255552)": true,
    "(max-aspect-ratio: 4672924418047/4398046511104)": true,
    "(max-aspect-ratio: 9345848836095/8796093022208)": true,
    "(max-aspect-ratio: 18691697672191/17592186044416)": true,
    "(max-aspect-ratio: 37383395344383/35184372088832)": true,
    "(max-aspect-ratio: 74766790688767/70368744177664)": true,
    "(max-aspect-ratio: 149533581377535/140737488355328)": true,
    "(max-aspect-ratio: 299067162755071/281474976710656)": true,
    "(max-aspect-ratio: 598134325510143/562949953421312)": true,
    "(max-aspect-ratio: 1196268651020287/1125899906842624)": true,
    "(max-aspect-ratio: 17/16)": true,
    "(max-aspect-ratio: 35/32)": true,
    "(max-aspect-ratio: 71/64)": true,
    "(max-aspect-ratio: 143/128)": true,
    "(max-aspect-ratio: 287/256)": true,
    "(max-aspect-ratio: 575/512)": true,
    "(max-aspect-ratio: 1151/1024)": true,
    "(max-aspect-ratio: 2303/2048)": true,
    "(max-aspect-ratio: 4607/4096)": true,
    "(max-aspect-ratio: 9215/8192)": true,
    "(max-aspect-ratio: 18431/16384)": true,
    "(max-aspect-ratio: 36863/32768)": true,
    "(max-aspect-ratio: 73727/65536)": true,
    "(max-aspect-ratio: 147455/131072)": true,
    "(max-aspect-ratio: 294911/262144)": true,
    "(max-aspect-ratio: 589823/524288)": true,
    "(max-aspect-ratio: 1179647/1048576)": true,
    "(max-aspect-ratio: 2359295/2097152)": true,
    "(max-aspect-ratio: 4718591/4194304)": true,
    "(max-aspect-ratio: 9437183/8388608)": true,
    "(max-aspect-ratio: 18874367/16777216)": true,
    "(max-aspect-ratio: 37748735/33554432)": true,
    "(max-aspect-ratio: 75497471/67108864)": true,
    "(max-aspect-ratio: 150994943/134217728)": true,
    "(max-aspect-ratio: 301989887/268435456)": true,
    "(max-aspect-ratio: 603979775/536870912)": true,
    "(max-aspect-ratio: 1207959551/1073741824)": true,
    "(max-aspect-ratio: 2415919103/2147483648)": true,
    "(max-aspect-ratio: 4831838207/4294967296)": true,
    "(max-aspect-ratio: 9663676415/8589934592)": true,
    "(max-aspect-ratio: 19327352831/17179869184)": true,
    "(max-aspect-ratio: 38654705663/34359738368)": true,
    "(max-aspect-ratio: 77309411327/68719476736)": true,
    "(max-aspect-ratio: 154618822655/137438953472)": true,
    "(max-aspect-ratio: 309237645311/274877906944)": true,
    "(max-aspect-ratio: 618475290623/549755813888)": true,
    "(max-aspect-ratio: 1236950581247/1099511627776)": true,
    "(max-aspect-ratio: 2473901162495/2199023255552)": true,
    "(max-aspect-ratio: 4947802324991/4398046511104)": true,
    "(max-aspect-ratio: 9895604649983/8796093022208)": true,
    "(max-aspect-ratio: 19791209299967/17592186044416)": true,
    "(max-aspect-ratio: 39582418599935/35184372088832)": true,
    "(max-aspect-ratio: 79164837199871/70368744177664)": true,
    "(max-aspect-ratio: 158329674399743/140737488355328)": true,
    "(max-aspect-ratio: 316659348799487/281474976710656)": true,
    "(max-aspect-ratio: 633318697598975/562949953421312)": true,
    "(max-aspect-ratio: 1266637395197951/1125899906842624)": true,
    "(max-width: 919px)": false,
    "(max-width: 929px)": false,
    "(max-width: 934px)": true,
    "(max-width: 936px)": true,
    "(max-width: 937px)": true,
    "(min-resolution: 0.0001dpi)": true,
    "(max-resolution: 24dpi)": false,
    "(max-resolution: 48dpi)": false,
    "(max-resolution: 96dpi)": true,
    "(max-resolution: 72dpi)": false,
    "(max-resolution: 84dpi)": false,
    "(max-resolution: 90dpi)": false,
    "(max-resolution: 93dpi)": false,
    "(max-resolution: 95dpi)": false,
    "(overflow-inline: none)": false,
    "(overflow-inline: scroll)": false,
    "(max-aspect-ratio: 1/1)": false,
    "(max-aspect-ratio: 2/1)": true,
    "(max-aspect-ratio: 3/2)": true,
    "(max-aspect-ratio: 5/4)": true,
    "(max-aspect-ratio: 9/8)": true,
    "(max-aspect-ratio: 19/16)": true,
    "(max-aspect-ratio: 39/32)": true,
    "(max-aspect-ratio: 79/64)": true,
    "(max-aspect-ratio: 159/128)": true,
    "(max-aspect-ratio: 319/256)": true,
    "(max-aspect-ratio: 639/512)": true,
    "(max-aspect-ratio: 1279/1024)": true,
    "(max-aspect-ratio: 2559/2048)": true,
    "(max-aspect-ratio: 5119/4096)": true,
    "(max-aspect-ratio: 10239/8192)": true,
    "(max-aspect-ratio: 20479/16384)": true,
    "(max-aspect-ratio: 40959/32768)": true,
    "(max-aspect-ratio: 81919/65536)": true,
    "(max-aspect-ratio: 163839/131072)": true,
    "(max-aspect-ratio: 327679/262144)": true,
    "(max-aspect-ratio: 655359/524288)": true,
    "(max-aspect-ratio: 1310719/1048576)": true,
    "(max-aspect-ratio: 2621439/2097152)": true,
    "(max-aspect-ratio: 5242879/4194304)": true,
    "(max-aspect-ratio: 10485759/8388608)": true,
    "(max-aspect-ratio: 20971519/16777216)": true,
    "(max-aspect-ratio: 41943039/33554432)": true,
    "(max-aspect-ratio: 83886079/67108864)": true,
    "(max-aspect-ratio: 167772159/134217728)": true,
    "(max-aspect-ratio: 335544319/268435456)": true,
    "(max-aspect-ratio: 671088639/536870912)": true,
    "(max-aspect-ratio: 1342177279/1073741824)": true,
    "(max-aspect-ratio: 2684354559/2147483648)": true,
    "(max-aspect-ratio: 5368709119/4294967296)": true,
    "(max-aspect-ratio: 10737418239/8589934592)": true,
    "(max-aspect-ratio: 21474836479/17179869184)": true,
    "(max-aspect-ratio: 42949672959/34359738368)": true,
    "(max-aspect-ratio: 85899345919/68719476736)": true,
    "(max-aspect-ratio: 171798691839/137438953472)": true,
    "(max-aspect-ratio: 343597383679/274877906944)": true,
    "(max-aspect-ratio: 687194767359/549755813888)": true,
    "(max-aspect-ratio: 1374389534719/1099511627776)": true,
    "(max-aspect-ratio: 2748779069439/2199023255552)": true,
    "(max-aspect-ratio: 5497558138879/4398046511104)": true,
    "(max-aspect-ratio: 10995116277759/8796093022208)": true,
    "(max-aspect-ratio: 21990232555519/17592186044416)": true,
    "(max-aspect-ratio: 43980465111039/35184372088832)": true,
    "(max-aspect-ratio: 87960930222079/70368744177664)": true,
    "(max-aspect-ratio: 175921860444159/140737488355328)": true,
    "(max-aspect-ratio: 351843720888319/281474976710656)": true,
    "(max-aspect-ratio: 703687441776639/562949953421312)": true,
    "(max-aspect-ratio: 1407374883553279/1125899906842624)": true,
    "(grid: 0)": true,
    "(grid: 1)": false,
    "(any-hover: none)": false,
    "(any-hover: hover)": true,
    "(q: 1)": false,
    "(max-height: 600px)": false,
    "(max-height: 1200px)": true,
    "(max-height: 900px)": true,
    "(max-height: 750px)": false,
    "(max-height: 825px)": false,
    "(max-height: 863px)": false,
    "(max-height: 882px)": false,
    "(max-height: 891px)": true,
    "(max-height: 887px)": false,
    "(max-height: 889px)": false,
    "(max-height: 890px)": false,
    "(max-width: 600px)": false,
    "(max-width: 1200px)": true,
    "(max-width: 900px)": false,
    "(max-width: 1050px)": true,
    "(max-width: 975px)": true,
    "(max-width: 938px)": true,
    "(max-width: 957px)": true,
    "(max-width: 966px)": true,
    "(max-width: 971px)": true,
    "(max-width: 973px)": true,
    "(max-width: 974px)": true,
    "(max-color-index: 1000)": true,
    "(max-color-index: 500)": true,
    "(max-color-index: 250)": true,
    "(max-color-index: 125)": true,
    "(max-color-index: 62)": true,
    "(max-color-index: 31)": true,
    "(max-color-index: 15)": true,
    "(max-color-index: 7)": true,
    "(max-color-index: 3)": true,
    "(max-color-index: 1)": true,
    "(max-color-index: 0)": true,
    "(forced-colors: none)": true,
    "(forced-colors: active)": false,
    "(prefers-reduced-transparency: no-preference)": false,
    "(prefers-reduced-transparency: reduce)": false,
    "(light-level: normal)": false,
    "(light-level: dim)": false,
    "(light-level: washed)": false,
    "(max-color: 8)": true,
    "(max-color: 4)": false,
    "(max-color: 6)": false,
    "(max-color: 7)": false,
    "(hover: none)": false,
    "(hover: hover)": true,
    "(max-monochrome: 1)": true,
    "(max-monochrome: 0)": true,
    "(prefers-reduced-motion: no-preference)": true,
    "(prefers-reduced-motion: reduce)": false,
    "(pointer: none)": false,
    "(pointer: coarse)": false,
    "(pointer: fine)": true,
    "(color-gamut: srgb)": true,
    "(color-gamut: p3)": false,
    "(color-gamut: rec2020)": false,
    "(scripting: none)": false,
    "(scripting: initial-only)": false,
    "(scripting: enabled)": false,
    "(scan: interlace)": false,
    "(scan: progressive)": false,
    "(display-mode: fullscreen)": false,
    "(display-mode: standalone)": false,
    "(display-mode: minimal-ui)": false,
    "(display-mode: browser)": true,
    "(inverted-colors: none)": false,
    "(inverted-colors: inverted)": false,
    "(overflow-block: none)": false,
    "(overflow-block: scroll)": false,
    "(overflow-block: optional-paged)": false,
    "(overflow-block: paged)": false,
    "(orientation: landscape)": true,
    "(orientation: portrait)": false,
    "(prefers-contrast: no-preference)": true,
    "(prefers-contrast: high)": false,
    "(prefers-contrast: low)": false,
    "(any-pointer: none)": false,
    "(any-pointer: coarse)": false,
    "(any-pointer: fine)": true,
    "(update: none)": false,
    "(update: slow)": false,
    "(update: fast)": false,
    "(prefers-color-scheme: no-preference)": false,
    "(prefers-color-scheme: light)": false,
    "(prefers-color-scheme: dark)": true,
    "(max-aspect-ratio: 11/8)": true,
    "(max-aspect-ratio: 23/16)": true,
    "(max-aspect-ratio: 47/32)": true,
    "(max-aspect-ratio: 95/64)": true,
    "(max-aspect-ratio: 191/128)": true,
    "(max-aspect-ratio: 383/256)": true,
    "(max-aspect-ratio: 767/512)": true,
    "(max-aspect-ratio: 1535/1024)": true,
    "(max-aspect-ratio: 3071/2048)": true,
    "(max-aspect-ratio: 6143/4096)": true,
    "(max-aspect-ratio: 12287/8192)": true,
    "(max-aspect-ratio: 24575/16384)": true,
    "(max-aspect-ratio: 49151/32768)": true,
    "(max-aspect-ratio: 98303/65536)": true,
    "(max-aspect-ratio: 196607/131072)": true,
    "(max-aspect-ratio: 393215/262144)": true,
    "(max-aspect-ratio: 786431/524288)": true,
    "(max-aspect-ratio: 1572863/1048576)": true,
    "(max-aspect-ratio: 3145727/2097152)": true,
    "(max-aspect-ratio: 6291455/4194304)": true,
    "(max-aspect-ratio: 12582911/8388608)": true,
    "(max-aspect-ratio: 25165823/16777216)": true,
    "(max-aspect-ratio: 50331647/33554432)": true,
    "(max-aspect-ratio: 100663295/67108864)": true,
    "(max-aspect-ratio: 201326591/134217728)": true,
    "(max-aspect-ratio: 402653183/268435456)": true,
    "(max-aspect-ratio: 805306367/536870912)": true,
    "(max-aspect-ratio: 1610612735/1073741824)": true,
    "(max-aspect-ratio: 3221225471/2147483648)": true,
    "(max-aspect-ratio: 6442450943/4294967296)": true,
    "(max-aspect-ratio: 12884901887/8589934592)": true,
    "(max-aspect-ratio: 25769803775/17179869184)": true,
    "(max-aspect-ratio: 51539607551/34359738368)": true,
    "(max-aspect-ratio: 103079215103/68719476736)": true,
    "(max-aspect-ratio: 206158430207/137438953472)": true,
    "(max-aspect-ratio: 412316860415/274877906944)": true,
    "(max-aspect-ratio: 824633720831/549755813888)": true,
    "(max-aspect-ratio: 1649267441663/1099511627776)": true,
    "(max-aspect-ratio: 3298534883327/2199023255552)": true,
    "(max-aspect-ratio: 6597069766655/4398046511104)": true,
    "(max-aspect-ratio: 13194139533311/8796093022208)": true,
    "(max-aspect-ratio: 26388279066623/17592186044416)": true,
    "(max-aspect-ratio: 52776558133247/35184372088832)": true,
    "(max-aspect-ratio: 105553116266495/70368744177664)": true,
    "(max-aspect-ratio: 211106232532991/140737488355328)": true,
    "(max-aspect-ratio: 422212465065983/281474976710656)": true,
    "(max-aspect-ratio: 844424930131967/562949953421312)": true,
    "(max-aspect-ratio: 1688849860263935/1125899906842624)": true,
    "(max-height: 896px)": true,
    "(max-height: 898px)": true,
    "(max-height: 899px)": true,
    "(max-width: 1013px)": true,
    "(max-width: 1032px)": true,
    "(max-width: 1041px)": true,
    "(max-width: 1046px)": true,
    "(max-width: 1048px)": true,
    "(max-width: 1049px)": true,
    "(max-aspect-ratio: 7/4)": true,
    "(max-aspect-ratio: 15/8)": true,
    "(max-aspect-ratio: 31/16)": true,
    "(max-aspect-ratio: 63/32)": true,
    "(max-aspect-ratio: 127/64)": true,
    "(max-aspect-ratio: 255/128)": true,
    "(max-aspect-ratio: 511/256)": true,
    "(max-aspect-ratio: 1023/512)": true,
    "(max-aspect-ratio: 2047/1024)": true,
    "(max-aspect-ratio: 4095/2048)": true,
    "(max-aspect-ratio: 8191/4096)": true,
    "(max-aspect-ratio: 16383/8192)": true,
    "(max-aspect-ratio: 32767/16384)": true,
    "(max-aspect-ratio: 65535/32768)": true,
    "(max-aspect-ratio: 131071/65536)": true,
    "(max-aspect-ratio: 262143/131072)": true,
    "(max-aspect-ratio: 524287/262144)": true,
    "(max-aspect-ratio: 1048575/524288)": true,
    "(max-aspect-ratio: 2097151/1048576)": true,
    "(max-aspect-ratio: 4194303/2097152)": true,
    "(max-aspect-ratio: 8388607/4194304)": true,
    "(max-aspect-ratio: 16777215/8388608)": true,
    "(max-aspect-ratio: 33554431/16777216)": true,
    "(max-aspect-ratio: 67108863/33554432)": true,
    "(max-aspect-ratio: 134217727/67108864)": true,
    "(max-aspect-ratio: 268435455/134217728)": true,
    "(max-aspect-ratio: 536870911/268435456)": true,
    "(max-aspect-ratio: 1073741823/536870912)": true,
    "(max-aspect-ratio: 2147483647/1073741824)": true,
    "(max-aspect-ratio: 4294967295/2147483648)": true,
    "(max-aspect-ratio: 8589934591/4294967296)": true,
    "(max-aspect-ratio: 17179869183/8589934592)": true,
    "(max-aspect-ratio: 34359738367/17179869184)": true,
    "(max-aspect-ratio: 68719476735/34359738368)": true,
    "(max-aspect-ratio: 137438953471/68719476736)": true,
    "(max-aspect-ratio: 274877906943/137438953472)": true,
    "(max-aspect-ratio: 549755813887/274877906944)": true,
    "(max-aspect-ratio: 1099511627775/549755813888)": true,
    "(max-aspect-ratio: 2199023255551/1099511627776)": true,
    "(max-aspect-ratio: 4398046511103/2199023255552)": true,
    "(max-aspect-ratio: 8796093022207/4398046511104)": true,
    "(max-aspect-ratio: 17592186044415/8796093022208)": true,
    "(max-aspect-ratio: 35184372088831/17592186044416)": true,
    "(max-aspect-ratio: 70368744177663/35184372088832)": true,
    "(max-aspect-ratio: 140737488355327/70368744177664)": true,
    "(max-aspect-ratio: 281474976710655/140737488355328)": true,
    "(max-aspect-ratio: 562949953421311/281474976710656)": true,
    "(max-aspect-ratio: 1125899906842623/562949953421312)": true,
    "(max-aspect-ratio: 2251799813685247/1125899906842624)": true,
    "(max-height: 1050px)": true,
    "(max-height: 1125px)": true,
    "(max-height: 1163px)": true,
    "(max-height: 1182px)": true,
    "(max-height: 1191px)": true,
    "(max-height: 1196px)": true,
    "(max-height: 1198px)": true,
    "(max-height: 1199px)": true,
    "(max-width: 1125px)": true,
    "(max-width: 1163px)": true,
    "(max-width: 1182px)": true,
    "(max-width: 1191px)": true,
    "(max-width: 1196px)": true,
    "(max-width: 1198px)": true,
    "(max-width: 1199px)": true,
    "(max-resolution: 192dpi)": true,
    "(max-resolution: 384dpi)": true,
    "(max-resolution: 768dpi)": true,
    "(max-resolution: 1536dpi)": true,
    "(max-resolution: 3072dpi)": true,
    "(max-resolution: 6144dpi)": true,
    "(max-resolution: 12288dpi)": true,
    "(max-resolution: 24576dpi)": true,
    "(max-resolution: 49152dpi)": true,
    "(max-resolution: 98304dpi)": true,
    "(max-resolution: 196608dpi)": true,
    "(max-resolution: 393216dpi)": true,
    "(max-resolution: 786432dpi)": true,
    "(max-resolution: 1572864dpi)": true,
    "(max-resolution: 3145728dpi)": true,
    "(max-resolution: 6291456dpi)": true,
    "(max-resolution: 12582912dpi)": true,
    "(max-resolution: 25165824dpi)": true,
    "(max-resolution: 50331648dpi)": true,
    "(max-resolution: 100663296dpi)": true,
    "(max-resolution: 201326592dpi)": true,
    "(max-resolution: 402653184dpi)": true,
    "(max-resolution: 805306368dpi)": true,
    "(max-resolution: 1610612736dpi)": true,
    "(max-resolution: 3221225472dpi)": true,
    "(max-resolution: 6442450944dpi)": true,
    "(max-resolution: 12884901888dpi)": true,
    "(max-resolution: 25769803776dpi)": true,
    "(max-resolution: 51539607552dpi)": true,
    "(max-resolution: 103079215104dpi)": true,
    "(max-resolution: 206158430208dpi)": true,
    "(max-resolution: 412316860416dpi)": true,
    "(max-resolution: 824633720832dpi)": true,
    "(max-resolution: 1649267441664dpi)": true,
    "(max-resolution: 3298534883328dpi)": true,
    "(max-resolution: 6597069766656dpi)": true,
    "(max-resolution: 13194139533312dpi)": true,
    "(max-resolution: 26388279066624dpi)": true,
    "(max-resolution: 52776558133248dpi)": true,
    "(max-resolution: 105553116266496dpi)": true,
    "(max-resolution: 211106232532992dpi)": true,
    "(max-resolution: 422212465065984dpi)": true,
    "(max-resolution: 844424930131968dpi)": true,
    "(max-resolution: 1688849860263936dpi)": true,
    "(max-resolution: 3377699720527872dpi)": true,
    "(max-resolution: 6755399441055744dpi)": true,
    "(max-resolution: 13510798882111488dpi)": true,
    "(max-resolution: 27021597764222976dpi)": true,
    "(max-resolution: 20266198323167230dpi)": true,
    "(max-resolution: 23643898043695104dpi)": true,
    "(max-resolution: 25332747903959040dpi)": true,
    "(max-resolution: 26177172834091010dpi)": true,
    "(max-resolution: 26599385299156990dpi)": true,
    "(max-resolution: 26810491531689984dpi)": true,
    "(max-resolution: 26916044647956480dpi)": true,
    "(max-resolution: 26968821206089730dpi)": true,
    "(max-resolution: 26995209485156350dpi)": true,
    "(max-resolution: 27008403624689664dpi)": true,
    "(max-resolution: 27015000694456320dpi)": true,
    "(max-resolution: 27018299229339650dpi)": true,
    "(max-resolution: 27019948496781310dpi)": true,
    "(max-resolution: 27020773130502144dpi)": true,
    "(max-resolution: 27021185447362560dpi)": true,
    "(max-resolution: 27021391605792770dpi)": true,
    "(max-resolution: 27021494685007870dpi)": true,
    "(max-resolution: 27021546224615424dpi)": true,
    "(max-resolution: 27021571994419200dpi)": true,
    "(max-resolution: 27021584879321090dpi)": true,
    "(max-resolution: 27021591321772030dpi)": true,
    "(max-resolution: 27021594542997504dpi)": true,
    "(max-resolution: 27021596153610240dpi)": true,
    "(max-resolution: 27021596958916610dpi)": true,
    "(max-resolution: 27021597361569790dpi)": true,
    "(max-resolution: 27021597562896384dpi)": true,
    "(max-resolution: 27021597663559680dpi)": true,
    "(max-resolution: 27021597713891330dpi)": true,
    "(max-resolution: 27021597739057150dpi)": true,
    "(max-resolution: 27021597751640064dpi)": true,
    "(max-resolution: 27021597757931520dpi)": true,
    "(max-resolution: 27021597761077250dpi)": true,
    "(max-resolution: 27021597762650110dpi)": true,
    "(max-resolution: 27021597763436544dpi)": true,
    "(max-resolution: 27021597763829760dpi)": true,
    "(max-resolution: 27021597764026370dpi)": true,
    "(max-resolution: 27021597764124670dpi)": true,
    "(max-resolution: 27021597764173824dpi)": true,
    "(max-resolution: 27021597764198400dpi)": true,
    "(max-resolution: 27021597764210690dpi)": true,
    "(max-resolution: 27021597764216830dpi)": true,
    "(max-resolution: 27021597764219904dpi)": true,
    "(max-resolution: 27021597764221440dpi)": true,
    "(max-resolution: 27021597764222210dpi)": true,
    "(max-resolution: 27021597764222590dpi)": true,
    "(max-resolution: 27021597764222784dpi)": true,
    "(max-resolution: 27021597764222880dpi)": true,
    "(max-resolution: 27021597764222930dpi)": true,
    "(max-resolution: 27021597764222950dpi)": true,
    "(max-resolution: 27021597764222964dpi)": true,
    "(max-aspect-ratio: 3/1)": true,
    "(max-aspect-ratio: 4/1)": true,
    "(max-aspect-ratio: 5/1)": true,
    "(max-aspect-ratio: 6/1)": true,
    "(max-aspect-ratio: 7/1)": true,
    "(max-aspect-ratio: 8/1)": true,
    "(max-aspect-ratio: 9/1)": true,
    "(max-aspect-ratio: 10/1)": true,
    "(max-aspect-ratio: 11/1)": true,
    "(max-aspect-ratio: 12/1)": true,
    "(max-aspect-ratio: 13/1)": true,
    "(max-aspect-ratio: 14/1)": true,
    "(max-aspect-ratio: 15/1)": true,
    "(max-aspect-ratio: 16/1)": true,
    "(max-aspect-ratio: 17/1)": true,
    "(max-aspect-ratio: 18/1)": true,
    "(max-aspect-ratio: 19/1)": true,
    "(max-aspect-ratio: 20/1)": true,
    "(max-aspect-ratio: 21/1)": true,
    "(max-aspect-ratio: 22/1)": true,
    "(max-aspect-ratio: 23/1)": true,
    "(max-aspect-ratio: 24/1)": true,
    "(max-aspect-ratio: 25/1)": true,
    "(max-aspect-ratio: 26/1)": true,
    "(max-aspect-ratio: 27/1)": true,
    "(max-aspect-ratio: 28/1)": true,
    "(max-aspect-ratio: 29/1)": true,
    "(max-aspect-ratio: 30/1)": true,
    "(max-aspect-ratio: 31/1)": true,
    "(max-aspect-ratio: 32/1)": true,
    "(max-aspect-ratio: 33/1)": true,
    "(max-aspect-ratio: 34/1)": true,
    "(max-aspect-ratio: 35/1)": true,
    "(max-aspect-ratio: 36/1)": true,
    "(max-aspect-ratio: 37/1)": true,
    "(max-aspect-ratio: 38/1)": true,
    "(max-aspect-ratio: 39/1)": true,
    "(max-aspect-ratio: 40/1)": true,
    "(max-aspect-ratio: 41/1)": true,
    "(max-aspect-ratio: 42/1)": true,
    "(max-aspect-ratio: 43/1)": true,
    "(max-aspect-ratio: 44/1)": true,
    "(max-aspect-ratio: 45/1)": true,
    "(max-aspect-ratio: 46/1)": true,
    "(max-aspect-ratio: 47/1)": true,
    "(max-aspect-ratio: 48/1)": true,
    "(max-aspect-ratio: 49/1)": true,
    "(max-aspect-ratio: 50/1)": true,
    "(max-aspect-ratio: 51/1)": true,
    "(max-aspect-ratio: 101/2)": true,
    "(max-aspect-ratio: 203/4)": true,
    "(max-aspect-ratio: 407/8)": true,
    "(max-aspect-ratio: 815/16)": true,
    "(max-aspect-ratio: 1631/32)": true,
    "(max-aspect-ratio: 3263/64)": true,
    "(max-aspect-ratio: 6527/128)": true,
    "(max-aspect-ratio: 13055/256)": true,
    "(max-aspect-ratio: 26111/512)": true,
    "(max-aspect-ratio: 52223/1024)": true,
    "(max-aspect-ratio: 104447/2048)": true,
    "(max-aspect-ratio: 208895/4096)": true,
    "(max-aspect-ratio: 417791/8192)": true,
    "(max-aspect-ratio: 835583/16384)": true,
    "(max-aspect-ratio: 1671167/32768)": true,
    "(max-aspect-ratio: 3342335/65536)": true,
    "(max-aspect-ratio: 6684671/131072)": true,
    "(max-aspect-ratio: 13369343/262144)": true,
    "(max-aspect-ratio: 26738687/524288)": true,
    "(max-aspect-ratio: 53477375/1048576)": true,
    "(max-aspect-ratio: 106954751/2097152)": true,
    "(max-aspect-ratio: 213909503/4194304)": true,
    "(max-aspect-ratio: 427819007/8388608)": true,
    "(max-aspect-ratio: 855638015/16777216)": true,
    "(max-aspect-ratio: 1711276031/33554432)": true,
    "(max-aspect-ratio: 3422552063/67108864)": true,
    "(max-aspect-ratio: 6845104127/134217728)": true,
    "(max-aspect-ratio: 13690208255/268435456)": true,
    "(max-aspect-ratio: 27380416511/536870912)": true,
    "(max-aspect-ratio: 54760833023/1073741824)": true,
    "(max-aspect-ratio: 109521666047/2147483648)": true,
    "(max-aspect-ratio: 219043332095/4294967296)": true,
    "(max-aspect-ratio: 438086664191/8589934592)": true,
    "(max-aspect-ratio: 876173328383/17179869184)": true,
    "(max-aspect-ratio: 1752346656767/34359738368)": true,
    "(max-aspect-ratio: 3504693313535/68719476736)": true,
    "(max-aspect-ratio: 7009386627071/137438953472)": true,
    "(max-aspect-ratio: 14018773254143/274877906944)": true,
    "(max-aspect-ratio: 28037546508287/549755813888)": true,
    "(max-aspect-ratio: 56075093016575/1099511627776)": true,
    "(max-aspect-ratio: 112150186033151/2199023255552)": true,
    "(max-aspect-ratio: 224300372066303/4398046511104)": true,
    "(max-aspect-ratio: 448600744132607/8796093022208)": true,
    "(max-aspect-ratio: 897201488265215/17592186044416)": true,
    "(max-aspect-ratio: 1794402976530431/35184372088832)": true,
    "(max-aspect-ratio: 3588805953060863/70368744177664)": true,
    "(max-aspect-ratio: 7177611906121727/140737488355328)": true,
    "(max-height: 2400px)": true,
    "(max-height: 4800px)": true,
    "(max-height: 9600px)": true,
    "(max-height: 19200px)": true,
    "(max-height: 38400px)": true,
    "(max-height: 76800px)": true,
    "(max-height: 153600px)": true,
    "(max-height: 307200px)": true,
    "(max-height: 614400px)": true,
    "(max-height: 1228800px)": true,
    "(max-height: 2457600px)": true,
    "(max-height: 4915200px)": true,
    "(max-height: 9830400px)": true,
    "(max-height: 19660800px)": true,
    "(max-height: 39321600px)": true,
    "(max-height: 78643200px)": true,
    "(max-height: 157286400px)": true,
    "(max-height: 314572800px)": true,
    "(max-height: 629145600px)": true,
    "(max-height: 1258291200px)": true,
    "(max-height: 2516582400px)": true,
    "(max-height: 5033164800px)": true,
    "(max-height: 10066329600px)": true,
    "(max-height: 20132659200px)": true,
    "(max-height: 40265318400px)": true,
    "(max-height: 80530636800px)": true,
    "(max-height: 161061273600px)": true,
    "(max-height: 322122547200px)": true,
    "(max-height: 644245094400px)": true,
    "(max-height: 1288490188800px)": true,
    "(max-height: 2576980377600px)": true,
    "(max-height: 5153960755200px)": true,
    "(max-height: 10307921510400px)": true,
    "(max-height: 20615843020800px)": true,
    "(max-height: 41231686041600px)": true,
    "(max-height: 82463372083200px)": true,
    "(max-height: 164926744166400px)": true,
    "(max-height: 329853488332800px)": true,
    "(max-height: 659706976665600px)": true,
    "(max-height: 1319413953331200px)": true,
    "(max-height: 2638827906662400px)": true,
    "(max-height: 5277655813324800px)": true,
    "(max-height: 10555311626649600px)": true,
    "(max-height: 21110623253299200px)": true,
    "(max-height: 42221246506598400px)": true,
    "(max-height: 84442493013196800px)": true,
    "(max-height: 168884986026393600px)": true,
    "(max-height: 337769972052787200px)": true,
    "(max-height: 675539944105574400px)": true,
    "(max-height: 506654958079180800px)": true,
    "(max-height: 591097451092377600px)": true,
    "(max-height: 633318697598976000px)": true,
    "(max-height: 654429320852275200px)": true,
    "(max-height: 664984632478924800px)": true,
    "(max-height: 670262288292249600px)": true,
    "(max-height: 672901116198912000px)": true,
    "(max-height: 674220530152243200px)": true,
    "(max-height: 674880237128908800px)": true,
    "(max-height: 675210090617241600px)": true,
    "(max-height: 675375017361408000px)": true,
    "(max-height: 675457480733491200px)": true,
    "(max-height: 675498712419532800px)": true,
    "(max-height: 675519328262553600px)": true,
    "(max-height: 675529636184064000px)": true,
    "(max-height: 675534790144819200px)": true,
    "(max-height: 675537367125196800px)": true,
    "(max-height: 675538655615385600px)": true,
    "(max-height: 675539299860480000px)": true,
    "(max-height: 675539621983027200px)": true,
    "(max-height: 675539783044300800px)": true,
    "(max-height: 675539863574937600px)": true,
    "(max-height: 675539903840256000px)": true,
    "(max-height: 675539923972915200px)": true,
    "(max-height: 675539934039244800px)": true,
    "(max-height: 675539939072409600px)": true,
    "(max-height: 675539941588992000px)": true,
    "(max-height: 675539942847283200px)": true,
    "(max-height: 675539943476428800px)": true,
    "(max-height: 675539943791001600px)": true,
    "(max-height: 675539943948288000px)": true,
    "(max-height: 675539944026931200px)": true,
    "(max-height: 675539944066252800px)": true,
    "(max-height: 675539944085913600px)": true,
    "(max-height: 675539944095744000px)": true,
    "(max-height: 675539944100659200px)": true,
    "(max-height: 675539944103116800px)": true,
    "(max-height: 675539944104345600px)": true,
    "(max-height: 675539944104960000px)": true,
    "(max-height: 675539944105267200px)": true,
    "(max-height: 675539944105420800px)": true,
    "(max-height: 675539944105497600px)": true,
    "(max-height: 675539944105536000px)": true,
    "(max-height: 675539944105555200px)": true,
    "(max-height: 675539944105564800px)": true,
    "(max-height: 675539944105569500px)": true,
    "(max-height: 675539944105572000px)": true,
    "(max-height: 675539944105573100px)": true,
    "(max-height: 675539944105573800px)": true,
    "(max-height: 675539944105574100px)": true,
    "(max-width: 2400px)": true,
    "(max-width: 4800px)": true,
    "(max-width: 9600px)": true,
    "(max-width: 19200px)": true,
    "(max-width: 38400px)": true,
    "(max-width: 76800px)": true,
    "(max-width: 153600px)": true,
    "(max-width: 307200px)": true,
    "(max-width: 614400px)": true,
    "(max-width: 1228800px)": true,
    "(max-width: 2457600px)": true,
    "(max-width: 4915200px)": true,
    "(max-width: 9830400px)": true,
    "(max-width: 19660800px)": true,
    "(max-width: 39321600px)": true,
    "(max-width: 78643200px)": true,
    "(max-width: 157286400px)": true,
    "(max-width: 314572800px)": true,
    "(max-width: 629145600px)": true,
    "(max-width: 1258291200px)": true,
    "(max-width: 2516582400px)": true,
    "(max-width: 5033164800px)": true,
    "(max-width: 10066329600px)": true,
    "(max-width: 20132659200px)": true,
    "(max-width: 40265318400px)": true,
    "(max-width: 80530636800px)": true,
    "(max-width: 161061273600px)": true,
    "(max-width: 322122547200px)": true,
    "(max-width: 644245094400px)": true,
    "(max-width: 1288490188800px)": true,
    "(max-width: 2576980377600px)": true,
    "(max-width: 5153960755200px)": true,
    "(max-width: 10307921510400px)": true,
    "(max-width: 20615843020800px)": true,
    "(max-width: 41231686041600px)": true,
    "(max-width: 82463372083200px)": true,
    "(max-width: 164926744166400px)": true,
    "(max-width: 329853488332800px)": true,
    "(max-width: 659706976665600px)": true,
    "(max-width: 1319413953331200px)": true,
    "(max-width: 2638827906662400px)": true,
    "(max-width: 5277655813324800px)": true,
    "(max-width: 10555311626649600px)": true,
    "(max-width: 21110623253299200px)": true,
    "(max-width: 42221246506598400px)": true,
    "(max-width: 84442493013196800px)": true,
    "(max-width: 168884986026393600px)": true,
    "(max-width: 337769972052787200px)": true,
    "(max-width: 675539944105574400px)": true,
    "(max-width: 506654958079180800px)": true,
    "(max-width: 591097451092377600px)": true,
    "(max-width: 633318697598976000px)": true,
    "(max-width: 654429320852275200px)": true,
    "(max-width: 664984632478924800px)": true,
    "(max-width: 670262288292249600px)": true,
    "(max-width: 672901116198912000px)": true,
    "(max-width: 674220530152243200px)": true,
    "(max-width: 674880237128908800px)": true,
    "(max-width: 675210090617241600px)": true,
    "(max-width: 675375017361408000px)": true,
    "(max-width: 675457480733491200px)": true,
    "(max-width: 675498712419532800px)": true,
    "(max-width: 675519328262553600px)": true,
    "(max-width: 675529636184064000px)": true,
    "(max-width: 675534790144819200px)": true,
    "(max-width: 675537367125196800px)": true,
    "(max-width: 675538655615385600px)": true,
    "(max-width: 675539299860480000px)": true,
    "(max-width: 675539621983027200px)": true,
    "(max-width: 675539783044300800px)": true,
    "(max-width: 675539863574937600px)": true,
    "(max-width: 675539903840256000px)": true,
    "(max-width: 675539923972915200px)": true,
    "(max-width: 675539934039244800px)": true,
    "(max-width: 675539939072409600px)": true,
    "(max-width: 675539941588992000px)": true,
    "(max-width: 675539942847283200px)": true,
    "(max-width: 675539943476428800px)": true,
    "(max-width: 675539943791001600px)": true,
    "(max-width: 675539943948288000px)": true,
    "(max-width: 675539944026931200px)": true,
    "(max-width: 675539944066252800px)": true,
    "(max-width: 675539944085913600px)": true,
    "(max-width: 675539944095744000px)": true,
    "(max-width: 675539944100659200px)": true,
    "(max-width: 675539944103116800px)": true,
    "(max-width: 675539944104345600px)": true,
    "(max-width: 675539944104960000px)": true,
    "(max-width: 675539944105267200px)": true,
    "(max-width: 675539944105420800px)": true,
    "(max-width: 675539944105497600px)": true,
    "(max-width: 675539944105536000px)": true,
    "(max-width: 675539944105555200px)": true,
    "(max-width: 675539944105564800px)": true,
    "(max-width: 675539944105569500px)": true,
    "(max-width: 675539944105572000px)": true,
    "(max-width: 675539944105573100px)": true,
    "(max-width: 675539944105573800px)": true,
    "(max-width: 675539944105574100px)": true
}

Object.defineProperties(MediaQueryList.prototype, {
    addListener: {
        addListener() {
            v_console_log("  [*] MediaQueryList -> addListener[get]", {});
            return {}
        }
    },
    removeListener: {
        removeListener() {
            v_console_log("  [*] MediaQueryList -> removeListener[get]", {});
            return {}
        }
    },
    // matches: {"value":0,"writable":true,"enumerable":true,"configurable":false},
    matches: {
        get() {
            medias.push(this.type[0]);
            let t = mediaRes[this.type[0]];
            if (t === undefined) {
                t = false;
            }
            v_console_log("  [*] MediaQueryList -> matches[get]", this.type[0], t);

            return t;
        }
    },

    media: {"value": 1, "writable": true, "enumerable": true, "configurable": false},
    onchange: {"value": 2, "writable": true, "enumerable": true, "configurable": false},
})
DOMParser = v_saf(function DOMParser() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
FileReader = v_saf(function FileReader() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
Audio = v_saf(function Audio() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
Option = v_saf(function Option() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
IntersectionObserver = v_saf(function IntersectionObserver() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
MediaStream = v_saf(function MediaStream() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
Path2D = v_saf(function Path2D() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
Text = v_saf(function Text() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
XMLSerializer = v_saf(function XMLSerializer() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
PublicKeyCredential = v_saf(function PublicKeyCredential() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
AuthenticatorAssertionResponse = v_saf(function AuthenticatorAssertionResponse() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
AuthenticatorAttestationResponse = v_saf(function AuthenticatorAttestationResponse() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
AuthenticatorResponse = v_saf(function AuthenticatorResponse() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
XMLDocument = v_saf(function XMLDocument() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
DOMPoint = v_saf(function DOMPoint() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
DOMPointReadOnly = v_saf(function DOMPointReadOnly() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
External = v_saf(function External() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
mozRTCPeerConnection = v_saf(function mozRTCPeerConnection() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});
_inherits(Element, Node)
BluetoothUUID = v_saf(function BluetoothUUID() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
});

document.__proto__ = HTMLDocument.prototype
window.document = document
window.BluetoothUUID = BluetoothUUID
window.Animation = Animation;
window.Worker = Worker;
window.URL = URL;
window.WebGLRenderingContext = WebGLRenderingContext;
window.HTMLCanvasElement = HTMLCanvasElement;
window.CanvasRenderingContext2D = CanvasRenderingContext2D;
window.UIEvent = UIEvent;
window.clearInterval = clearInterval;
window.setInterval = function (func, delay) {
    // console.log('setInterval',delay,  func)
    try {
        func()
    } catch (e) {
    }
};
window.XMLDocument = XMLDocument;
window.crypto = crypto
window.DOMPoint = DOMPoint;
window.DOMPointReadOnly = DOMPointReadOnly;
window.External = External;
window.Blob = Blob;
window.Comment = Comment;
window.Document = Document;
window.DOMException = DOMException;
window.DOMMatrixReadOnly = DOMMatrixReadOnly;
window.RTCPeerConnection = RTCPeerConnection;
window.webkitRTCPeerConnection = RTCPeerConnection;
window.DOMParser = DOMParser;
window.FileReader = FileReader;
window.FormData = FormData;
window.Audio = Audio;
window.Image = Image;
window.Option = Option;
window.IntersectionObserver = IntersectionObserver;
window.MediaStream = MediaStream;
window.MessageChannel = MessageChannel;
window.MutationObserver = MutationObserver;
window.Path2D = Path2D;
window.PerformanceObserver = PerformanceObserver;
window.ReadableStream = ReadableStream;
window.Text = Text;
window.TextDecoderStream = TextDecoderStream;
window.TextEncoderStream = TextEncoderStream;
window.TransformStream = TransformStream;
window.URLSearchParams = URLSearchParams;
window.XMLHttpRequest = XMLHttpRequest;
window.XMLSerializer = XMLSerializer;
window.PublicKeyCredential = PublicKeyCredential;
window.AuthenticatorAssertionResponse = AuthenticatorAssertionResponse;
window.AuthenticatorAttestationResponse = AuthenticatorAttestationResponse;
window.AuthenticatorResponse = AuthenticatorResponse;

window.pageYOffset = 0
external = {}
external.__proto__ = External.prototype
window.external = external
window.console = console;
// localStorage = dtavm.proxy(storage, 'localStorage');
localStorage = storage;
// sessionStorage = dtavm.proxy(storage, 'sessionStorage');
sessionStorage = storage;
window.localStorage = localStorage;
window.Boolean = Boolean;
window.sessionStorage = sessionStorage;
window.fetch = fetch;
window.navigator = navigator;
History = v_saf(function History() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
BarProp = v_saf(function BarProp() {
    if (!v_new_toggle) {
        throw TypeError("Illegal constructor")
    }
    ;
})
Object.defineProperties(BarProp.prototype, {
    visible: {
        get() {
            return true;
        }
    }
})
Object.defineProperties(History.prototype, {
    replaceState: {
        value: v_saf(function replaceState() {
            v_console_log("  [*] History -> replaceState[func]", [].slice.call(arguments));
        })
    },
    length: {
        get() {
            v_console_log("  [*] History -> length[get]", 3);
            return parseInt(Math.random() * 10 + 1)
        }
    },
    [Symbol.toStringTag]: {value: "History", writable: false, enumerable: false, configurable: true},
})

// window.window = window;
// Object.defineProperty(window, [Symbol.toPrimitive], {
//     value:function (){
//         return NaN
// }
// })

history = v_new(History)
// window = dtavm.proxy(window,"window"); //代理器代理之后，会创建一个新对象
window.self = window;
window.toolbar = v_new(BarProp)
window.locationbar = v_new(BarProp)
window.history = history
_setTimeout = setTimeout
timesIds = 0;
window.setTimeout = function setTimeout(func, delay) {
    // console.log(func, delay)
    if (delay==0)func()
    try {
        // console.log(func)
        // func()
    } catch (e) {
    }
    // _setTimeout.call(this, func, delay)
    timesIds++;
    return timesIds;
};

v_hook_href(HTMLAnchorElement.prototype, 'HTMLAnchorElement', 'https://www.jetblue.com/booking/flights?from=LAS&to=BOS&depart=2023-07-10&isMultiCity=false&noOfRoute=1&lang=en&adults=1&children=0&infants=0&sharedMarket=false&roundTripFaresFlag=false&usePoints=false')

window.Reflect = Reflect
window.Error = Error;
window.JSON = JSON;
// window.crypto = crypto
window.Uint32Array = Uint32Array
// window.window = window;
// window = dtavm.proxy(window, 'window')
// window.__proto__ = Window
window.undefined = undefined;
window.isFinite = isFinite;
window.unescape = unescape;
window.TypeError = TypeError;
window.Infinity = Infinity;
window.structuredClone = v_saf(function structuredClone() {
    throw TypeError("Uncaught DOMException: Failed to execute 'structuredClone' on 'Window'")
})
window.getComputedStyle = v_saf(function getComputedStyle(element) {
    v_console_log(' getComputedStyle ', element)
});
window.matchMedia = function matchMedia(type) {
    let t = v_new(MediaQueryList)
    t.type = arguments
    return t;
}
window.clearTimeout = v_saf(function clearTimeout() {
    console.log('clearTimeout ', arguments)
})
window.window = window;

// window = dtavm.proxy(window, 'window')

this == global; //global就是全局上下文代理对象；

this != window; // this 是global 但是 window是代理器，所以这里是 !=;

_console2 = function () {
};
// _console2 = console.log;









print('-------------------------------------')
console.log('当前times', times)
print(events)
print(v_events)
// window.debug = true
startx = parseInt(1000 * Math.random())
starty = parseInt(1000 * Math.random())
endx = parseInt(1000 * Math.random())
endy = parseInt(1000 * Math.random())
// window.debug = true
// window.mouse_move(startx,starty,endx,endy)
window.debug = false

// window.mouse_click
// events['mousemove'](window.mouse_move())

// debug = true;
setTimeout(function (){
    var xhr = new XMLHttpRequest();
xhr.open('POST', "https://jbrest.jetblue.com/lfs-rwb/outboundLFS", false);
xhr.send("{\"tripType\":\"oneWay\",\"from\":\"ZLA\",\"to\":\"NAS\",\"depart\":\"2023-04-11\",\"cabin\":\"economy\",\"refundable\":false,\"dates\":{\"before\":\"3\",\"after\":\"3\"},\"pax\":{\"ADT\":1,\"CHD\":0,\"INF\":0,\"UNN\":0},\"redempoint\":false,\"pointsBreakup\":{\"option\":\"\",\"value\":0},\"isMultiCity\":false}")
    xhr.setRequestHeader('user-agent', ENV.navigatorparams.useragent)
print(JSON.stringify(xhr.headers))
}, 1000)

// fetch("https://jbrest.jetblue.com/lfs-rwb/outboundLFS", {
//     "headers": {
//         "accept": "application/json",
//         "accept-language": "en-US,en;q=0.9",
//         "api-version": "v3",
//         "application-channel": "Mobile_Web_Android",
//         "booking-application-type": "NGB",
//         "cache-control": "no-cache",
//         "content-type": "application/json",
//         "pragma": "no-cache",
//         "sec-ch-ua": "\"Google Chrome\";v=\"111\", \"Not(A:Brand\";v=\"8\", \"Chromium\";v=\"111\"",
//         "sec-ch-ua-mobile": "?0",
//         "sec-ch-ua-platform": "\"Windows\"",
//         "sec-fetch-dest": "empty",
//         "sec-fetch-mode": "cors",
//         "sec-fetch-site": "same-site",
//     },
//     "referrer": "https://www.jetblue.com/booking/flights?from=ZLA&to=NAS&depart=2023-04-11&isMultiCity=false&noOfRoute=1&lang=en&adults=1&children=0&infants=0&sharedMarket=false&roundTripFaresFlag=false&usePoints=false",
//     "referrerPolicy": "no-referrer-when-downgrade",
//     "body": "{\"tripType\":\"oneWay\",\"from\":\"ZLA\",\"to\":\"NAS\",\"depart\":\"2023-04-11\",\"cabin\":\"economy\",\"refundable\":false,\"dates\":{\"before\":\"3\",\"after\":\"3\"},\"pax\":{\"ADT\":1,\"CHD\":0,\"INF\":0,\"UNN\":0},\"redempoint\":false,\"pointsBreakup\":{\"option\":\"\",\"value\":0},\"isMultiCity\":false}",
//     "method": "POST",
//     "credentials": "omit"
// }).then(r => {
//     console.log(r.status)
//     console.log(times)
// })

console.timeEnd("处理完毕，耗时");

//
// const express = require('express')
// const app = express()
//
// app.get('/', (req, res) => {
//     console.log('当前times', times)
//
//     var xhr = new XMLHttpRequest();
//     xhr.open('POST', "https://jbrest.jetblue.com/lfs-rwb/outboundLFS", false);
//     xhr.send("")
//     xhr.setRequestHeader('user-agent', navis.userAgent)
//     // console.log(xhr.headers)
//     console.log('结束times', times)
//     res.send(JSON.stringify(xhr.headers))
//
// })
// const port = 3001
//
// app.listen(port, () => {
//     console.log(`Example app listening on port ${port}`)
// })

let reProxy = function (tt, name) {
    return new Proxy(tt, {
        get(target, p, receiver) {
            let res = Reflect.get(target, p, receiver);
            if (p !== 'debug' && p !== 'Object') {
                console.log(`${name} get`, p, typeof res)
            }
            // if (p === 'offsetHeight'){
            //   debugger;
            // }
            if (p === 'exec') {
                return v_saf(function (args) {
                    console.log(`${name} exec`, args)

                    return /{\s*\[\s*native\s+code\s*]\s*}\s*$/.exec(args)
                })
            }
            // console.log(Reflect.get(target, '_cf_chl_ctx', receiver))

            if (!['_registeredHandlers', 'window', '_currentEvent', 'debug', '_eventListenerss', 'top', 'prototype'].includes(p) && res && typeof res === 'object' && typeof p !== 'symbol') {
                return proxy(res, p)
            }
            return res;
        },
        // getPrototypeOf(target) {
        //
        // },

        set(target, p, newValue, receiver) {
            console.log(`${name} set`, p, typeof newValue)

            return Reflect.set(target, p, newValue, receiver)
        }
    })
};


let aa = false;

(function z(r) {
    var I = {}, k = {};
    var O = ReferenceError, T = TypeError, N = Object, V = RegExp, h = Number, y = String, Q = Array, X = N.bind,
        d = N.call, K = d.bind(X, d), w = N.apply, L = K(w), l = [].push, C = [].pop, e = [].slice, F = [].splice,
        H = [].join, q = [].map, p = K(l), g = K(e), G = K(H), J = K(q), f = {}.hasOwnProperty, s = K(f),
        a = JSON.stringify, M = N.getOwnPropertyDescriptor, U = N.defineProperty, B = y.fromCharCode, W = Math.min,
        E = Math.floor, R = N.create, S = "".indexOf, x = "".charAt, m = K(S), A = K(x),
        Y = typeof Uint8Array === "function" ? Uint8Array : Q;
    var u = [O, T, N, V, h, y, Q, X, d, w, l, C, e, F, H, q, f, a, M, U, B, W, E, R, S, x, Y];
    var n = ["1h6k5T69nZ8", "gOxVSuVHaQ", "EwOh6WuK_oBFPtgrcCgX", "reduce", "30E", "75ZARu5LYCXJkyc", "open", "characterSet", "type", "a-x4OctzQQPMyA_h", "JcFufNR2IReL8hz9", "ypN4PMV_ZjvA8Bg", "6qxXBel9e0_SzyGq", "izXgoU_1x9QLIZgFczoT3vp82621Qv86sg", "yjDP1nD3-6dQVg", "b6V1bNF3Pg", "dn_YmSDpg_MqUKAr", "QhvH2DHa9atHSbpCJRAZw9EQqdGocYt879J_NQE-W_prUPI4PiX4rA57FUL-5FFVqQQ", "5fVIGsU", "wIwQF_E7J33wsDaZ3N2W", "any", "R70jI5M", "iGmo7Qqtt9klJA", "ta0JA-0_aET-2WGYyZLdYUg", "__paAPZBIA", "Symbol", "YG_AxUHA-oA", "UfYEWrAAB2-S", "\uD83D\uDE0E", "prFOQ_dffwg", "gMMrU5UdVE23", "UlyzpEGOmQ", "gGes9E-1lYk6NA", "KpxUXPZYeCLM1g", "26JdBfoGPA", "oLNlItwFRS3nk1vrybquGAvgA3tv_xg", "set", "dnH5r1Ld25RSMIUWewkzhg", "tZtzK6ZsdAHN", "QqVxdexRejo", "Y-ZaSPNJci6v1Tuat5fXewLvSV92xFj4AQiK", "mXrnpQfHsA", "05p4JcxXFzf7oUTI6ZOyG1ucehJL9i4", "11", "writable", "-f1DS_ZaYDeuzQ", "n9E", "TE0", "T_oIUr0BGiHf1w", "ceil", "KcYLEboEZ3K5_Wbc5vnhL0WJaUEu1g", "RG_amn_c", "kTb7pFnozuNREZwYWTMf4OEvw7O4UME", "1Amy5RaJm-V5BLsXCRs0_w", "-skuKJ4VUg", "DIAuZ507J1fM7VWPqraKWX_1", "Pz38t1E", "KptsNM5dUAw", "TNZ3adp7eh0", "Uint32Array", "c2vH1Xvo0pQxeot1PmV0-rx5ga2Wa6tAoQ", "MugVRqIrF12Hh2ik5PfpNTrfSTs2iwyUJ1_u_YScvFHZ", "E5Iif8IPeR_5hU3V0pqM", "vvxVCMpMCQLG_Xk", "-k-jrk-owugxH5Y_Z3duvL4", "Cxfcn1D4zoRSRaRIJigD8fUWl_P9", "H8McX75hFlGc7Q", "MXKonzeDoco7IakuPyFbwg", "nodeType", "charset", "Xa0od54kVQc", "no9yOdI0bjnWlnnU5Q", "2Bedwwq_ov5KCf8", "Dy7Iln_J0Yx8SrVef0w", "zJsBFQ", "TGrJ6FXy77go", "NEGpjRylycssX5g5VnF8", "Gr8DEaoQK3f2jHCH3YaGO0qCY19yrkm7UxmI6IL_iDblpSyHp6lDc4Sw7ZkuIoSQZYBrNjc38XEcUsUyu3RMDvr_toERkNWQ1Lddcl8mA3z44GDRH5rkDV5Itx7oX7EPUoenSfuOxshucyejD1ABV6h8oVWUWSwyrecs0kVj27kLBrpVtmEPrSxWkV06726aBrlThvUEpaja3YKH7lBT12TnJywO2jvlSGFbXXbWnM0Z0jBropVcDfA3LFQzQv5Nr2NhtfONwB-m-Q2S6DDnOiAUdjE7D_STSZ3V1wbgSbnH5dys7UMKxidLQJHVfAMmFqRnMivMZ1cHkqTjqqjPPJPmiK5AMz5tow3JnTiyzk25xaLIWTPZcu7BsEzjyBCPTkPgdxWcrcflaLZ9vZ9fA_It8TXf", "deRESPlWcCet2z6hipjWRA", "-TilphqwicRQ", "ioNHBs0cMT8", "DKc3PZE2", "\uFFFD{}", "3KcACYA", "\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67\uDB40\uDC7F", "QCKx", "dzHX0XCs", "tckTDawgZ2_D_CKT48nb", "documentBody", "9MR_a8t2RC-a6AbkkrvUHDn_AA", "getElementsByClassName", "u5VifogEKg", "ruNwNONGPg", "8D6FgzGFv54rULlwBUNS-pNQ9ZKRI847u59gAwpGJt8QNo5PVl_f_m4iVTHt1ilOoBP6pNj5dNnOy1CEIerG", "asR3MrVI", "7GeMl3uVuekMNOAebl9a", "hawnew", "height", "M3vi51fd9oAa", "Oxo", "xLgPQZoIAHk", "4-h1dYA", "MSqPnHOOrPdMC_Na", "4mW36wausd8qKt9X", "P_Fha8x4QTif-hytmA", "lRuAjXm79actUO4", "lNw_DoITGmG-tkT4xcq6NCejRi9Iq3SYMBCl3bK3rDHbmzno2ugzMvGqs7EsCNSvLrtBFxZE1VcpMc1vi0xDIdyn9vxS48f6idkQUkZUDCj0_3PIFg", "9IZ8f81gAiLw92jjvQ", "dWuLmCXjgcdfIM4tXA", "_gfjvkflwg", "log", "RMhid9YgYBOf6Ufn0NWvKyqx", "hasOwnProperty", "szS1th77jw", "ZSI", "defineProperty", "BlKEvg", "input", "uVWRwyi7q8A", "hqF2POZfQQg", "TjbwvFq97KFTHPxdbTMbo7M", "RangeError", "SEOJmzePp_8IAasWMhpW1NtZpZKgfY12-JlgYEE6Xek5DpFsama9_kQkE0L49EpfpUv55OaydOLK7kTuU6TLvms0WkLQRh5dTgaYpdyp2vB5OrpA7RAzmrqhCKYjzDmWgH5k2UJOcWnq8vhW1buLiiKub9Aik56mXCe0EMGoMm3MyH3YTafILaDUGw", "DPszfoZ_", "aOcFFJ0j", "capture", "byteLength", "TOBxew", "isArray", "GfI5MZg", "o2zbjHvM5Pd7QOlo", "2ew0Z6MQKDqK4F_UvPPGDA", "lastIndexOf", "3gr5rUywrw", "EQqjtUOY7OtMbA", "undefined", "MvpAE_BIEW_t0w", "5VmByCjE-vQhVfQ3T1J2", "H1bj4APX840UYY4j", "ukyoshqP1vAiKqs", "rv1HJZgVSjE", "u7IjNuwZBUTD", "1eF5PpxfeEeQyxqWsu7K", "crypto", "4xW7qBW2ipcieJVcOmc", "5eIubOY", "\uD800\uDFFF", "W1WI1wg", "cuw8OtkJG0yS6R668A", "T-ZUT-5f", "clear", "TDE", "Y85ycIJ2Sw", "V8hxI8J8fwek81A", "GEigjBm2mQ", "IYM7Ks4iOg", "Si-_ow3opuxV", "ndQhZ4Eh", "lhSLiD6Dk9U", "cXk", "initCustomEvent", "KlTe3XI", "Promise", "ui_xpFHl07xjdI9AQHI8vrA", "htdGWq5IeBjBgDyG5Mc", "getOwnPropertyNames", "28QdBZUnS2LHzTuU6NrWI0_JKk9gvg", "KTiEli2XrPBxC_laeUIPjq4P_JnnNt5h4IdvLRZ0BuFhJ-YLISev4F0yEBLx6w", "message", "href", "bind", "CvVWSfNDOCSt13ebgtXeYhXNYkEo_hTkTQ", "-dEQVocHPB2u6XPbvtjyDz7LIE1B", "rxSougG7gNxVKsYiWXcb2_8u0OPQLKkvubxoB3FVYIhfGctpAhnwyHwbRjKFiS87zivAnZycWtq3-W6ZEN_np1xKGQXjKmUzSG6y1uWbps5Dcrk3uDMGq6C3C7dQ8Gzi9HYCzBoicGLJ9cNUnaHksF4", "t6NKUaI4H1LN", "2", "H-Aob5MLFmu2p0DRhsHjTBDncgETtCGzAAyGzqytiy_zgR30sLlwZcjqvtxnGPaCF78NOXdKvlpYbapo8g", "rSXH33LborNTWQ", "setAttribute", "H1eBojqesM0OCORJYVI", "G4ksZIAFWQ", "bjuk9BKlk60JetdUUH9jwadm", "filename", "g32HpTispOo", "K2iVjDeLrukLU7xTPl5RioJDqIm5OZIyqw", "wddwIZpcJGqD8wzGuw", "H3g", "documentMode", "complete", "Object", "click", "DRy9uwSiju8", "vQWGmyyWwtFx", "S0Wuuz2MtvRRNekhTzMQpMEJw9E", "3Kc7To8LaWy9", "xAOX0g", "detail", "10rx_Af08t0Y", "a79MTfZaeCPMiDjh5MqKAw2ONkV6qVexa1yyv4fszjnr00ywrfVsKNfw0pQqM5yeNowiNjshpj0VMoA4hDcIYqvunZgMm8yC3cNKehp_", "true", "w3rl8hfWuYk-dvM9PzNl_A", "cKhsO9VwHyX10Hz29Iy-d0iB", "Uint8Array", "NAOpo1eNkeNWLA", "DOtMV_1VbhOlySGZrA", "eFLM0XLf9os9TLpMAUFG8qdDo4W5eJMnuQ", "console", "kEvTiWb686dFBak", "YO4GXbsVLAnj6g", "v6B2esxVRxs", "KsgZBA", "eCH3pXLA", "mWXemCc", "frameElement", "Kr5OQ7FXJTXM2mfinJKZQEU", "slTypGs", "bVaIyCeBtg", "q8QeUqkW", "-Zx0fYl8SgeY8Bjrk7PW", "_XaaoAi-s9VIA9JeeyJfkZcf8g", "WluRniu89sd8HQ", "rHubiSWdte0aE-BbeVgN09pYp8mkc_Ezh4wvdhl7Xc8", "jK8OR_YcJwuH", "XIlxJvNhYSD87DPf", "61s", "status", "UphFb9FyVg_KzUf93dGsJAOhdE8", "H1ORzwumgNMPFe0", "JEPp8w3UiIg7YNllZHo4pa8QzP_bT69O3g", "wgqL-yiEhOdyIbcJ", "lupeRf5EdBWk1DOMkQ", "d1KMwi-boIBsUe5iCXllqIoXu-7FMpxB", "cpAER6wIeTWkjg", "WUc", "5XTI2mHb4Lw9R7UWOAVQ2PIGt5qhZ5Qttph1aVg7TuEnbuRKbXum7gQxUkKstQRx5EGq_ej3K5KbgAP5ZaeawDQaNk7XWxJGLQ3WuIyYme9tZfZH5wwj2uA", "-rgeHpU", "-IR_YNFjbivD_yybuov0Pg", "body", "12", "hasChildNodes", "PYxLAtxkV0D1gjCR3oSkf0KTchEf", "name", "Qa8rfqJ7Gn4", "QUDUn3nL_p87DeE", "jRTO1Hk", "TP82O9YcFQuxnnvOi5LQBWmaMAo37wmVeEnT_oWg3X4", "tnf__gfNuw", "n0acnTOPvPAfUNwhJh1Kww", "oCSo5zS91I1ZZcdlfw", "djDNn27Y--kVFaw", "Z4hoZ95dJiGe7hr2", "event", "stringify", "m3ic3yKL", "tUKV3yKw7dISR68lMXpT_adAm_eqEMEG-uxiNE1b", "attachEvent", "OoA_SJg4DA", "UE2EjyKPsugyb_VEEG18qpJQ", "DWzIgTTm3vBvXbg5ElU", "y9Fsa5pIawKq7hy9_Q", "tAjC-Eb515lLI8woemc4geEkycDFfg", "Ri7K117smqlcFQ", "joVOC-B7SgDB7CftuaqVfmaPCX1fzFLCeyI", "hc54f4A", "TrcSQLAF", "BCzejWTF4foa", "fXr9pljz35hzKIIG", "kmS1pgGugMgnfMNeM1ZdlYZ51vf_A7Q", "aHC04xrtlw", "forEach", "KC_u5k_Gx5hTdc9pRGk", "GVm1tyuFxNg4fZU-WlpFqopxn-PLDao", "FFM", "-A7ci3A", "X_4AR7xNJXev1Dfx0uPlKxKbJhMN", "Uq8QBK1-", "DOMContentLoaded", "2N18Jqldb3OXh1LSldDLHAbz", "Dv1fAtRGazOyzS_so4DpKw", "{\\s*\\[\\s*native\\s+code\\s*]\\s*}\\s*$", "A2Y", "sRS84with8BKIpEaYjMtnfAn1OThFA", "DOpGReVGeQqj2DX_xsPIbwPJIFQx8Bv4G0zHocqE9WOx4C6c8f0KONLil5Fid_-aY9UuYnhhowxJBoBKoD8FUvG86NNS2IDfnf8mDwpyRn7jtjSYVMy2d1YE4mU", "3Buf3SGD7Q", "rTeQzW293LtqLOp7czY_7dgE7dnNbMQbkY1Ob00", "R1W7tECKq_cnV9ouDx105cs", "(?:)", "some", "NRaLi2erselrIaoISFwGs6lY5oTm", "D7srOYc_Q3TT8gyvjOnzbjr6Ig", "q8YcUaosS1M", "File", "ebxCTP16LSWCh3nfvZWlVg", "iFqTyyrBpPQ", "ZmXAm33Q_ac", "0kSjrQyuxP8idtQaEVNVnYB80fg", "Fe1_eMU", "split", "\u202EGfKLUWvCn\u202D", "10", "1NhmLMs", "8WjBnXzT4KsDHqJkXFxgtg", "multipart\x2Fform-data", "TRUE", "-yvoxjD95Ll-AeBuGQVogsBp7cK1", "1", "Rv1CFutzbQLCwHDvttI", "-X_FnyromP0xVqAqFU5jq5M", "vfwP", "Date", "d1qdhx-3z7Y", "rFDAxErS9KA0XeI", "onload", "znbSw2PCsw", "_LVnecV3Uxi8", "YYh9c5pGZi3qmzTqxsGRLBOZ", "WUuQkyCFj-ouSQ", "1Te37Qayx_5IeY0lEzA", "MGrE0XbA6-liFO04", "yb9JVt1s", "M7d_fsZkRQ0", "get", "XshYB69qbHWChXWIu9HDex7WOxE2wUPlH0zT8YSuji-jvHmb-fAWJ5TXq4I", "d-tbTe18WzaY-z_qmLTwGT7t", "kQk", "YaRCUrZSfzK2wg", "f_dJQrFucjyP1jeQ0sCJFRm2JAhh41X6cw", "HCrEiG7uuYpUHw", "EBo", "hXiqo1ifnw", "PR7jpmSoh59T", "Aj6tpk-2ldUlbdlrAjtkog", "eFGwohmHyPJcfYN-Zg", "LQg462vh", "2UE", "PNtEHfVlch_lyieo", "fw2MlCKU9sx5X7wfJAFH", "u0Hoq13h29gbKJQEOg", "action", "aEeBzRE", "E3zO3GG19-hgBOs", "vXK54xW02-seFach", "VZwZQr0gF2T2mw", "srUFUeY", "Document", "KpgGEaMwW3DUxTSogrPoZA", "push", "w2mwtBq9w-g0L7E0d21W0Q", "ysINQLRQcnmtiHC-", "Z-N0cqhSXwOSz0U", "99o7b8gWPgWB-hc", "7NwKUJgfM1m8nnOhq4T3ag", "T0vu8h70", "DKwNBrJwDF79m3jR9w", "head", "8lWTkGr_wpQJ", "0UTFk2-Z-JkXUfho", "GIhvOP1vXjPX", "createEvent", "yuBrddx5CiXE", "gutcAw", "WL5VHexB", "39leSuNRLDL7x22l_snOQGXAHEV6uwG6ZA", "UVHy_Qrqjcs2", "wos", "QD2AgSWVqLx8BfEIWAEM8NwW6trxO9wyx4w", "AR--pFaVi4g", "AfdcFaNWdzuWgA", "toLowerCase", "xG6eyDGMsrpAQeViDQ", "uXHMgiWZlg", "h9ZiJOhgIibvyw", "8zqc0yyP96cv", "beY", "-HrX0m3C6J4yQL0YLDZ84w", "WdcZSa8CK22KrGaqvYDVSUnm", "xhny80H1", "4r0fFf0QID6Izw", "call", "pHqWmiuagPM-F9E", "R58YCbQbZ0f3", "oBC-sgO9jNQ", "5xfhtkrXvLNfKw", "rpMSC7oBLWba", "vv89OZIvAUa2p0r90-HJLzbiSDlInQ", "iPsldw", "wR31-Q", "hjrc0UT_rqY9G-MwC0lA8YhS7cGUZL5D0A", "L5kJVv47PSTT1Dad2cmaL1irJFU9rVq0UwqMvtr632jyoXM", "6\uFE0F\u20E3", "-iW16kOF", "arsLBbVgJmT6", "cOZvZJ1CDQ-r1lzv5_s", "0YpsLMI", "FdxkINVbDQg", "b0Pe2mjom7Y", "3rAODZENM2_xlmyK0auWJ0eEeF51qFI", "jphcEfEMMyI", "8K0NArUALTelxAnigMDbaRrfew", "0", "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=", "WOk", "ACrYlXzzvblSC-RCIBU00Q", "za0eSrUOIHjltWSJyJndKULZbVdssR7gQRaAs5rrgT_7rSeTsrZRZpjr85onK4OLYI56azsy8nlDQ8Nps35PF_37o5E", "57YgMokzCFTVrxypn7_2cmDjC2cZyhSRSDDXgPOb53XC9Umdk84V", "IvhcBfBQZ3zrmCa9gpqVN1KEKQ1r5gj0aEP0jZaDwhmi7nTX5v5YdMOa4MdgCcXZJoQj", "slice", "qizop0j30NV1bIcGY2wB0uEh3fY", "RZIrZ40-OFjI", "YQr570LShA", "opovO5hVFg", "r_J_I-RWdRi55g", "OffscreenCanvas", "iDHDmXnj-Y5QWL1rKg", "BPwcEL9PIGA", "As1xL_xvQ2Cd6AX8rA", "parse", "Sx24r0-xtelFLuVBDxVl3stt", "_vFcW-J1Mx0", "w3rW6Uvl2qcNdJFD", "jO9NTrV2fDuy2iaB_N6GDQGl", "ihfIyWDYo4FuFv1R", "KJ8GD6IHaFDl_zabooDXRQnf", "\u26CE", "-_k", "cMRie4VVDxi64G7o5_C9LTg", "FapwPetzaXPXowen37-YTnWITio5", "Q6FkOMh9XBHs7BHUzuauLT6sQHdzl2_WR23qmeKTqx_Hs1-kjoMRXLTf9-wHNKm8WqRACEUc3EAnd6lTiUR2IpLHmqctrObr_actH1ZAMA6NhgK3BN_Ef10vn0PeOMdgK6mOIK7u6blUXRaoJkdBUcZb0yb_Iiod3ZE__Dlf_888M5l9mGEmgxd3s2Jdz1SoPYc39cI2i4P42_arzzU7sAedQ1sSsxTRWE57XhHv-vg-wFpNgLwqLYIfOCcYKsldzkUbroHr7yWAziG4mxnPERA5WABcfY_vdvLy5j3Pc5TkzN2WnTgt8QF0L-C3eyU4b_UFCCqrEXRvtLCQiMjiFqTbqb4zHApajU-xoynV8TPis57hcAHwQ8fomS3C8CynZH3cDBGnwfjJVJ0OkLxsHpoExA6pcvG2Gb4TJnxgDLQTPh4f81fnSqRKA8jtfD4EGUpU9pqe0K04cVAhHdZpvpmUlpOZpmILpo8t-QMd8dHX8JA5s8FkT6R5UHPXZbk8IlSQzEYpZKwIZqtAuNw4hy_BCgKQ5_hipWJALNCkpDW7Ld12tMCeJGfNkyq93Qv1ZcxZE_5JtdGIwcDaKxlSxAZ4WUPGKa_x_Hqe6Og_ABafLeTQiElA60V0m2C53VoOwDS96h4dX-bRjEIjpf_2b_N2nY1wTHBT8WfQF3RqhGxxkTmtTg-T3cj80Ei1W1ghZOQ-zA2SHbvciXv1TPpWCX5Vpb29gD3uTQ-_q1rk5k_hutr5Mpn5aRv9axHuibvcdIPF1p6IKTJ1bW8dYt2w1YovQr7g48pYpeaB_hhEJ5Y43h_R2mu3TofOn2Gd0-2wU06GfT5Ek69uLzt_TR6j4UoLB9DB8K8HMCDujvwnFR_WGRJKtbPclDloDJ15_5JHWxKXzqyyooTsUIv_g71wL_O4ueGbpWWNaa52McAQgD2zCORYxJQXOOid9i-DUi4F8LkWFl3jAzyTMq1vUqzI95e7IEuhbTtGPjAvbI0AWGFXj_nx7C3L8inzAAsP1jyWmEcPci6y--JcIPiA36ny8ya2-ja-8dGQmH-2HtiHbINtwq_ypc3IeWYPJpaxGBJMYmiDdIVuXbLW1gmX27N2JqU02KcGcCZBSJ9l6lW-llrVmzde5ZFPo_GFqiRHp7ReJ1HJvAOmg5ZtrNBDUpSavrCOpMPSnpnhpf2ad29jHnVB-9d7--S4K3MBDROjSF9OBvwTPx-HH5StSYGqzTl8vmlt2QbP_plAERstflEZuAqrMhJs_A17SfeUIM6GpbJRVeriNIKduwlXenVSGK3HsQW__KWuEe4rR4qL1pahcjTg0xgQBHgZ154uTtEitXAeN0XDjsZpxb10q2mUwxy3lOa51OyC9kwS8jcy_weBDxDekXGr0b4RRF3SXv7L5l3zJrFeIIMkurDSMXxnm8hiEL5hEWTeUctu-EN3yNcINCFuaKUalFmIi_nzRz8KodbPhXnseiPICUUdCkuAdgVSTqliiXRyQWPH1qCeogCLmjO2SYWQbd0t6ag62Qz7miduB67asBRWxNFShy7XfjCRgXjk4IAYW1N54lisGmQrE2grWWV7b-9pxDVxDOXSflfqvoB4GPsGjYFESuSLAcDuQBMJop-2jcUJ3Y36mAKeXd8oFTEXTZl0IO7mrnCC24z8WkZHet5n2IHDBWXR1vhmg9dioON2DvOO0dCYS07Znb14HjKYKE9Co6KJOQWhA_eoQf8w3iuJ0WFHu5T5nHWaYZ0aT4GUBggEyvgoVCnrBge4dQVpYgWd6piRnzCZz86Gn0D7KXyv_UVbKE56IE-QbfXrWayi_EssgoTKU3u5yF8IgxFaJJ9VnNd7cDAumRsaeFi6gABqwk477RZ-96DCW3MLgdQzQNKQsCKDZDXGfP_0vbEEFSeyJlAx4iq0p72kQfpF4YKCd6K8UlcDP0MN7kD19LSHRyPJf-2VI9gJ3onOEsdw61QBfNTelc9Fx1R5K1lwskNDtQQP44M_roX6VOhaudfZUEplR2NApfYs1NeLKR_4EfQaJsvUkf8XwJJxhzKh-DoiytR3Y9QCHRGD5kht1s5cmc-kCQO6qhDse7lLGwV7x-y8Xy9okfbklSizvJPFDjNfH3wNqU6a7QcTpf8a5zbRINQYByE42yJW553m3Hyvwl6suVqkWa0BGQUk3j6lU43umBPUWDhuP9v40bxJRNvTU1Zkqu0BJINQUVPyCQHLkAm3B5p_At17qTyWMkWqE0TBjto9dYPPIPrTF5eRVBlFQn3dx8Zlg5493Wfkl1Sfk9IsFVCydM6fB2oeKUG6KGfHQo8WzLA8r4ULpQPJ3w0ArOUqAsSnCOYL2rnQQQX2pyeCFk6DP8c5CdZ8kHDfQ1IMNW7mz1XeIrB6VngJ-mhsuRHjuBOGcmaSNokbG3I_bKZS3hXr97K7rv6vphOVr0QpT5vrUuOGvmSwnilBUfgZHcNJUZiGMbDDxL4jW8gKQs5XEE6YAmBAEyu59_L4p0hNn0mpD1KnQ7pICT0xa_XhRKsi-4kEjpdSLCLxBF93czc0TvYVK7xLTHOfRgiO5tTn6OIyu8qeU4aNpaA5zeQgFQGvMdSY_W5AW0IczVUWqqf78cbLl9Q5iQ5kFdniYYvbVKVRk3eR2-6r256fHGzh8pQ1xNJU-95obSXiHH3ig-hA-3cO39ZeLm5oiH0YIHGE-JQxeejP6_ZhZogCRbGFFftdU89ii-N40vQo616jGPLWfnxKtPZyel3wEnNb5QSAaQOwopesF9ZWf_lAihEKeA8QUXrjy7SEOKwVqY3w-ybcJtQJXxvNCgj-f0fydtvlMRACd4WFKs2Lsd1hWeGEPhPtGErdHo_Q6J2YFwI-vnRFwBCwS-y1N7yObnAxzpL_GyRVSot2oEc_2x_cwYwBgEAP7chjArATVwOIBqcVF0wcpsgzOhJYPHlsgBx8MQcE_Gy0-qfjEsl87clUMrfV7uDGIf0zmxQWg3l50BM3fG9lwInfxOakD7blr6CTz7jRwaWij-YH7qCUqhVswxdldWqNMGUf2ku3syOByXZCT_xMm9B66n9O3QmkiyJGLcUfccq9KHNo6Bq4v84EHQkd32U0ODg2ggffyECCSB6zEHvYtf9ZsmmLI8YX4N5fzKthBGjDVfTCXa8AhFjI6eBMo-hVyR9UiANrrh89u4Eg8vFjxl-s6nMUOA5iVtWGvEYC3F8sZKx1OsxcFXwXf5AufTfGr-PkgYuFIzah6utZ7dJpTvzcGPoPLp2LnYcfBi0JuF_218A0oe_g3bog2B2nXemtTeD74b6SLTU", "MW2Axj-j-O0", "Array", "H8oeDrokK1CG", "hb9PFMwvZB4", "bHqnshri", "7HimqQq8yZRIF5cV", "6N9sechdSAiD7wySm6z4bQ", "AX-78gavpMQjOM8rDChx-fd_laOZQrwCiQ", "mzA", "vBXx6VTYnZEaKtUzJ2Jv0r55wO2QVJ1s97ElSwc", "6vwoLq8yCE-ewVHWnMDdCDbxblVmiw", "i0jk6lL-mI4GHsF1VnMFkewMy-GJOKNs", "hCmo8TKhi8RwMNEXUms", "filter", "4nqo5hq9nMoYOA", "TuZsJd1GGk7I9ETTjr2_C2ym", "H2OVkCeXsu8CGfZUYU5Gl5hP-ormJZ0lu8ksfV5mBaV7TLZ9dj-h6V4yDgiy", "D2Hf2mDO-IomRq8GKBRQ9PlPhdK8a4gt", "_IxQQtBAYhL3mi0", "m5ooMZwLJUXohUg", "Ded2Ieh_QQ", "iKpsa5s", "Vxz0-0T10YdrfpY6Cg", "PY0RWPEy", "JqIPCrUaMEXpkXaW_uW8b06SYFhx", "dpplU7F5", "setPrototypeOf", "FoN4YtogSBGV", "typeAttr", "8", "45ttHw", "CD7W0mr5qa1eBw", "vId1", "window", "CYMjZKk5KVXP", "2l6tqxGhkuY7PcZmSHsJ-e9s", "kijfxnc", "s4QTCLlaenrJs1ym", "all", "bEfjuUPY", "zwr26175yJ1RZcJjWQ", "L5kuKg", "Ll_Rl2DVl5QsFO9KYw", "fA7mukfq24RRIQ", "nfdW", "_heitUqZhcV-JcBnJTd-4u5B0_-PHbVO", "4", "Rkif1SeesucCEudCJEJN0o5P7prmLpsl", "qC7j-ELVx7FiZONuXQ", "5d4uOqoXAESE", "C-dlbMopeDmK5xCl", "xF-MigWdp-sUWeFOEGxnkLNd5cTH", "_fojLpAAF1mjqB67", "huAoMZAnAFS0hBGnng", "LkyGjWQ", "WqhfU9Rkdj-B2Tjhh9PZZAnJCAAg9g", "AeQuPJAoAFivph23hKzxYmDlCTUc2i2MCjLniPOY4UaF_AfhzcEaWeODtLNMW_foCfUSRlpNiQ9sNYId3QN2XJjTheIhlamvpJgFTgEQRBHf7xX9G4PMJgMk_gXdOPMpM-nLGLjy9ZkKQky8HFYpfvNek3-tZm4dxsdlzXUetoxlMIRtinYdl08m2CwU5BigUY4xi-Ew3ur8irPssw5n_1b3QQ0UySWLE10sPR2nppQqnxUYwNFnbY4KYDgEc9dMrkpIvdn9oUjThyOiyTSCbBtsTWgXe57lOvmg5wqcYez2jt-uxgVppQh5LPqoeQcTJbl1Nj_tAXIt", "HL1UQ6t6dTP_iTvS19mBNACQcFlszBWnQA_erMCqyHu7_iTWs7JILN-bqYV1KdiKd4tBYyRr7yJFRYA", "NZ45PoVVAUM", "nSrB3GHSsLEvFg", "Tl_Q", "sin", "QHGKhiGa-Q", "children", "BhzWkVjX", "yEilpzO1yu0", "pcEYTq02FjiEi3r34g", "mV-y4gTN-v9LIs0", "_lTh1mSEuQ", "ks8TTrs1bWGbrws", "KTruvgu9nZ5bMw", "yjz6_Ub1-IhAOs4", "WNdVT_Y-EgSv3TnZ", "encodeURIComponent", "f9oAE5Y_PGXW", "I_F1Md9YXiPI_BqS", "kgPb2W_A74t9S-ULY0Q", "N-8uNJNt", "nIYsKJMzDlPvslvl2OO0", "TxDZnGiKq6lhXq1mCB44691hu6rRPYsV", "VNIWX6sCCWmOlWLjtITKTgnZMkAX8B2iORyU65Gk1W7wxSbXuftoJ9roiZwhXd_GCZUNejR-oE1RUIhysWM2Ecnr0Z1Podif", "0qIZC7sWCGrmjGw", "YV3O1GLGoaQdDPheZlMg", "dxi77x6s", "4BaEyTuEu-ZtUw", "v_9jF8x2cQee0A", "h9AsMpI", "3", "70", "Aw7t92M", "sort", "from-page-runscript", "Tp4OV_InRSz0lWj07Z6wZEaee2FZ-UuSBRrZ8cTwky-Xz2DO5-kzcIDk", "14", "vBij8R6p2sUqIdUdCGgvsfYl", "3Fyp8gSqw_0wIc1LKg", "_uQhfY04GVSpqVSRi6PraHvpBTI20iqTAiiv3KfW7lqC9hrhy8ZUGfGasqhTa-jkL68dRxNCllp7dr9OkFgLLcvW6qFp0-O-oOxxTy4ZTQqL2huvEMHOOhlhgDeOO-o5UKzGOMbk_9VLGmq2bQEWGLEZiSToYHVG96c97hZp56Y5ZMY71wwo2EUn4i4BgyixaMl6mMl4lOn1kLTtg141xQPbAFkCokaWDg9IaBP31s4mq2xFyPlrX7UecnNLYZUIsnIT58afvzbH5Bei0xqjFlV9DFk3dtCgOLK8-CI", "ZI5hecNnaDvZnjfK68GJGgaf", "qjDbyn-E_b0wS7hdLXph0fUgxt7UB-UOoutOUA", "cnGz8A-shOcyM98UBT975g", "getOwnPropertyDescriptor", "S27KknHd8bkpCqd7", "mMMZA7QFIzjdm2SE", "5WOttQ", "123", "6", "6BP9_kk", "documentElement", "rR6gqxy5j94CCg", "DtAPDKFa", "LeZcM9ZYbRan437d", "jR6nuBnSoQ", "7u1QUfVFeGy43iPaqMfxLwbHJQ", "2zi26A6y24RLfMlqYTpT3-QnkrybWOo05eJgWjdHRdU", "zU6ImHWfsuk5QKUK", "YNxvM9RjURiT4VLCtvz1RiXURDE6zGycTQ", "mTms7h-hxoNLbc8", "b5JESOpRHVPexWk", "OYd4bsc", "Uf8eWZcDKC7P1WD1mg", "unescape", "00nOwWvL9aM2GroXA0pW7pxZr9iqe5Qswtx8Z0N6brc", "VlGwqheI2fNWPcM", "YfZJVugSfGA", "3pQWDKJYDWbpn27E38GPKiQ", "m1aanjaK_8MeFKkDRUdt_Yh98vOpSdIDzA", "mvcjZZJbZVaqzEmN", "Event", "Hm6vuVyFuMIqJch5Cj5-qphl", "boolean", "o1zn5kD809c", "zOV4LcF2AnyVtQ", "QJhCUOJ2Sw_ttUS72Q", "vRqUyiyQ-aZpXutIQxhx_cYFsJ65esgWx8BCDRRnFvc", "1AO9jB6IofA", "IgzJlU-eqKx1V4l5EAkm6MFGr7jUI4gXyw", "ZHTztmm_zA", "gzKDnD3uv-ZlBOxDVUV-4tx89tfuao56q8AZFhd3FPJtZtReN1fW-xh0KljrzU8QjA7nrOm0OY7ByCOnMOuf2hdoMQ", "JqscHrEA", "iHq_4xOmh8o3N81RPXNbhbp0h7C0UqdbnLUpQj5PaJhQ", "fUv5", "VMldSfdLZx2e_gg", "enctype", "T4xKQ-VyaHnTzkrK7cw", "z_EpAIMVCw", "_wnB0Gc", "rUny9Ea89JYLasU", "FuFLRuQ6YhnH", "Jp4RDLcHXXzwyD0", "yAmEnjWa_c5hS68ZNxNT3I9KmYHwQM8", "RZF9ccttDxbk5EqOxeqhOyq5DD5S2nfGDQ", "cmTwv0Ktx6k", "iB_K3HHb6rNL", "4YE", "KsZgcdhsfxLXqAbL9eY", "closed", "UNDEFINED", "443", "kJ06", "Enui9Ayjnsw", "fromCharCode", "src", "5oY9aZ03QBmTpBWV6f35Wjn_HCcCmGPNTn_OwK678zM", "VDGaky6fsfZ4TelZSwM", "VjLe3HY", "ROowO9k7PwTm", "jT7EiWjg85ZBSLImMyEy7uAOq9_nVd5OpcI", "^(?:[\\0-\\t\\x0B\\f\\x0E-\\u2027\\u202A-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])$", "EolrMcFxWlzW", "kX4", "Z_wCMrIRPES4", "gM0", "iO5CSL9nMWqbrGY", "getEntriesByName", "min", "blu-pR-H289gcppvaCYxnfA", "7aJkKPBI", "Hel$&?6%){mZ+#@\uD83D\uDC7A", "KrQEQu0d", "xAGm6wGwwtwCMdIfNnYggeo00_S6W-cLvfA_DnlaOdsJQMBqXA", "target", "Y8Mhcw", "getEntriesByType", "H-MmPYE8S0yjqkw", "ljaIixGQrP9_He4rc1E_6tME-w", "wpEHFa4UL3PYxj6DpZbWT0fsY14u6g31fhfK6MK_2SrizzX18e4xLoPh1MZ2b9vDNdIDOm8ysiZWXshYlDMZX-m7gMxJ3ZbRyI4UJhkrUnH05xaHaJfoXitYy1yrCfBdAvG-V5yZhoNodHryXzgNEOFmsVi7VB4q3PhUwwJSuqgFA_8K6A", "ZMEWTbgGNEK-uVTaju3SBzL9GTkq4SLZFjY", "vWzp9VTq3Z0", "fCjhpWbk8A", "Na5kdtpiShLbrFCjzuejEXGvQGVYvSiXczvjjrGY-ESEwAGnh419XfmjjLwEGamzX6p4VxsX0xp6YaJCyRUpKdrcmJJzvfWw8KQ8V3UdLl_CynOwM7rGZjh70G6aPtQocqSJWpmj5uhKTQneHDEkfZNRgm--Sk0ejcVHtCM", "oooHQvgoaDPQ4SmZu5qNKGuYYQ0fnSfwBUM", "E3bj5Eb4", "raRjLtM5Bgff6hbEuqWAVGfmDjF0niq5cHs", "sZoEBvQ_XV0", "Rd58Y79IRQ", "8v4kcI92X1ef51A", "nQOz5gai2sM", "6JciNt0JJBbUryr37Q", "-wy5pT2xn9M", "concat", "0nSfzTWWqas", "tCfViWza37AwGuU", "sJNSYc52aAyXxxyS", "TlLXjEn38IE", "CVP6vF7M", "enumerable", "PrV_bcF5URPV4Q", "m6ZyKNAyBA_P5T72r7I", "8m7l6EritIwd", "TGGGmDCO-uNbTA", "MdBmdtAOYg", "mA3C1mHw67NXRsFCeFgNlY0P", "vLtIespH", "JNQ", "Eyb2qlDA", "TypeError", "dispatchEvent", "AZUgRrQXARif5yPXscjFYjaQUFUV", "NkvEsHja2w", "xbkdSw", "submit", "bo9eA-dGYw", "aCH26VTlr6l6ectsNQ", "-jn92UTrmw", "wQo", "interactive", "tagName", "JPpAEM1KcF6x12U", "JSON", "g3W16S6xhskrK9MO", "VfpEQf4", "3JovcoQcGg", "BMU6b4ohKhP84Q", "iX-srRa6mMMSP4xxHzp2", "URL", "nnrcgXn43Y8Mc8VGLXA", "zQKXs2rptg", "uWzKzXC8zK4nSY4bJh0xs5ops44", "T-owf6sqBgaJ1Enwkw", "b36lswyigcER", "4qdZBPlgMx3Ehg", "QsMELNs2NgbwjQeHqYbzR22CTClyqUmUJSu1wLfVsTbK0hO0n5BDXPKx7bZYA4S_E_g", "wE3yv2zs2JYAaIZtK2Aj", "replace", "E2Sg6geLgKUt", "UZccGL8uVEPK1yi7jQ", "1I9HEeVRIxXh5lfC1bqOWmm2HCN9qW-SDA", "15", "now", "vLg", "3grYgFTb4KBnBaQ2bBQ", "url", "SMEG", "TCrkqX3M", "7WzYkQv93vQzNvR_BHxjvI5F9fKIKJUPpg", "YvIKFoULUGs", "qek_bI8qPRW-", "removeChild", "kD7O1HzO6q5FasUpQwE", "ORqj7g3qwPI", "dMEvcv8qL1yX-Q", "RegExp", "WvEqO5kiClun7mA", "v4hGRfRmFAC44BXLhbuwJhi7SG0", "readyState", "1U6QnTeT9uI", "description", "IsduOcZhXQCSpg", "1kO-_xatmw", "X94nOJotXWKA90DCvA", "E65QUftJaTrX7mCO3oqSN1Cy", "uUO67AS5_vkVOL88K15suQ", "RepBGaFzKXSYiiHz4-PQb0L5GA", "rBCj_xivndRfLJYOfSYznv4hwPf3CeEL9KxvE3keKIVNAJ4oDgGinDkGRCyYtDYm2Srbgt6BUtmt9CrZFNj9qAlJHCSxJWZ2ZSmwlOWBu45LFcVn1h4BzJ2oRfAepXSgpikOpDBgNAqV2Jwzq8Tb23WaX6Z99_HGASL_ceDsP1C8rAP-FvqsGIr5KujeTN41oQy9bkywCB9xW2szQaiwA8YWw52BdMQDmYvInpY1STijc5rAADyunkOasryVqVPXfYSXLgNYL6hZfeEnG4ZVkp6i0pvB8xZl9XF4e6FE-Q9qSl4KFLiwaY_ppFN28KX-_DLV2utuorTobgNQFXsimyRbLQ3ymYDBAMwrKZoUfbNgZkU6rLIwzh5bWbJCb7Yk6uZWl4wpWHJK1xeTDDfmhRSCR5Ig8mwulyOYlb3rjHLV", "elyt-wbpvtE", "OswKQI4wZlizyS2v", "Vyngt0uBqQ", "6PApdJ54EVWL5xnZ--vAHzCuFzE4wif8fGy50fPds0fLggqt24wjH_fIjOk4IrT4D_QCHgdp0gZhPg", "hdwwfZRP", "srcElement", "dnG7qQW9lc06M4giETlk9_VwnKCJT7gZn6dyHWYNdNMQaZJ0WFSPzHYWISbKwHV2kHye1NTDBJXtqznRTYuu6QsdQnDidCxvKnvjhqCf78RXTd5r0yUcqJL3VdJXrU7wqWZW6zcwPD2KgdtG-py_pFeBC_Ew-uCNX0HgbaGBKl_--k-3VZX6Sd2vbb7MEIx991undwbgXFckETxzEem_b8tKmZbCZcNAhN65kckkYzLiHo6RV3Gu8RXC4OrAvQOBEJHHeUxpIu5ADPFnCtMTz8Tlj83Y-Qtxrmw3I_cTrUA4GxASGbyzKp_k7S9vsLzes2jY0Odzlaj4aWhdUF0rzm8DfWL-wMGQCaltPvQNPOt1ekYqqNUsjhsjU7gWLOF2sqAWiPd7XCURmUWZRGChz0zZDoxmqjov0mLZ6qmtiFb3vMHJOMYokm_T00xk_u6B0JKfLk5CHXHzu8f0wQG3c0gWRgELNqDAekXhLM6KOB0dIQHnZiOwk2mohq4dhzDYxsVZFI3xsHDFumCKWgzcF79DzstGLTWWeaiK9A54Nfdx8QOiaBdTp60RTf5hCsZgrhCT3yuENhpUCwwP5t3CRsKkjIkasH8ubbBCNjzj19sbqWBOUteFLo-oRbRlCpeKRLAjN4CNnSkJR9vFeWIrtz6uFgms262LPL9F8b2yT7SlTfRxhcUXOxRhDZB4g9O2rTz1FNlO0GcXQ-4pjTeK3rSFc2p3BNsy0NJnZoJvcZMgdwYu-EkvvtFojcUyRGoKqUlBMEIV9Oq4teSKtgF9BFzyiDwvOwHBQy1dNNSR6hLaOp0eAqAukkYDG75FBids0ZFQtq-LS2T3yev7xJxFMc_Xxh0dJ2XX5vckGSn7wsEbyJCsZSFOBPu0zVD9I1OKntdJG05UdlghgV0iSV_5yxcpZSBWebJHuXih-yL2UNkjiiCIGwXL-SUNNPBVmb_KKHKP8I1oh7UR1H3k10oBL1xj9JdssfCMqeXzu1PNieOxX3Jjfr0JFOIvysfaG6tfVI3e4_BnGQSI_DVRCXQ4Ea5SHqdiMBxyfrZu1QBTsE6xCWUQQx1DnYKfthR13M6ZqLRBkk6yl34DG40DUzGy73P-FVPauuyZlkP0KJ9iSI4JTPrdL02Rdy1SZ7GMe36S8pxKWsh6SVq4YRTT0FBGa3pSPRMND1M9eylGoKLnmvHfJ0nrOStg4Orn0Y5-kJKWjHjPqMJf0kw4r1V2AOiqY6PmXeATY0SY3MOn6YXFddt979j5NcatgCtf7R5abza3iXc_7E9FMZ6esaObxGYKYdl1fmp22nfNjFZBGkNs-bA_H8_KyajPAA_v3hPpab3S_JJaT0CoJ3S_faBICNFnSCxbXQhmdZPKJ_3ufcMQ0cU8d6V3HG_HmZdZvHcvAsxjtjOX9knpTmwY-6S5R1mg2mK_xbgJnEikJJ2jFADFoeqyomnPWdpuQCU5i-rHKhJfB70wr-kUkJXCm4FcqNGOmWTmDfDsnv1XFG9GaZltRq5rkUhI4FnxfnXiFNRufPOyyn8Mbd7cQDeOGvMPs-gcFqw4LVHOhpnsKIl0x7jg-rDggbGx6wm1WeipwT1f6Z07Zl2k0xLeRlmQgHFB0BgznNj2d0luQCzCAVcqUtJIilvOyazKlVSsrXksf6hfB0cDj5CftzesBFsTz7UHAW2sUg-_fCiG2T5nGgxCm4QJS2r8-O4F9ZePey8e89R53itjsSj9N-BVC7GNa0IuCb9LuUDGhGhf0MHYATX4iONv4NslqN2kuogKIElJQuxSJgVQVpww5KxzN8eU8IXjxoRMpzk-lCYmHq-uUltbnrtwFInXGs-PxnmBQBqqpu3kE_mTnLw-BIT0HYLsN9uuIXdcy7HUVx-ijwpbKcRT7rFP_hkkNzTOxP9v-pvYOuFsc3czlCaSP09T9URs2MWRr4HSOItkO2xM3vBN9m9GphLYBlQS2TilPYzMlR8CTx-PF4KuvIysZZ2OZIbccRGvbEoin3GbPQkMsqyxm66RcyvmXjUCzftp2yXC-xcfeCfcGEa7ZdRxct63AAWvvgjJ4sRVPoWEHRKGSQV039RYefR8-XjP2oH_ECBpiqn2D3UGVMp5bUsY0vi21KrEdYVXPdvZR3b-A6MQwh7J3_zkEMudMVQ6F7F_HpROMb5AzGzj09T8A-JuukY4Uc8fleiy9TlzNVit0wgFg4H1NHORpmWbjZk-3MxBB8B7zUvuw035bfhJ5I473JwKFzzt-AdGohwDmhJbhcGYnrY0Hw29V1SqCLszSZlOETT8mMIg5AxA0aGP5plxsYEUxgaUKmO5ZVTTeN8CL9rNRS722BRt2DDcTWwMlts7dqVkxdwRrwX20R3ldrFbnYfu07o6AoQI_3rwtPHtHvmmaMk-ZNhvqq1K4kP5_aKyiDOYD802K3lLeTNGbc9Pf475mUwJtDBiLuZWX62nkHydyg-chB4YrzMhIn_BkRnSnxKc-YVOy7yL3vtlPRBxQ6zYeYhLxYN_nmaD4PbnoikqiXv-MWuManPHyuMTzo6vruv_pz3D4mCAgaNDjOoFAjADfzHkax0PzRgdJ0byES7swMwlph1UN7_RvYOMT5HSbnsuOxoJcR_lQ8Kx2FNmrl0LiTzYEbNYDSRmL0JV1rQ_LgX3Dg6KLwK_oKYowKM2Xz-NbrzSFRqL4-2OQ6HS7KRJclCh-ywTPjy9_1jd1HtZyy-BhALmD2fmDGq4KZF702swqqCHZSCvsNB0zuSGPclY_tdsb0Z6yhzUsCGLE_fBpMXchLduT2pR2krBdUAhLfsWqzaAu_9cms07naNwvw0v_OTevU9d9BEacxe9hzVY6d5u0pYDylMHJQhTy8jya7nGJttsgSBg-jFK_vL1Ekc1x72FlRq8fJnrB8gRRQiFHpGRfQqs2nuKschUzGvA2sCYRCyx5cSTrba0S4W1-tHNZbxjY3k2gguaJhWe_mIYYncP7TfiCt3dVbDpUtf-qqWoNFUVDj560ycnZXxNG2QGDCZoUzjTMndZP96wCduwuOlr-7nVFp56P-cRS7KGlSSBQQHrNrSFC8I0SeuQ5wjrrQB38K20ecVgagTYjYvZG-fr9O_sT9cJH9lclNNdzKAmQG6DIqtE-w2OPhWHBXqx3qI2hS9GimPVUdoFIiCOfSONAM6EUsmefsS5YRb-LjyZEIhhNrLZqZCsig5YadiSGZr283Kp9zaKwrHLvl2_4-sHZj8vUV9Z9Pt5P3-XMQm3m2JMmj7V9lBRTBbP2Prfc4MrRwLwajMtEXH3QcNshSB8nToxFG5Jr_E", "GD7h-xk", "yXDM3mXf5Lg5Q79IEklJ9IVfooancdUa7pJINls-XukTGK5Ealf_8R8VUQnn6FBHrUu-4-LwIrfCo2azeODAvm0kYQK3cAtQMn292OSq76JkRO1r_yNjmKuCQapL3FqMlBk15kFkEDH21KkGt-WO0VfgP9oV28WlaFGBY9D9AG6Qx2CNHJO_aNnDYLrxXrMTx2qRJF-YeFVTHFdFFqnxGv4L1-iuYpYsvPmSkbgfGz-SMYP8bnSE22z_l9zk5TLuUdytBU8YG-NgEccCZooqyqTD24y-3jkVxAdZce80nXoTNHQdYarNG6TclEcDwamFwRfQ1dw", "NNwyPpoqNlWKv2HD_9G9Sg", "21", "global", "bJw", "fHfj_gHF", "Function", "Zi3fk1TP-6JFdqs", "uEy_oQytzfo1NKo", "done", "NJwpZ98", "SJ8", "OKRRcsZwHQXJoVXojru_", "1PskLqYULxbm8hM", "4ky_9RiWx9IhZIQN", "host|srflx|prflx|relay", "edEtaYd6RHaWvluH7g", "qBnkrETs5NMp", "Math", "Jjbh1mrD1g", "P33dgXWQ", "CSS", "icZ1do5OXw", "MT6v6Q", "Infinity", "_w7u_FDowJhvZpwjED544PVxjPWKX65YyrNXB2ARdc8KctwLDQHamSNDdHPewXRxjGue1cSWB4X76mzFe5G38wxTPSW3IXk6fy62hruD_N5QVYtowzNd_Ybsb8FEq17x5xkDvmJlaWjf1NhS_ZCjv0XUCOEmu7WOaVv5d6bPVQqrrxriAMCvSsezfOvUBJBmqli9axe8CVlbRGkmRLzqOp4fzITbT-ZagsK4jdM_Nnq3CquLUW2v7Q_ZtbSVqRi7A4LBaU0nXbsVWaQyX4ZGmpHmudfB4wwk5jkjFe0Kt0d2ZEVHTOnmf8qx5VA65emL5j0", "z9gyKg", "fGbAzDnG-v8EWa9KFE1D", "AJ1HSeZIPS_RuiaYrqShaQLmMglqmgE", "ba0mJIAuSw", "decodeURIComponent", "3Y0sPA", "jz2G0D2buLE", "jIRWG-9QYA", "SmL97Vjm", "c1CCmi39lw", "0dMcEaQSfQ", "yLd0Y4taVRPLp1Hyr6jcM2LaXmQSrHPUUy36rraU7ETfogXFzJgSWKaLoa55F-TmQOElGEAh00ouTK9npQ9tecSAu-t3oumr", "kDH4vXPywItNNIgBVj8UxOkky9HsDeIquq4", "SNB6Lod-Ug", "jWW4", "detachEvent", "Ywb7s1mV9Q", "textContent", "mjaYxhOch_5qEe8", "E-lBS-h-ajakmTG1jN7Vaw7QO0cE_ByuSF8", "4SnQ13re6btRf_A5RhEIpg", "ZTn0sGPVxpBXJ4AQ", "noEmP4MYcmesmiz8uJORSXU", "start", "Gas", "sJdqBdwhAi0", "SuEsXpAga1eumDfLrw", "Safari", "put", "QVDyuVr426cUeMdqfWc", "OL8MWaUZeg", "mark", "MBzhsFq7r7ZLZA", "j3PUj0XP0KAyFbpxVQ", "xw-56Sqmo_9uHIoLBA", "75wWHbMcA3nu_3ql", "ReferenceError", "-Se59lOqz5xvZpwwEw", "kM5iJo1R", "JtkE", "EsMZUr1AJ3GzxQ", "mHTP0GTH7bAQS6IUKyJN7Zxn", "nodeName", "ZVfkuF_o2pMYa9FJOmF02blmh7CwTqZMs-soVD5Zb8IKR9lvSUbl235BA2vO9XNyk36NxozZHYTmunKdTYmm41gDV2nqdjkiJ2vZmZqHsdoNEZcxhitDv8DbGJkqvw2n7GpX6TQab3uZgdxs-4q11w2cFrRjvrHpWluhCL6WPhXy-kOwVqjjQtO2frmTC5l4_E3zOAzxUVwxATpfSfn8MdMd1M6UMeBWmNOP2csbfTL5B5m5Bn7n8Ujb5ersrAKaC7GcZB8faOxBFO9xQdQB2NX4nMGRpkEruyIzLPkCvVM-ExRMUcyrPcb1-2Ag7qO6m3LFld4sy4DofndXSzxk1GkHY3ru0f7cRoh0MbVJasdleQAV98gxmQkhQ-AMOelmoLwR199jDCgInlnDXnu2wVPeCPovvjY3mA", "16RTBfZfZWs", "P49pZtpCCiiOpECstffzayr6f3MYzAP5eA", "0sxobY1SBVeX0Q", "aBPYimjGs6U", "S8hib-NkHx6K50Y", "SX2UnCqQ9eoaRaUcaklKmpNUr8DvO5Z-_ZV2JQY_KO8", "EMsBE78HL3eAiSrfmMrFfQX0ZgNp2EziHFLQocC60n2--mPd_-wPMML_7po", "PI", "QfgMb_UZfzG61DzE-A", "N5g", "2gmY_TCdnvs", "DOVYTPtKcBya-w3WjsjXaxHSKQ", "WweI2nO8-rteXqEKIgsVpsIM8ZWtDopsn9taehMmB7gqPeI", "2147483647", "2ie7rUSV3Y0dcMpzUjMA_w", "value", "Syf5tg", "DL1SWvo", "CVjRym3eg6seAfpA", "-7cdRqAcKSCqkA", "uTf570f-jrZENNJhBkA", "EBrRkknkyohIVaZFPTYV5-M", "E2XNznjEv7RgWvEHfl5Q3fZWo9bmKJQt5JdzfFp8W_NpK_g", "0NdAEOJXMzrVxDb_15DRWBvELgF9uwH6SAn_6Iytxg", "cG-hthmrlfE", "vA7v73iP_qk3", "0JoxA7QT", "ncEJB7M4cVHoj3-f0A", "pTDt60Pr1YpEZd94Q0EyvZU63OffEcpJz_EyXQ", "^https?:\\\x2F\\\x2F", "0uZyIcZ9F1s", "3C3y8lLgzJ9oEJ8o", "tzrxsUs", "2UHZ3B354A", "ZUvvtzyk-Q", "arguments", "ghT0zyzu_g", "UircxWPzqA", "GHDi5U3J1uJC", "13", "0FDanVf086ZxDrc", "NBW6sxq_o_RWYdg", "configurable", "zyL041TkxJhDEYYIZhUN1OE8hYm8RvQkgLc1RylD", "pyikslbWhA", "HQ6WlyWX4vwiFbg", "match", "BXTHjSrz8fhN", "LN2", "XMLHttpRequest", "AeoRCKU", "unshift", "9XLo50zvhg", "ArrayBuffer", "q2L6rhnxmcQ", "D0Oi5xO2qPc", "BJ14SclBHDc", "which", "7IEC", "FKAncosH", "NrEJUY0cFGDr3GOFjZWsfk8", "SubmitEvent", "Error", "number", "HAjmzULPy6g0aJsmEFor7fpjme2Meqpcuw", "mZR9aoJTXBro4Byr9eineUO3EHsX2HjdUiij2aPcuErWr1m3jpYUGfmx5K9aRuqBDehQCAEMmGIvJg", "create", "string", "g0KIgzSM", "GSWFhm21xbQE", "exists", "kHiewX65rLEwRPlQCRBM_IJItJyzTspugsdcbQkoBbk5N-UbdnKk5x5WbEX35htL", "r7IhNoQJBV3Zols", "-0OO2gabrfAXLMwgRU1xnpx-", "7", "s5Mjc49hW1nstwuEj-CYVHrnFSp3iQT4cWev2KGN", "ffAdGZgpVw", "GzidkS6BoOZgA-RYUkwfvboWxpf4", "ugHH2Wv81oBKMcw", "[xX][nN]--", "ZJ5VT99WZzvjnyCExQ", "OgvBwC_5qYIeEOk", "lw3IyEvqxqh5M7Uj", "\uD83D\uDCCA", "floor", "n7sJGbkHcly9ngz4rryABA", "OpUqdZIsGEbcriWb8q6yL32lcX5jhGKf", "pq4WG-klIk_phGDWvA", "r7p9MM49FhrW5zX4oKqWVHXjGxs", "XM4zO5MiXlWZ9g", "0_9LE7tqUg", "w3nCgUPO8pQyQOtZHklQ", "_GKk9B_z2twfN8YdfGBAnrc5zvexVvd5trxtGycLdQ", "OqUASLcZJH3vxnanmLOjalfHekpw", "jZprYehRCxP7tUf5kNGUaU6wVXc", "8JU0Qw", "MCfa", "self", "dGfVpmbD4L4OW_B5CU0", "_-NQDO5JbjQ", "document", "LCCW3DeQ4dNhVg", "gYRrav1HSiCk", "qP9sIo9FYF652RKIp_bE", "9He--3Tg29MEKes", "rEXVr0rG", "BqxfXuVJazDfmzrl7c6OFQKBeld__V3uZFKI-w", "S6tYWKlXeQy60i_Ko64", "H7wzKZIBXWXDwQI", "b23XjHiAtaoPeel-", "\uFFFD\uFFFD[\x00\x00\uFFFD\x00\x00]\x00", "z4YSAfsVMGGQkWvVv4XHAE35", "Float64Array", "oxT5-0vqnopiet4", "OeF8erlLKxGt51mgr7r8c232DgVV", "hNNxJtM_GDyPw2zW3aXsDCO-R34011yh", "6IokMYM7HUrRtka6y4GcLV2SZGJ2pUetVAm16470mTvztSGVrKg", "D7oFFqQFZWfZiw", "wJMMG-Q3K2ntliqT2cWWEjPGdh9gq1bhZx2mrZHrjmThqi-Bp6ojKcS0kJVscdWxM8R7MCw8rlVfVsNy", "MCrRwSDz4YFEWKAHT1Uv3uMTuMa3ft9S6YAHdQ", "createElement", "VS_poH6GvfI", "bki5r0CpxOE1MYs5bGtvu7g", "^[xX][nN]--", "G48SXLs", "0hjr4lfhwoBcZ80saBICwPU_kKGyDPM8paE5QyxMIA", "xfoiM5AgNlg", "_rVEDsR-VRnSzxngoLWwZ3k", "mIk8K9QHG1n36F75u6ngfHDfTWEGkD7BQCjokvuE7VfMtQrXyNEOEPnW7-RFWPT0T-csFEUdnFx_cOBroA5jadaPveJ7p6Di_706VHFEOw", "2VOV0yY", "SWadiDSyt_lvG-sWQQgOstgP-Mr5MO4Kw4cTeSA", "OFfVhVP9zQ", "-2y_7wOs", "cos", "length", "E_lLRfJN", "max", "FEnV0zHP8YtBHqkucVk", "AATVj3bjpZZJCvI", "_n2Uzi-AtKE6RuRj", "9LUIJLxlAFbYqA", "SjSJlyuSoOF3AfRJYl4", "d3PKvUbF3L8VFLo", "LBU", "iMYNFpMnXCzWzyye5A", "Element", "j9M_PaUbVlir6B-oyg", "width", "catch", "PdxZVu0KVSK21jSI", "hGqD2DKNleU8RKs", "_ORsc8B1SAPezg_jl7_ELQ", "EslSSfIEUhc", "String", "QJ9IEdFAbBT31w", "OWK39x2t08g9DbQcNUR5sIRE", "ZleFjFG9ou0eSLYH", "function", "6NZCS_dMIRGm1nbH68qNCQ", "2fMHVK82LkmcrnPo-bjcIibUfQ", "xbFAUfhbYw3gxz-Yooji", "application\x2Fx-www-form-urlencoded", "4lmM0CDTsvEoQ7RcU0s", "Int8Array", "0FbZtkTb", "j9V2P4h0T3_uwjS3", "prototype", "appendChild", "goAoY8sAPRqzulbS-Kg", "2-USWq8BGQ", "ats", "indexOf", "AQe94FWU8oAEdQ", "Z0zMkGTLwrw-T_tU", "RsljdtZ2XU6p9xj8v-DvNznzCS8E", "OrUAVaMUIVHn12i4mZOy", "\u3297\uFE0F", "6MhU", "setTimeout", "VHP9pFLOzw", "QGzr4w3OiA", "LWn0qlDy", "HPJge8pzTk2d5gfolej1FSPr", "kXqZzyWAuK1AUvZyClRMrYgUptjHO5E", "querySelectorAll", "getPrototypeOf", "DvAYRL4KOFCjlA", "UIEvent", "vROh3gOgnNxBD5AaeDg7hw", "we4yPrMCQgz78g0", "OBnejEw", "ikXazTLhj7orSu4RAwlG5s9ZuKPlGNZyg9sOaxJlAbNBd-ECcHWa71AU", "_Uugvwqzwd9xcYY-WWxpuPh_hvLAEr4", "Xc8uK44mCTmBtBWWuJvYCW_DMA", "_I0", "LxzzrVPy2w", "qfNGG90", "dxv86Eralod4ac4", "kLY_M58gGxiMkUCs7Yw", "1K53cMA", "Hx6ltxO0k-BWMtg", "Dq11LQ", "top", "XNhjEMV2RDm371TB", "Z_8EPKYpPHnSh3nR-q_NNw", "jslme4BNHRq88krw", "f8cEXp8nByC-zXU", "XsN9OtFLRTyX9VHKiOCzQxr4U1MBvCisEgSV1722hXun", "xKMJE-00aH2G2TbT3NXfT0jmck5n7gPrf0Wa-pWZ8jmjyw", "CustomEvent", "h1uD1ASKgJ8", "KIdWXuRXeiDO1A", "_RfJ3mrI6Lo", "zud2JcJ0XUCS4Vvjq_yeEy79BjdThyCsYn_7w6_fqV6DkA", "1FrTx2nP-qEmQZZtQ0dN4ZdAodg", "cudRW7tBeC--", "cDG2_A", "MBWotR6nz9sANKVwBAc", "4xT-71jszo5rOvY4QCQ3", "A06EmwCP66lYUw", "Mp5bB_dCYy7ikyS3wZO_YESUZEVLrFSHCh_Qro3nhH2i7WDSs74QJYWz5Z0FTI6AcIt2JH4SpHAeQMEjpjYOSeG-rZELiMLpnpYrem98UyjGqGPJfJj9VH9zsiCXRfVGEpGxH_-jkol6dCeOCUEMI_VmpQqIARlD4-ZB6F5dhPERCuZ771URoSZNnEtYsm2ABv5N07NZ--WMyoOq6AEZwSHkJAUtyBK1K20x", "6FftpVPrm6IbNoBOdDd9rw", "data", "sfQaCaAjYn2F2zaH5NbgEgbeNF10tQXraQ", "sW-kukSgq5x2E6s9HjBf5vsS0KjlP8g", "YZxJVvtJITvRnDmf-NybGBGDMRlookfsfwT7jNiisWywykjxouEgZ8O_g8k", "uMIrI5UvSlWl-hqj1fb1JSzrEH9egj-BTg", "LrV_bcF5UQnAt0u4x_a5EWq2X31B8jfNejD6n-mP5lSClADzjdhjCvm-lKpb", "7olAEupuWQnOxCnwq6WIYW6aGm9330XbaS2rrtTT8gKc6TCYndoSBuiJ1rYLYZL5f5JpWg4i1DIn", "RGmxvyWZjdJs", "73219ec59bf0f116", "onreadystatechange", "ILgPGbVlOk6djhA", "l6tiY4xWcV_V-A", "G1jQjXzP", "PLdXEPtQd330tTeh1YqmX0WAewoc8mKNBRCf8dv5nCU", "M4lNEfUfbTy4nTe41w", "Z3LZlXTA_KkpUNdyEktW3A", "7MU", "QMdtcoxlWQOvqUql1OboNTTOBTlPh2uSGDWhmeDTtFzA-w", "ljD54Ezci4BWLp4K", "qirA12XMp7VOVPY1eEwe", "eDOU1HrJy8F3Vbk", "nD2m5hm3qtVJC4w", "tRit", "zdwUEbsJO3m2wA", "3UPGkG757aNHBrcxXSgFpsI", "1o0YWvMBZQXBxSaa", "XiqFwCaejshbPp85ZCcmnfUe", "svg", "removeEventListener", "WGaM1j2lp8Yl", "QP8yNpApA0E", "iPs", "script", "zD6N0TaBs_prGq0VEQck6tgG797pfMkWmcUHLFsmR612ZOlbEW2fukkRNQmexhIS-xDU9OODN6rJwhfiZeba33AsMjPbHFljAgSg4c2szrlVcrRLqlk-hKvlI7IIymrkwgUqlWMxGRLYpLofmpvboSOnZtpciJDKL0SRfMXXGGOakUSrcsSCe_HPSoqbYrkJj3eBVTX7K3EXQB84Y5q7Ebx1t9_6Hw", "vIJYR_RXVVb9w3g", "fzbGlGXWx7U", "apply", "kXO26hqvjsM-PslWM29owrF5m6OkULlElb4xTyhGe9wRT8d0R13Dj2VICWmMoA", "form", "FEzn_gLUra8dLA", "P5NSW-tC", "gU7vomnr2oAZd8ZpM2J63LE", "yWS9rRyamA", "every", "lDH74UPhyIlNO4sfYBEc1vY6gqKwSvw0oLU6SC9EMs8MaclhGxyTmzcQTSiq5SYW2STelpi5F8WspmmKFNCq6gcdAiOlK3Y", "^[\\x20-\\x7E]$", "YQHz5kP5zLJyb5gzByFGq7s5-afbG5lQ", "DZRwdN9tT17m4l_6wO26ZDS0XWdXgmnFXzyv2-jQvg", "fvgpdKZBBnGXp1w", "FjeLwhDJ4OlMEKUbI0ol8sFd", "CL1KWvhadTzc", "12LezHfN9qorUa1aAFtb5pdfvoKvc5RmjsRVNV8iVes4ePFaenSerlltMETk4lZdtEO--O3nJrbGiQbrYbSH-Gg0YBTTEV4fSRzy5IXn_qZoXLxE8Qc6lL6IRLFwhXffiF5--lQeHh39-KI46_6Q30bjJdMT0cSyf23ZSYOiAX3BwGOIfISZYP_LXNu-YO8a5jmCDxeCY0ZGPh5RN_jcSONztrf6TdIjqvyZgKsLGCOAMKyyfFWR0Tn7xMjjliG-Kr34UF0KC8wkPZQVerB03qbA99y6xhoTgU4VBeZwimgBNDEqMa3QBL3EmlYWzq28nBPJsslRtoPcVkhxaXkJ7UQhQljS_-iBaoBPWpA", "H-R0M8dsSQiKqRXS", "HO4reJ4L", "iframe", "WeakSet", "FGk", "YqFn", "eFSRzTuFoaUlUvdnBF9_r5RSrsvEMpVW39BZKgMhTeN1FqAJOzD-t195MVDOyUh1oEa2uvnAaL2AyACma6zDhWJ3Z0rN", "getItem", "nO1HTLQ", "tFjKy33Upo0vCeE", "KLZQCbtsb3Xwhm3n6Z6nZlmHY0sA_ViXFh7Z5sbvije9lmPI9f4xY9-79NAJG420dINkOi0IqXMAXpM", "44NaGPZm", "y0SFzTeS", "h3Tn8gbC", "left", "Yct-b48", "A9U6NpgmDUu7xFael67ocg", "hRfXh2U", "WWznvRTTqc4XbZ0WBH1SkaRrg5G7HKt5", "dG66uQ-q", "-2\u202EGfKLUWvCn\u202D", "\u202EaKhiQyEym\u202D", "hwCs-DG1o9I", "IPYdGoANKmCe8mfZkfr1ESU", "object", "substring", "UDqcmk6Qp_daS7hAIhAd1_c378w", "3I5aReFWeDeU-zKWqJHKVED3", "^(xn--zn7c)?$|%", "wU2XmjmCxf06cORC", "8bEXF8I", "J6xrJup4RQ_D6A3X1uOqKjGoXkt4kXDZ", "MYAPAqoGdkS10TmMoZiHVhXbBRVs", "BfwcU4UAN0uu", "Q4o9dsw1Sla6rAeLmfO1Ng", "hidden", "iterator", "SOcJEw", "NcBxe-NsaRKW4A3vo9Q", "xCmV0hSa", "parentNode", "Wvd_adlgQEuH8Qj3jfnlDzT6FTI", "SItRW_x2ASf4lQ", "xQH5_1bK", "join", "CLdKUsdOOjHo5w", "HoIxbYo9D0bNvgqf75zqH2m0aCNminqfU3L3lP6FsgCXyQ", "JIhQReBabxHRznGH2pu9JlKhPnE0gB2FURWQ8JnbtAU", "map", "_mvT0Hbmh5dZcskDTG5jsow", "jEzv", "391DPuxKCjG24ns", "SNB5K8M", "1NMAUL1KaHm7gmU", "nCSelzaQrPZXNcoMQw", "E4FmcdpjdhvYoAGe8Yc", "3PFUBppoBQ", "g4AlK90DB1Ctp1z1vqPnN37GVGUR", "2ADF3HDY-bNFfro-DDIp3M4A", "i8VRUv1ePhnl2XWm9vPLQ2HeE10", "9iiorQ2_idBLI4wgAS87sKRz", "__proto__", "HpIoN7c4UkbD8w2vnKjFSDHMDSY", "Option", "Ilv1pAras8EFeYhNLGdHmf9emZiyCKc", "wH20sBqjispkM894U2gi", "3j3I02yisLdfVf1G", "QKR2ct8", "HjPCx2Hapr4PcvNwKAAMkYw", "VyaTgX6d4flICuYSIB4bx8Aqr4y1YMhkoZQBLA", "22Wv5B3Y4uofA_AoXkg", "8_lhY8hiHAiA6EfxpuP0TTnsVDwNyzHbKi7-kbWN7VOdwAGw", "UokoZOpnK0jd6Vo", "dK93KP1HRCn48hY", "u3nC3m6gnQ", "7vVRcfRWcg", "ZSLKiRDx", "charCodeAt", "ngCMizaQ_stzRKYRMh1U1I5J", "_krtqCnEut49VJIZ", "([0-9]{1,3}(\\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})", "empty", "assign", "EKh8PcEvSw3WsBWW8biNVg", "TyHru3_Y8PplZZV_", "DQ65vQyKjdd9G8I", "E4s9epYo", "uLgZH-04ZGTX3WmSy5rfSEXsbgx0rR6iMg", "BTnJ0FTe6q1XBug", "FyqQijaRnPF8R_Y", "fireEvent", "p1Hoskjt5g", "ZxnEnHXV9rdFWrE", "2HiojCeKhct5KfFo", "enzJnTLg9fkTEvEUIwFd9Q", "Kf1dX-IxXDigzymBsJq9IhGkPx8", "rh-3sQS72fJA", "-TfT_1HC-L4bUKFfFE9e0JJTqw", "28kuaYk1KA-KxUjC", "zBO_7hOnic1eboAZaztrx-80yOD9Bfgd-O9q", "ZKdUCv1mYxXV-iy5oaWxbXSROVc", "6Bb3wi4", "WF-gsCuumt4TNbNjOkxdmLpc1-r_Q4x45v9g", "FALSE", "E6UjdbwwD1_K7UaMrbM", "0p8kb9gATQ", "7Xzfzj38rYMdDaJTB1Edr48xh8y3fA", "\uD83C\uDF7C", "innerText", "2lvhokXByrBScsdcNXAh3sU", "VdMgI5Y9E3Swtlw", "round", "Mh3stAy4ov0", "_gHJiG_h0MhPSb0xMyYR7upbhuzyXd1E", "4v8", "bvkkYYJkIk2dzzCEo_vOenw", "qogrP4s7B1c", "SIxkedVsX1Pn4ljqyvWuaT6gRntRmGjCRTmj0fjdvwHC91ilxoVTGK3L6w", "JIBLSP1cIRCMxHjQgw", "TZ9TWelCTQ", "location", "6t4KEbQO", "lr4wNM8VV0j1tw", "OKglN48ZAUbEvA", "nVmHkzKup8E8EA", "KzyWjHKr9_dEH6YaGwVH2tBvs4CtJZ4z-8k", "40CD0yzvtdoBfqwhLg", "cO0QAOI-MjmmnnqZ8YLoHg3Gfg1ppl0", "pow", "5", "K4RKdd8", "80", "u9hsaNRrVhWT8Vrlx8SfOiD8WC4YzQ", "pXurvRm0hw", "ynWeljC_ufYTeg", "-LNSBNtVfHWVkjc", "4nyMiXma8eEMGb4FblpLgodArQ", "mBXA33LAqKhzA_BVI0kBuNkB_pW3EZNqj9gebUxheKd5Ne4", "Y6MRSaYwJwi9yHLq8w", "charAt", "PGny51fGtw", "98ETDrM-PVw", "Int32Array", "toString", "Z7YQAaRxE0ztjQ", "nKhyIMY3EgHZ", "error", "iSGC4DHJuel0", "RVqhtGaWhs5xJc8MdyEj", "uhnppUDlyKdjaK5hfUI", "KIxESsFlFQ", "IJNC", "GIgHCqAbcWzu3iGdvp3UfgDSKwh3yFu_U0XcvIi4pw", "JtwrK4ho", "R801K5IuWm2YuTE", "sq8oP88SSl76", "9esHGK8aYWW8wnDzmuv8MBGTZl5Kt1XYQEjbpNTt2SOljjWE_rV1YJ745MdWAszrOcI5MzFe8TgF", "className", "qosCHacXbHLEnmnPqpXeRkjzMhAj8AKoPE-Uwp7i8GQ", "tQvu50rv2Zk", "37BMFus", "abs", "Reflect", "addEventListener", "HwrG", "04I-boYfBn6LtgWfzLLnFga9EANe_mn8UVDKhfU", "c9Z6F9p6DTibrQ", "y_4xeYk6NxWH2lnF", "isFinite", "xKZnPc8hAwLL6Q", "Lj_X3zPO-ss", "pcApKYM4KUG76w", "", "3TU", "performance", "AtwLFbIhGF2Y7hXxprb9SjL9BQ0O5HbTK3im1vbGrA", "ZK0iKtwTLVfgsw", "parseInt", "BjLK4Xvh849FXqo", "2d4UFIIlK23e", "querySelector", "GHifng", "SuQFW6oxBFOW", "7udyT8lzBB6arUTv1-k", "Float32Array", "7W_d22_F5qU", "xMUxIaMZDQ", "-_g3MZB5XHCs6Fqd", "SdsLHrURPkau7g", "c07Ei3vY4KojH7JlW0xroJMZo5WkKphOhpZdfQNtELIqOrgKQSaA5xMObUTEmFlItg-fo73SKNi3pXeSD43N0nogJA", "Pfh7JPJm", "Q3ewsQi3lg", "9ZR4ff9ETjOh-hjc", "B0jwxDn8tPREX-Y", "Image", "oYJVGu4", "method", "pFrMwHS8og", "tAW-sgSy09RLcYwlHSNZwb97lbDSa_kh-vpgHyoHDg", "QSH0-0zqio42WYx6Hjg7u6EZ", "IN1FT_4D", "_vo", "cPZ6PM47Sia11F_HyamTLw", "PdsmKp0hCEOtr38", "yIEUCfc9OHqB01fAvJA", "955LFuh5Mw2TiGzn6aSeIn8", "FZtSTuticQXe1G_M-cY", "CYw9cKIgEl3XrTSvp7OFVmK9", "ZEvgpD_DoMgSU54ONkJWiLxnmYGxHLJv1fI2Ci8", "OT699gLhl-BuMoQHB2lU9cU", "ldsRRIkzBkyBmXCF6g", "8qd_Y8F7XhI", "Wc0ACboiKG2FnSCMqp_EVg", "cmfZ-1z2sY0HPg", "6Jkhe8QPOSk", "9", "d36UnDWWuLgHKYItAT9js955kKiaQqUim-h1HSgWctENIYQ", "fM9DSrFlJDmM1mDRnOOSHBWhdw", "-HyioQC-1tl7MtAvRnVr9P15k7_YAbkFwOk", "aPFNX-ReZTm4wj7Jk8jIdQTMLRE84Af1HVfGpsyxxnir62LJ6ecNPcr-o9dme9jNPNQhfmNytDhWFJN89jkVVKGq88BaxYDGlddZBFAlXjP1uz-II9GeWSQc1yP7L79MGNfjRIjcvs0-OnH6SDcEJqc8ukLUEApg3bBchSNwhuRTQeMf6j9N-G0C1gFmvTfPTOYNwLdQ5OaIuIPfq2tP1Xq9O2AjhjO0Bi8PekvVz7AToj8g4vNeRa5oXFhrBoFxrSB0-73VymyxoErKsX-7cG5SPn11QrTbA9eFmEq5GvGIo6G-sAMfkB0UV56YEko_UJgsUhbFfioJxeqs7Oyae-3zydlUfHM7siudg0W-2AGfl8TbFD2uf7eY_gO6hF7cBRGmJUzE9oiqK_4k7tcQf_RooiXZBoCtIthoHV4", "I6B0c9N4UyfX4FQ", "IUv59UD41Ms", "Gf01arAtCCaJ6ELdgw", "xDGtpk-JyQ", "YjqE_yWvoNgtDaw", "constructor"];
    var v = R(null);
    var j = [[[9, 207], [2, 195], [5, 99], [3, 107], [6, 105], [1, 232], [2, 23], [4, 43], [0, 155], [9, 109], [2, 42], [4, 17], [9, 70], [2, 62], [6, 162], [5, 148], [0, 64], [6, 153], [8, 69], [3, 104], [7, 71], [2, 93], [0, 225], [8, 209], [5, 30], [9, 91], [7, 230], [8, 217], [8, 167], [9, 40], [5, 170], [7, 16], [4, 9], [5, 136], [2, 158], [4, 221], [0, 51], [8, 52], [7, 203], [5, 119], [8, 229], [0, 151], [6, 1], [5, 181], [3, 171], [0, 133], [0, 124], [4, 206], [6, 116], [4, 218], [4, 131], [3, 37], [4, 123], [0, 73], [3, 97], [4, 235], [2, 48], [5, 168], [3, 188], [3, 35], [1, 46], [0, 3], [6, 121], [6, 76], [1, 20], [2, 189], [5, 163], [8, 223], [3, 204], [8, 44], [3, 84], [6, 21], [6, 135], [3, 80], [7, 166], [7, 210], [7, 185], [3, 138], [8, 24], [7, 194], [0, 26], [0, 228], [9, 86], [3, 74], [3, 146], [3, 65], [9, 18], [5, 38], [7, 29], [3, 215], [5, 177], [9, 10], [0, 66], [7, 187], [9, 200], [0, 154], [6, 144], [0, 75], [2, 89], [7, 56], [7, 183], [8, 222], [9, 94], [8, 150], [9, 68], [3, 149], [7, 102], [3, 15], [6, 110], [6, 58], [0, 169], [2, 22], [3, 216], [9, 139], [4, 114], [7, 184], [0, 67], [0, 8], [2, 178], [2, 145], [5, 103], [5, 88], [6, 182], [4, 233], [0, 132], [3, 117], [4, 220], [9, 179], [7, 47], [2, 147], [9, 31], [0, 237], [5, 25], [7, 164], [6, 126], [2, 142], [8, 79], [0, 186], [0, 34], [6, 49], [7, 14], [8, 106], [7, 192], [8, 165], [3, 175], [5, 231], [7, 134], [2, 100], [6, 238], [6, 193], [0, 213], [3, 211], [8, 113], [4, 205], [0, 172], [1, 12], [8, 137], [3, 224], [8, 115], [6, 0], [6, 198], [4, 118], [6, 101], [6, 120], [1, 19], [0, 173], [9, 201], [6, 129], [4, 95], [1, 63], [7, 127], [2, 239], [3, 82], [9, 92], [0, 7], [9, 32], [1, 33], [5, 85], [5, 11], [8, 50], [5, 57], [0, 61], [9, 112], [2, 128], [7, 130], [7, 78], [3, 202], [3, 55], [7, 122], [6, 161], [9, 90], [1, 159], [3, 174], [7, 176], [7, 83], [2, 160], [0, 36], [9, 72], [6, 212], [4, 226], [9, 98], [7, 87], [6, 4], [6, 111], [6, 81], [1, 152], [7, 199], [9, 157], [9, 39], [0, 60], [3, 41], [5, 2], [8, 227], [2, 54], [5, 141], [9, 156], [2, 77], [4, 108], [6, 180], [2, 219], [3, 59], [9, 125], [5, 5], [7, 236], [3, 13], [1, 143], [1, 27], [6, 45], [5, 197], [7, 6], [5, 140], [0, 53], [7, 191], [4, 196], [2, 96], [0, 28], [2, 208], [0, 234], [9, 190], [7, 214]], [[8, 77], [7, 43], [0, 222], [6, 200], [2, 157], [2, 62], [6, 138], [9, 33], [8, 38], [4, 154], [7, 96], [2, 10], [9, 163], [6, 160], [3, 39], [0, 78], [2, 108], [2, 73], [1, 203], [2, 153], [1, 144], [1, 207], [2, 9], [5, 99], [7, 189], [8, 86], [3, 209], [8, 226], [0, 158], [0, 117], [9, 213], [0, 146], [7, 214], [7, 17], [4, 147], [0, 114], [4, 81], [2, 94], [7, 204], [5, 32], [1, 165], [7, 115], [7, 208], [6, 133], [4, 0], [6, 67], [9, 74], [3, 145], [5, 180], [4, 202], [0, 217], [8, 174], [7, 225], [0, 122], [4, 26], [7, 1], [5, 162], [2, 140], [7, 155], [8, 45], [7, 235], [4, 211], [3, 20], [3, 100], [8, 215], [2, 227], [7, 112], [8, 53], [1, 142], [6, 234], [8, 193], [3, 230], [0, 191], [8, 128], [6, 110], [9, 192], [0, 106], [9, 164], [7, 143], [4, 101], [6, 231], [0, 46], [0, 51], [1, 190], [0, 56], [3, 130], [0, 75], [0, 168], [0, 23], [4, 85], [8, 49], [5, 79], [5, 13], [4, 111], [3, 212], [7, 195], [3, 223], [5, 170], [3, 35], [0, 65], [7, 224], [7, 228], [7, 11], [6, 210], [1, 42], [6, 31], [5, 150], [7, 171], [8, 197], [4, 5], [5, 61], [2, 97], [8, 121], [7, 139], [2, 216], [1, 229], [5, 201], [7, 66], [2, 124], [4, 59], [9, 127], [8, 58], [2, 98], [7, 84], [1, 83], [4, 24], [2, 136], [8, 63], [7, 232], [4, 125], [1, 129], [1, 113], [7, 218], [6, 135], [3, 6], [7, 156], [5, 30], [2, 64], [0, 3], [8, 198], [4, 54], [5, 220], [2, 187], [3, 219], [5, 172], [2, 2], [8, 12], [4, 237], [2, 18], [7, 55], [1, 239], [5, 205], [9, 40], [2, 188], [2, 166], [5, 8], [0, 47], [1, 206], [4, 4], [5, 76], [7, 167], [3, 70], [4, 68], [8, 92], [9, 15], [5, 60], [2, 151], [6, 7], [4, 182], [8, 82], [2, 19], [4, 89], [3, 69], [5, 179], [0, 34], [4, 50], [2, 177], [5, 199], [4, 141], [6, 88], [1, 72], [5, 118], [2, 131], [0, 175], [3, 28], [6, 123], [7, 48], [1, 27], [5, 176], [8, 183], [2, 71], [1, 102], [2, 221], [2, 169], [3, 14], [0, 148], [8, 90], [9, 196], [7, 116], [1, 41], [5, 149], [7, 22], [4, 107], [7, 103], [3, 152], [5, 233], [7, 181], [1, 194], [4, 93], [7, 161], [7, 104], [2, 37], [3, 21], [9, 173], [5, 87], [5, 185], [5, 91], [3, 186], [1, 36], [2, 238], [9, 184], [8, 44], [0, 236], [9, 178], [2, 126], [8, 29], [6, 109], [3, 16], [7, 95], [7, 134], [5, 119], [1, 105], [1, 120], [3, 25], [5, 137], [8, 159], [5, 132], [2, 57], [2, 52], [1, 80]], [[8, 70], [7, 103], [8, 153], [5, 126], [0, 68], [4, 232], [0, 209], [3, 4], [6, 146], [3, 80], [4, 32], [9, 216], [4, 78], [5, 24], [3, 155], [9, 122], [2, 235], [3, 0], [6, 60], [0, 12], [2, 205], [8, 129], [5, 91], [4, 9], [5, 48], [7, 26], [6, 159], [7, 119], [7, 97], [1, 96], [6, 176], [1, 117], [4, 29], [7, 34], [2, 43], [9, 66], [4, 101], [4, 142], [0, 75], [5, 223], [8, 16], [6, 30], [3, 150], [5, 213], [2, 28], [5, 154], [6, 201], [4, 173], [3, 111], [7, 217], [7, 185], [3, 138], [9, 53], [6, 222], [1, 31], [6, 183], [8, 77], [5, 236], [7, 87], [1, 231], [6, 61], [5, 194], [8, 134], [6, 174], [2, 238], [1, 51], [8, 115], [5, 123], [0, 237], [9, 180], [8, 220], [4, 94], [1, 179], [8, 73], [0, 128], [0, 54], [3, 233], [7, 124], [0, 187], [9, 157], [2, 44], [2, 52], [2, 199], [4, 3], [8, 228], [4, 82], [9, 147], [0, 20], [3, 184], [1, 207], [1, 225], [7, 156], [5, 141], [7, 120], [5, 175], [5, 167], [6, 81], [5, 125], [8, 212], [0, 27], [0, 33], [8, 202], [4, 198], [7, 45], [5, 22], [6, 109], [7, 177], [7, 95], [9, 108], [2, 121], [8, 226], [6, 149], [4, 56], [7, 160], [0, 136], [0, 40], [6, 99], [5, 164], [4, 74], [5, 192], [7, 133], [0, 234], [0, 49], [8, 37], [5, 188], [1, 178], [6, 127], [2, 84], [2, 144], [2, 195], [7, 145], [6, 169], [9, 38], [4, 193], [3, 10], [1, 69], [9, 215], [4, 19], [1, 39], [6, 35], [4, 42], [2, 8], [5, 206], [4, 85], [2, 162], [0, 23], [3, 67], [3, 5], [1, 25], [8, 152], [4, 18], [7, 62], [0, 98], [9, 13], [0, 106], [8, 224], [0, 131], [0, 11], [7, 132], [3, 89], [1, 196], [2, 112], [0, 139], [1, 55], [6, 214], [6, 170], [6, 204], [4, 72], [4, 86], [5, 151], [7, 47], [7, 36], [2, 163], [7, 113], [6, 200], [7, 161], [5, 182], [6, 7], [4, 211], [0, 63], [8, 221], [3, 116], [7, 76], [5, 21], [6, 229], [6, 71], [5, 189], [7, 186], [1, 165], [2, 2], [9, 15], [4, 118], [6, 88], [1, 102], [3, 57], [9, 65], [7, 208], [2, 100], [3, 64], [6, 130], [7, 114], [7, 135], [5, 140], [0, 166], [5, 190], [6, 50], [4, 90], [9, 137], [1, 93], [3, 181], [9, 46], [2, 227], [1, 6], [8, 59], [5, 58], [4, 105], [5, 83], [4, 41], [3, 1], [0, 171], [8, 219], [7, 14], [3, 17], [3, 104], [4, 79], [1, 148], [3, 110], [9, 92], [7, 143], [9, 239], [3, 191], [5, 197], [0, 218], [3, 107], [2, 230], [2, 172], [6, 203], [9, 210], [9, 168], [3, 158]], [[5, 106], [9, 110], [7, 124], [0, 239], [9, 222], [2, 195], [1, 157], [2, 117], [4, 14], [6, 51], [8, 147], [8, 187], [0, 40], [1, 203], [7, 9], [6, 108], [5, 190], [5, 179], [5, 226], [9, 183], [4, 144], [4, 103], [8, 60], [7, 216], [5, 32], [6, 152], [1, 185], [1, 109], [7, 36], [1, 227], [4, 12], [3, 68], [4, 67], [2, 88], [7, 105], [6, 111], [5, 174], [1, 39], [6, 112], [1, 82], [1, 139], [6, 169], [2, 225], [6, 137], [9, 114], [8, 178], [4, 75], [6, 145], [5, 228], [9, 94], [4, 113], [6, 98], [7, 35], [5, 0], [9, 158], [0, 6], [3, 16], [4, 132], [6, 198], [5, 121], [1, 28], [0, 102], [1, 207], [7, 166], [6, 212], [3, 219], [4, 131], [1, 148], [3, 116], [7, 128], [7, 4], [6, 33], [5, 92], [0, 107], [4, 163], [1, 209], [7, 192], [6, 135], [0, 215], [5, 100], [0, 86], [1, 231], [0, 134], [5, 76], [0, 136], [4, 31], [6, 46], [2, 95], [9, 13], [0, 197], [6, 167], [0, 54], [0, 133], [7, 142], [4, 96], [4, 127], [6, 217], [4, 126], [8, 194], [1, 72], [4, 10], [2, 29], [1, 213], [3, 91], [3, 47], [5, 41], [0, 118], [2, 7], [6, 150], [3, 193], [3, 162], [2, 78], [8, 200], [2, 21], [7, 119], [2, 221], [8, 99], [2, 85], [5, 189], [5, 182], [3, 55], [4, 43], [1, 234], [7, 156], [1, 73], [1, 59], [2, 104], [4, 57], [8, 83], [6, 101], [0, 42], [4, 65], [5, 120], [0, 171], [1, 186], [2, 237], [2, 93], [8, 24], [0, 17], [7, 123], [4, 81], [6, 218], [7, 53], [9, 87], [2, 34], [0, 159], [8, 223], [2, 84], [0, 20], [2, 170], [3, 27], [1, 61], [7, 25], [2, 175], [0, 50], [1, 146], [5, 5], [3, 79], [0, 164], [4, 155], [9, 149], [5, 191], [1, 138], [4, 80], [5, 143], [2, 63], [2, 52], [2, 235], [6, 160], [0, 220], [5, 184], [4, 44], [6, 214], [5, 38], [7, 229], [4, 70], [7, 140], [8, 58], [4, 48], [4, 181], [9, 161], [2, 30], [4, 8], [3, 151], [5, 19], [5, 202], [0, 2], [0, 56], [5, 115], [4, 201], [5, 172], [3, 23], [5, 1], [6, 204], [3, 74], [2, 18], [9, 211], [0, 168], [9, 71], [5, 26], [9, 173], [0, 205], [1, 129], [5, 233], [7, 22], [3, 69], [1, 199], [7, 15], [1, 165], [3, 141], [3, 64], [7, 196], [4, 77], [3, 224], [2, 153], [3, 45], [5, 89], [6, 206], [1, 97], [3, 37], [1, 125], [6, 49], [8, 66], [8, 11], [4, 210], [8, 130], [6, 3], [0, 230], [9, 238], [9, 232], [4, 236], [7, 177], [0, 176], [4, 154], [3, 208], [8, 188], [3, 180], [0, 62], [0, 122], [9, 90]], [[9, 171], [8, 114], [1, 95], [4, 92], [8, 103], [7, 172], [6, 84], [1, 5], [8, 179], [0, 152], [0, 125], [3, 101], [2, 195], [0, 49], [2, 112], [8, 208], [3, 75], [5, 100], [7, 136], [7, 143], [6, 237], [5, 85], [5, 156], [0, 51], [2, 82], [0, 199], [6, 23], [8, 53], [6, 18], [4, 104], [6, 106], [3, 38], [9, 211], [1, 173], [0, 117], [5, 228], [0, 149], [8, 205], [7, 9], [3, 99], [9, 35], [1, 66], [0, 209], [6, 192], [4, 58], [9, 3], [5, 88], [2, 176], [6, 160], [5, 178], [0, 20], [6, 81], [2, 224], [9, 11], [5, 139], [0, 133], [3, 148], [2, 70], [5, 197], [8, 65], [8, 226], [1, 55], [1, 0], [9, 217], [0, 77], [1, 83], [7, 97], [1, 238], [3, 227], [4, 233], [8, 94], [5, 131], [8, 221], [7, 225], [5, 56], [8, 50], [8, 222], [0, 13], [1, 204], [0, 8], [0, 26], [6, 182], [6, 33], [3, 231], [9, 62], [6, 135], [2, 41], [0, 74], [2, 30], [9, 122], [5, 102], [8, 6], [2, 219], [3, 165], [7, 141], [3, 207], [3, 167], [4, 126], [6, 108], [3, 128], [6, 145], [6, 71], [6, 164], [4, 7], [8, 232], [8, 44], [8, 119], [7, 14], [2, 47], [1, 213], [9, 229], [7, 72], [6, 57], [0, 120], [3, 63], [4, 124], [2, 220], [4, 121], [8, 34], [4, 123], [2, 132], [3, 68], [5, 127], [3, 154], [0, 39], [5, 78], [0, 157], [1, 25], [0, 76], [2, 188], [6, 158], [1, 24], [9, 147], [2, 186], [0, 67], [7, 110], [4, 200], [2, 59], [1, 118], [9, 175], [4, 54], [5, 116], [4, 155], [2, 198], [6, 42], [5, 166], [5, 140], [0, 216], [7, 191], [3, 194], [6, 223], [4, 111], [3, 61], [7, 201], [7, 151], [0, 113], [4, 183], [8, 31], [2, 230], [6, 138], [8, 177], [4, 28], [4, 80], [4, 19], [5, 168], [8, 89], [3, 210], [8, 40], [9, 203], [7, 193], [1, 73], [0, 169], [8, 137], [9, 45], [6, 48], [9, 130], [5, 189], [8, 93], [5, 190], [0, 236], [7, 134], [9, 105], [1, 4], [8, 206], [8, 115], [6, 2], [5, 37], [9, 161], [1, 212], [8, 185], [8, 170], [4, 64], [8, 15], [9, 180], [9, 27], [9, 109], [1, 10], [3, 129], [1, 150], [6, 46], [2, 12], [1, 86], [7, 235], [0, 69], [2, 196], [0, 98], [1, 87], [5, 29], [1, 142], [0, 184], [8, 215], [9, 214], [1, 22], [7, 1], [1, 90], [0, 202], [8, 16], [1, 163], [7, 17], [8, 181], [2, 159], [1, 174], [5, 79], [3, 153], [9, 32], [8, 234], [5, 146], [1, 21], [7, 239], [3, 36], [6, 107], [3, 144], [4, 60], [6, 96], [7, 162], [6, 218], [4, 43], [8, 52], [7, 91], [6, 187]], [[6, 183], [3, 119], [3, 61], [1, 116], [0, 79], [0, 234], [0, 139], [6, 123], [6, 20], [0, 125], [0, 215], [9, 75], [0, 170], [7, 5], [4, 217], [9, 136], [5, 239], [2, 18], [8, 124], [7, 33], [2, 35], [3, 232], [1, 6], [4, 225], [3, 13], [1, 45], [9, 100], [9, 96], [1, 64], [8, 59], [0, 39], [1, 62], [3, 66], [4, 91], [6, 52], [3, 58], [2, 181], [8, 160], [1, 72], [7, 177], [3, 134], [7, 166], [1, 148], [8, 103], [3, 77], [6, 228], [9, 12], [1, 220], [1, 3], [1, 227], [0, 53], [3, 168], [2, 84], [1, 137], [8, 140], [3, 149], [4, 94], [8, 235], [9, 206], [4, 93], [5, 90], [3, 158], [9, 9], [3, 233], [4, 238], [4, 187], [5, 22], [0, 8], [4, 16], [5, 153], [4, 165], [7, 145], [0, 127], [1, 83], [5, 182], [6, 85], [5, 222], [4, 24], [5, 175], [9, 218], [3, 146], [1, 46], [9, 113], [9, 78], [5, 144], [8, 19], [8, 226], [2, 216], [9, 203], [6, 97], [0, 41], [8, 118], [3, 204], [3, 23], [9, 108], [2, 2], [1, 174], [4, 224], [3, 106], [4, 197], [7, 212], [7, 138], [7, 120], [5, 111], [2, 63], [3, 199], [0, 104], [1, 131], [3, 105], [6, 152], [6, 86], [4, 163], [8, 54], [1, 40], [4, 186], [5, 67], [6, 198], [7, 129], [3, 98], [3, 82], [4, 74], [0, 209], [6, 155], [8, 229], [7, 231], [4, 176], [4, 190], [2, 117], [9, 169], [6, 27], [9, 69], [5, 210], [0, 15], [8, 143], [0, 115], [5, 37], [7, 73], [9, 47], [2, 32], [3, 132], [3, 130], [0, 121], [0, 92], [2, 184], [1, 179], [2, 26], [3, 43], [9, 109], [8, 208], [5, 4], [9, 135], [9, 167], [6, 185], [6, 55], [5, 0], [2, 192], [8, 107], [8, 202], [9, 141], [1, 99], [0, 36], [1, 38], [6, 70], [5, 44], [3, 17], [6, 80], [8, 48], [9, 31], [8, 71], [9, 88], [5, 112], [5, 230], [1, 211], [0, 142], [6, 162], [0, 173], [3, 201], [6, 154], [7, 102], [0, 171], [2, 194], [2, 25], [0, 223], [9, 147], [9, 34], [2, 49], [9, 56], [2, 195], [8, 237], [9, 200], [3, 68], [7, 207], [3, 188], [4, 156], [1, 128], [0, 236], [3, 101], [5, 76], [3, 30], [6, 180], [3, 10], [5, 159], [3, 122], [1, 7], [2, 178], [9, 60], [9, 221], [1, 164], [1, 193], [6, 50], [1, 157], [5, 81], [4, 191], [5, 87], [4, 14], [2, 133], [6, 172], [2, 150], [7, 11], [7, 21], [3, 219], [5, 29], [4, 126], [8, 189], [7, 89], [2, 205], [3, 65], [7, 95], [6, 151], [4, 28], [6, 214], [3, 196], [3, 51], [1, 57], [8, 161], [6, 213], [6, 114], [4, 42], [5, 110], [7, 1]], [[4, 207], [5, 73], [0, 2], [2, 67], [5, 36], [1, 231], [7, 121], [6, 62], [3, 103], [0, 140], [9, 37], [8, 57], [4, 63], [5, 157], [6, 145], [5, 150], [2, 136], [3, 138], [6, 229], [7, 100], [1, 190], [8, 90], [2, 185], [0, 3], [9, 123], [6, 191], [8, 226], [5, 102], [6, 117], [3, 80], [1, 99], [2, 122], [8, 211], [7, 162], [4, 84], [3, 71], [0, 33], [0, 98], [2, 161], [7, 116], [1, 183], [1, 111], [6, 8], [9, 51], [2, 221], [0, 147], [6, 236], [5, 96], [9, 174], [5, 159], [1, 220], [4, 101], [0, 175], [6, 158], [6, 173], [6, 120], [6, 134], [7, 203], [2, 172], [5, 218], [3, 131], [4, 186], [4, 59], [3, 15], [7, 40], [6, 50], [9, 56], [0, 195], [1, 178], [7, 154], [0, 42], [4, 48], [2, 69], [4, 239], [8, 85], [3, 214], [9, 208], [4, 26], [3, 24], [0, 58], [6, 83], [4, 187], [6, 206], [1, 184], [6, 198], [6, 200], [7, 61], [5, 12], [8, 177], [3, 228], [4, 32], [5, 213], [6, 209], [7, 39], [1, 95], [7, 54], [8, 49], [8, 60], [6, 29], [9, 212], [9, 233], [4, 87], [1, 216], [6, 139], [2, 105], [2, 166], [8, 152], [2, 124], [4, 115], [5, 79], [4, 43], [8, 82], [2, 44], [6, 97], [0, 74], [0, 217], [4, 234], [9, 92], [6, 230], [3, 89], [4, 104], [7, 168], [4, 170], [0, 81], [3, 193], [9, 182], [3, 17], [2, 155], [0, 153], [2, 225], [7, 132], [6, 119], [4, 156], [5, 4], [7, 142], [6, 201], [2, 202], [1, 171], [8, 224], [1, 23], [4, 9], [6, 53], [6, 223], [9, 47], [3, 176], [0, 125], [5, 126], [3, 16], [2, 194], [6, 75], [6, 52], [7, 68], [7, 27], [9, 188], [1, 31], [6, 219], [4, 143], [1, 64], [0, 0], [7, 204], [3, 169], [4, 110], [4, 149], [4, 141], [0, 34], [3, 205], [0, 45], [0, 167], [6, 108], [4, 1], [1, 109], [7, 181], [5, 237], [6, 107], [4, 35], [9, 144], [1, 88], [7, 21], [8, 114], [5, 28], [2, 151], [5, 232], [7, 30], [4, 65], [7, 18], [6, 160], [2, 76], [7, 199], [7, 127], [1, 129], [5, 128], [3, 235], [0, 148], [6, 38], [1, 133], [2, 118], [6, 10], [0, 66], [8, 215], [8, 222], [6, 197], [6, 238], [6, 130], [8, 112], [5, 163], [0, 25], [6, 5], [5, 77], [3, 70], [7, 20], [7, 192], [4, 137], [3, 227], [7, 19], [7, 165], [2, 91], [2, 13], [5, 189], [7, 94], [1, 72], [0, 78], [4, 55], [7, 106], [5, 113], [7, 46], [0, 41], [8, 180], [7, 11], [9, 93], [6, 135], [1, 196], [8, 86], [0, 7], [7, 14], [3, 164], [0, 179], [0, 210], [0, 6], [1, 146], [0, 22]], [[2, 60], [8, 166], [8, 154], [7, 147], [3, 132], [7, 36], [2, 227], [5, 9], [5, 235], [3, 12], [5, 177], [7, 167], [3, 187], [1, 184], [8, 94], [3, 146], [4, 197], [6, 100], [6, 89], [1, 81], [5, 65], [4, 207], [3, 153], [8, 67], [0, 162], [2, 98], [8, 128], [9, 0], [9, 208], [8, 169], [7, 42], [6, 145], [4, 39], [8, 90], [7, 52], [6, 17], [6, 49], [6, 37], [8, 159], [0, 87], [5, 137], [5, 24], [9, 50], [7, 136], [3, 165], [8, 80], [0, 101], [1, 212], [5, 201], [9, 157], [9, 77], [4, 73], [7, 92], [8, 3], [2, 107], [8, 16], [2, 236], [4, 125], [1, 140], [5, 156], [5, 224], [1, 126], [9, 211], [2, 82], [8, 142], [1, 20], [3, 215], [0, 225], [1, 31], [0, 10], [6, 134], [6, 216], [0, 29], [9, 53], [2, 2], [0, 14], [1, 232], [0, 117], [3, 179], [5, 214], [6, 161], [8, 8], [6, 171], [2, 44], [6, 109], [0, 129], [5, 86], [0, 189], [0, 102], [0, 58], [7, 198], [9, 47], [3, 152], [8, 228], [5, 176], [6, 193], [3, 83], [8, 119], [4, 112], [1, 181], [4, 95], [3, 178], [8, 61], [3, 78], [4, 110], [3, 27], [1, 219], [3, 229], [2, 35], [1, 75], [7, 200], [9, 222], [8, 34], [6, 220], [9, 91], [4, 121], [8, 84], [3, 111], [0, 164], [0, 158], [4, 6], [4, 105], [6, 124], [3, 213], [4, 104], [0, 33], [3, 97], [2, 41], [6, 182], [2, 66], [6, 18], [1, 103], [6, 62], [0, 221], [7, 30], [2, 183], [6, 127], [8, 45], [0, 138], [2, 233], [8, 172], [4, 72], [4, 120], [1, 231], [1, 19], [5, 22], [6, 175], [0, 99], [8, 55], [6, 113], [5, 160], [8, 123], [5, 43], [0, 26], [5, 234], [2, 88], [8, 139], [3, 199], [5, 204], [5, 11], [7, 180], [5, 7], [9, 230], [7, 190], [7, 76], [7, 59], [3, 192], [1, 51], [7, 163], [5, 15], [1, 114], [9, 1], [3, 173], [6, 188], [3, 133], [4, 237], [8, 40], [0, 217], [0, 118], [6, 210], [4, 96], [7, 4], [4, 108], [5, 155], [5, 63], [7, 205], [1, 130], [1, 149], [2, 144], [7, 194], [1, 168], [9, 5], [4, 203], [2, 71], [7, 195], [9, 38], [3, 116], [0, 143], [2, 70], [9, 79], [5, 151], [3, 68], [5, 25], [7, 191], [4, 48], [3, 206], [4, 226], [9, 202], [2, 93], [2, 85], [4, 196], [4, 57], [4, 64], [8, 54], [8, 23], [0, 186], [7, 239], [5, 135], [2, 56], [3, 148], [4, 174], [4, 218], [3, 122], [1, 13], [5, 223], [7, 238], [8, 131], [9, 141], [8, 150], [4, 185], [5, 209], [9, 28], [7, 21], [3, 170], [2, 74], [9, 69], [1, 106], [6, 115], [7, 46], [6, 32]], [[2, 88], [6, 216], [1, 209], [7, 44], [6, 208], [7, 53], [8, 164], [1, 226], [2, 223], [7, 56], [2, 32], [7, 54], [2, 204], [8, 230], [3, 132], [3, 108], [7, 106], [4, 224], [6, 11], [9, 140], [5, 214], [7, 112], [9, 231], [9, 94], [2, 66], [9, 206], [8, 175], [7, 169], [7, 124], [7, 0], [4, 72], [7, 50], [7, 97], [6, 70], [0, 235], [1, 162], [6, 78], [7, 211], [5, 5], [7, 104], [7, 168], [7, 67], [6, 180], [6, 69], [6, 7], [1, 36], [5, 12], [7, 68], [9, 143], [6, 6], [7, 166], [2, 92], [5, 25], [8, 197], [5, 9], [9, 115], [0, 200], [5, 27], [1, 201], [4, 153], [5, 195], [0, 156], [8, 111], [2, 129], [2, 146], [4, 24], [4, 207], [1, 117], [3, 210], [4, 41], [7, 18], [2, 126], [9, 16], [1, 85], [5, 20], [3, 136], [1, 76], [1, 176], [3, 171], [4, 118], [2, 86], [3, 188], [1, 1], [7, 79], [9, 110], [6, 199], [9, 139], [2, 33], [3, 186], [2, 165], [0, 40], [3, 123], [3, 128], [3, 60], [0, 196], [6, 189], [8, 215], [5, 142], [3, 29], [0, 14], [0, 102], [1, 62], [5, 184], [3, 2], [8, 116], [0, 8], [2, 125], [3, 173], [9, 133], [1, 93], [3, 148], [9, 178], [6, 154], [3, 187], [1, 193], [5, 34], [6, 58], [8, 233], [3, 202], [0, 51], [9, 39], [9, 152], [1, 47], [3, 113], [6, 194], [9, 91], [6, 55], [8, 221], [3, 107], [7, 64], [1, 198], [8, 82], [4, 190], [5, 205], [9, 172], [9, 109], [6, 38], [6, 31], [9, 90], [5, 144], [6, 157], [0, 217], [4, 81], [6, 48], [2, 131], [3, 59], [8, 232], [8, 150], [8, 80], [3, 220], [2, 17], [9, 21], [2, 145], [9, 103], [6, 161], [2, 174], [6, 225], [1, 37], [2, 4], [9, 192], [7, 149], [7, 141], [1, 28], [3, 3], [7, 236], [8, 120], [5, 95], [5, 114], [4, 130], [4, 77], [1, 151], [5, 105], [8, 57], [5, 155], [1, 181], [9, 49], [6, 137], [2, 234], [0, 65], [6, 74], [2, 46], [5, 42], [7, 63], [5, 119], [8, 98], [2, 222], [5, 23], [4, 35], [1, 26], [3, 43], [8, 61], [7, 229], [5, 182], [4, 147], [5, 96], [0, 179], [4, 13], [4, 160], [8, 237], [4, 45], [6, 219], [0, 213], [1, 238], [8, 75], [2, 227], [3, 191], [2, 212], [5, 167], [6, 30], [5, 228], [5, 83], [0, 122], [6, 10], [6, 99], [0, 134], [8, 101], [5, 127], [1, 163], [4, 203], [9, 177], [9, 121], [0, 135], [3, 15], [7, 183], [5, 218], [3, 84], [5, 100], [3, 19], [7, 89], [8, 22], [7, 138], [3, 87], [3, 158], [2, 71], [6, 159], [9, 52], [2, 170], [3, 239], [9, 185], [4, 73]], [[5, 175], [6, 177], [0, 125], [2, 91], [6, 102], [2, 215], [6, 168], [0, 118], [4, 130], [9, 56], [0, 22], [3, 33], [0, 61], [6, 181], [2, 78], [2, 109], [8, 186], [3, 92], [3, 195], [1, 205], [6, 139], [1, 197], [9, 93], [2, 12], [3, 74], [6, 123], [6, 88], [6, 24], [5, 37], [2, 72], [0, 169], [8, 192], [7, 119], [4, 41], [9, 235], [1, 50], [2, 15], [4, 57], [5, 184], [1, 223], [3, 30], [2, 159], [5, 73], [2, 69], [7, 116], [1, 43], [7, 188], [7, 146], [5, 199], [4, 114], [4, 217], [5, 97], [6, 132], [7, 211], [0, 105], [2, 158], [4, 128], [6, 62], [0, 144], [5, 80], [9, 153], [1, 170], [0, 233], [6, 225], [5, 207], [2, 179], [8, 142], [0, 94], [2, 200], [3, 64], [2, 68], [1, 138], [4, 110], [4, 100], [2, 220], [7, 48], [1, 106], [1, 172], [7, 120], [7, 239], [0, 198], [9, 71], [4, 154], [0, 189], [4, 137], [5, 55], [5, 162], [6, 39], [4, 163], [7, 143], [0, 86], [0, 17], [8, 152], [1, 42], [7, 18], [6, 150], [0, 112], [1, 176], [9, 21], [4, 133], [7, 160], [9, 4], [3, 204], [0, 67], [1, 238], [6, 226], [0, 122], [8, 51], [7, 231], [9, 32], [8, 171], [2, 136], [6, 20], [8, 54], [0, 9], [7, 96], [2, 182], [1, 34], [7, 124], [5, 103], [6, 117], [0, 113], [8, 28], [4, 155], [4, 222], [3, 148], [9, 81], [1, 58], [0, 191], [9, 77], [6, 185], [0, 140], [5, 16], [9, 180], [0, 26], [7, 70], [5, 157], [0, 13], [5, 230], [7, 183], [2, 27], [6, 167], [7, 166], [7, 108], [1, 214], [5, 111], [3, 6], [3, 5], [7, 107], [6, 60], [6, 0], [2, 178], [9, 151], [9, 90], [6, 173], [0, 89], [4, 209], [9, 14], [1, 104], [4, 63], [0, 38], [7, 196], [5, 218], [9, 224], [9, 126], [6, 82], [9, 141], [0, 66], [7, 134], [4, 83], [2, 135], [0, 228], [7, 190], [3, 2], [0, 221], [5, 75], [6, 210], [0, 65], [2, 229], [0, 76], [7, 29], [4, 52], [4, 87], [2, 216], [7, 85], [4, 213], [8, 23], [6, 10], [5, 121], [4, 1], [9, 3], [1, 31], [3, 164], [4, 45], [2, 84], [8, 11], [3, 101], [9, 202], [4, 131], [9, 145], [5, 234], [6, 115], [1, 25], [9, 79], [5, 236], [2, 36], [9, 174], [4, 53], [9, 44], [8, 219], [7, 212], [0, 237], [6, 232], [8, 156], [4, 19], [7, 193], [7, 227], [4, 59], [3, 194], [8, 98], [0, 127], [7, 206], [1, 35], [9, 40], [8, 46], [8, 99], [7, 161], [9, 49], [8, 8], [6, 147], [7, 129], [1, 187], [1, 95], [5, 165], [2, 208], [2, 47], [6, 203], [0, 149], [5, 7], [4, 201]]];
    var i = [{n: [], S: [], J: []}, {n: [], S: [], J: [11, 16, 18, 69]}, {n: [], S: [0, 3], J: [1, 2, 356]}, {
        n: [23],
        S: [2, 11, 12, 14, 15, 17, 20, 22, 23, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 38, 39],
        J: [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 13, 16, 18, 19, 21, 24, 25, 36, 37, 277, 344, 360]
    }, {n: [], S: [0], J: [1, 2, 9, 10, 13]}, {n: [0], S: [0], J: [25, 30, 36, 37]}, {
        n: [],
        S: [0, 1, 2, 5, 6, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 21, 22, 24, 25, 26, 27, 28, 30],
        J: [3, 4, 7, 8, 18, 20, 23, 29, 36, 177, 206, 215, 277, 344, 360]
    }, {n: [1], S: [0, 1, 2], J: []}, {n: [0], S: [0], J: [9, 16, 18, 24, 28]}, {
        n: [2],
        S: [0, 1, 2, 3, 4, 5],
        J: [7, 12]
    }, {n: [4, 8, 3, 5], S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], J: [164]}, {
        n: [2],
        S: [0, 1, 2, 4],
        J: [3]
    }, {n: [], S: [], J: [6, 14, 17, 20, 21, 23, 25, 26, 37, 39, 42]}, {
        U: 15,
        n: [4],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 14, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27],
        J: [9, 13, 16, 20, 31, 32, 33, 34, 90, 94, 137, 160, 183, 317, 323]
    }, {n: [0], S: [0], J: [6]}, {
        n: [6, 1, 5, 4, 7, 3, 2],
        S: [1, 2, 3, 4, 5, 6, 7],
        J: [0, 19, 31, 33, 56, 69, 78, 317]
    }, {n: [0], S: [0], J: [10]}, {n: [0], S: [0], J: []}, {n: [], S: [], J: []}, {
        n: [],
        S: [0, 1],
        J: [7, 8, 16, 25, 35, 38]
    }, {n: [], S: [0], J: [11, 17]}, {n: [0], S: [0], J: [19, 31, 33, 56, 69, 78, 317]}, {
        n: [0],
        S: [0],
        J: [5, 145]
    }, {n: [], S: [0, 1], J: [3, 11, 15, 17, 19, 31, 33, 317]}, {n: [], S: [0], J: [2, 3, 4, 5]}, {
        n: [0],
        S: [0],
        J: [22]
    }, {n: [0], S: [0], J: [56]}, {
        n: [12],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13],
        J: [25, 26, 36, 277, 344, 360]
    }, {n: [1, 0], S: [0, 1], J: []}, {n: [], S: [], J: [12, 15]}, {n: [0], S: [0, 1, 2], J: [61, 92, 309]}, {
        n: [],
        S: [0, 1, 2],
        J: [80, 290]
    }, {U: 0, n: [], S: [], J: []}, {n: [0], S: [0], J: [15]}, {n: [0], S: [0], J: []}, {
        n: [],
        S: [1],
        J: [0, 3, 34, 160]
    }, {n: [1], S: [0, 1, 2, 3, 4, 5, 6], J: [13, 30, 38, 46, 99, 167, 228]}, {n: [0], S: [0], J: []}, {
        n: [],
        S: [0, 2, 12, 16, 18, 29, 32, 33, 36, 40, 41],
        J: [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 30, 31, 34, 35, 37, 38, 39, 42, 43, 44, 46, 47, 48, 49, 50, 99, 167, 228, 255, 277, 284, 344, 360]
    }, {n: [2], S: [1, 2, 4], J: [0, 3, 5, 279]}, {
        n: [1, 5, 11, 7, 22, 3],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 23],
        J: [21, 48, 81, 112, 134, 142, 157, 172, 202, 234, 241, 259, 276, 277, 283, 285, 334, 337, 344, 360]
    }, {n: [0], S: [0], J: [39]}, {
        n: [3],
        S: [1, 2, 3, 5],
        J: [0, 4, 56, 82, 125, 165, 179, 247, 263, 279, 331, 332, 356]
    }, {n: [0], S: [0], J: [28]}, {n: [], S: [], J: []}, {n: [0], S: [0], J: []}, {n: [0], S: [0], J: [1]}, {
        n: [0],
        S: [0],
        J: [10]
    }, {n: [0], S: [0, 3, 4], J: [1, 2]}, {n: [0], S: [0], J: []}, {n: [0], S: [0], J: [1]}, {
        n: [1],
        S: [0, 1],
        J: [66, 92, 173]
    }, {n: [0], S: [0, 1, 2, 3, 4, 5, 6], J: [16, 344, 360]}, {n: [2], S: [0, 1, 2], J: [3, 4]}, {
        n: [2, 1],
        S: [0, 1, 2, 3, 5],
        J: [4, 8, 10, 14, 28, 33, 344, 360]
    }, {n: [2, 1], S: [1, 2], J: [0]}, {
        n: [],
        S: [1, 3, 7, 10, 11, 13, 15, 17, 20, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37],
        J: [0, 2, 4, 5, 6, 8, 9, 12, 14, 16, 18, 19, 21, 23, 48, 81, 112, 142, 157, 202, 234, 259, 276, 277, 285, 337, 360]
    }, {n: [0], S: [0], J: [20]}, {
        n: [7, 23, 20, 15, 8, 5],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24],
        J: [27, 28, 185, 232, 282, 294, 351, 360]
    }, {n: [], S: [2, 5], J: [0, 1, 3, 4, 7, 10, 15, 20]}, {n: [3, 1], S: [0, 1, 2, 3], J: [72]}, {
        n: [0],
        S: [0],
        J: [16]
    }, {n: [0], S: [0], J: []}, {n: [1], S: [0, 1], J: [2, 8, 12, 108, 143]}, {W: 0, n: [], S: [], J: [246]}, {
        n: [],
        S: [0],
        J: [3, 14, 15, 17, 19, 78]
    }, {n: [7], S: [0, 1, 2, 4, 6, 7, 8], J: [3, 5, 11, 24, 49, 99, 167, 284]}, {n: [1], S: [1], J: [0, 2]}, {
        n: [1],
        S: [1],
        J: [0, 2, 3, 148, 257]
    }, {n: [], S: [], J: [4]}, {n: [0], S: [0], J: [7]}, {n: [3], S: [2, 3], J: [0, 1]}, {
        n: [],
        S: [],
        J: [19, 25]
    }, {n: [0], S: [0, 6], J: [1, 2, 3, 4, 5, 8]}, {n: [0], S: [0], J: [215]}, {n: [], S: [], J: [7]}, {
        U: 1,
        n: [6],
        S: [0, 2, 3, 4, 5, 6, 7, 8],
        J: []
    }, {n: [0], S: [0], J: [18]}, {n: [2], S: [1, 2], J: [0, 7]}, {n: [], S: [], J: []}, {
        n: [],
        S: [],
        J: [0, 4]
    }, {n: [3], S: [0, 3], J: [1, 2, 5, 6, 7, 9]}, {
        n: [],
        S: [0, 1, 2, 3, 7, 9, 11, 12, 14, 15, 16, 17, 18, 19, 20],
        J: [4, 5, 6, 8, 10, 13, 123, 213, 222, 277, 344, 360]
    }, {W: 5, n: [], S: [0, 1, 2, 3, 4], J: [11, 14, 26, 28]}, {
        n: [0],
        S: [0],
        J: [1, 5, 10]
    }, {
        n: [2, 25, 22, 16, 34, 31],
        S: [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34],
        J: [3, 36, 74, 172, 177, 206, 215, 241, 277, 344, 360]
    }, {n: [0], S: [0], J: []}, {
        n: [15, 10, 8, 17, 0, 13],
        S: [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18],
        J: [3, 56, 123, 198, 277, 318, 328, 335, 344, 347, 360]
    }, {n: [], S: [0], J: [13, 17]}, {n: [2], S: [2, 3], J: [0, 1, 10, 13]}, {
        n: [0],
        S: [0],
        J: [6, 7, 8]
    }, {
        n: [21, 23, 0, 2, 6, 10],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24],
        J: [32, 220, 286, 333, 344, 360]
    }, {U: 0, n: [1], S: [1], J: []}, {n: [0], S: [0], J: [5, 56]}, {
        n: [2, 1],
        S: [0, 1, 2, 3],
        J: [102, 251]
    }, {n: [1, 0], S: [0, 1], J: [72, 265]}, {U: 0, n: [1], S: [1, 2, 3, 4], J: []}, {
        n: [8],
        S: [0, 2, 3, 4, 5, 7, 8, 10, 11],
        J: [1, 6, 9, 19, 167, 228]
    }, {n: [0], S: [0], J: []}, {n: [1], S: [0, 1, 2, 3, 4, 5, 6, 7], J: [11, 277, 344, 360]}, {
        n: [0],
        S: [0],
        J: [4, 56, 356]
    }, {n: [], S: [], J: [2, 3]}, {n: [4], S: [1, 2, 3, 4, 5], J: [0, 10, 12, 22, 42, 95, 111, 141, 145]}, {
        U: 6,
        W: 2,
        n: [],
        S: [0, 1, 3, 4, 5],
        J: []
    }, {n: [1], S: [1], J: [0, 5, 10]}, {n: [0], S: [0, 1, 2, 3], J: [11, 15, 147, 168, 333]}, {
        n: [0],
        S: [0],
        J: []
    }, {
        n: [],
        S: [3, 5, 14, 15, 16, 17, 18, 22, 23, 24, 25, 26],
        J: [0, 1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13, 19, 20, 21, 167, 228, 270, 277, 344, 360]
    }, {n: [0], S: [0], J: [125]}, {n: [], S: [], J: [1, 19]}, {W: 5, n: [], S: [0, 1, 2, 3, 4], J: [56, 127]}, {
        n: [],
        S: [0, 1, 2, 4, 5],
        J: [3, 91, 277, 360]
    }, {n: [], S: [], J: [1]}, {n: [], S: [], J: [1, 7, 10]}, {n: [], S: [], J: [0, 22]}, {
        n: [],
        S: [0, 1, 2, 4, 5, 7],
        J: [3, 6, 12, 14, 28, 360]
    }, {n: [], S: [], J: [40, 88, 132, 239, 358]}, {n: [3], S: [2, 3], J: [0, 1]}, {
        n: [0, 27, 18, 2, 21, 11],
        S: [0, 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34],
        J: [3, 6, 15, 36, 53, 75, 160, 227, 248, 277, 344, 360]
    }, {n: [0], S: [0, 1, 2], J: [4, 13, 19, 44, 46, 167]}, {n: [0], S: [0], J: [4, 145]}, {
        n: [0],
        S: [0, 1],
        J: []
    }, {n: [6], S: [1, 2, 3, 4, 6, 7, 8], J: [0, 5]}, {n: [], S: [0], J: [6, 10, 15, 30, 32]}, {
        n: [6, 5],
        S: [3, 5, 6, 7],
        J: [0, 1, 2, 4]
    }, {n: [0], S: [0], J: [28]}, {n: [0, 1], S: [0, 1], J: [218]}, {
        W: 9,
        n: [8],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 10],
        J: []
    }, {n: [0], S: [0], J: [2, 145]}, {U: 1, n: [0], S: [0], J: [224, 246]}, {
        n: [0],
        S: [0],
        J: [6, 7]
    }, {
        n: [0, 45, 41, 32, 2, 40],
        S: [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50],
        J: [3, 18, 99, 167, 204, 228, 255, 277, 284, 344, 360]
    }, {n: [], S: [], J: [15, 17, 21, 69]}, {
        n: [8],
        S: [0, 1, 2, 4, 6, 7, 8],
        J: [3, 5, 11, 24, 49, 99, 167, 284]
    }, {n: [], S: [], J: [4]}, {n: [0], S: [0], J: [2, 56]}, {n: [0], S: [0], J: []}, {
        n: [3, 1, 0, 4, 6, 2],
        S: [0, 1, 2, 3, 4, 5, 6],
        J: [277, 344, 360]
    }, {n: [1, 7], S: [0, 1, 2, 3, 4, 5, 6, 7], J: []}, {
        n: [],
        S: [0, 1, 2],
        J: [6, 7, 8, 12, 15, 18, 38, 124]
    }, {n: [], S: [], J: []}, {n: [0], S: [0], J: [2]}, {
        n: [4],
        S: [1, 2, 3, 4, 5],
        J: [0, 9, 12, 22, 54, 114, 145]
    }, {n: [1], S: [1, 2], J: [0, 8]}, {n: [], S: [], J: []}, {n: [0], S: [0], J: []}, {
        n: [],
        S: [1, 2, 6, 7, 8, 13],
        J: [0, 3, 4, 5, 9, 10, 11, 12]
    }, {n: [], S: [], J: []}, {n: [], S: [], J: []}, {n: [0], S: [0, 1], J: [33, 46, 167]}, {
        n: [0],
        S: [0, 1, 3, 4, 5],
        J: [2, 56, 179, 263, 279, 356]
    }, {n: [1], S: [1, 2, 3, 4, 5, 6], J: [0, 8, 251, 293, 336]}, {n: [0], S: [0], J: [7]}, {
        n: [],
        S: [0, 2, 11, 18, 19, 21, 22, 27, 34, 35, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47],
        J: [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 20, 23, 24, 25, 26, 28, 29, 30, 31, 32, 33, 36, 53, 75, 160, 227, 248, 277, 344, 360]
    }, {n: [4, 2, 3, 0, 1, 5, 6], S: [0, 1, 2, 3, 4, 5, 6], J: [19, 31, 33, 56, 69, 78, 292, 317]}, {
        n: [7],
        S: [0, 1, 2, 3, 4, 5, 7],
        J: [6, 344, 360]
    }, {n: [0], S: [0], J: [40, 239]}, {n: [1], S: [0, 1, 2], J: [242, 344]}, {n: [0], S: [0], J: [3, 4]}, {
        n: [],
        S: [],
        J: [5, 8]
    }, {
        n: [],
        S: [0, 2, 3, 4, 6, 8, 10, 11, 12, 14, 15, 16, 17, 18, 20, 21, 23, 25, 26, 27],
        J: [1, 5, 7, 9, 13, 19, 22, 24, 28, 30, 33, 34, 35, 43, 48, 50, 277, 344, 360]
    }, {n: [], S: [], J: [8, 23]}, {n: [0], S: [0, 1, 2], J: [4, 16]}, {n: [2], S: [2], J: [0, 1]}, {
        n: [0],
        S: [0],
        J: [2]
    }, {n: [0], S: [0], J: [11, 37]}, {n: [0], S: [0], J: []}, {n: [], S: [], J: [1]}, {
        n: [3],
        S: [0, 2, 3, 4, 5],
        J: [1, 9, 14, 17, 18, 23, 24, 25, 27, 28, 86]
    }, {n: [4], S: [0, 2, 3, 4, 5, 6], J: [1, 58, 84, 148, 257, 287]}, {
        U: 2,
        W: 6,
        n: [7],
        S: [0, 1, 3, 4, 5, 7, 8],
        J: [67, 306]
    }, {n: [0], S: [0], J: []}, {n: [0], S: [0, 1, 2, 3, 4, 5, 6], J: [13, 30, 38, 46, 99, 167, 228]}, {
        n: [],
        S: [1],
        J: [0, 4]
    }, {n: [3], S: [0, 1, 3], J: [2, 6, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]}, {
        n: [1, 2],
        S: [1, 2, 4, 5],
        J: [0, 3, 82, 331]
    }, {n: [], S: [], J: []}, {n: [1], S: [1], J: [0]}, {n: [5], S: [0, 1, 2, 3, 4, 5], J: [6, 344, 360]}, {
        n: [0],
        S: [0],
        J: []
    }, {U: 1, W: 9, n: [], S: [0, 2, 4, 6], J: [3, 5, 7, 8, 55, 73]}, {n: [2], S: [0, 1, 2, 3], J: [9]}, {
        n: [0],
        S: [0],
        J: [8]
    }, {U: 0, n: [3, 2], S: [1, 2, 3], J: [169]}, {n: [0], S: [0, 1, 2], J: [3]}, {
        n: [],
        S: [0, 1, 4, 5, 7, 8, 15, 16, 20],
        J: [2, 3, 6, 9, 10, 11, 12, 13, 14, 17, 18, 19, 21, 23, 24, 27, 185, 360]
    }, {W: 4, n: [], S: [0, 1, 2, 3, 5], J: [6, 11, 15, 26]}, {
        n: [],
        S: [],
        J: [7, 8, 15, 19]
    }, {
        n: [34, 29, 39, 5, 40, 14],
        S: [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 31, 32, 33, 34, 35, 37, 38, 39, 40, 41, 42, 43, 44, 45],
        J: [3, 18, 30, 36, 49, 65, 101, 107, 133, 151, 164, 176, 194, 208, 215, 254, 277, 312, 313, 344, 349, 350, 353, 360]
    }, {n: [], S: [0, 1, 2, 3], J: [27, 30, 34, 160]}, {n: [4], S: [0, 1, 2, 3, 4, 5], J: [324]}, {
        n: [3],
        S: [2, 3],
        J: [0, 1, 5, 9, 10, 108, 354]
    }, {
        n: [],
        S: [1, 3, 4, 6, 7, 8, 9, 11, 12, 14, 15, 16, 17, 18, 19, 21, 22, 23, 24, 25, 26, 27, 28],
        J: [0, 2, 5, 10, 13, 20, 134, 172, 241, 283, 334, 344, 360]
    }, {n: [7, 8], S: [2, 5, 6, 7, 8, 9, 10, 11, 12], J: [0, 1, 3, 4, 93, 108, 131, 143, 209, 354]}, {
        n: [0],
        S: [0, 1],
        J: [7, 15, 20, 26]
    }, {n: [9, 10, 8], S: [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11], J: [2, 12]}, {
        n: [4, 1],
        S: [0, 1, 2, 3, 4],
        J: []
    }, {n: [0, 1], S: [0, 1], J: [355]}, {n: [8], S: [1, 3, 4, 5, 6, 7, 8, 9], J: [0, 2]}, {
        n: [0],
        S: [0],
        J: []
    }, {n: [], S: [0, 1, 2, 4, 5], J: [3, 9, 11, 12, 13, 19, 344, 360]}, {n: [0], S: [0], J: [12]}, {
        n: [0],
        S: [0],
        J: []
    }, {n: [0], S: [0, 1, 2, 3, 4], J: [6, 11, 16, 166, 173]}, {n: [0], S: [0], J: [4, 6, 19, 20, 29]}, {
        n: [],
        S: [],
        J: [15]
    }, {n: [0, 1], S: [0, 1], J: [10, 20]}, {
        n: [],
        S: [0, 1],
        J: [5, 13, 17, 18, 19, 31, 33, 317]
    }, {
        n: [17, 5, 3, 14, 16, 15],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21],
        J: [18, 167, 228, 270, 277, 344, 360]
    }, {n: [0], S: [0], J: [3, 28]}, {n: [1], S: [0, 1], J: [7, 9, 12, 17]}, {n: [], S: [], J: [27, 34]}, {
        n: [11, 0],
        S: [0, 1, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20],
        J: [2, 3, 10, 31, 33, 39, 70, 85, 146, 154, 158, 163, 181, 310, 314, 317, 323, 330, 352]
    }, {
        n: [],
        S: [0, 2, 4, 5, 6, 7, 8, 9, 10, 13, 14, 15, 16, 17, 18, 19, 21, 24, 25, 26, 27, 29, 33, 34, 35, 37],
        J: [1, 3, 11, 12, 20, 22, 23, 28, 30, 31, 32, 36, 41, 65, 277, 313, 344, 353, 360]
    }, {n: [0], S: [0], J: [2]}, {n: [], S: [0, 3, 4, 5, 6], J: [1, 2, 7, 11, 344, 360]}, {
        n: [0],
        S: [0],
        J: [1]
    }, {
        n: [6, 12],
        S: [0, 1, 2, 5, 6, 7, 8, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20],
        J: [3, 4, 9, 10, 31, 33, 39, 70, 85, 146, 153, 154, 158, 163, 181, 310, 314, 317, 323, 330, 352]
    }, {n: [], S: [0], J: [7, 14, 16, 23, 26]}, {n: [0], S: [0, 1, 2, 3, 4, 5], J: [10, 344, 360]}, {
        W: 5,
        n: [],
        S: [0, 1, 2, 3, 4],
        J: [56, 238]
    }, {
        n: [],
        S: [0, 1, 2, 3, 4, 6, 7, 9, 11],
        J: [5, 8, 10, 14, 15, 16, 18, 103, 193, 222, 277, 301, 344, 360]
    }, {U: 2, n: [1], S: [0, 1, 3], J: []}, {n: [], S: [], J: [11, 26]}, {
        n: [],
        S: [0, 1, 2, 4, 5, 6],
        J: [3, 9, 12, 14, 360]
    }, {n: [], S: [], J: [15]}, {n: [0], S: [0], J: []}, {n: [1], S: [1], J: [0]}, {
        n: [4],
        S: [0, 1, 2, 3, 4],
        J: [19, 185, 232]
    }, {n: [0], S: [0], J: [3]}, {n: [1, 0], S: [0, 1], J: []}, {
        n: [],
        S: [2, 5],
        J: [0, 1, 3, 4, 7, 10, 15, 20]
    }, {n: [0], S: [0, 1], J: [7]}, {n: [0], S: [0], J: [103, 301]}, {n: [0], S: [0], J: [6]}, {
        n: [],
        S: [0, 1],
        J: [5, 10, 17, 18, 19, 78]
    }, {U: 0, n: [], S: [], J: []}, {
        n: [6],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16],
        J: [12, 22, 30, 65, 344, 360]
    }, {
        n: [11],
        S: [0, 1, 2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16],
        J: [3, 10, 27, 31, 33, 39, 70, 85, 108, 143, 146, 163, 181, 192, 253, 303, 305, 310, 314, 317, 319, 323, 330, 352, 354]
    }, {n: [], S: [], J: [29]}, {
        n: [],
        S: [1, 5, 6, 8, 9, 11, 13, 14, 18, 20, 28, 30],
        J: [0, 2, 3, 4, 7, 10, 12, 15, 16, 17, 19, 21, 22, 23, 24, 25, 26, 27, 29, 128, 266, 277, 344, 360]
    }, {n: [], S: [], J: []}, {W: 0, n: [], S: [1, 2, 3, 4, 5], J: [9, 14, 16, 23, 24, 25]}, {
        n: [],
        S: [],
        J: []
    }, {n: [0], S: [0], J: [175]}, {n: [2], S: [0, 1, 2, 3, 4, 5, 6, 7], J: [13, 30, 38, 46, 99, 167, 228]}, {
        n: [],
        S: [0, 1],
        J: [5, 8, 103, 104, 123, 344, 360]
    }, {n: [0], S: [0], J: [13]}, {
        n: [],
        S: [],
        J: [6, 7, 12, 13, 108, 143, 192, 303, 305, 319, 354]
    }, {
        n: [6, 0, 1, 3],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13],
        J: [9, 12, 22, 42, 54, 95, 111, 114, 141, 145]
    }, {n: [], S: [], J: []}, {n: [0], S: [0], J: [1, 56]}, {n: [], S: [], J: [273, 296]}, {
        n: [2],
        S: [0, 2, 3, 4, 6, 7, 8],
        J: [1, 5, 12, 56, 198, 318]
    }, {
        n: [13],
        S: [0, 1, 2, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19],
        J: [3, 10, 17, 31, 33, 38, 39, 70, 85, 92, 124, 146, 147, 153, 154, 158, 163, 173, 174, 181, 212, 216, 240, 244, 310, 314, 317, 323, 325, 330, 352]
    }, {
        n: [],
        S: [0, 1, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 18, 19, 20, 21],
        J: [2, 6, 10, 13, 16, 17, 22, 23, 24, 27, 344, 360]
    }, {n: [3], S: [0, 1, 2, 3], J: [164, 272]}, {n: [], S: [], J: [0, 2]}, {
        n: [1],
        S: [0, 1, 2],
        J: [58, 84, 148, 175, 257, 287]
    }, {n: [0], S: [0], J: []}, {n: [], S: [2, 3, 12, 14, 15, 16], J: [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13]}, {
        n: [],
        S: [],
        J: []
    }, {
        n: [11, 10, 3],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14],
        J: [17, 55, 62, 73, 92, 149, 166, 173, 174, 212, 240, 244, 268, 271, 302, 307, 325, 342]
    }, {n: [1, 0], S: [0, 1], J: [7]}, {
        n: [12],
        S: [1, 2, 5, 8, 9, 12, 13, 17, 18],
        J: [0, 3, 4, 6, 7, 10, 11, 14, 15, 16, 27, 31, 33, 70, 85, 146, 163, 181, 253, 310, 314, 317, 323, 330, 352]
    }, {n: [1], S: [0, 1], J: [21, 22, 23, 24]}, {
        n: [],
        S: [0, 1, 2, 4, 5],
        J: [3, 9, 11, 12, 13, 19, 344, 360]
    }, {n: [0], S: [0], J: [182]}, {n: [0], S: [0, 1], J: [5, 9, 10, 108, 143]}, {n: [1], S: [1], J: [0]}, {
        n: [0],
        S: [0],
        J: [7]
    }, {
        n: [28, 25, 36, 30, 27, 18, 7, 4, 24, 40, 8],
        S: [4, 5, 6, 7, 8, 9, 11, 12, 13, 15, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 32, 36, 37, 38, 40],
        J: [0, 1, 2, 3, 10, 14, 16, 31, 33, 34, 35, 39, 41, 45, 47, 50, 56, 58, 59, 63, 64, 69, 70, 71, 72, 77, 83, 84, 86, 90, 94, 97, 98, 100, 109, 115, 118, 119, 121, 124, 126, 130, 137, 139, 144, 147, 148, 160, 162, 163, 164, 168, 171, 175, 180, 181, 182, 183, 191, 196, 197, 215, 218, 226, 229, 230, 233, 236, 257, 265, 267, 275, 289, 298, 306, 308, 310, 316, 317, 323, 326, 333, 339, 340, 345]
    }, {n: [4], S: [2, 3, 4], J: [0, 1, 6, 10, 11, 12, 13, 15, 30, 32, 241]}, {
        U: 2,
        n: [0, 1],
        S: [0, 1],
        J: []
    }, {n: [0], S: [0], J: [16]}, {n: [], S: [2, 3, 4, 5], J: [0, 1, 25, 86]}, {n: [], S: [], J: []}, {
        n: [6],
        S: [0, 2, 3, 4, 5, 6, 8],
        J: [1, 7, 9, 15, 22, 28, 34, 35, 43, 47, 48, 50, 255]
    }, {
        n: [],
        S: [],
        J: [0, 2, 3, 5, 6, 10, 31, 33, 39, 70, 85, 124, 146, 154, 158, 163, 181, 310, 314, 317, 323, 330, 352]
    }, {n: [], S: [0], J: [6, 7, 8, 9, 10]}, {n: [0], S: [0], J: []}, {
        n: [243],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360],
        J: []
    }, {n: [], S: [0, 1, 2, 3, 4], J: [6, 12, 56, 335, 344, 360]}, {
        n: [13, 1],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13],
        J: [187, 190, 251]
    }, {n: [0], S: [0], J: [2]}, {n: [], S: [], J: [0, 1]}, {n: [], S: [1, 3, 4, 5, 6, 7], J: [0, 2, 360]}, {
        n: [0, 1],
        S: [0, 1],
        J: [210]
    }, {n: [], S: [], J: [9]}, {n: [], S: [], J: []}, {n: [0], S: [0, 1], J: [14, 23, 27, 28]}, {
        n: [],
        S: [],
        J: [2, 12, 13, 21]
    }, {n: [2], S: [2], J: [0, 1]}, {n: [0], S: [0], J: [6]}, {n: [0], S: [0], J: []}, {
        n: [7, 12, 23, 26],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 26, 27, 28],
        J: [24, 25, 29, 43, 46, 68, 87, 106, 120, 135, 136, 138, 178, 188, 199, 207, 215, 219, 231, 235, 262, 281, 288, 315, 346, 348]
    }, {U: 0, n: [], S: [], J: []}, {n: [], S: [0, 1, 2, 3, 4, 5], J: []}, {
        n: [3],
        S: [0, 1, 2, 3, 4, 5, 6],
        J: [26, 41, 200, 317, 333]
    }, {n: [0], S: [0], J: [1, 2, 12]}, {n: [0], S: [0], J: []}, {n: [], S: [0], J: [9, 17, 18, 24, 28]}, {
        n: [0],
        S: [0],
        J: [17]
    }, {
        n: [],
        S: [],
        J: [3, 4, 7, 8, 9, 10, 12, 15, 18, 31, 33, 39, 70, 85, 124, 146, 153, 154, 158, 163, 181, 310, 314, 317, 323, 330, 352]
    }, {n: [0], S: [0], J: []}, {n: [], S: [2, 4], J: [0, 1, 3, 15, 20]}, {n: [], S: [], J: [8, 23]}, {
        n: [2, 0, 1, 3],
        S: [0, 1, 2, 3, 4],
        J: [31, 33, 317]
    }, {n: [0], S: [0], J: [5, 345]}, {n: [1, 0], S: [0, 1, 2, 3], J: []}, {n: [1], S: [0, 1], J: []}, {
        n: [4],
        S: [3, 4],
        J: [0, 1, 2, 8, 12, 108, 354]
    }, {U: 2, n: [0], S: [0, 1, 3], J: []}, {n: [0], S: [0], J: [21]}, {
        n: [0],
        S: [0],
        J: [3, 5, 56, 279]
    }, {
        n: [9, 5, 28, 20, 11, 14],
        S: [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29],
        J: [3, 18, 103, 104, 123, 128, 266, 277, 344, 360]
    }, {n: [0], S: [0], J: [10]}, {n: [], S: [], J: [9, 17, 31]}, {n: [5, 4], S: [4, 5], J: [0, 1, 2, 3]}, {
        n: [0],
        S: [0],
        J: [103]
    }, {n: [2, 1], S: [0, 1, 2], J: []}, {
        n: [7, 4],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16],
        J: [17, 92, 166, 173, 174, 212, 240, 244, 268, 271, 302, 325, 342]
    }, {n: [], S: [], J: [0, 1]}, {n: [0], S: [0], J: []}, {n: [1], S: [1, 2], J: [0]}, {
        n: [2, 3],
        S: [1, 2, 3],
        J: [0, 108]
    }, {n: [], S: [0, 2, 3, 5, 6], J: [1, 4, 15, 16, 22, 24, 220, 344, 360]}, {n: [2, 1], S: [0, 1, 2], J: []}, {
        n: [3],
        S: [0, 2, 3, 4, 5, 7, 8, 10, 11],
        J: [1, 6, 9, 19, 167, 228]
    }, {n: [], S: [], J: [3]}, {n: [0], S: [0], J: [8, 306]}, {n: [], S: [], J: [2]}, {
        n: [4, 0, 6],
        S: [0, 1, 2, 3, 4, 5, 6],
        J: [297]
    }, {n: [], S: [], J: [0, 1]}, {n: [1], S: [0, 1, 2], J: [58, 233]}, {U: 0, n: [], S: [], J: [291]}, {
        n: [0],
        S: [0],
        J: [20]
    }, {n: [], S: [], J: [320, 359]}, {
        n: [],
        S: [0, 2, 3, 4, 7, 10, 11, 13, 14, 17, 18, 20, 21],
        J: [1, 5, 6, 8, 9, 12, 15, 16, 19, 29, 30, 33, 75, 160, 227, 277, 344, 360]
    }, {n: [3], S: [0, 1, 2, 3, 4], J: [40, 358]}, {
        n: [5],
        S: [0, 1, 3, 5, 9],
        J: [2, 4, 6, 7, 8, 13, 15, 20, 26, 29, 86]
    }, {n: [0], S: [0], J: [7, 14, 16, 26, 28]}, {
        n: [2, 9, 5, 10, 0, 7],
        S: [0, 1, 2, 3, 5, 6, 7, 8, 9, 10],
        J: [4, 51, 56, 79, 82, 125, 156, 165, 179, 247, 263, 279, 331, 332, 335, 344, 356, 360]
    }, {n: [1], S: [0, 1, 2, 3, 4, 5, 6, 7, 8], J: [109]}, {n: [], S: [0, 3, 4], J: [1, 2, 12, 173]}, {
        n: [],
        S: [],
        J: [2]
    }, {
        n: [],
        S: [1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 18, 19, 20, 21, 23, 25],
        J: [0, 2, 4, 16, 17, 22, 24, 232, 282, 294, 351]
    }, {n: [0], S: [0], J: []}, {n: [0], S: [0], J: [28]}, {n: [], S: [], J: [0, 3]}, {
        n: [4, 0],
        S: [0, 1, 2, 3, 4],
        J: [251]
    }, {n: [], S: [0, 1, 2, 4], J: [3, 11, 12, 241]}, {n: [1], S: [0, 1], J: []}, {n: [], S: [], J: [4]}, {
        n: [2],
        S: [0, 2, 3],
        J: [1, 238]
    }, {n: [3, 1], S: [0, 1, 2, 3], J: [4, 18, 19, 27, 334]}, {
        n: [4, 3],
        S: [0, 1, 2, 3, 4, 5],
        J: [67, 258, 274]
    }, {n: [0], S: [0], J: [11]}, {
        n: [],
        S: [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13, 14, 15, 16, 17],
        J: [6, 7, 9, 25, 33, 35, 36, 38, 42, 49, 164, 176, 254, 277, 344, 360]
    }, {U: 1, n: [3], S: [0, 2, 3, 4], J: [56, 332]}, {
        n: [],
        S: [1, 4, 5, 7, 10, 15, 16, 17, 18, 19, 21, 22],
        J: [0, 2, 3, 6, 8, 9, 11, 12, 13, 14, 20, 113, 116, 245, 322]
    }, {n: [], S: [], J: [7]}, {
        n: [1, 11],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23],
        J: [12, 56, 63, 69, 71, 77, 84, 115, 119, 215, 267, 326, 345]
    }, {n: [], S: [], J: []}, {n: [0], S: [0], J: [2, 145]}, {n: [0], S: [0, 1, 2], J: [40, 132]}, {
        n: [],
        S: [0, 1, 2, 4, 6, 7, 8, 10, 11, 12, 13, 15, 16, 18, 20],
        J: [3, 5, 9, 14, 17, 19, 28, 33, 344, 360]
    }, {n: [], S: [], J: [1, 6]}, {n: [0], S: [0], J: []}, {n: [0], S: [0], J: [11, 145]}, {
        n: [],
        S: [],
        J: []
    }, {n: [], S: [], J: []}, {n: [], S: [], J: [183]}, {n: [2], S: [1, 2, 3], J: [0, 5]}, {
        U: 4,
        n: [3, 1, 0, 5],
        S: [0, 1, 2, 3, 5, 6],
        J: []
    }, {n: [0], S: [0], J: []}, {n: [], S: [0, 4, 5, 6, 7, 9, 10], J: [1, 2, 3, 8, 277, 344, 360]}, {
        n: [],
        S: [0, 1],
        J: [9, 10, 222, 344, 360]
    }, {n: [], S: [], J: [22, 24]}, {U: 1, n: [4], S: [0, 2, 3, 4], J: []}, {n: [0], S: [0, 2], J: [1, 3]}, {
        n: [0],
        S: [0],
        J: [40, 88]
    }, {
        n: [],
        S: [0, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 21, 22, 23, 24],
        J: [1, 3, 19, 20, 36, 277, 313, 344, 360]
    }, {U: 3, n: [2], S: [0, 1, 2], J: [291]}, {W: 0, n: [], S: [], J: [29, 36]}, {
        n: [0],
        S: [0, 1, 2, 3, 4, 5],
        J: [329]
    }, {n: [], S: [], J: [6, 38]}, {n: [], S: [], J: [0, 5]}, {
        n: [1],
        S: [0, 1],
        J: [35, 56, 58, 83, 180, 233, 316]
    }, {n: [3, 0], S: [0, 1, 2, 3], J: [55, 212, 264]}, {n: [0, 1], S: [0, 1], J: [4]}, {
        n: [3, 12, 9, 10],
        S: [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12],
        J: [4, 324]
    }, {n: [], S: [], J: []}, {n: [0], S: [0], J: [183]}, {
        W: 3,
        n: [],
        S: [0, 1, 2, 4, 5],
        J: [6, 7, 8, 15, 19, 29]
    }, {n: [0], S: [0], J: []}, {U: 0, n: [], S: [], J: []}, {
        n: [8, 9, 1, 6],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
        J: [76, 96, 152, 159, 249, 338]
    }, {n: [0], S: [0], J: [7]}, {n: [1], S: [0, 1], J: [2, 7]}, {n: [0], S: [0], J: []}, {
        n: [0],
        S: [0],
        J: []
    }, {n: [], S: [], J: [6]}, {U: 0, n: [1], S: [1], J: []}, {n: [1, 2], S: [1, 2], J: [0, 18]}, {
        n: [],
        S: [],
        J: [3, 5]
    }, {n: [], S: [0], J: [3, 14, 15, 17, 19, 78]}, {n: [0], S: [0], J: [2]}, {
        n: [1],
        S: [0, 1],
        J: [6, 9, 13]
    }, {n: [], S: [], J: [2, 5]}, {n: [0], S: [0], J: []}, {n: [], S: [], J: [0, 10]}, {
        n: [6],
        S: [0, 2, 3, 4, 5, 6, 7],
        J: [1, 15, 277, 344, 360]
    }, {n: [1], S: [1], J: [0, 2, 11]}, {n: [0], S: [0], J: [6]}, {n: [], S: [2, 3, 4], J: [0, 1, 7, 11]}, {
        n: [1],
        S: [0, 1],
        J: []
    }, {n: [2, 3, 1], S: [1, 2, 3], J: [0, 4, 9]}, {n: [], S: [2], J: [0, 1, 4]}, {
        n: [],
        S: [0],
        J: [180, 316]
    }, {n: [1], S: [0, 1, 2], J: [5, 8, 306]}, {
        n: [17],
        S: [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 20],
        J: [0, 1, 2, 3, 4, 5, 6, 7, 19, 31, 33, 69, 78, 317]
    }, {n: [], S: [], J: [2, 15]}, {n: [0], S: [0], J: [7]}, {
        n: [3, 5],
        S: [0, 1, 2, 3, 4, 5, 6, 7],
        J: [12, 77, 84, 115, 119, 215, 326, 345]
    }, {n: [0], S: [0], J: [3]}, {n: [0, 1], S: [0, 1, 2], J: [108, 311]}, {
        n: [],
        S: [0, 1, 2, 4],
        J: [3, 8, 13, 86]
    }, {
        n: [],
        S: [17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28],
        J: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 22, 30, 65, 344, 360]
    }, {n: [], S: [], J: []}, {n: [0], S: [0, 1], J: [9]}, {n: [], S: [1, 3, 4, 5, 6, 7], J: [0, 2, 360]}, {
        n: [],
        S: [0, 2, 3, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14],
        J: [1, 6, 344, 360]
    }, {n: [], S: [], J: []}, {n: [], S: [0], J: [11]}, {n: [0], S: [0], J: [11]}, {U: 0, n: [], S: [], J: []}, {
        n: [],
        S: [1, 2, 3, 4],
        J: [0, 5, 6, 38, 124]
    }, {n: [1], S: [0, 1], J: [25, 199, 207, 219, 231, 235, 281]}, {n: [], S: [], J: [7, 10, 15, 21]}, {
        n: [],
        S: [],
        J: [12, 13, 15, 69]
    }, {n: [], S: [0, 1, 2, 3, 5, 6], J: [4, 13]}, {n: [0], S: [0], J: [15]}, {
        n: [],
        S: [0, 2, 6, 10, 21, 23, 25, 26, 27, 28, 29, 30, 31, 33, 34, 35, 36, 37],
        J: [1, 3, 4, 5, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 22, 24, 32, 220, 333, 344, 360]
    }, {n: [0], S: [0, 1, 3], J: [2, 127]}, {n: [], S: [], J: [2]}, {n: [], S: [], J: [183]}, {
        n: [0],
        S: [0, 1, 2, 3, 4, 5],
        J: [339]
    }, {
        n: [],
        S: [0, 7, 8, 10, 11, 12, 13, 15, 16, 17],
        J: [1, 2, 3, 4, 5, 6, 9, 14, 56, 123, 198, 277, 318, 328, 335, 344, 347, 360]
    }, {n: [0], S: [0], J: [2]}, {n: [0], S: [0], J: [6]}, {n: [0], S: [0], J: [7, 56]}, {
        n: [0],
        S: [0],
        J: [4, 10]
    }, {
        n: [],
        S: [0, 1, 3, 4, 5, 6, 9, 11, 12, 13, 14, 15, 16, 17, 18, 20],
        J: [2, 7, 8, 10, 19, 21, 24, 25, 27, 33, 35, 38, 44, 101, 107, 194, 208, 215, 344, 360]
    }, {n: [2, 1], S: [0, 1, 2], J: [3, 108]}, {
        n: [],
        S: [0, 2, 3],
        J: [1, 22, 41, 97, 98, 109, 115, 119, 139, 196]
    }, {n: [], S: [], J: [0, 3]}, {n: [2], S: [0, 1, 2], J: [7, 9, 11, 12, 14, 16, 17, 22, 23, 26, 241]}, {
        n: [],
        S: [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 15, 16],
        J: [3, 11, 12, 13, 14, 21, 360]
    }, {n: [0], S: [0, 1, 2, 4, 6, 7, 8], J: [3, 5, 11, 24, 49, 99, 167, 284]}, {n: [0], S: [0], J: [2, 4]}, {
        U: 1,
        n: [],
        S: [0, 2, 3, 4, 5],
        J: [11, 291]
    }, {n: [], S: [], J: [0]}, {n: [], S: [], J: []}, {
        U: 1,
        n: [6, 8],
        S: [0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
        J: [44, 60, 102, 187, 189, 251, 280, 293, 304, 336]
    }, {n: [], S: [], J: [214]}, {U: 0, n: [], S: [], J: [169]}, {U: 3, n: [2], S: [1, 2], J: [0]}, {
        n: [2],
        S: [1, 2, 3, 4, 5],
        J: [0, 9, 12, 22, 54, 114, 145]
    }, {n: [0], S: [0], J: [5, 20]}, {
        n: [],
        S: [0, 1, 2, 3, 4],
        J: [5, 52, 93, 108, 131, 143, 192, 209, 217, 278, 299, 305, 311, 319, 354]
    }, {n: [2, 0], S: [0, 1, 2, 3], J: [26]}, {n: [], S: [], J: [21, 23]}, {n: [1, 0], S: [0, 1], J: [7, 9]}, {
        n: [],
        S: [],
        J: [2, 10]
    }, {n: [0], S: [0], J: [22, 345]}, {n: [2], S: [0, 1, 2], J: [3, 129]}, {
        U: 5,
        W: 2,
        n: [],
        S: [0, 1, 3, 4, 6],
        J: [169]
    }, {n: [1], S: [1], J: [0]}, {n: [3, 6, 4], S: [0, 1, 2, 3, 4, 5, 6], J: [261]}, {n: [0], S: [0], J: [1]}, {
        n: [],
        S: [],
        J: [0, 1, 2]
    }, {n: [0, 1], S: [0, 1], J: []}, {n: [0], S: [0], J: [8]}, {n: [0], S: [0, 1], J: [2, 4, 16, 17, 25, 27]}, {
        n: [0],
        S: [0],
        J: []
    }, {n: [3], S: [0, 3], J: [1, 2, 4]}, {n: [0], S: [0], J: [6, 10, 15, 26, 30]}, {
        n: [1, 11, 14, 2, 5, 8, 7, 12, 3],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],
        J: [140, 252]
    }, {n: [0], S: [0], J: [2, 7]}, {
        n: [],
        S: [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14],
        J: [4, 28, 344, 360]
    }, {U: 0, n: [], S: [], J: []}, {n: [2], S: [1, 2, 3], J: [0, 4, 356]}, {n: [], S: [], J: []}, {
        n: [],
        S: [1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 29],
        J: [0, 3, 22, 31, 33, 35, 37, 39, 45, 47, 56, 58, 63, 64, 69, 71, 72, 77, 83, 84, 86, 100, 115, 119, 121, 130, 160, 162, 180, 197, 215, 229, 230, 233, 257, 265, 267, 289, 298, 316, 317, 326, 339, 340, 345]
    }, {n: [3], S: [0, 2, 3, 4, 5, 6], J: [1, 58, 148, 175, 257, 287]}, {n: [], S: [0], J: [14, 16, 23, 25]}, {
        n: [0],
        S: [0],
        J: [6]
    }, {
        n: [],
        S: [1, 5],
        J: [0, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16, 27, 31, 33, 70, 85, 108, 143, 146, 163, 181, 253, 310, 314, 317, 323, 330, 352, 354]
    }, {n: [0], S: [0], J: [15]}, {
        n: [],
        S: [2, 5, 6, 7, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19],
        J: [0, 1, 3, 4, 8, 10, 28, 344, 360]
    }, {n: [6, 2, 7, 4], S: [0, 1, 2, 3, 4, 5, 6, 7], J: []}, {n: [0], S: [0], J: [8, 9, 10, 21, 22]}, {
        n: [1, 0],
        S: [0, 1, 2],
        J: [110, 237, 256]
    }, {U: 4, n: [2, 3, 5], S: [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 12], J: [11, 105, 221, 269, 291]}, {
        n: [2],
        S: [0, 2, 3, 4, 5, 7, 8, 10, 11],
        J: [1, 6, 9, 19, 167, 228]
    }, {
        U: 13,
        n: [4, 5, 12, 2],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14],
        J: [23, 161, 195, 211, 223, 343]
    }, {n: [0], S: [0], J: [1, 145]}, {n: [0], S: [0, 3], J: [1, 2, 5, 279]}, {
        n: [6, 13, 17, 9, 7, 12],
        S: [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18],
        J: [3, 103, 193, 222, 277, 301, 344, 360]
    }, {n: [3, 7], S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], J: [72, 122, 230]}, {
        n: [],
        S: [],
        J: [11, 28]
    }, {n: [0], S: [0], J: []}, {
        U: 3,
        n: [5, 6, 12],
        S: [4, 5, 6, 7, 8, 9, 10, 11, 12, 13],
        J: [0, 1, 2, 242, 344]
    }, {n: [1], S: [1, 2], J: [0, 5, 103, 104]}, {n: [], S: [0], J: [5, 10, 17, 18, 19, 78]}, {
        U: 3,
        n: [4],
        S: [0, 1, 2, 4],
        J: [56, 198]
    }, {
        n: [2],
        S: [0, 1, 2, 4, 5, 6, 7, 8],
        J: [3, 10, 31, 33, 38, 39, 70, 85, 124, 146, 147, 154, 158, 163, 181, 310, 314, 317, 323, 330, 352]
    }, {n: [], S: [0, 1, 3], J: [2, 4, 6, 20, 29]}, {n: [0], S: [0, 1, 2, 3], J: [26, 41, 98, 333]}, {
        n: [0],
        S: [0],
        J: []
    }, {n: [1], S: [1], J: [0]}, {n: [2, 1], S: [0, 1, 2, 3], J: [12, 33]}, {n: [], S: [], J: [117]}, {
        n: [0],
        S: [0, 1, 2, 3],
        J: [15, 20, 22, 29]
    }, {n: [3, 1], S: [0, 1, 2, 3], J: [27, 31]}, {U: 2, n: [3], S: [0, 1, 3, 4, 5, 6], J: [129, 186]}, {
        n: [0],
        S: [0],
        J: [2, 4, 6, 148, 257]
    }, {
        n: [3, 8, 10, 1, 0, 2],
        S: [0, 1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15],
        J: [4, 20, 113, 116, 245, 322]
    }, {n: [], S: [], J: [0, 1]}, {n: [3], S: [1, 2, 3], J: [0, 12]}, {n: [0], S: [0], J: [6]}, {
        n: [1],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8],
        J: [20, 134, 344, 360]
    }, {n: [], S: [], J: []}, {n: [0, 1, 2], S: [0, 1, 2], J: []}, {n: [], S: [], J: [0, 1]}, {
        n: [],
        S: [],
        J: [13]
    }, {n: [], S: [0], J: [1, 2, 3]}, {n: [], S: [0, 2, 3, 4], J: [1, 11, 22, 241]}, {
        n: [1, 0, 4],
        S: [0, 1, 2, 3, 4, 5],
        J: [8, 39]
    }, {n: [1], S: [0, 1], J: []}, {n: [0, 1], S: [0, 1], J: []}, {
        n: [],
        S: [0, 2, 5, 7, 9, 10, 11, 12, 13],
        J: [1, 3, 4, 6, 8, 51, 56, 79, 82, 125, 156, 165, 179, 247, 263, 279, 331, 332, 335, 344, 356, 360]
    }, {n: [], S: [0], J: [89, 110, 237]}, {n: [], S: [1, 2, 3, 4], J: [0, 8, 344, 360]}, {
        n: [15, 9, 14, 12, 0, 16],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16],
        J: [91, 123, 213, 222, 277, 344, 360]
    }, {n: [], S: [], J: [16]}, {U: 3, W: 4, n: [9], S: [0, 1, 2, 5, 6, 7, 8, 9, 10], J: [225, 251, 293, 336]}, {
        n: [1],
        S: [1],
        J: [0]
    }, {U: 2, n: [1, 3], S: [0, 1, 3], J: []}, {
        n: [6],
        S: [2, 5, 6, 7, 8, 9, 10, 11, 12],
        J: [0, 1, 3, 4, 93, 108, 131, 143, 209, 354]
    }, {n: [0], S: [0, 1, 2, 3], J: [6, 12]}, {n: [0], S: [0], J: [8]}, {n: [], S: [], J: [12]}, {
        n: [0],
        S: [0],
        J: [15]
    }, {n: [], S: [], J: []}, {n: [], S: [], J: []}, {n: [1, 3], S: [0, 1, 2, 3], J: [39, 153]}, {
        n: [],
        S: [0, 1, 2, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20],
        J: [3, 5, 277, 344, 360]
    }, {n: [0], S: [0, 1, 4], J: [2, 3]}, {n: [1], S: [1], J: [0, 3]}, {n: [0], S: [0], J: [2, 4]}, {
        n: [3, 0],
        S: [0, 2, 3],
        J: [1, 108]
    }, {n: [1], S: [1], J: [0, 2, 12]}, {
        n: [],
        S: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 17, 19, 20, 21],
        J: [11, 16, 18, 344, 360]
    }, {n: [0], S: [0], J: [4, 145]}, {n: [], S: [], J: []}, {n: [], S: [], J: [3]}, {n: [], S: [], J: []}, {
        n: [],
        S: [],
        J: []
    }, {
        n: [],
        S: [0, 1, 2, 3, 5, 6, 7, 9, 10],
        J: [4, 8, 12, 21, 23, 48, 81, 112, 142, 157, 202, 234, 276, 285, 337, 360]
    }, {n: [0], S: [0], J: [3]}, {n: [], S: [], J: []}, {
        n: [9],
        S: [0, 1, 3, 4, 5, 6, 7, 8, 9],
        J: [2, 26, 31, 33, 100, 109, 144, 175, 181, 218, 236, 257, 317]
    }, {n: [], S: [], J: []}, {n: [0], S: [0], J: []}, {W: 4, n: [], S: [3, 5, 6, 7, 8], J: [0, 1, 2, 10]}, {
        n: [17],
        S: [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18],
        J: [0, 1, 2, 3, 4, 5, 6, 19, 31, 33, 69, 78, 292, 317]
    }, {n: [], S: [2, 5], J: [0, 1, 3, 4, 7, 10, 15, 20]}, {n: [0], S: [0, 1], J: [26]}];
    var c = [148.2, 12.5663706, 690441074, 3979133330, 721970532, 1996301780, 167.2, 245515987, 255.2, 132.2, 11.2, 773118407, 2097625336, 115.2, 2522131052, 56.2, .2, 270.2, 308342136, 2953703492, 3888959205, 6.2831853, 779655876, 27.2, 3735928559, 2281192841, 64.2, 540697477, 9.2, 3537277044, 67108864, 103506046, 3752269848, 2211849252, 3720779118, .3, 134.2, 87.2, 83.2, 1383458955, 835846220, 81.2, 1771082383, 157.2, 2636694239, 2455372690, 4277784399, 181.2, 0x1FFFFFFFFFFFFF, 147.2, 199.2, 0x1524DD653F66AB, 764911647, 106.2, 2147483648, 172.2, 196.2, 1544037244, .9, 114.2, 92.2, 207.2, 7.5398223600000005, 74.2, 90.2, 397201536, 2644474524, 1763721313, 213.2, 5.02654824, 211.2, 2161278679, 0x20000000000000, 72.2, 1670421036, 214.2, 166.2, 99.2, 280.2, 3676558438, 93398213975.00002, 101.2, 1978540420, 137.2, 4294967296, 3187878042, 4030013863, 536870911, 299.2, 63.2, 264.2, 65.2, 2381308903, 2199799023, 2474129489, 2.51327412, .0010000000000000002, 4023788910, .8, 2523783742, 307.2, 54.2, 1030319333, 2389837486, 2140301837, 2792035193, 77017224e4, 127.2, 3.5, 926176362, 249.2, 513221781, 194.2, 2166439338, 3566338885, 18.2, 41209639e2, 243.2, 111.2, 43634837, 135.2, 4187539497, 521603804, 3664225670, 149.2, 1821328327, 36.2, .4, 29.2, .1, .5, 257348550135456.88, 184.2, 3088391127, 286.2, 235.2, 38.2, 2668169232, 76.2, -1074, 1891273846, 10.05309648, 309.2, .6, 4119280182, 2.75, 4294967295, .7, 2795614041, 1044862179, 663741985, 2592878996, 3974372389, 3157228231, 18446744073709550000];

    function t(D) {
        var o = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_";
        var b = D.length;
        var P = new Y(E(b * 3 / 4));
        var Z, rz, rr, rI, rk, rO, rT;
        for (var rN = 0, rV = 0; rN < b; rN += 4, rV += 3) {
            Z = m(o, A(D, rN));
            rz = m(o, A(D, rN + 1));
            rr = m(o, A(D, rN + 2));
            rI = m(o, A(D, rN + 3));
            rk = Z << 2 | rz >> 4;
            rO = (rz & 15) << 4 | rr >> 2;
            rT = (rr & 3) << 6 | rI;
            P[rV] = rk;
            if (rN + 2 < b) {
                P[rV + 1] = rO
            }
            if (rN + 3 < b) {
                P[rV + 2] = rT
            }
        }
        return P
    }

    var rh = {value: null, writable: true};

    function ry() {
        this.c = []
    }

    var rQ = ry.prototype;
    U(rQ, "c", rh);
    U(rQ, "T", {
        value: function (rX) {
            this.c[rX] = {v: void 0}
        }
    });
    U(rQ, "k", {
        value: function (rd) {
            return this.c[rd].v
        }
    });
    U(rQ, "s", {
        value: function (rK, rw) {
            this.c[rK].v = rw
        }
    });
    U(rQ, "b", {
        value: function () {
            var rL = new ry;
            rL.c = [].slice !== e ? g(this.c, 0) : this.c.slice(0);
            return rL
        }
    });

    function rl() {
        var rC = [];
        U(rC, "f", {value: C});
        U(rC, "O", {value: l});
        U(rC, "Y", {value: e});
        U(rC, "v", {value: F});
        return rC
    }

    function re(rF, rH, rq, rp) {
        this.M = rl();
        this.t = rl();
        this.R = rl();
        this.L = void 0;
        this.G = rH;
        this.h = rF;
        this.E = rq;
        this.I = rp == null ? r : N(rp);
        this.Z = rp;
        this.X = 0
    }

    var rg = re.prototype;
    U(rg, "y", {
        value: function () {
            {
                var rG = j[this.G][rJ[this.h++]];
                this.G = rG[0];
                return rG[1]
            }
        }
    });
    U(rg, "M", rh);
    U(rg, "t", rh);
    U(rg, "R", rh);
    U(rg, "L", rh);
    U(rg, "G", rh);
    U(rg, "h", rh);
    U(rg, "E", rh);
    U(rg, "I", rh);
    U(rg, "Z", rh);
    U(rg, "X", rh);

    function rf(rs, ra) {
        try {
            rs(ra)
        } catch (rM) {
            rU(rM, ra)
        }
    }

    function rU(rB, rW) {
        var rE = rW.R.f();
        for (var rR = 0; rR < rE.N; ++rR) {
            rW.t.f()
        }
        rW.t.O({q: true, C: rB});
        rW.h = rE.H;
        rW.G = rE.G
    }

    var rS = [function (rx) {
        var rm = rJ[rx.h];
        rx.h += 1;
        var rA = rx.M[rx.M.length - 1];
        rx.E.s(rm, rA);
        var rY = rx.M.length - 1;
        rx.M[rY] = rA;
        rx.M[rY + 1] = rA
    }, function (ru) {
        con3(ru.M[ru.M.length - 2], '<=', ru.M[ru.M.length - 1], '==', ru.M[ru.M.length - 2] <= ru.M[ru.M.length - 1]); ru.M[ru.M.length - 2] = ru.M[ru.M.length - 2] <= ru.M[ru.M.length - 1];
        ru.M.length -= 1
    }, function (rn) {
        var rv = rJ[rn.h] << 8 | rJ[rn.h + 1];
        rn.h += 2;
        var rj = rn.M[rn.M.length - 1];
        var ri = rj + "," + rv;
        var rc = v[ri];
        if (typeof rc !== "undefined") {
            rn.M[rn.M.length - 1] = rc;
            return
        }
        var rt = n[rv];
        var rD = t(rt);
        var ro = t(rj);
        var rb = rD[0] + ro[0] & 255;
        var rP = "";
        for (var rZ = 1; rZ < rD.length; ++rZ) {
            rP += B(ro[rZ] ^ rD[rZ] ^ rb)
        }
        rn.M[rn.M.length - 1] = v[ri] = rP
    }, function (Iz) {
        Iz.M[Iz.M.length] = void 0
    }, function (Ir) {
        var II = rJ[Ir.h];
        Ir.h += 1;
        var Ik = Ir.E.k(II);
        var IO = Ir.M[Ir.M.length - 1];
        var IT = IO ^ Ik;
        var IN = Ir.M[Ir.M.length - 2];
        var IV = IN;
        Ir.M[Ir.M.length - 2] = IV(IT);
        Ir.M.length -= 1
    }, function (Ih) {
        var Iy = rJ[Ih.h] << 16 | (rJ[Ih.h + 1] << 8 | rJ[Ih.h + 2]);
        var IQ = rJ[Ih.h + 3];
        Ih.h += 4;
        Ih.R.O({H: Iy, G: IQ, N: 0})
    }, function (IX) {
        IX.M[IX.M.length] = 2e308
    }, function (Id) {
        var IK = rJ[Id.h];
        var Iw = n[rJ[Id.h + 1] << 8 | rJ[Id.h + 2]];
        Id.h += 3;
        var IL = Id.E.k(IK);
        var Il = Id.M.length;
        Id.M[Il] = IL;
        Id.M[Il + 1] = IL;
        Id.M[Il + 2] = Iw
    }, function (IC) {
        var Ie = rJ[IC.h];
        var IF = rJ[IC.h + 1];
        var IH = n[rJ[IC.h + 2] << 8 | rJ[IC.h + 3]];
        IC.h += 4;
        var Iq = IC.M[IC.M.length - 1];
        IC.E.s(Ie, Iq);
        var Ip = IC.E.k(IF);
        var Ig = IC.M.length - 1;
        IC.M[Ig] = Ip;
        IC.M[Ig + 1] = IH
    }, function (IG) {
        var IJ = rJ[IG.h];
        var If = rJ[IG.h + 1];
        IG.h += 2;
        var Is = IG.E.k(IJ);
        var Ia = y(Is);
        IG.E.s(If, Ia)
    }, function (IM) {
        "use strict";
        var IU = IM.M[IM.M.length - 1];
        IM.M[IM.M.length - 3][IM.M[IM.M.length - 2]] = IU;
        IM.M[IM.M.length - 3] = IU;
        IM.M.length -= 2
    }, function (IB) {
        var IW = rJ[IB.h] << 16 | (rJ[IB.h + 1] << 8 | rJ[IB.h + 2]);
        var IE = rJ[IB.h + 3];
        IB.h += 4;
        if (!IB.M[IB.M.length - 1]) {
            IB.h = IW;
            IB.G = IE
        }
        IB.M.length -= 1
    }, function (IR) {
        var IS = rJ[IR.h];
        var Ix = rJ[IR.h + 1];
        IR.h += 2;
        var Im = false;
        IR.E.s(IS, Im);
        IR.M[IR.M.length] = IR.E.k(Ix)
    }, function (IA) {
        var IY = rJ[IA.h];
        var Iu = rJ[IA.h + 1];
        var In = rJ[IA.h + 2] << 16 | (rJ[IA.h + 3] << 8 | rJ[IA.h + 4]);
        var Iv = rJ[IA.h + 5];
        IA.h += 6;
        var Ij = IA.M[IA.M.length - 1];
        IA.E.s(IY, Ij);
        var Ii = IA.E.k(Iu);
        var Ic = IA.M.length - 1;
        IA.M[Ic] = Ii;
        IA.M[Ic + 1] = Iv;
        IA.M[Ic + 2] = In
    }, function (It) {
        var ID = rJ[It.h];
        var Io = rJ[It.h + 1];
        It.h += 2;
        var Ib = It.M[It.M.length - 1];
        It.E.s(ID, Ib);
        var IP = It.E.k(Io);
        var IZ = It.M.length - 1;
        It.M[IZ] = IP;
        It.M[IZ + 1] = IP
    }, function (kz) {
        var kr = rJ[kz.h];
        var kI = rJ[kz.h + 1];
        var kk = rJ[kz.h + 2];
        kz.h += 3;
        kz.E.s(kI, kr);
        kz.M[kz.M.length] = kz.E.k(kk)
    }, function (kO) {
        var kT = rJ[kO.h] << 8 | rJ[kO.h + 1];
        var kN = rJ[kO.h + 2];
        kO.h += 3;
        if (kO.M[kO.M.length - 1]) {
            kO.h = kT;
            kO.G = kN
        }
        kO.M.length -= 1
    }, function (kV) {
        var kh = rJ[kV.h] << 8 | rJ[kV.h + 1];
        kV.h += 2;
        b0:{
            var ky = kV.M[kV.M.length - 1];
            var kQ = ky;
            var kX = kQ + "," + kh;
            var kd = v[kX];
            if (typeof kd !== "undefined") {
                var kK = kd;
                break b0
            }
            var kw = n[kh];
            var kL = t(kw);
            var kl = t(kQ);
            var kC = kL[0] + kl[0] & 255;
            var ke = "";
            for (var kF = 1; kF < kL.length; ++kF) {
                ke += B(kl[kF] ^ kL[kF] ^ kC)
            }
            var kK = v[kX] = ke
        }
        var kH = false;
        var kq = kV.M[kV.M.length - 2];
        U(kq, kK, {writable: true, configurable: true, enumerable: true, value: kH});
        kV.M[kV.M.length - 2] = kq;
        kV.M.length -= 1
    }, function (kp) {
        var kg = rJ[kp.h];
        var kG = rJ[kp.h + 1];
        kp.h += 2;
        var kJ = kp.E.k(kg);
        kp.M[kp.M.length] = kJ + kG
    }, function (kf) {
        ++kf.R[kf.R.length - 1].N
    }, function (ks) {
        con3(ks.M[ks.M.length - 2], '*', ks.M[ks.M.length - 1], '==', ks.M[ks.M.length - 2] * ks.M[ks.M.length - 1]); ks.M[ks.M.length - 2] = ks.M[ks.M.length - 2] * ks.M[ks.M.length - 1];
        ks.M.length -= 1
    }, function (ka) {
        var kM = rJ[ka.h];
        ka.h += 1;
        var kU = ka.E.k(kM);
        var kB = ka.M.length - 1;
        ka.M[kB] = kU;
        ka.M[kB + 1] = kU
    }, function (kW) {
        var kE = rJ[kW.h];
        kW.h += 1;
        var kR = kW.E.k(kE);
        var kS = null;
        kW.M[kW.M.length] = kR != kS
    }, function (kx) {
        var km = rJ[kx.h];
        var kA = c[rJ[kx.h + 1]];
        kx.h += 2;
        var kY = kx.M[kx.M.length - 1];
        kx.E.s(km, kY);
        var ku = kx.M.length - 1;
        kx.M[ku] = kY;
        kx.M[ku + 1] = kA
    }, function (kn) {
        var kv = rJ[kn.h];
        var kj = rJ[kn.h + 1];
        kn.h += 2;
        var ki = kn.M[kn.M.length - 1];
        var kc = y(ki);
        kn.E.s(kv, kc);
        kn.M[kn.M.length - 1] = kn.E.k(kj)
    }, function (kt) {
        var kD = rJ[kt.h];
        var ko = rJ[kt.h + 1];
        var kb = rJ[kt.h + 2] << 16 | (rJ[kt.h + 3] << 8 | rJ[kt.h + 4]);
        var kP = rJ[kt.h + 5];
        kt.h += 6;
        var kZ = kt.M[kt.M.length - 1];
        kt.E.s(kD, kZ);
        var Oz = kt.M[kt.M.length - 2];
        kt.E.s(ko, Oz);
        var Or = kt.M.length - 2;
        kt.M[Or] = kP;
        kt.M[Or + 1] = kb
    }, function (OI) {
        OI.t.f()
    }, function (Ok) {
        var OO = rJ[Ok.h];
        var OT = rJ[Ok.h + 1];
        Ok.h += 2;
        var ON = Ok.E.k(OO);
        var OV = Ok.M[Ok.M.length - 4];
        var Oh = Ok.M[Ok.M.length - 3];
        var Oy = Ok.M[Ok.M.length - 2];
        var OQ = Ok.M[Ok.M.length - 1];
        var OX = OV;
        var Od = OX(Oh, Oy, OQ, ON);
        Ok.E.s(OT, Od);
        Ok.M.length -= 4
    }, function (OK) {
        if (OK.M[OK.M.length - 1] === null || OK.M[OK.M.length - 1] === void 0) {
            throw new T(OK.M[OK.M.length - 1] + " is not an object")
        }
        OK.M[OK.M.length - 1] = N(OK.M[OK.M.length - 1])
    }, function (Ow) {
        var OL = rJ[Ow.h];
        var Ol = rJ[Ow.h + 1];
        var OC = rJ[Ow.h + 2];
        Ow.h += 3;
        var Oe = Ow.E.k(OL);
        var OF = Ow.M.length;
        Ow.M[OF] = Oe;
        Ow.M[OF + 1] = Ol;
        Ow.M[OF + 2] = Ow.E.k(OC)
    }, function (OH) {
        var Oq = rJ[OH.h] << 16 | (rJ[OH.h + 1] << 8 | rJ[OH.h + 2]);
        var Op = rJ[OH.h + 3];
        OH.h += 4;
        if (OH.M[OH.M.length - 1]) {
            OH.h = Oq;
            OH.G = Op
        }
        OH.M.length -= 1
    }, function (Og) {
        var OG = rJ[Og.h];
        var OJ = n[rJ[Og.h + 1] << 8 | rJ[Og.h + 2]];
        Og.h += 3;
        var Of = Og.E.k(OG);
        var Os = Og.M.length - 1;
        Og.M[Os] = Of;
        Og.M[Os + 1] = OJ
    }, function (Oa) {
        var OM = c[rJ[Oa.h]];
        Oa.h += 1;
        var OU = Oa.M[Oa.M.length - 2];
        var OB = Oa.M[Oa.M.length - 1];
        var OW = OU << OB;
        Oa.M[Oa.M.length - 2] = OW & OM;
        Oa.M.length -= 1
    }, function (OE) {
        OE.M[OE.M.length - 2] = OE.M[OE.M.length - 2] / OE.M[OE.M.length - 1];
        OE.M.length -= 1
    }, function (OR) {
        var OS = rJ[OR.h];
        var Ox = rJ[OR.h + 1] << 8 | rJ[OR.h + 2];
        OR.h += 3;
        OR.h = Ox;
        OR.G = OS
    }, function (Om) {
        var OA = c[rJ[Om.h]];
        var OY = rJ[Om.h + 1];
        Om.h += 2;
        var Ou = Om.E.k(OY);
        Om.M[Om.M.length] = OA ^ Ou
    }, function (On) {
        var Ov = rJ[On.h];
        var Oj = rJ[On.h + 1];
        var Oi = rJ[On.h + 2] << 16 | (rJ[On.h + 3] << 8 | rJ[On.h + 4]);
        On.h += 5;
        var Oc = On.E.k(Ov);
        var Ot = On.E.k(Oj);
        var OD = On.M.length;
        On.M[OD] = Oc;
        On.M[OD + 1] = Ot;
        On.M[OD + 2] = Oi
    }, function (Oo) {
        con3(Oo.M[Oo.M.length - 2], '<<', Oo.M[Oo.M.length - 1], '==', Oo.M[Oo.M.length - 2] << Oo.M[Oo.M.length - 1]); Oo.M[Oo.M.length - 2] = Oo.M[Oo.M.length - 2] << Oo.M[Oo.M.length - 1];
        Oo.M.length -= 1
    }, function (Ob) {
        var OP = Ob.M[Ob.M.length - 8];
        Ob.M[Ob.M.length - 8] = OP(Ob.M[Ob.M.length - 7], Ob.M[Ob.M.length - 6], Ob.M[Ob.M.length - 5], Ob.M[Ob.M.length - 4], Ob.M[Ob.M.length - 3], Ob.M[Ob.M.length - 2], Ob.M[Ob.M.length - 1]);
        Ob.M.length -= 7
    }, function (OZ) {
        Tz = OZ.M[OZ.M.length - 1];
        OZ.M.length -= 1
    }, function (Tr) {
        var TI = n[rJ[Tr.h] << 8 | rJ[Tr.h + 1]];
        Tr.h += 2;
        var Tk = null;
        var TO = Tr.M[Tr.M.length - 2];
        var TT = Tr.M[Tr.M.length - 1];
        U(TO, TT, {writable: true, configurable: true, enumerable: true, value: Tk});
        var TN = Tr.M.length - 2;
        Tr.M[TN] = TO;
        Tr.M[TN + 1] = TI
    }, function (TV) {
        var Th = rJ[TV.h];
        var Ty = rJ[TV.h + 1];
        TV.h += 2;
        if (TV.M[TV.M.length - 1]) {
            TV.h = Th;
            TV.G = Ty
        }
        TV.M.length -= 1
    }, function (TQ) {
        TQ.M[TQ.M.length - 2] = TQ.M[TQ.M.length - 2] in TQ.M[TQ.M.length - 1];
        TQ.M.length -= 1
    }, function (TX) {
        TX.M[TX.M.length - 1] = !TX.M[TX.M.length - 1]
    }, function (Td) {
        var TK = rJ[Td.h];
        var Tw = rJ[Td.h + 1] << 16 | (rJ[Td.h + 2] << 8 | rJ[Td.h + 3]);
        var TL = rJ[Td.h + 4];
        Td.h += 5;
        var Tl = Td.M[Td.M.length - 3];
        var TC = Td.M[Td.M.length - 2];
        var Te = Td.M[Td.M.length - 1];
        U(Tl, TC, {writable: true, configurable: true, enumerable: true, value: Te});
        Td.X = {h: Td.h, G: Td.G};
        Td.h = Tw;
        Td.G = TL;
        var TF = Td.M.length - 3;
        Td.M[TF] = Tl;
        Td.M[TF + 1] = TK;
        Td.M.length -= 1
    }, function (TH) {
        var Tq = rJ[TH.h] << 8 | rJ[TH.h + 1];
        var Tp = rJ[TH.h + 2];
        TH.h += 3;
        if (!TH.M[TH.M.length - 1]) {
            TH.h = Tq;
            TH.G = Tp
        }
        TH.M.length -= 1
    }, function (Tg) {
        var TG = rJ[Tg.h];
        var TJ = rJ[Tg.h + 1];
        var Tf = rJ[Tg.h + 2] << 16 | (rJ[Tg.h + 3] << 8 | rJ[Tg.h + 4]);
        var Ts = rJ[Tg.h + 5];
        Tg.h += 6;
        var Ta = Tg.E.k(TG);
        var TM = Tg.E.k(TJ);
        Tg.X = {h: Tg.h, G: Tg.G};
        Tg.h = Tf;
        Tg.G = Ts;
        var TU = Tg.M.length;
        Tg.M[TU] = Ta;
        Tg.M[TU + 1] = TM
    }, function (TB) {
        "use strict";
        con3( TB.M[TB.M.length - 3], 'set', TB.M[TB.M.length - 2], '==>', TB.M[TB.M.length - 1])
        TB.M[TB.M.length - 3][TB.M[TB.M.length - 2]] = TB.M[TB.M.length - 1];
        TB.M.length -= 3
    }, function (TW) {
        var TE = rJ[TW.h];
        var TR = rJ[TW.h + 1];
        TW.h += 2;
        var TS = TW.M[TW.M.length - 2];
        var Tx = TW.M[TW.M.length - 1];
        U(TS, Tx, {writable: true, configurable: true, enumerable: true, value: TE});
        var Tm = TW.M.length - 2;
        TW.M[Tm] = TS;
        TW.M[Tm + 1] = TR
    }, function (TA) {
        var TY = rJ[TA.h] << 8 | rJ[TA.h + 1];
        var Tu = rJ[TA.h + 2];
        TA.h += 3;
        var Tn = TA.M[TA.M.length - 2];
        var Tv = TA.M[TA.M.length - 1];
        var Tj = Ti(TY, Tv, Tn, TA.E);
        TA.E.s(Tu, Tj);
        TA.M[TA.M.length - 2] = Tj;
        TA.M.length -= 1
    }, function (Tc) {
        var Tt = rJ[Tc.h];
        var TD = rJ[Tc.h + 1] << 8 | rJ[Tc.h + 2];
        var To = rJ[Tc.h + 3] << 16 | (rJ[Tc.h + 4] << 8 | rJ[Tc.h + 5]);
        var Tb = rJ[Tc.h + 6];
        Tc.h += 7;
        var TP = Tc.M[Tc.M.length - 1];
        Tc.E.s(Tt, TP);
        var TZ = Tc.E.k(TD);
        Tc.X = {h: Tc.h, G: Tc.G};
        Tc.h = To;
        Tc.G = Tb;
        Tc.M[Tc.M.length - 1] = TZ
    }, function (Nz) {
        var Nr = rJ[Nz.h];
        var NI = rJ[Nz.h + 1];
        var Nk = rJ[Nz.h + 2];
        Nz.h += 3;
        var NO = Nz.E.k(Nr);
        Nz.E.s(NI, NO);
        Nz.M[Nz.M.length] = Nz.E.k(Nk)
    }, function (NT) {
        U(NT.M[NT.M.length - 3], NT.M[NT.M.length - 2], {
            writable: true,
            configurable: true,
            enumerable: true,
            value: NT.M[NT.M.length - 1]
        });
        NT.M[NT.M.length - 3] = NT.M[NT.M.length - 3];
        NT.M.length -= 2
    }, function (NN) {
        var NV = rJ[NN.h];
        var Nh = rJ[NN.h + 1];
        NN.h += 2;
        var Ny = NN.M[NN.M.length - 1];
        NN.E.s(NV, Ny);
        var NQ = NN.M[NN.M.length - 2];
        NN.E.s(Nh, NQ);
        NN.M[NN.M.length - 2] = NQ;
        NN.M.length -= 1
    }, function (NX) {
        NX.M[NX.M.length] = u
    }, function (Nd) {
        Nd.M = rl()
    }, function (NK) {
        var Nw = rJ[NK.h];
        var NL = rJ[NK.h + 1];
        var Nl = rJ[NK.h + 2];
        NK.h += 3;
        var NC = NK.M[NK.M.length - 1];
        NK.E.s(Nw, NC);
        var Ne = NK.M[NK.M.length - 2];
        NK.E.s(NL, Ne);
        NK.M[NK.M.length - 2] = NK.E.k(Nl);
        NK.M.length -= 1
    }, function (NF) {
        var NH = NF.M[NF.M.length - 1];
        NF.M[NF.M.length - 1] = NH()
    }, function (Nq) {
        var Np = rJ[Nq.h] << 8 | rJ[Nq.h + 1];
        var Ng = rJ[Nq.h + 2];
        var NG = rJ[Nq.h + 3] << 16 | (rJ[Nq.h + 4] << 8 | rJ[Nq.h + 5]);
        var NJ = rJ[Nq.h + 6];
        Nq.h += 7;
        var Nf = Nq.E.k(Np);
        var Ns = Nq.E.k(Ng);
        Nq.X = {h: Nq.h, G: Nq.G};
        Nq.h = NG;
        Nq.G = NJ;
        var Na = Nq.M.length;
        Nq.M[Na] = Nf;
        Nq.M[Na + 1] = Ns
    }, function (NM) {
        var NU = rJ[NM.h];
        var NB = rJ[NM.h + 1];
        NM.h += 2;
        var NW = NM.E.k(NU);
        var NE = NM.M.length - 1;
        NM.M[NE] = NW;
        NM.M[NE + 1] = NB
    }, function (NR) {
        var NS = NR.M[NR.M.length - 2];
        NR.M[NR.M.length - 2] = NS(NR.M[NR.M.length - 1]);
        NR.M.length -= 1
    }, function (Nx) {
        Nx.M[Nx.M.length] = {}
    }, function (Nm) {
        var NA = rJ[Nm.h];
        var NY = rJ[Nm.h + 1];
        var Nu = rJ[Nm.h + 2] << 16 | (rJ[Nm.h + 3] << 8 | rJ[Nm.h + 4]);
        var Nn = rJ[Nm.h + 5];
        Nm.h += 6;
        var Nv = Nm.E.k(NA);
        Nm.E.s(NY, Nv);
        var Nj = Nm.M.length;
        Nm.M[Nj] = Nn;
        Nm.M[Nj + 1] = Nu
    }, function (Ni) {
        var Nc = rJ[Ni.h];
        var Nt = rJ[Ni.h + 1];
        Ni.h += 2;
        var ND = Ni.E.k(Nc);
        if (ND === null || ND === void 0) {
            throw new T("Cannot access property of " + ND)
        }
        Ni.M[Ni.M.length] = Ni.E.k(Nt)
    }, function (No) {
        var Nb = rJ[No.h];
        No.h += 1;
        No.M[No.M.length] = No.E.k(Nb)
    }, function (NP) {
        NP.M[NP.M.length - 2] = NP.M[NP.M.length - 2][NP.M[NP.M.length - 1]]();
        NP.M.length -= 1
    }, function (NZ) {
        var Vz = rJ[NZ.h] << 16 | (rJ[NZ.h + 1] << 8 | rJ[NZ.h + 2]);
        var Vr = rJ[NZ.h + 3];
        NZ.h += 4;
        rJ[Vz] = Vr
    }, function (VI) {
        var Vk = n[rJ[VI.h] << 8 | rJ[VI.h + 1]];
        var VO = rJ[VI.h + 2] << 8 | rJ[VI.h + 3];
        VI.h += 4;
        var VT = VI.M[VI.M.length - 1];
        var VN = Vk;
        var VV = VN + "," + VO;
        var Vh = v[VV];
        if (typeof Vh !== "undefined") {
            var Vy = VI.M.length - 1;
            VI.M[Vy] = VT;
            VI.M[Vy + 1] = VT;
            VI.M[Vy + 2] = Vh;
            return
        }
        var VQ = n[VO];
        var VX = t(VQ);
        var Vd = t(VN);
        var VK = VX[0] + Vd[0] & 255;
        var Vw = "";
        for (var VL = 1; VL < VX.length; ++VL) {
            Vw += B(Vd[VL] ^ VX[VL] ^ VK)
        }
        var Vy = VI.M.length - 1;
        VI.M[Vy] = VT;
        VI.M[Vy + 1] = VT;
        VI.M[Vy + 2] = v[VV] = Vw
    }, function (Vl) {
        var VC = rJ[Vl.h];
        Vl.h += 1;
        var Ve = Vl.E.k(VC);
        var VF = Vl.M.length;
        Vl.M[VF] = Ve;
        Vl.M[VF + 1] = Ve;
        Vl.M[VF + 2] = Ve
    }, function (VH) {
        var Vq = n[rJ[VH.h] << 8 | rJ[VH.h + 1]];
        var Vp = rJ[VH.h + 2] << 8 | rJ[VH.h + 3];
        VH.h += 4;
        b1:{
            var Vg = Vq;
            var VG = Vg + "," + Vp;
            var VJ = v[VG];
            if (typeof VJ !== "undefined") {
                var Vf = VJ;
                break b1
            }
            var Vs = n[Vp];
            var Va = t(Vs);
            var VM = t(Vg);
            var VU = Va[0] + VM[0] & 255;
            var VB = "";
            for (var VW = 1; VW < Va.length; ++VW) {
                VB += B(VM[VW] ^ Va[VW] ^ VU)
            }
            var Vf = v[VG] = VB
        }
        var VE = VH.M.length;
        VH.M[VE] = Vf;
        VH.M[VE + 1] = []
    }, function (VR) {
        var VS = rJ[VR.h];
        var Vx = rJ[VR.h + 1];
        VR.h += 2;
        var Vm = VR.M[VR.M.length - 1];
        VR.E.s(VS, Vm);
        var VA = null;
        var VY = VR.M.length - 1;
        VR.M[VY] = VA;
        VR.M[VY + 1] = VR.E.k(Vx)
    }, function (Vu) {
        Vu.M[Vu.M.length] = true
    }, function (Vn) {
        var Vv = rJ[Vn.h];
        var Vj = rJ[Vn.h + 1] << 16 | (rJ[Vn.h + 2] << 8 | rJ[Vn.h + 3]);
        var Vi = rJ[Vn.h + 4];
        Vn.h += 5;
        var Vc = Vn.M[Vn.M.length - 1];
        Vn.E.s(Vv, Vc);
        Vn.X = {h: Vn.h, G: Vn.G};
        Vn.h = Vj;
        Vn.G = Vi;
        Vn.M[Vn.M.length - 1] = Vc
    }, function (Vt) {
        var VD = rJ[Vt.h];
        var Vo = n[rJ[Vt.h + 1] << 8 | rJ[Vt.h + 2]];
        var Vb = rJ[Vt.h + 3] << 8 | rJ[Vt.h + 4];
        Vt.h += 5;
        var VP = Vt.M[Vt.M.length - 1];
        Vt.E.s(VD, VP);
        var VZ = Vo;
        var hz = VZ + "," + Vb;
        var hr = v[hz];
        if (typeof hr !== "undefined") {
            Vt.M[Vt.M.length - 1] = hr;
            return
        }
        var hI = n[Vb];
        var hk = t(hI);
        var hO = t(VZ);
        var hT = hk[0] + hO[0] & 255;
        var hN = "";
        for (var hV = 1; hV < hk.length; ++hV) {
            hN += B(hO[hV] ^ hk[hV] ^ hT)
        }
        Vt.M[Vt.M.length - 1] = v[hz] = hN
    }, function (hh) {
        var hy = rJ[hh.h];
        var hQ = rJ[hh.h + 1];
        var hX = rJ[hh.h + 2];
        hh.h += 3;
        var hd = hh.M.length;
        hh.M[hd] = hy;
        hh.M[hd + 1] = hQ;
        hh.M[hd + 2] = hX
    }, function (hK) {
        var hw = rJ[hK.h];
        var hL = rJ[hK.h + 1];
        hK.h += 2;
        var hl = hK.E.k(hw);
        hK.E.s(hL, hl);
        hK.M[hK.M.length] = hl
    }, function (hC) {
        var he = rJ[hC.h] << 8 | rJ[hC.h + 1];
        var hF = rJ[hC.h + 2];
        hC.h += 3;
        var hH = hC.E.k(he);
        var hq = hC.E.k(hF);
        var hp = hH;
        hC.M[hC.M.length] = hp(hq)
    }, function (hg) {
        var hG = rJ[hg.h];
        hg.h += 1;
        var hJ = hg.E.k(hG);
        var hf = null;
        hg.M[hg.M.length] = hJ == hf
    }, function (hs) {
        var ha = n[rJ[hs.h] << 8 | rJ[hs.h + 1]];
        var hM = rJ[hs.h + 2] << 8 | rJ[hs.h + 3];
        hs.h += 4;
        var hU = hs.M[hs.M.length - 3];
        var hB = hs.M[hs.M.length - 2];
        var hW = hs.M[hs.M.length - 1];
        U(hU, hB, {writable: true, configurable: true, enumerable: true, value: hW});
        var hE = ha;
        var hR = hE + "," + hM;
        var hS = v[hR];
        if (typeof hS !== "undefined") {
            var hx = hs.M.length - 3;
            hs.M[hx] = hU;
            hs.M[hx + 1] = hS;
            hs.M.length -= 1;
            return
        }
        var hm = n[hM];
        var hA = t(hm);
        var hY = t(hE);
        var hu = hA[0] + hY[0] & 255;
        var hn = "";
        for (var hv = 1; hv < hA.length; ++hv) {
            hn += B(hY[hv] ^ hA[hv] ^ hu)
        }
        var hx = hs.M.length - 3;
        hs.M[hx] = hU;
        hs.M[hx + 1] = v[hR] = hn;
        hs.M.length -= 1
    }, function (hj) {
        var hi = rJ[hj.h];
        var hc = rJ[hj.h + 1];
        var ht = rJ[hj.h + 2] << 16 | (rJ[hj.h + 3] << 8 | rJ[hj.h + 4]);
        var hD = rJ[hj.h + 5];
        hj.h += 6;
        var ho = hj.M[hj.M.length - 1];
        hj.E.s(hi, ho);
        hj.X = {h: hj.h, G: hj.G};
        hj.h = ht;
        hj.G = hD;
        hj.M[hj.M.length - 1] = hc
    }, function (hb) {
        var hP = rJ[hb.h];
        hb.h += 1;
        var hZ = hb.M[hb.M.length - 1];
        var yz = hZ & hP;
        var yr = hb.M[hb.M.length - 3];
        var yI = hb.M[hb.M.length - 2];
        U(yr, yI, {writable: true, configurable: true, enumerable: true, value: yz});
        hb.M[hb.M.length - 3] = yr;
        hb.M.length -= 2
    }, function (yk) {
        yk.M[yk.M.length] = z
    }, function (yO) {
        var yT = rJ[yO.h];
        var yN = rJ[yO.h + 1];
        yO.h += 2;
        var yV = yO.M[yO.M.length - 1];
        yO.E.s(yT, yV);
        var yh = yO.E.k(yN);
        if (yh === null || yh === void 0) {
            throw new T("Cannot access property of " + yh)
        }
        yO.M.length -= 1
    }, function (yy) {
        var yQ = rJ[yy.h];
        var yX = rJ[yy.h + 1];
        yy.h += 2;
        var yd = yy.E.k(yQ);
        yy.M[yy.M.length] = yd >>> yX
    }, function (yK) {
        var yw = yK.M[yK.M.length - 4];
        yK.M[yK.M.length - 4] = yw(yK.M[yK.M.length - 3], yK.M[yK.M.length - 2], yK.M[yK.M.length - 1]);
        yK.M.length -= 3
    }, function (yL) {
        var yl = yL.M[yL.M.length - 2];
        yL.M[yL.M.length - 2] = new yl(yL.M[yL.M.length - 1]);
        yL.M.length -= 1
    }, function (yC) {
        var ye = [];
        for (var yF in yC.M[yC.M.length - 1]) {
            p(ye, yF)
        }
        yC.M[yC.M.length - 1] = ye
    }, function (yH) {
        var yq = rJ[yH.h] << 8 | rJ[yH.h + 1];
        var yp = n[rJ[yH.h + 2] << 8 | rJ[yH.h + 3]];
        var yg = rJ[yH.h + 4] << 8 | rJ[yH.h + 5];
        yH.h += 6;
        b0:{
            var yG = yH.M[yH.M.length - 1];
            var yJ = yG;
            var yf = yJ + "," + yq;
            var ys = v[yf];
            if (typeof ys !== "undefined") {
                var ya = ys;
                break b0
            }
            var yM = n[yq];
            var yU = t(yM);
            var yB = t(yJ);
            var yW = yU[0] + yB[0] & 255;
            var yE = "";
            for (var yR = 1; yR < yU.length; ++yR) {
                yE += B(yB[yR] ^ yU[yR] ^ yW)
            }
            var ya = v[yf] = yE
        }
        var yJ = yp;
        var yf = yJ + "," + yg;
        var ys = v[yf];
        if (typeof ys !== "undefined") {
            var yS = yH.M.length - 1;
            yH.M[yS] = ya;
            yH.M[yS + 1] = ys;
            return
        }
        var yM = n[yg];
        var yU = t(yM);
        var yB = t(yJ);
        var yW = yU[0] + yB[0] & 255;
        var yE = "";
        for (var yR = 1; yR < yU.length; ++yR) {
            yE += B(yB[yR] ^ yU[yR] ^ yW)
        }
        var yS = yH.M.length - 1;
        yH.M[yS] = ya;
        yH.M[yS + 1] = v[yf] = yE
    }, function (yx) {
        var ym = rJ[yx.h];
        var yA = rJ[yx.h + 1];
        yx.h += 2;
        var yY = yx.E.k(ym);
        yx.M[yx.M.length] = yY & yA
    }, function (yu) {
        var yn = yu.M[yu.M.length - 7];
        yu.M[yu.M.length - 7] = yn(yu.M[yu.M.length - 6], yu.M[yu.M.length - 5], yu.M[yu.M.length - 4], yu.M[yu.M.length - 3], yu.M[yu.M.length - 2], yu.M[yu.M.length - 1]);
        yu.M.length -= 6
    }, function (yv) {
        var yj = rJ[yv.h];
        var yi = rJ[yv.h + 1];
        yv.h += 2;
        var yc = yv.M[yv.M.length - 3];
        var yt = yv.M[yv.M.length - 2];
        var yD = yv.M[yv.M.length - 1];
        U(yc, yt, {writable: true, configurable: true, enumerable: true, value: yD});
        yv.E.s(yj, yc);
        var yo = yv.M[yv.M.length - 4];
        yv.E.s(yi, yo);
        yv.M.length -= 4
    }, function (yb) {
        var yP = rJ[yb.h];
        var yZ = rJ[yb.h + 1];
        var Qz = rJ[yb.h + 2];
        yb.h += 3;
        var Qr = yb.M[yb.M.length - 1];
        yb.E.s(yP, Qr);
        var QI = yb.E.k(yZ);
        var Qk = yb.M.length - 1;
        yb.M[Qk] = QI;
        yb.M[Qk + 1] = yb.E.k(Qz)
    }, function (QO) {
        var QT = rJ[QO.h];
        var QN = rJ[QO.h + 1];
        var QV = rJ[QO.h + 2];
        QO.h += 3;
        var Qh = QO.M[QO.M.length - 1];
        QO.E.s(QT, Qh);
        var Qy = QO.E.k(QN);
        var QQ = QO.M.length - 1;
        QO.M[QQ] = Qy;
        QO.M[QQ + 1] = QV
    }, function (QX) {
        con3(QX.M[QX.M.length - 2], '===', QX.M[QX.M.length - 1], '==', QX.M[QX.M.length - 2] === QX.M[QX.M.length - 1]); QX.M[QX.M.length - 2] = QX.M[QX.M.length - 2] === QX.M[QX.M.length - 1];
        QX.M.length -= 1
    }, function (Qd) {
        con3(Qd.M[Qd.M.length - 2], '-', Qd.M[Qd.M.length - 1], '==', Qd.M[Qd.M.length - 2] - Qd.M[Qd.M.length - 1]); Qd.M[Qd.M.length - 2] = Qd.M[Qd.M.length - 2] - Qd.M[Qd.M.length - 1];
        Qd.M.length -= 1
    }, function (QK) {
        var Qw = rJ[QK.h];
        var QL = rJ[QK.h + 1];
        QK.h += 2;
        var Ql = QK.E.k(Qw);
        var QC = QK.E.k(QL);
        QK.h = QC;
        QK.G = Ql
    }, function (Qe) {
        "use strict";
        let res = Qe.M[Qe.M.length - 2][Qe.M[Qe.M.length - 1]];
        con3(Qe.M[Qe.M.length - 2], 'get', Qe.M[Qe.M.length - 1], '==>', res)
        Qe.M[Qe.M.length - 2] = res;
        if (Array.isArray(Qe.M[Qe.M.length - 2]) && Qe.M[Qe.M.length - 2].length === 60) {
                let res = [];
                Qe.M[Qe.M.length - 2].forEach((e, i) => {
                    if (e && e.length == 2) {
                        res.push(i + '==' + e[1].length + '=>')
                        res.push(e[1] + '')
                    } else {
                        res.push(i + '==0=>iii')
                    }

                })
                console.log([].slice.call(res).join('iii'))
            }
        Qe.M.length -= 1
    }, function (QF) {
        var QH = rJ[QF.h];
        var Qq = rJ[QF.h + 1];
        QF.h += 2;
        var Qp = QF.M[QF.M.length - 1];
        var Qg = Qp + QH;
        QF.E.s(Qq, Qg);
        QF.M.length -= 1
    }, function (QG) {
        var QJ = rJ[QG.h];
        var Qf = n[rJ[QG.h + 1] << 8 | rJ[QG.h + 2]];
        QG.h += 3;
        var Qs = [];
        var Qa = QG.M.length;
        QG.M[Qa] = Qs;
        QG.M[Qa + 1] = QJ;
        QG.M[Qa + 2] = Qf
    }, function (QM) {
        var QU = rJ[QM.h] << 16 | (rJ[QM.h + 1] << 8 | rJ[QM.h + 2]);
        var QB = rJ[QM.h + 3];
        QM.h += 4;
        var QW = null;
        var QE = QM.M[QM.M.length - 1];
        var QR = QE != QW;
        if (QR) {
            QM.h = QU;
            QM.G = QB
        }
        QM.M.length -= 1
    }, function (QS) {
        var Qx = rJ[QS.h];
        QS.h += 1;
        QS.M[QS.M.length] = Qx
    }, function (Qm) {
        var QA = rJ[Qm.h];
        var QY = rJ[Qm.h + 1] << 8 | rJ[Qm.h + 2];
        Qm.h += 3;
        var Qu = Qm.M[Qm.M.length - 1];
        U(Qu, QA, {writable: true, configurable: true, enumerable: true, value: QY});
        Qm.M[Qm.M.length - 1] = Qu
    }, function (Qn) {
        var Qv = n[rJ[Qn.h] << 8 | rJ[Qn.h + 1]];
        var Qj = rJ[Qn.h + 2] << 8 | rJ[Qn.h + 3];
        Qn.h += 4;
        b1:{
            var Qi = Qv;
            var Qc = Qi + "," + Qj;
            var Qt = v[Qc];
            if (typeof Qt !== "undefined") {
                var QD = Qt;
                break b1
            }
            var Qo = n[Qj];
            var Qb = t(Qo);
            var QP = t(Qi);
            var QZ = Qb[0] + QP[0] & 255;
            var Xz = "";
            for (var Xr = 1; Xr < Qb.length; ++Xr) {
                Xz += B(QP[Xr] ^ Qb[Xr] ^ QZ)
            }
            var QD = v[Qc] = Xz
        }
        var XI = Qn.M[Qn.M.length - 1];
        Qn.M[Qn.M.length - 1] = XI[QD]()
    }, function (Xk) {
        var XO = rJ[Xk.h];
        Xk.h += 1;
        var XT = Xk.M[Xk.M.length - 1];
        if (XT === null || XT === void 0) {
            throw new T("Cannot access property of " + XT)
        }
        var XN = Xk.E.k(XO);
        Xk.M[Xk.M.length - 1] = y(XN)
    }, function (XV) {
        con3(XV.M[XV.M.length - 2], '&', XV.M[XV.M.length - 1], '==', XV.M[XV.M.length - 2] & XV.M[XV.M.length - 1]); XV.M[XV.M.length - 2] = XV.M[XV.M.length - 2] & XV.M[XV.M.length - 1];
        XV.M.length -= 1
    }, function (Xh) {
        con3(Xh.M[Xh.M.length - 2], '>=', Xh.M[Xh.M.length - 1], '==', Xh.M[Xh.M.length - 2] >= Xh.M[Xh.M.length - 1]); Xh.M[Xh.M.length - 2] = Xh.M[Xh.M.length - 2] >= Xh.M[Xh.M.length - 1];
        Xh.M.length -= 1
    }, function (Xy) {
        var XQ = rJ[Xy.h];
        Xy.h += 1;
        var XX = Xy.M[Xy.M.length - 1];
        Xy.E.s(XQ, XX);
        var Xd = null;
        var XK = Xy.M[Xy.M.length - 2];
        Xy.M[Xy.M.length - 2] = XK == Xd;
        Xy.M.length -= 1
    }, function (Xw) {
        var XL = rJ[Xw.h];
        var Xl = rJ[Xw.h + 1];
        Xw.h += 2;
        var XC = Xw.E.k(XL);
        Xw.M[Xw.M.length] = XC - Xl
    }, function (Xe) {
        var XF = rJ[Xe.h];
        var XH = rJ[Xe.h + 1];
        Xe.h += 2;
        var Xq = Xe.M[Xe.M.length - 1];
        Xe.E.s(XF, Xq);
        Xe.E.s(XH, Xq);
        Xe.M.length -= 1
    }, function (Xp) {
        var Xg = rJ[Xp.h];
        var XG = rJ[Xp.h + 1];
        var XJ = rJ[Xp.h + 2] << 8 | rJ[Xp.h + 3];
        Xp.h += 4;
        var Xf = Xp.E.k(Xg);
        var Xs = Xp.E.k(XG);
        Xp.M[Xp.M.length] = Ti(XJ, Xs, Xf, Xp.E)
    }, function (Xa) {
        con3(Xa.M[Xa.M.length - 2], '>', Xa.M[Xa.M.length - 1], '==', Xa.M[Xa.M.length - 2] > Xa.M[Xa.M.length - 1]); Xa.M[Xa.M.length - 2] = Xa.M[Xa.M.length - 2] > Xa.M[Xa.M.length - 1];
        Xa.M.length -= 1
    }, function (XM) {
        XM.M[XM.M.length] = false
    }, function (XU) {
        --XU.R[XU.R.length - 1].N
    }, function (XB) {
        var XW = XB.M[XB.M.length - 12];
        XB.M[XB.M.length - 12] = new XW(XB.M[XB.M.length - 11], XB.M[XB.M.length - 10], XB.M[XB.M.length - 9], XB.M[XB.M.length - 8], XB.M[XB.M.length - 7], XB.M[XB.M.length - 6], XB.M[XB.M.length - 5], XB.M[XB.M.length - 4], XB.M[XB.M.length - 3], XB.M[XB.M.length - 2], XB.M[XB.M.length - 1]);
        XB.M.length -= 11
    }, function (XE) {
        var XR = rJ[XE.h];
        XE.h += 1;
        var XS = XE.M[XE.M.length - 1];
        XE.E.s(XR, XS);
        var Xx = XE.M.length - 1;
        XE.M[Xx] = XS;
        XE.M[Xx + 1] = null
    }, function (Xm) {
        var XA = rJ[Xm.h] << 16 | (rJ[Xm.h + 1] << 8 | rJ[Xm.h + 2]);
        var XY = rJ[Xm.h + 3];
        Xm.h += 4;
        Xm.h = XA;
        Xm.G = XY
    }, function (Xu) {
        "use strict";
        Xu.M[Xu.M.length - 2] = delete Xu.M[Xu.M.length - 2][Xu.M[Xu.M.length - 1]];
        Xu.M.length -= 1
    }, function (Xn) {
        Xn.M[Xn.M.length - 1] = h(Xn.M[Xn.M.length - 1])
    }, function (Xv) {
        Xv.M[Xv.M.length - 2] = V(Xv.M[Xv.M.length - 1], Xv.M[Xv.M.length - 2]);
        Xv.M.length -= 1
    }, function (Xj) {
        var Xi = n[rJ[Xj.h] << 8 | rJ[Xj.h + 1]];
        Xj.h += 2;
        Xj.M[Xj.M.length] = V(Xi)
    }, function (Xc) {
        Tz = void 0
    }, function (Xt) {
        var XD = n[rJ[Xt.h] << 8 | rJ[Xt.h + 1]];
        var Xo = rJ[Xt.h + 2];
        var Xb = rJ[Xt.h + 3];
        Xt.h += 4;
        var XP = Xt.E.k(Xo);
        var XZ = Xt.M.length;
        Xt.M[XZ] = XD;
        Xt.M[XZ + 1] = XP;
        Xt.M[XZ + 2] = Xb
    }, function (dz) {
        var dr = rJ[dz.h];
        dz.h += 1;
        var dI = dz.M[dz.M.length - 4];
        var dk = dz.M[dz.M.length - 3];
        var dO = dz.M[dz.M.length - 2];
        var dT = dz.M[dz.M.length - 1];
        var dN = dI;
        var dV = dN(dk, dO, dT);
        var dh = dz.M[dz.M.length - 6];
        var dy = dz.M[dz.M.length - 5];
        U(dh, dy, {writable: true, configurable: true, enumerable: true, value: dV});
        var dQ = dz.M.length - 6;
        dz.M[dQ] = dh;
        dz.M[dQ + 1] = dr;
        dz.M.length -= 4
    }, function (dX) {
        dX.M[dX.M.length - 2] = dX.M[dX.M.length - 2] instanceof dX.M[dX.M.length - 1];
        dX.M.length -= 1
    }, function (dd) {
        var dK = rJ[dd.h];
        var dw = rJ[dd.h + 1];
        dd.h += 2;
        var dL = dd.M[dd.M.length - 1];
        dd.E.s(dK, dL);
        var dl = dd.E.k(dw);
        dd.M[dd.M.length - 1] = h(dl)
    }, function (dC) {
        var de = rJ[dC.h];
        var dF = rJ[dC.h + 1];
        dC.h += 2;
        var dH = dC.M[dC.M.length - 1];
        dC.E.s(de, dH);
        var dq = null;
        dC.E.s(dF, dq);
        dC.M.length -= 1
    }, function (dp) {
        dp.h = dp.M[dp.M.length - 1];
        dp.G = dp.M[dp.M.length - 2];
        dp.M.length -= 2
    }, function (dg) {
        var dG = rJ[dg.h];
        dg.h += 1;
        var dJ = null;
        var df = dg.E.k(dG);
        dg.M[dg.M.length] = dJ != df
    }, function (ds) {
        Tz = I
    }, function (da) {
        con3(da.M[da.M.length - 2], '<', da.M[da.M.length - 1], '==', da.M[da.M.length - 2] < da.M[da.M.length - 1]); da.M[da.M.length - 2] = da.M[da.M.length - 2] < da.M[da.M.length - 1];
        da.M.length -= 1
    }, function (dM) {
        var dU = rJ[dM.h];
        var dB = rJ[dM.h + 1];
        dM.h += 2;
        var dW = [];
        var dE = dM.M.length;
        dM.M[dE] = dU;
        dM.M[dE + 1] = dW;
        dM.M[dE + 2] = dB
    }, function (dR) {
        var dS = dR.M[dR.M.length - 1];
        dR.M[dR.M.length - 1] = new dS
    }, function (dx) {
        var dm = rJ[dx.h];
        var dA = rJ[dx.h + 1];
        dx.h += 2;
        var dY = true;
        dx.E.s(dm, dY);
        dx.M[dx.M.length] = dx.E.k(dA)
    }, function (du) {
        var dn = rJ[du.h];
        du.h += 1;
        var dv = null;
        var dj = du.E.k(dn);
        du.M[du.M.length] = dv == dj
    }, function (di) {
        var dc = n[rJ[di.h] << 8 | rJ[di.h + 1]];
        var dt = rJ[di.h + 2];
        var dD = rJ[di.h + 3] << 16 | (rJ[di.h + 4] << 8 | rJ[di.h + 5]);
        var db = rJ[di.h + 6];
        di.h += 7;
        var dP = di.E.k(dt);
        di.X = {h: di.h, G: di.G};
        di.h = dD;
        di.G = db;
        var dZ = di.M.length;
        di.M[dZ] = dc;
        di.M[dZ + 1] = dP
    }, function (Kz) {
        var Kr = n[rJ[Kz.h] << 8 | rJ[Kz.h + 1]];
        var KI = rJ[Kz.h + 2] << 8 | rJ[Kz.h + 3];
        Kz.h += 4;
        b1:{
            var Kk = Kr;
            var KO = Kk + "," + KI;
            var KT = v[KO];
            if (typeof KT !== "undefined") {
                var KN = KT;
                break b1
            }
            var KV = n[KI];
            var Kh = t(KV);
            var Ky = t(Kk);
            var KQ = Kh[0] + Ky[0] & 255;
            var KX = "";
            for (var Kd = 1; Kd < Kh.length; ++Kd) {
                KX += B(Ky[Kd] ^ Kh[Kd] ^ KQ)
            }
            var KN = v[KO] = KX
        }
        var KK = Kz.M[Kz.M.length - 2];
        var Kw = Kz.M[Kz.M.length - 1];
        U(KK, Kw, {writable: true, configurable: true, enumerable: true, value: KN});
        Kz.M[Kz.M.length - 2] = KK;
        Kz.M.length -= 1
    }, function (KL) {
        var Kl = rJ[KL.h];
        var KC = rJ[KL.h + 1];
        KL.h += 2;
        var Ke = KL.M[KL.M.length - 2];
        var KF = KL.M[KL.M.length - 1];
        var KH = Ke | KF;
        KL.E.s(Kl, KH);
        KL.M[KL.M.length - 2] = KL.E.k(KC);
        KL.M.length -= 1
    }, function (Kq) {
        Kq.M[Kq.M.length - 1] = typeof Kq.M[Kq.M.length - 1]
    }, function (Kp) {
        var Kg = Kp.t.f();
        if (Kg.q) {
            throw Kg.C
        }
        Kp.h = Kg.C;
        Kp.G = Kg.G
    }, function (KG) {
        var KJ = rJ[KG.h];
        var Kf = rJ[KG.h + 1] << 16 | (rJ[KG.h + 2] << 8 | rJ[KG.h + 3]);
        var Ks = rJ[KG.h + 4];
        KG.h += 5;
        var Ka = KG.E.k(KJ);
        var KM = KG.M[KG.M.length - 1];
        var KU = KM < Ka;
        if (!KU) {
            KG.h = Kf;
            KG.G = Ks
        }
        KG.M.length -= 1
    }, function (KB) {
        KB.R.f()
    }, function (KW) {
        con3(KW.M[KW.M.length - 2], '|', KW.M[KW.M.length - 1], '==', KW.M[KW.M.length - 2] | KW.M[KW.M.length - 1]); KW.M[KW.M.length - 2] = KW.M[KW.M.length - 2] | KW.M[KW.M.length - 1];
        KW.M.length -= 1
    }, function (KE) {
        KE.M.O(function () {
            null[0]()
        })
    }, function (KR) {
        var KS = rJ[KR.h];
        var Kx = rJ[KR.h + 1];
        var Km = rJ[KR.h + 2];
        KR.h += 3;
        var KA = KR.M.length;
        KR.M[KA] = KS;
        KR.M[KA + 1] = Kx;
        KR.M[KA + 2] = KR.E.k(Km)
    }, function (KY) {
        var Ku = rJ[KY.h];
        var Kn = n[rJ[KY.h + 1] << 8 | rJ[KY.h + 2]];
        var Kv = rJ[KY.h + 3];
        KY.h += 4;
        var Kj = KY.M[KY.M.length - 1];
        KY.E.s(Ku, Kj);
        var Ki = KY.M.length - 1;
        KY.M[Ki] = Kn;
        KY.M[Ki + 1] = KY.E.k(Kv)
    }, function (Kc) {
        var Kt = rJ[Kc.h] << 8 | rJ[Kc.h + 1];
        var KD = rJ[Kc.h + 2];
        var Ko = rJ[Kc.h + 3];
        Kc.h += 4;
        var Kb = Kc.E.k(Kt);
        var KP = Kc.E.k(KD);
        var KZ = Kc.M.length;
        Kc.M[KZ] = Kb;
        Kc.M[KZ + 1] = KP;
        Kc.M[KZ + 2] = Kc.E.k(Ko)
    }, function (wz) {
        var wr = rJ[wz.h] << 8 | rJ[wz.h + 1];
        wz.h += 2;
        b0:{
            var wI = wz.M[wz.M.length - 1];
            var wk = wI;
            var wO = wk + "," + wr;
            var wT = v[wO];
            if (typeof wT !== "undefined") {
                var wN = wT;
                break b0
            }
            var wV = n[wr];
            var wh = t(wV);
            var wy = t(wk);
            var wQ = wh[0] + wy[0] & 255;
            var wX = "";
            for (var wd = 1; wd < wh.length; ++wd) {
                wX += B(wy[wd] ^ wh[wd] ^ wQ)
            }
            var wN = v[wO] = wX
        }
        var wK = wz.M[wz.M.length - 2];
        var ww = V(wN, wK);
        var wL = wz.M[wz.M.length - 4];
        var wl = wz.M[wz.M.length - 3];
        U(wL, wl, {writable: true, configurable: true, enumerable: true, value: ww});
        wz.M[wz.M.length - 4] = wL;
        wz.M.length -= 3
    }, function (wC) {
        var we = rJ[wC.h];
        var wF = rJ[wC.h + 1];
        wC.h += 2;
        var wH = [];
        wC.E.s(we, wH);
        wC.M[wC.M.length] = wC.E.k(wF)
    }, function (wq) {
        var wp = wq.M[wq.M.length - 3];
        wq.M[wq.M.length - 3] = wp(wq.M[wq.M.length - 2], wq.M[wq.M.length - 1]);
        wq.M.length -= 2
    }, function (wg) {
        wg.M[wg.M.length - 1] = -wg.M[wg.M.length - 1]
    }, function (wG) {
        var wJ = c[rJ[wG.h]];
        var wf = c[rJ[wG.h + 1]];
        var ws = rJ[wG.h + 2] << 16 | (rJ[wG.h + 3] << 8 | rJ[wG.h + 4]);
        var wa = rJ[wG.h + 5];
        wG.h += 6;
        wG.X = {h: wG.h, G: wG.G};
        wG.h = ws;
        wG.G = wa;
        var wM = wG.M.length;
        wG.M[wM] = wJ;
        wG.M[wM + 1] = wf
    }, function (wU) {
        var wB = rJ[wU.h];
        var wW = rJ[wU.h + 1];
        wU.h += 2;
        var wE = wU.M[wU.M.length - 1];
        wU.E.s(wB, wE);
        var wR = false;
        wU.E.s(wW, wR);
        wU.M.length -= 1
    }, function (wS) {
        var wx = rJ[wS.h];
        var wm = rJ[wS.h + 1];
        wS.h += 2;
        var wA = wS.M[wS.M.length - 3];
        var wY = wS.M[wS.M.length - 2];
        var wu = wS.M[wS.M.length - 1];
        U(wA, wY, {writable: true, configurable: true, enumerable: true, value: wu});
        var wn = wS.M.length - 3;
        wS.M[wn] = wA;
        wS.M[wn + 1] = wx;
        wS.M[wn + 2] = wm
    }, function (wv) {
        var wj = rJ[wv.h];
        wv.h += 1;
        var wi = wv.M[wv.M.length - 3];
        var wc = wv.M[wv.M.length - 2];
        var wt = wv.M[wv.M.length - 1];
        U(wi, wc, {writable: true, configurable: true, enumerable: true, value: wt});
        wv.E.s(wj, wi);
        wv.M[wv.M.length - 3] = [];
        wv.M.length -= 2
    }, function (wD) {
        if (wD.M[wD.M.length - 1] === null || wD.M[wD.M.length - 1] === void 0) {
            throw new T("Cannot access property of " + wD.M[wD.M.length - 1])
        }
        wD.M.length -= 1
    }, function (wo) {
        var wb = rJ[wo.h];
        var wP = n[rJ[wo.h + 1] << 8 | rJ[wo.h + 2]];
        var wZ = rJ[wo.h + 3] << 8 | rJ[wo.h + 4];
        wo.h += 5;
        var Lz = wP;
        var Lr = Lz + "," + wZ;
        var LI = v[Lr];
        if (typeof LI !== "undefined") {
            var Lk = wo.M.length;
            wo.M[Lk] = wb;
            wo.M[Lk + 1] = LI;
            return
        }
        var LO = n[wZ];
        var LT = t(LO);
        var LN = t(Lz);
        var LV = LT[0] + LN[0] & 255;
        var Lh = "";
        for (var Ly = 1; Ly < LT.length; ++Ly) {
            Lh += B(LN[Ly] ^ LT[Ly] ^ LV)
        }
        var Lk = wo.M.length;
        wo.M[Lk] = wb;
        wo.M[Lk + 1] = v[Lr] = Lh
    }, function (LQ) {
        var LX = rJ[LQ.h];
        var Ld = n[rJ[LQ.h + 1] << 8 | rJ[LQ.h + 2]];
        LQ.h += 3;
        var LK = LQ.M[LQ.M.length - 1];
        LQ.E.s(LX, LK);
        var Lw = LQ.M.length - 1;
        LQ.M[Lw] = LK;
        LQ.M[Lw + 1] = Ld
    }, function (LL) {
        var Ll = c[rJ[LL.h]];
        LL.h += 1;
        var LC = LL.M[LL.M.length - 1];
        var Le = LC ^ Ll;
        var LF = LL.M[LL.M.length - 2];
        var LH = LF;
        LL.M[LL.M.length - 2] = LH(Le);
        LL.M.length -= 1
    }, function (Lq) {
        con3(Lq.M[Lq.M.length - 2], '>>>', Lq.M[Lq.M.length - 1], '==', Lq.M[Lq.M.length - 2] >>> Lq.M[Lq.M.length - 1]); Lq.M[Lq.M.length - 2] = Lq.M[Lq.M.length - 2] >>> Lq.M[Lq.M.length - 1];
        Lq.M.length -= 1
    }, function (Lp) {
        var Lg = rJ[Lp.h];
        var LG = rJ[Lp.h + 1];
        Lp.h += 2;
        var LJ = Lp.E.k(LG);
        Lp.M[Lp.M.length] = Lg & LJ
    }, function (Lf) {
        var Ls = rJ[Lf.h] << 8 | rJ[Lf.h + 1];
        var La = rJ[Lf.h + 2];
        Lf.h += 3;
        Lf.h = Ls;
        Lf.G = La
    }, function (LM) {
        var LU = LM.M[LM.M.length - 3];
        LM.M[LM.M.length - 3] = new LU(LM.M[LM.M.length - 2], LM.M[LM.M.length - 1]);
        LM.M.length -= 2
    }, function (LB) {
        var LW = rJ[LB.h];
        LB.h += 1;
        var LE = LB.M[LB.M.length - 2];
        var LR = LB.M[LB.M.length - 1];
        var LS = LE;
        var Lx = LS(LR);
        LB.M[LB.M.length - 2] = LB.E.k(LW);
        LB.M.length -= 1
    }, function (Lm) {
        var LA = rJ[Lm.h];
        var LY = n[rJ[Lm.h + 1] << 8 | rJ[Lm.h + 2]];
        Lm.h += 3;
        var Lu = Lm.M[Lm.M.length - 3];
        var Ln = Lm.M[Lm.M.length - 2];
        var Lv = Lm.M[Lm.M.length - 1];
        U(Lu, Ln, {writable: true, configurable: true, enumerable: true, value: Lv});
        var Lj = Lm.M.length - 3;
        Lm.M[Lj] = Lu;
        Lm.M[Lj + 1] = LA;
        Lm.M[Lj + 2] = LY
    }, function (Li) {
        var Lc = rJ[Li.h] << 8 | rJ[Li.h + 1];
        var Lt = c[rJ[Li.h + 2]];
        var LD = rJ[Li.h + 3];
        Li.h += 4;
        var Lo = Li.E.k(Lc);
        var Lb = Li.M.length;
        Li.M[Lb] = Lo;
        Li.M[Lb + 1] = Lt;
        Li.M[Lb + 2] = Li.E.k(LD)
    }, function (LP) {
        var LZ = rJ[LP.h];
        LP.h += 1;
        var lz = LP.M[LP.M.length - 2];
        var lr = LP.M[LP.M.length - 1];
        var lI = lz << lr;
        var lk = LP.M[LP.M.length - 3];
        var lO = lk | lI;
        LP.E.s(LZ, lO);
        LP.M.length -= 3
    }, function (lT) {
        var lN = rJ[lT.h] << 8 | rJ[lT.h + 1];
        lT.h += 2;
        var lV = lT.M[lT.M.length - 2];
        var lh = lT.M[lT.M.length - 1];
        var ly = Ti(lN, lh, lV, lT.E);
        var lQ = lT.M[lT.M.length - 3];
        var lX = lQ;
        var ld = lX(ly);
        lT.M.length -= 3
    }, function (lK) {
        con3(lK.M[lK.M.length - 2], '+', lK.M[lK.M.length - 1], '==', lK.M[lK.M.length - 2] + lK.M[lK.M.length - 1]); lK.M[lK.M.length - 2] = lK.M[lK.M.length - 2] + lK.M[lK.M.length - 1];
        lK.M.length -= 1
    }, function (lw) {
        var lL = rJ[lw.h];
        var ll = rJ[lw.h + 1] << 8 | rJ[lw.h + 2];
        var lC = rJ[lw.h + 3];
        lw.h += 4;
        var le = lw.M[lw.M.length - 1];
        lw.E.s(lL, le);
        var lF = lw.E.k(ll);
        var lH = lw.M.length - 1;
        lw.M[lH] = lF;
        lw.M[lH + 1] = lw.E.k(lC)
    }, function (lq) {
        var lp = rJ[lq.h] << 8 | rJ[lq.h + 1];
        var lg = rJ[lq.h + 2];
        lq.h += 3;
        lq.X = {h: lq.h, G: lq.G};
        lq.h = lp;
        lq.G = lg
    }, function (lG) {
        var lJ = n[rJ[lG.h] << 8 | rJ[lG.h + 1]];
        var lf = rJ[lG.h + 2] << 8 | rJ[lG.h + 3];
        lG.h += 4;
        var ls = {};
        var la = lJ;
        var lM = la + "," + lf;
        var lU = v[lM];
        if (typeof lU !== "undefined") {
            var lB = lG.M.length;
            lG.M[lB] = ls;
            lG.M[lB + 1] = lU;
            return
        }
        var lW = n[lf];
        var lE = t(lW);
        var lR = t(la);
        var lS = lE[0] + lR[0] & 255;
        var lx = "";
        for (var lm = 1; lm < lE.length; ++lm) {
            lx += B(lR[lm] ^ lE[lm] ^ lS)
        }
        var lB = lG.M.length;
        lG.M[lB] = ls;
        lG.M[lB + 1] = v[lM] = lx
    }, function (lA) {
        var lY = rJ[lA.h] << 8 | rJ[lA.h + 1];
        var lu = rJ[lA.h + 2];
        lA.h += 3;
        lA.R.O({H: lY, G: lu, N: 0})
    }, function (ln) {
        var lv = rJ[ln.h];
        ln.h += 1;
        var lj = ln.M[ln.M.length - 1];
        ln.E.s(lv, lj);
        ln.M[ln.M.length - 1] = y(lj)
    }, function (li) {
        li.M[li.M.length] = li.I
    }, function (lc) {
        var lt = lc.M.length - 1;
        lc.M[lt] = lc.M[lc.M.length - 1];
        lc.M[lt + 1] = lc.M[lc.M.length - 1]
    }, function (lD) {
        lD.h = lD.X.h;
        lD.G = lD.X.G
    }, function (lo) {
        var lb = rJ[lo.h];
        var lP = n[rJ[lo.h + 1] << 8 | rJ[lo.h + 2]];
        lo.h += 3;
        var lZ = lo.E.k(lb);
        var Cz = lo.M[lo.M.length - 2];
        var Cr = lo.M[lo.M.length - 1];
        U(Cz, Cr, {writable: true, configurable: true, enumerable: true, value: lZ});
        var CI = lo.M.length - 2;
        lo.M[CI] = Cz;
        lo.M[CI + 1] = lP
    }, function (Ck) {
        Ck.M[Ck.M.length - 2] = Ck.M[Ck.M.length - 2] !== Ck.M[Ck.M.length - 1];
        Ck.M.length -= 1
    }, function (CO) {
        var CT = rJ[CO.h];
        var CN = rJ[CO.h + 1];
        CO.h += 2;
        var CV = CO.E.k(CT);
        var Ch = CO.M[CO.M.length - 2];
        var Cy = CO.M[CO.M.length - 1];
        U(Ch, Cy, {writable: true, configurable: true, enumerable: true, value: CV});
        var CQ = CO.M.length - 2;
        CO.M[CQ] = Ch;
        CO.M[CQ + 1] = CN
    }, function (CX) {
        con3(CX.M[CX.M.length - 2], '^', CX.M[CX.M.length - 1], '==', CX.M[CX.M.length - 2] ^ CX.M[CX.M.length - 1]); CX.M[CX.M.length - 2] = CX.M[CX.M.length - 2] ^ CX.M[CX.M.length - 1];
        CX.M.length -= 1
    }, function (Cd) {
        var CK = rJ[Cd.h];
        Cd.h += 1;
        Cd.E.s(CK, Cd.M[Cd.M.length - 1]);
        Cd.M.length -= 1
    }, function (Cw) {
        var CL = rJ[Cw.h];
        var Cl = rJ[Cw.h + 1];
        var CC = rJ[Cw.h + 2] << 16 | (rJ[Cw.h + 3] << 8 | rJ[Cw.h + 4]);
        var Ce = rJ[Cw.h + 5];
        Cw.h += 6;
        Cw.X = {h: Cw.h, G: Cw.G};
        Cw.h = CC;
        Cw.G = Ce;
        var CF = Cw.M.length;
        Cw.M[CF] = CL;
        Cw.M[CF + 1] = Cl
    }, function (CH) {
        var Cq = CH.M[CH.M.length - 6];
        CH.M[CH.M.length - 6] = Cq(CH.M[CH.M.length - 5], CH.M[CH.M.length - 4], CH.M[CH.M.length - 3], CH.M[CH.M.length - 2], CH.M[CH.M.length - 1]);
        CH.M.length -= 5
    }, function (Cp) {
        var Cg = rJ[Cp.h];
        var CG = rJ[Cp.h + 1];
        var CJ = rJ[Cp.h + 2] << 16 | (rJ[Cp.h + 3] << 8 | rJ[Cp.h + 4]);
        var Cf = rJ[Cp.h + 5];
        Cp.h += 6;
        var Cs = Cp.E.k(CG);
        Cp.X = {h: Cp.h, G: Cp.G};
        Cp.h = CJ;
        Cp.G = Cf;
        var Ca = Cp.M.length;
        Cp.M[Ca] = Cg;
        Cp.M[Ca + 1] = Cs
    }, function (CM) {
        var CU = rJ[CM.h];
        var CB = rJ[CM.h + 1] << 8 | rJ[CM.h + 2];
        var CW = c[rJ[CM.h + 3]];
        CM.h += 4;
        var CE = CM.M[CM.M.length - 1];
        CM.E.s(CU, CE);
        var CR = CM.E.k(CB);
        var CS = CM.M.length - 1;
        CM.M[CS] = CR;
        CM.M[CS + 1] = CW
    }, function (Cx) {
        var Cm = rJ[Cx.h];
        var CA = rJ[Cx.h + 1];
        Cx.h += 2;
        var CY = Cx.E.k(Cm);
        var Cu = Cx.M[Cx.M.length - 1];
        var Cn = Cu;
        var Cv = Cn(CY);
        Cx.E.s(CA, Cv);
        Cx.M.length -= 1
    }, function (Cj) {
        var Ci = rJ[Cj.h];
        var Cc = rJ[Cj.h + 1];
        Cj.h += 2;
        var Ct = Cj.M[Cj.M.length - 3];
        var CD = Cj.M[Cj.M.length - 2];
        var Co = Cj.M[Cj.M.length - 1];
        U(Ct, CD, {writable: true, configurable: true, enumerable: true, value: Co});
        var Cb = Cj.M.length - 3;
        Cj.M[Cb] = Ct;
        Cj.M[Cb + 1] = Ci;
        Cj.M[Cb + 2] = Cj.E.k(Cc)
    }, function (CP) {
        var CZ = rJ[CP.h];
        CP.h += 1;
        CP.M[CP.M.length - (2 + CZ)] = L(CP.M[CP.M.length - (1 + CZ)], CP.M[CP.M.length - (2 + CZ)], CP.M.Y(CP.M.length - CZ));
        CP.M.length -= 1 + CZ
    }, function (ez) {
        con3(ez.M[ez.M.length - 2], '>>', ez.M[ez.M.length - 1], '==', ez.M[ez.M.length - 2] >> ez.M[ez.M.length - 1]); ez.M[ez.M.length - 2] = ez.M[ez.M.length - 2] >> ez.M[ez.M.length - 1];
        ez.M.length -= 1
    }, function (er) {
        var eI = rJ[er.h];
        var ek = rJ[er.h + 1];
        er.h += 2;
        er.h = eI;
        er.G = ek
    }, function (eO) {
        var eT = rJ[eO.h] << 8 | rJ[eO.h + 1];
        var eN = rJ[eO.h + 2];
        var eV = c[rJ[eO.h + 3]];
        eO.h += 4;
        var eh = eO.E.k(eT);
        var ey = eO.E.k(eN);
        var eQ = eO.M.length;
        eO.M[eQ] = eh;
        eO.M[eQ + 1] = ey;
        eO.M[eQ + 2] = eV
    }, function (eX) {
        var ed = rJ[eX.h] << 8 | rJ[eX.h + 1];
        eX.h += 2;
        eX.M[eX.M.length - 2] = Ti(ed, eX.M[eX.M.length - 1], eX.M[eX.M.length - 2], eX.E);
        eX.M.length -= 1
    }, function (eK) {
        eK.M[eK.M.length] = null
    }, function (ew) {
        var eL = rJ[ew.h] << 16 | (rJ[ew.h + 1] << 8 | rJ[ew.h + 2]);
        var el = rJ[ew.h + 3];
        ew.h += 4;
        var eC = null;
        var ee = ew.M[ew.M.length - 1];
        var eF = ee != eC;
        if (!eF) {
            ew.h = eL;
            ew.G = el
        }
        ew.M.length -= 1
    }, function (eH) {
        var eq = rJ[eH.h];
        eH.h += 1;
        var ep = eH.t.f();
        eH.E.s(eq, ep.C)
    }, function (eg) {
        var eG = n[rJ[eg.h] << 8 | rJ[eg.h + 1]];
        var eJ = rJ[eg.h + 2] << 8 | rJ[eg.h + 3];
        var ef = rJ[eg.h + 4];
        eg.h += 5;
        b1:{
            var es = eG;
            var ea = es + "," + eJ;
            var eM = v[ea];
            if (typeof eM !== "undefined") {
                var eU = eM;
                break b1
            }
            var eB = n[eJ];
            var eW = t(eB);
            var eE = t(es);
            var eR = eW[0] + eE[0] & 255;
            var eS = "";
            for (var ex = 1; ex < eW.length; ++ex) {
                eS += B(eE[ex] ^ eW[ex] ^ eR)
            }
            var eU = v[ea] = eS
        }
        var em = eg.M.length;
        eg.M[em] = eU;
        eg.M[em + 1] = ef
    }, function (eA) {
        eA.M.length -= 1
    }, function (eY) {
        eY.M[eY.M.length - 1] = y(eY.M[eY.M.length - 1])
    }, function (eu) {
        var en = n[rJ[eu.h] << 8 | rJ[eu.h + 1]];
        var ev = rJ[eu.h + 2] << 8 | rJ[eu.h + 3];
        eu.h += 4;
        b1:{
            var ej = en;
            var ei = ej + "," + ev;
            var ec = v[ei];
            if (typeof ec !== "undefined") {
                var et = ec;
                break b1
            }
            var eD = n[ev];
            var eo = t(eD);
            var eb = t(ej);
            var eP = eo[0] + eb[0] & 255;
            var eZ = "";
            for (var Fz = 1; Fz < eo.length; ++Fz) {
                eZ += B(eb[Fz] ^ eo[Fz] ^ eP)
            }
            var et = v[ei] = eZ
        }
        var Fr = eu.M[eu.M.length - 2];
        var FI = eu.M[eu.M.length - 1];
        var Fk = Fr;
        eu.M[eu.M.length - 2] = Fk(FI, et);
        eu.M.length -= 1
    }, function (FO) {
        var FT = rJ[FO.h] << 8 | rJ[FO.h + 1];
        var FN = n[rJ[FO.h + 2] << 8 | rJ[FO.h + 3]];
        FO.h += 4;
        var FV = FO.M[FO.M.length - 2];
        var Fh = FO.M[FO.M.length - 1];
        var Fy = Ti(FT, Fh, FV, FO.E);
        var FQ = FO.M[FO.M.length - 4];
        var FX = FO.M[FO.M.length - 3];
        U(FQ, FX, {writable: true, configurable: true, enumerable: true, value: Fy});
        var Fd = FO.M.length - 4;
        FO.M[Fd] = FQ;
        FO.M[Fd + 1] = FN;
        FO.M.length -= 2
    }, function (FK) {
        var Fw = rJ[FK.h];
        var FL = rJ[FK.h + 1] << 16 | (rJ[FK.h + 2] << 8 | rJ[FK.h + 3]);
        var Fl = rJ[FK.h + 4];
        FK.h += 5;
        var FC = FK.E.k(Fw);
        FK.X = {h: FK.h, G: FK.G};
        FK.h = FL;
        FK.G = Fl;
        FK.M[FK.M.length - 1] = FC
    }, function (Fe) {
        var FF = rJ[Fe.h] << 16 | (rJ[Fe.h + 1] << 8 | rJ[Fe.h + 2]);
        var FH = rJ[Fe.h + 3];
        Fe.h += 4;
        Fe.X = {h: Fe.h, G: Fe.G};
        Fe.h = FF;
        Fe.G = FH
    }, function (Fq) {
        var Fp = rJ[Fq.h];
        var Fg = rJ[Fq.h + 1];
        Fq.h += 2;
        if (!Fq.M[Fq.M.length - 1]) {
            Fq.h = Fp;
            Fq.G = Fg
        }
        Fq.M.length -= 1
    }, function (FG) {
        var FJ = n[rJ[FG.h] << 8 | rJ[FG.h + 1]];
        var Ff = rJ[FG.h + 2] << 8 | rJ[FG.h + 3];
        FG.h += 4;
        b1:{
            var Fs = FJ;
            var Fa = Fs + "," + Ff;
            var FM = v[Fa];
            if (typeof FM !== "undefined") {
                var FU = FM;
                break b1
            }
            var FB = n[Ff];
            var FW = t(FB);
            var FE = t(Fs);
            var FR = FW[0] + FE[0] & 255;
            var FS = "";
            for (var Fx = 1; Fx < FW.length; ++Fx) {
                FS += B(FE[Fx] ^ FW[Fx] ^ FR)
            }
            var FU = v[Fa] = FS
        }
        var Fm = FG.M.length;
        FG.M[Fm] = FU;
        FG.M[Fm + 1] = false
    }, function (FA) {
        var FY = rJ[FA.h];
        var Fu = rJ[FA.h + 1];
        var Fn = rJ[FA.h + 2];
        FA.h += 3;
        var Fv = FA.E.k(FY);
        var Fj = FA.E.k(Fu);
        var Fi = FA.M.length;
        FA.M[Fi] = Fv;
        FA.M[Fi + 1] = Fj;
        FA.M[Fi + 2] = Fn
    }, function (Fc) {
        var Ft = rJ[Fc.h] << 8 | rJ[Fc.h + 1];
        Fc.h += 2;
        Fc.M[Fc.M.length] = Fc.E.k(Ft)
    }, function (FD) {
        var Fo = FD.M[FD.M.length - 5];
        FD.M[FD.M.length - 5] = Fo(FD.M[FD.M.length - 4], FD.M[FD.M.length - 3], FD.M[FD.M.length - 2], FD.M[FD.M.length - 1]);
        FD.M.length -= 4
    }, function (Fb) {
        var FP = rJ[Fb.h];
        var FZ = rJ[Fb.h + 1];
        Fb.h += 2;
        var Hz = Fb.E.k(FP);
        var Hr = Fb.E.k(FZ);
        var HI = Hz;
        Fb.M[Fb.M.length] = HI(Hr)
    }, function (Hk) {
        var HO = rJ[Hk.h];
        var HT = rJ[Hk.h + 1];
        Hk.h += 2;
        var HN = Hk.M[Hk.M.length - 1];
        Hk.E.s(HO, HN);
        var HV = Hk.M.length - 1;
        Hk.M[HV] = HN;
        Hk.M[HV + 1] = HT
    }, function (Hh) {
        "use strict";
        var Hy = n[rJ[Hh.h] << 8 | rJ[Hh.h + 1]];
        Hh.h += 2;
        if (!(Hy in r)) {
            throw new O(Hy + " is not defined.")
        }
        Hh.M[Hh.M.length] = r[Hy]
    }, function (HQ) {
        var HX = rJ[HQ.h] << 8 | rJ[HQ.h + 1];
        HQ.h += 2;
        HQ.E.s(HX, HQ.M[HQ.M.length - 1]);
        HQ.M.length -= 1
    }, function (Hd) {
        var HK = c[rJ[Hd.h]];
        Hd.h += 1;
        Hd.M[Hd.M.length] = HK
    }, function (Hw) {
        Hw.M[Hw.M.length - 2] = Hw.M[Hw.M.length - 2] != Hw.M[Hw.M.length - 1];
        Hw.M.length -= 1
    }, function (HL) {
        var Hl = rJ[HL.h];
        var HC = rJ[HL.h + 1];
        HL.h += 2;
        var He = HL.M[HL.M.length - 2];
        var HF = HL.M[HL.M.length - 1];
        var HH = He | HF;
        HL.E.s(Hl, HH);
        HL.M[HL.M.length - 2] = HC;
        HL.M.length -= 1
    }, function (Hq) {
        Hq.M[Hq.M.length] = Hq.Z
    }, function (Hp) {
        throw Hp.M[Hp.M.length - 1];
        Hp.M.length -= 1
    }, function (Hg) {
        var HG = rJ[Hg.h];
        var HJ = rJ[Hg.h + 1];
        var Hf = rJ[Hg.h + 2] << 16 | (rJ[Hg.h + 3] << 8 | rJ[Hg.h + 4]);
        var Hs = rJ[Hg.h + 5];
        Hg.h += 6;
        Hg.E.s(HJ, HG);
        var Ha = Hg.M.length;
        Hg.M[Ha] = Hs;
        Hg.M[Ha + 1] = Hf
    }, function (HM) {
        HM.M[HM.M.length] = []
    }, function (HU) {
        var HB = rJ[HU.h];
        var HW = rJ[HU.h + 1];
        HU.h += 2;
        var HE = HU.M[HU.M.length - 2];
        var HR = HU.M[HU.M.length - 1];
        var HS = HE & HR;
        var Hx = HU.E.k(HB);
        var Hm = HU.M.length - 2;
        HU.M[Hm] = HS;
        HU.M[Hm + 1] = Hx;
        HU.M[Hm + 2] = HW
    }, function (HA) {
        var HY = rJ[HA.h];
        var Hu = rJ[HA.h + 1];
        var Hn = rJ[HA.h + 2];
        HA.h += 3;
        HA.E.s(Hu, HY);
        HA.M[HA.M.length] = Hn
    }, function (Hv) {
        var Hj = rJ[Hv.h];
        Hv.h += 1;
        var Hi = Hv.M[Hv.M.length - 2];
        var Hc = Hv.M[Hv.M.length - 1];
        var Ht = Hi | Hc;
        Hv.E.s(Hj, Ht);
        Hv.M[Hv.M.length - 2] = Ht;
        Hv.M.length -= 1
    }, function (HD) {
        con3(HD.M[HD.M.length - 2], '==', HD.M[HD.M.length - 1], '==', HD.M[HD.M.length - 2] == HD.M[HD.M.length - 1]); HD.M[HD.M.length - 2] = HD.M[HD.M.length - 2] == HD.M[HD.M.length - 1];
        HD.M.length -= 1
    }, function (Ho) {
        var Hb = n[rJ[Ho.h] << 8 | rJ[Ho.h + 1]];
        Ho.h += 2;
        Ho.M[Ho.M.length] = typeof r[Hb]
    }, function (HP) {
        var HZ = rJ[HP.h];
        var qz = rJ[HP.h + 1];
        var qr = rJ[HP.h + 2];
        HP.h += 3;
        var qI = HP.E.k(qz);
        var qk = HP.M.length;
        HP.M[qk] = HZ;
        HP.M[qk + 1] = qI;
        HP.M[qk + 2] = qr
    }, function (qO) {
        var qT = rJ[qO.h];
        var qN = rJ[qO.h + 1];
        var qV = rJ[qO.h + 2] << 16 | (rJ[qO.h + 3] << 8 | rJ[qO.h + 4]);
        var qh = rJ[qO.h + 5];
        qO.h += 6;
        var qy = qO.E.k(qT);
        qO.E.s(qN, qy);
        qO.X = {h: qO.h, G: qO.G};
        qO.h = qV;
        qO.G = qh
    }, function (qQ) {
        var qX = n[rJ[qQ.h] << 8 | rJ[qQ.h + 1]];
        var qd = rJ[qQ.h + 2] << 8 | rJ[qQ.h + 3];
        qQ.h += 4;
        b1:{
            var qK = qX;
            var qw = qK + "," + qd;
            var qL = v[qw];
            if (typeof qL !== "undefined") {
                var ql = qL;
                break b1
            }
            var qC = n[qd];
            var qe = t(qC);
            var qF = t(qK);
            var qH = qe[0] + qF[0] & 255;
            var qq = "";
            for (var qp = 1; qp < qe.length; ++qp) {
                qq += B(qF[qp] ^ qe[qp] ^ qH)
            }
            var ql = v[qw] = qq
        }
        qQ.h = qQ.X.h;
        qQ.G = qQ.X.G;
        qQ.M[qQ.M.length] = ql
    }, function (qg) {
        var qG = rJ[qg.h];
        qg.h += 1;
        var qJ = qg.E.k(qG);
        var qf = qg.M[qg.M.length - 1];
        var qs = qf != qJ;
        var qa = qg.M.length - 1;
        qg.M[qa] = qs;
        qg.M[qa + 1] = qs
    }, function (qM) {
        var qU = rJ[qM.h] << 8 | rJ[qM.h + 1];
        qM.h += 2;
        qM.M[qM.M.length] = qU
    }, function (qB) {
        var qW = qB.R.f();
        var qE = {q: false, C: qB.h, G: qB.G};
        qB.t.O(qE);
        qB.h = qW.H;
        qB.G = qW.G
    }, function (qR) {
        var qS = rJ[qR.h];
        var qx = rJ[qR.h + 1];
        qR.h += 2;
        var qm = qR.M[qR.M.length - 1];
        U(qm, qS, {writable: true, configurable: true, enumerable: true, value: qx});
        qR.M[qR.M.length - 1] = qm
    }, function (qA) {
        var qY = rJ[qA.h] << 8 | rJ[qA.h + 1];
        var qu = rJ[qA.h + 2];
        qA.h += 3;
        b0:{
            var qn = qA.M[qA.M.length - 1];
            var qv = qn;
            var qj = qv + "," + qY;
            var qi = v[qj];
            if (typeof qi !== "undefined") {
                var qc = qi;
                break b0
            }
            var qt = n[qY];
            var qD = t(qt);
            var qo = t(qv);
            var qb = qD[0] + qo[0] & 255;
            var qP = "";
            for (var qZ = 1; qZ < qD.length; ++qZ) {
                qP += B(qo[qZ] ^ qD[qZ] ^ qb)
            }
            var qc = v[qj] = qP
        }
        var pz = qA.M[qA.M.length - 3];
        var pr = qA.M[qA.M.length - 2];
        U(pz, pr, {writable: true, configurable: true, enumerable: true, value: qc});
        var pI = qA.M.length - 3;
        qA.M[pI] = pz;
        qA.M[pI + 1] = qu;
        qA.M.length -= 1
    }, function (pk) {
        con3(pk.M[pk.M.length - 2], '%', pk.M[pk.M.length - 1], '==', pk.M[pk.M.length - 2] % pk.M[pk.M.length - 1]); pk.M[pk.M.length - 2] = pk.M[pk.M.length - 2] % pk.M[pk.M.length - 1];
        pk.M.length -= 1
    }, function (pO) {
        var pT = rJ[pO.h];
        var pN = rJ[pO.h + 1];
        pO.h += 2;
        var pV = pO.E.k(pN);
        var ph = pO.M.length;
        pO.M[ph] = pT;
        pO.M[ph + 1] = pV;
        pO.M[ph + 2] = pV
    }, function (py) {
        var pQ = n[rJ[py.h] << 8 | rJ[py.h + 1]];
        var pX = rJ[py.h + 2] << 8 | rJ[py.h + 3];
        py.h += 4;
        b1:{
            var pd = pQ;
            var pK = pd + "," + pX;
            var pw = v[pK];
            if (typeof pw !== "undefined") {
                var pL = pw;
                break b1
            }
            var pl = n[pX];
            var pC = t(pl);
            var pe = t(pd);
            var pF = pC[0] + pe[0] & 255;
            var pH = "";
            for (var pq = 1; pq < pC.length; ++pq) {
                pH += B(pe[pq] ^ pC[pq] ^ pF)
            }
            var pL = v[pK] = pH
        }
        var pp = py.M.length;
        py.M[pp] = pL;
        py.M[pp + 1] = null
    }, function (pg) {
        var pG = rJ[pg.h];
        var pJ = rJ[pg.h + 1];
        pg.h += 2;
        var pf = pg.E.k(pG);
        var ps = pg.E.k(pJ);
        pg.h = pg.X.h;
        pg.G = pg.X.G;
        var pa = pg.M.length;
        pg.M[pa] = pf;
        pg.M[pa + 1] = ps
    }, function (pM) {
        var pU = rJ[pM.h] << 8 | rJ[pM.h + 1];
        var pB = rJ[pM.h + 2];
        var pW = rJ[pM.h + 3];
        pM.h += 4;
        var pE = pM.M[pM.M.length - 2];
        var pR = pM.M[pM.M.length - 1];
        var pS = Ti(pU, pR, pE, pM.E);
        pM.E.s(pB, pS);
        pM.M[pM.M.length - 2] = pM.E.k(pW);
        pM.M.length -= 1
    }, function (px) {
        var pm = rJ[px.h] << 16 | (rJ[px.h + 1] << 8 | rJ[px.h + 2]);
        px.h += 3;
        px.M[px.M.length] = pm
    }, function (pA) {
        var pY = n[rJ[pA.h] << 8 | rJ[pA.h + 1]];
        var pu = rJ[pA.h + 2];
        pA.h += 3;
        var pn = pA.E.k(pu);
        var pv = pA.M[pA.M.length - 1];
        U(pv, pY, {writable: true, configurable: true, enumerable: true, value: pn});
        pA.M[pA.M.length - 1] = pv
    }, function (pj) {
        var pi = n[rJ[pj.h] << 8 | rJ[pj.h + 1]];
        pj.h += 2;
        pj.M[pj.M.length] = pi
    }, function (pc) {
        var pt = rJ[pc.h];
        var pD = rJ[pc.h + 1];
        pc.h += 2;
        var po = pc.M[pc.M.length - 2];
        var pb = pc.M[pc.M.length - 1];
        var pP = po + pb;
        pc.E.s(pt, pP);
        pc.M[pc.M.length - 2] = pc.E.k(pD);
        pc.M.length -= 1
    }];

    function Ti(pZ, gz, gr, gI) {
        "use strict";
        var gk = i[pZ];
        return gO(gz, gr, gI, gk.S, gk.J, gk.n, gk.W, gk.U)
    };var Tz = k;
    var rJ = t(" ");

    function gO(gT, gN, gV, gh, gy, gQ, gX, gd) {
        var gK = new ry;
        var gw, gL, gl;
        var gC = gX !== void 0;
        for (gw = 0, gL = gy.length; gw < gL; ++gw) {
            gK.c[gy[gw]] = gV.c[gy[gw]]
        }
        gl = ge(gT, gN, gK, gh, gQ, gC, gX);
        if (gd !== void 0) {
            gK.T(gd);
            gK.s(gd, gl)
        }
        return gl
    };

    function ge(gF, gH, gq, gp, gg, gG, gJ) {
        var gf = gg.length;
        var gs = function () {
            "use strict";
            var ga = gq.b();
            var gM = new re(gF, gH, ga, this);
            var gU, gB, gW = W(arguments.length, gf);
            if (gG) {
                ga.T(gJ);
                ga.s(gJ, arguments)
            }
            for (gU = 0, gB = gp.length; gU < gB; ++gU) {
                ga.T(gp[gU])
            }
            for (gU = 0; gU < gW; ++gU) {
                ga.s(gg[gU], arguments[gU])
            }
            for (gU = gW; gU < gf; ++gU) {
                ga.s(gg[gU], void 0)
            }
            return gE(gM)
        };
        return gs
    }

    function gE(gR) {
        var gS, gx;
        for (; ;) {
            if (Tz !== k) {
                gx = Tz;
                Tz = k;
                return gx
            }
            gS = gR.y();
            if (gR.M[1]==='ta0JA-0_aET-2WGYyZLdYUg'){
                debugger;
            }
            if(aa){
                console.log([].slice.call(gR.M))
            }
            //
            if (gR.R.length === 0) {
                rS[gS](gR)
            } else {
                rf(rS[gS], gR)
            }
        }
    }

    gO(0, 0, null, [0, 1, 3, 2], [], [], void 0, void 0)()
}(typeof window !== "undefined" && window != null && window.window === window ? window : typeof global !== "undefined" && global != null && global.global === global ? global : this))
;(function (e, d) {
    var isk = ["iFWaGHjUI"];
    for (var i = 0; i < isk.length; ++i) {
        e.initCustomEvent(isk[i], false, false, d);
        dispatchEvent(e)
    }
}(document.createEvent("CustomEvent"), ["A8Qjz1qKAQAAmb37p8eFC2RypjknwZpYrZ18Wipp0fgiKuQePMKQXmLsXOWAAWe0HD6uchRAwH9eCOfvosJeCA==", "eaLsmX30TYhdWR7VEvqxCkF4QfMl=zgwSOD_bcry5n6UNZIj8tH12pAoKB9Gu-PJi", [], [941037104, 508818228, 2043269109, 1133904484, 641174685, 467215851, 924188590, 1729787288], document.currentScript && document.currentScript.nonce || "OB060dWcE5d3uNcvMWFCB4u4", document.currentScript && document.currentScript.nonce || "OB060dWcE5d3uNcvMWFCB4u4", [], typeof arguments === "undefined" ? void 0 : arguments]))

