"use strict"; if (!window.console || !console.log) window.console = { "log": function (msg) { } }; var wah = '', L, tt, treectl, thegrid, up2k, asmCrypto, hashwasm, vbar, marked, CB = '?_=' + Date.now(), HALFMAX = 8192 * 8192 * 8192 * 8192, HTTPS = (window.location + '').indexOf('https:') === 0, TOUCH = 'ontouchstart' in window, MOBILE = TOUCH, CHROME = !!window.chrome, VCHROME = CHROME ? 1 : 0, FIREFOX = ('netscape' in window) && / rv:/.test(navigator.userAgent), IPHONE = TOUCH && /iPhone|iPad|iPod/i.test(navigator.userAgent), WINDOWS = navigator.platform ? navigator.platform == 'Win32' : /Windows/.test(navigator.userAgent); if (!window.WebAssembly || !WebAssembly.Memory) window.WebAssembly = false; if (!window.Notification || !Notification.permission) window.Notification = false; if (!window.FormData) window.FormData = false; try { CB = '?' + document.currentScript.src.split('?').pop(); if (navigator.userAgentData.mobile) MOBILE = true; if (navigator.userAgentData.platform == 'Windows') WINDOWS = true; CHROME = navigator.userAgentData.brands.find(function (d) { return d.brand == 'Chromium' }); if (CHROME) VCHROME = CHROME.version; else VCHROME = 0; CHROME = !!CHROME; } catch (ex) { } var ebi = document.getElementById.bind(document), QS = document.querySelector.bind(document), QSA = document.querySelectorAll.bind(document), XHR = XMLHttpRequest; function mknod(et, eid) { var ret = document.createElement(et); if (eid) ret.id = eid; return ret; } function qsr(sel) { var el = QS(sel); if (el) el.parentNode.removeChild(el); return el; } // error handler for mobile devices function esc(txt) { return txt.replace(/[&"<>]/g, function (c) { return { '&': '&', '"': '"', '<': '<', '>': '>' }[c]; }); } function basenames(txt) { return (txt + '').replace(/https?:\/\/[^ \/]+\//g, '/').replace(/js\?_=[a-zA-Z]{4}/g, 'js'); } if ((document.location + '').indexOf(',rej,') + 1) window.onunhandledrejection = function (e) { var err = e.reason; try { err += '\n' + e.reason.stack; } catch (e) { } err = basenames(err); console.log("REJ: " + err); try { toast.warn(30, err); } catch (e) { } }; try { console.hist = []; var hook = function (t) { var orig = console[t].bind(console), cfun = function () { console.hist.push(Date.now() + ' ' + t + ': ' + Array.from(arguments).join(', ')); if (console.hist.length > 100) console.hist = console.hist.slice(50); orig.apply(console, arguments); }; console['std' + t] = orig; console[t] = cfun; }; hook('log'); console.log('log-capture ok'); hook('debug'); hook('warn'); hook('error'); } catch (ex) { if (console.stdlog) console.log = console.stdlog; console.log('console capture failed', ex); } var crashed = false, ignexd = {}, evalex_fatal = false; function vis_exh(msg, url, lineNo, columnNo, error) { if ((msg + '').indexOf('ResizeObserver') + 1) return; // chrome issue 809574 (benign, from